@lingoace/lingo-trtc-rtc 0.0.16 → 0.0.17
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/package.json +1 -1
- package/trtc-lingo.js +38 -38
package/trtc-lingo.js
CHANGED
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
var o7=Object.create;var dd=Object.defineProperty,s7=Object.defineProperties,qI=Object.getOwnPropertyDescriptor,c7=Object.getOwnPropertyDescriptors,u7=Object.getOwnPropertyNames,WI=Object.getOwnPropertySymbols,l7=Object.getPrototypeOf,JI=Object.prototype.hasOwnProperty,d7=Object.prototype.propertyIsEnumerable;var $v=(te,q,f)=>q in te?dd(te,q,{enumerable:!0,configurable:!0,writable:!0,value:f}):te[q]=f,Jr=(te,q)=>{for(var f in q||(q={}))JI.call(q,f)&&$v(te,f,q[f]);if(WI)for(var f of WI(q))d7.call(q,f)&&$v(te,f,q[f]);return te},hd=(te,q)=>s7(te,c7(q));var Zv=(te,q)=>()=>(q||te((q={exports:{}}).exports,q),q.exports);var h7=(te,q,f,G)=>{if(q&&typeof q=="object"||typeof q=="function")for(let $ of u7(q))!JI.call(te,$)&&$!==f&&dd(te,$,{get:()=>q[$],enumerable:!(G=qI(q,$))||G.enumerable});return te};var ur=(te,q,f)=>(f=te!=null?o7(l7(te)):{},h7(q||!te||!te.__esModule?dd(f,"default",{value:te,enumerable:!0}):f,te));var In=(te,q,f,G)=>{for(var $=G>1?void 0:G?qI(q,f):q,H=te.length-1,X;H>=0;H--)(X=te[H])&&($=(G?X(q,f,$):X($))||$);return G&&$&&dd(q,f,$),$};var Ve=(te,q,f)=>($v(te,typeof q!="symbol"?q+"":q,f),f);var Er=Zv((eg,tg)=>{(function(te,q){typeof eg=="object"&&typeof tg!="undefined"?tg.exports=q():typeof define=="function"&&define.amd?define(q):(te=typeof globalThis!="undefined"?globalThis:te||self).TRTC=q()})(eg,function(){function te(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable})),n.push.apply(n,i)}return n}function q(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?te(Object(n),!0).forEach(function(i){$e(e,i,n[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):te(Object(n)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(n,i))})}return e}function f(){f=function(){return e};var e={},t=Object.prototype,n=t.hasOwnProperty,i=typeof Symbol=="function"?Symbol:{},r=i.iterator||"@@iterator",o=i.asyncIterator||"@@asyncIterator",c=i.toStringTag||"@@toStringTag";function a(P,V,S){return Object.defineProperty(P,V,{value:S,enumerable:!0,configurable:!0,writable:!0}),P[V]}try{a({},"")}catch(P){a=function(V,S,h){return V[S]=h}}function s(P,V,S,h){var y=V&&V.prototype instanceof p?V:p,A=Object.create(y.prototype),D=new _(h||[]);return A._invoke=function(U,K,J){var ce="suspendedStart";return function(ae,qe){if(ce==="executing")throw new Error("Generator is already running");if(ce==="completed"){if(ae==="throw")throw qe;return R()}for(J.method=ae,J.arg=qe;;){var Ue=J.delegate;if(Ue){var Fe=O(Ue,J);if(Fe){if(Fe===u)continue;return Fe}}if(J.method==="next")J.sent=J._sent=J.arg;else if(J.method==="throw"){if(ce==="suspendedStart")throw ce="completed",J.arg;J.dispatchException(J.arg)}else J.method==="return"&&J.abrupt("return",J.arg);ce="executing";var lt=l(U,K,J);if(lt.type==="normal"){if(ce=J.done?"completed":"suspendedYield",lt.arg===u)continue;return{value:lt.arg,done:J.done}}lt.type==="throw"&&(ce="completed",J.method="throw",J.arg=lt.arg)}}}(P,S,D),A}function l(P,V,S){try{return{type:"normal",arg:P.call(V,S)}}catch(h){return{type:"throw",arg:h}}}e.wrap=s;var u={};function p(){}function k(){}function x(){}var E={};a(E,r,function(){return this});var I=Object.getPrototypeOf,m=I&&I(I(b([])));m&&m!==t&&n.call(m,r)&&(E=m);var T=x.prototype=p.prototype=Object.create(E);function v(P){["next","throw","return"].forEach(function(V){a(P,V,function(S){return this._invoke(V,S)})})}function C(P,V){function S(y,A,D,U){var K=l(P[y],P,A);if(K.type!=="throw"){var J=K.arg,ce=J.value;return ce&&typeof ce=="object"&&n.call(ce,"__await")?V.resolve(ce.__await).then(function(ae){S("next",ae,D,U)},function(ae){S("throw",ae,D,U)}):V.resolve(ce).then(function(ae){J.value=ae,D(J)},function(ae){return S("throw",ae,D,U)})}U(K.arg)}var h;this._invoke=function(y,A){function D(){return new V(function(U,K){S(y,A,U,K)})}return h=h?h.then(D,D):D()}}function O(P,V){var S=P.iterator[V.method];if(S===void 0){if(V.delegate=null,V.method==="throw"){if(P.iterator.return&&(V.method="return",V.arg=void 0,O(P,V),V.method==="throw"))return u;V.method="throw",V.arg=new TypeError("The iterator does not provide a 'throw' method")}return u}var h=l(S,P.iterator,V.arg);if(h.type==="throw")return V.method="throw",V.arg=h.arg,V.delegate=null,u;var y=h.arg;return y?y.done?(V[P.resultName]=y.value,V.next=P.nextLoc,V.method!=="return"&&(V.method="next",V.arg=void 0),V.delegate=null,u):y:(V.method="throw",V.arg=new TypeError("iterator result is not an object"),V.delegate=null,u)}function N(P){var V={tryLoc:P[0]};1 in P&&(V.catchLoc=P[1]),2 in P&&(V.finallyLoc=P[2],V.afterLoc=P[3]),this.tryEntries.push(V)}function j(P){var V=P.completion||{};V.type="normal",delete V.arg,P.completion=V}function _(P){this.tryEntries=[{tryLoc:"root"}],P.forEach(N,this),this.reset(!0)}function b(P){if(P){var V=P[r];if(V)return V.call(P);if(typeof P.next=="function")return P;if(!isNaN(P.length)){var S=-1,h=function y(){for(;++S<P.length;)if(n.call(P,S))return y.value=P[S],y.done=!1,y;return y.value=void 0,y.done=!0,y};return h.next=h}}return{next:R}}function R(){return{value:void 0,done:!0}}return k.prototype=x,a(T,"constructor",x),a(x,"constructor",k),k.displayName=a(x,c,"GeneratorFunction"),e.isGeneratorFunction=function(P){var V=typeof P=="function"&&P.constructor;return!!V&&(V===k||(V.displayName||V.name)==="GeneratorFunction")},e.mark=function(P){return Object.setPrototypeOf?Object.setPrototypeOf(P,x):(P.__proto__=x,a(P,c,"GeneratorFunction")),P.prototype=Object.create(T),P},e.awrap=function(P){return{__await:P}},v(C.prototype),a(C.prototype,o,function(){return this}),e.AsyncIterator=C,e.async=function(P,V,S,h,y){y===void 0&&(y=Promise);var A=new C(s(P,V,S,h),y);return e.isGeneratorFunction(V)?A:A.next().then(function(D){return D.done?D.value:A.next()})},v(T),a(T,c,"Generator"),a(T,r,function(){return this}),a(T,"toString",function(){return"[object Generator]"}),e.keys=function(P){var V=[];for(var S in P)V.push(S);return V.reverse(),function h(){for(;V.length;){var y=V.pop();if(y in P)return h.value=y,h.done=!1,h}return h.done=!0,h}},e.values=b,_.prototype={constructor:_,reset:function(P){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(j),!P)for(var V in this)V.charAt(0)==="t"&&n.call(this,V)&&!isNaN(+V.slice(1))&&(this[V]=void 0)},stop:function(){this.done=!0;var P=this.tryEntries[0].completion;if(P.type==="throw")throw P.arg;return this.rval},dispatchException:function(P){if(this.done)throw P;var V=this;function S(K,J){return A.type="throw",A.arg=P,V.next=K,J&&(V.method="next",V.arg=void 0),!!J}for(var h=this.tryEntries.length-1;h>=0;--h){var y=this.tryEntries[h],A=y.completion;if(y.tryLoc==="root")return S("end");if(y.tryLoc<=this.prev){var D=n.call(y,"catchLoc"),U=n.call(y,"finallyLoc");if(D&&U){if(this.prev<y.catchLoc)return S(y.catchLoc,!0);if(this.prev<y.finallyLoc)return S(y.finallyLoc)}else if(D){if(this.prev<y.catchLoc)return S(y.catchLoc,!0)}else{if(!U)throw new Error("try statement without catch or finally");if(this.prev<y.finallyLoc)return S(y.finallyLoc)}}}},abrupt:function(P,V){for(var S=this.tryEntries.length-1;S>=0;--S){var h=this.tryEntries[S];if(h.tryLoc<=this.prev&&n.call(h,"finallyLoc")&&this.prev<h.finallyLoc){var y=h;break}}y&&(P==="break"||P==="continue")&&y.tryLoc<=V&&V<=y.finallyLoc&&(y=null);var A=y?y.completion:{};return A.type=P,A.arg=V,y?(this.method="next",this.next=y.finallyLoc,u):this.complete(A)},complete:function(P,V){if(P.type==="throw")throw P.arg;return P.type==="break"||P.type==="continue"?this.next=P.arg:P.type==="return"?(this.rval=this.arg=P.arg,this.method="return",this.next="end"):P.type==="normal"&&V&&(this.next=V),u},finish:function(P){for(var V=this.tryEntries.length-1;V>=0;--V){var S=this.tryEntries[V];if(S.finallyLoc===P)return this.complete(S.completion,S.afterLoc),j(S),u}},catch:function(P){for(var V=this.tryEntries.length-1;V>=0;--V){var S=this.tryEntries[V];if(S.tryLoc===P){var h=S.completion;if(h.type==="throw"){var y=h.arg;j(S)}return y}}throw new Error("illegal catch attempt")},delegateYield:function(P,V,S){return this.delegate={iterator:b(P),resultName:V,nextLoc:S},this.method==="next"&&(this.arg=void 0),u}},e}function G(e){return G=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},G(e)}function $(e,t,n,i,r,o,c){try{var a=e[o](c),s=a.value}catch(l){return void n(l)}a.done?t(s):Promise.resolve(s).then(i,r)}function H(e){return function(){var t=this,n=arguments;return new Promise(function(i,r){var o=e.apply(t,n);function c(s){$(o,i,r,c,a,"next",s)}function a(s){$(o,i,r,c,a,"throw",s)}c(void 0)})}}function X(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function Re(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}function Ie(e,t,n){return t&&Re(e.prototype,t),n&&Re(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function $e(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Et(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&lr(e,t)}function Qe(e){return Qe=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},Qe(e)}function lr(e,t){return lr=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(n,i){return n.__proto__=i,n},lr(e,t)}function Rc(){if(typeof Reflect=="undefined"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch(e){return!1}}function Go(e,t,n){return Go=Rc()?Reflect.construct.bind():function(i,r,o){var c=[null];c.push.apply(c,r);var a=new(Function.bind.apply(i,c));return o&&lr(a,o.prototype),a},Go.apply(null,arguments)}function zo(e){var t=typeof Map=="function"?new Map:void 0;return zo=function(n){if(n===null||(i=n,Function.toString.call(i).indexOf("[native code]")===-1))return n;var i;if(typeof n!="function")throw new TypeError("Super expression must either be null or a function");if(t!==void 0){if(t.has(n))return t.get(n);t.set(n,r)}function r(){return Go(n,arguments,Qe(this).constructor)}return r.prototype=Object.create(n.prototype,{constructor:{value:r,enumerable:!1,writable:!0,configurable:!0}}),lr(r,n)},zo(e)}function Wo(e,t){if(t&&(typeof t=="object"||typeof t=="function"))return t;if(t!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return function(n){if(n===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return n}(e)}function Rr(e){var t=Rc();return function(){var n,i=Qe(e);if(t){var r=Qe(this).constructor;n=Reflect.construct(i,arguments,r)}else n=i.apply(this,arguments);return Wo(this,n)}}function Ac(e,t){for(;!Object.prototype.hasOwnProperty.call(e,t)&&(e=Qe(e))!==null;);return e}function le(){return le=typeof Reflect!="undefined"&&Reflect.get?Reflect.get.bind():function(e,t,n){var i=Ac(e,t);if(i){var r=Object.getOwnPropertyDescriptor(i,t);return r.get?r.get.call(arguments.length<3?e:n):r.value}},le.apply(this,arguments)}function Te(e,t){return function(n){if(Array.isArray(n))return n}(e)||function(n,i){var r=n==null?null:typeof Symbol!="undefined"&&n[Symbol.iterator]||n["@@iterator"];if(r!=null){var o,c,a=[],s=!0,l=!1;try{for(r=r.call(n);!(s=(o=r.next()).done)&&(a.push(o.value),!i||a.length!==i);s=!0);}catch(u){l=!0,c=u}finally{try{s||r.return==null||r.return()}finally{if(l)throw c}}return a}}(e,t)||je(e,t)||function(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
1
|
+
var f7=Object.create;var fd=Object.defineProperty,p7=Object.defineProperties,$I=Object.getOwnPropertyDescriptor,m7=Object.getOwnPropertyDescriptors,v7=Object.getOwnPropertyNames,YI=Object.getOwnPropertySymbols,g7=Object.getPrototypeOf,ZI=Object.prototype.hasOwnProperty,_7=Object.prototype.propertyIsEnumerable;var Zv=(ne,q,p)=>q in ne?fd(ne,q,{enumerable:!0,configurable:!0,writable:!0,value:p}):ne[q]=p,Kr=(ne,q)=>{for(var p in q||(q={}))ZI.call(q,p)&&Zv(ne,p,q[p]);if(YI)for(var p of YI(q))_7.call(q,p)&&Zv(ne,p,q[p]);return ne},pd=(ne,q)=>p7(ne,m7(q));var eg=(ne,q)=>()=>(q||ne((q={exports:{}}).exports,q),q.exports);var y7=(ne,q,p,G)=>{if(q&&typeof q=="object"||typeof q=="function")for(let $ of v7(q))!ZI.call(ne,$)&&$!==p&&fd(ne,$,{get:()=>q[$],enumerable:!(G=$I(q,$))||G.enumerable});return ne};var lr=(ne,q,p)=>(p=ne!=null?f7(g7(ne)):{},y7(q||!ne||!ne.__esModule?fd(p,"default",{value:ne,enumerable:!0}):p,ne));var wn=(ne,q,p,G)=>{for(var $=G>1?void 0:G?$I(q,p):q,H=ne.length-1,Q;H>=0;H--)(Q=ne[H])&&($=(G?Q(q,p,$):Q($))||$);return G&&$&&fd(q,p,$),$};var Ve=(ne,q,p)=>(Zv(ne,typeof q!="symbol"?q+"":q,p),p);var Er=eg((tg,ng)=>{(function(ne,q){typeof tg=="object"&&typeof ng!="undefined"?ng.exports=q():typeof define=="function"&&define.amd?define(q):(ne=typeof globalThis!="undefined"?globalThis:ne||self).TRTC=q()})(tg,function(){function ne(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter(function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable})),n.push.apply(n,i)}return n}function q(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?ne(Object(n),!0).forEach(function(i){$e(e,i,n[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ne(Object(n)).forEach(function(i){Object.defineProperty(e,i,Object.getOwnPropertyDescriptor(n,i))})}return e}function p(){p=function(){return e};var e={},t=Object.prototype,n=t.hasOwnProperty,i=typeof Symbol=="function"?Symbol:{},r=i.iterator||"@@iterator",o=i.asyncIterator||"@@asyncIterator",c=i.toStringTag||"@@toStringTag";function a(P,U,k){return Object.defineProperty(P,U,{value:k,enumerable:!0,configurable:!0,writable:!0}),P[U]}try{a({},"")}catch(P){a=function(U,k,h){return U[k]=h}}function s(P,U,k,h){var y=U&&U.prototype instanceof f?U:f,A=Object.create(y.prototype),D=new _(h||[]);return A._invoke=function(j,K,J){var se="suspendedStart";return function(ie,Je){if(se==="executing")throw new Error("Generator is already running");if(se==="completed"){if(ie==="throw")throw Je;return R()}for(J.method=ie,J.arg=Je;;){var Ue=J.delegate;if(Ue){var Fe=L(Ue,J);if(Fe){if(Fe===u)continue;return Fe}}if(J.method==="next")J.sent=J._sent=J.arg;else if(J.method==="throw"){if(se==="suspendedStart")throw se="completed",J.arg;J.dispatchException(J.arg)}else J.method==="return"&&J.abrupt("return",J.arg);se="executing";var ht=l(j,K,J);if(ht.type==="normal"){if(se=J.done?"completed":"suspendedYield",ht.arg===u)continue;return{value:ht.arg,done:J.done}}ht.type==="throw"&&(se="completed",J.method="throw",J.arg=ht.arg)}}}(P,k,D),A}function l(P,U,k){try{return{type:"normal",arg:P.call(U,k)}}catch(h){return{type:"throw",arg:h}}}e.wrap=s;var u={};function f(){}function S(){}function x(){}var E={};a(E,r,function(){return this});var I=Object.getPrototypeOf,m=I&&I(I(b([])));m&&m!==t&&n.call(m,r)&&(E=m);var T=x.prototype=f.prototype=Object.create(E);function v(P){["next","throw","return"].forEach(function(U){a(P,U,function(k){return this._invoke(U,k)})})}function w(P,U){function k(y,A,D,j){var K=l(P[y],P,A);if(K.type!=="throw"){var J=K.arg,se=J.value;return se&&typeof se=="object"&&n.call(se,"__await")?U.resolve(se.__await).then(function(ie){k("next",ie,D,j)},function(ie){k("throw",ie,D,j)}):U.resolve(se).then(function(ie){J.value=ie,D(J)},function(ie){return k("throw",ie,D,j)})}j(K.arg)}var h;this._invoke=function(y,A){function D(){return new U(function(j,K){k(y,A,j,K)})}return h=h?h.then(D,D):D()}}function L(P,U){var k=P.iterator[U.method];if(k===void 0){if(U.delegate=null,U.method==="throw"){if(P.iterator.return&&(U.method="return",U.arg=void 0,L(P,U),U.method==="throw"))return u;U.method="throw",U.arg=new TypeError("The iterator does not provide a 'throw' method")}return u}var h=l(k,P.iterator,U.arg);if(h.type==="throw")return U.method="throw",U.arg=h.arg,U.delegate=null,u;var y=h.arg;return y?y.done?(U[P.resultName]=y.value,U.next=P.nextLoc,U.method!=="return"&&(U.method="next",U.arg=void 0),U.delegate=null,u):y:(U.method="throw",U.arg=new TypeError("iterator result is not an object"),U.delegate=null,u)}function N(P){var U={tryLoc:P[0]};1 in P&&(U.catchLoc=P[1]),2 in P&&(U.finallyLoc=P[2],U.afterLoc=P[3]),this.tryEntries.push(U)}function V(P){var U=P.completion||{};U.type="normal",delete U.arg,P.completion=U}function _(P){this.tryEntries=[{tryLoc:"root"}],P.forEach(N,this),this.reset(!0)}function b(P){if(P){var U=P[r];if(U)return U.call(P);if(typeof P.next=="function")return P;if(!isNaN(P.length)){var k=-1,h=function y(){for(;++k<P.length;)if(n.call(P,k))return y.value=P[k],y.done=!1,y;return y.value=void 0,y.done=!0,y};return h.next=h}}return{next:R}}function R(){return{value:void 0,done:!0}}return S.prototype=x,a(T,"constructor",x),a(x,"constructor",S),S.displayName=a(x,c,"GeneratorFunction"),e.isGeneratorFunction=function(P){var U=typeof P=="function"&&P.constructor;return!!U&&(U===S||(U.displayName||U.name)==="GeneratorFunction")},e.mark=function(P){return Object.setPrototypeOf?Object.setPrototypeOf(P,x):(P.__proto__=x,a(P,c,"GeneratorFunction")),P.prototype=Object.create(T),P},e.awrap=function(P){return{__await:P}},v(w.prototype),a(w.prototype,o,function(){return this}),e.AsyncIterator=w,e.async=function(P,U,k,h,y){y===void 0&&(y=Promise);var A=new w(s(P,U,k,h),y);return e.isGeneratorFunction(U)?A:A.next().then(function(D){return D.done?D.value:A.next()})},v(T),a(T,c,"Generator"),a(T,r,function(){return this}),a(T,"toString",function(){return"[object Generator]"}),e.keys=function(P){var U=[];for(var k in P)U.push(k);return U.reverse(),function h(){for(;U.length;){var y=U.pop();if(y in P)return h.value=y,h.done=!1,h}return h.done=!0,h}},e.values=b,_.prototype={constructor:_,reset:function(P){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(V),!P)for(var U in this)U.charAt(0)==="t"&&n.call(this,U)&&!isNaN(+U.slice(1))&&(this[U]=void 0)},stop:function(){this.done=!0;var P=this.tryEntries[0].completion;if(P.type==="throw")throw P.arg;return this.rval},dispatchException:function(P){if(this.done)throw P;var U=this;function k(K,J){return A.type="throw",A.arg=P,U.next=K,J&&(U.method="next",U.arg=void 0),!!J}for(var h=this.tryEntries.length-1;h>=0;--h){var y=this.tryEntries[h],A=y.completion;if(y.tryLoc==="root")return k("end");if(y.tryLoc<=this.prev){var D=n.call(y,"catchLoc"),j=n.call(y,"finallyLoc");if(D&&j){if(this.prev<y.catchLoc)return k(y.catchLoc,!0);if(this.prev<y.finallyLoc)return k(y.finallyLoc)}else if(D){if(this.prev<y.catchLoc)return k(y.catchLoc,!0)}else{if(!j)throw new Error("try statement without catch or finally");if(this.prev<y.finallyLoc)return k(y.finallyLoc)}}}},abrupt:function(P,U){for(var k=this.tryEntries.length-1;k>=0;--k){var h=this.tryEntries[k];if(h.tryLoc<=this.prev&&n.call(h,"finallyLoc")&&this.prev<h.finallyLoc){var y=h;break}}y&&(P==="break"||P==="continue")&&y.tryLoc<=U&&U<=y.finallyLoc&&(y=null);var A=y?y.completion:{};return A.type=P,A.arg=U,y?(this.method="next",this.next=y.finallyLoc,u):this.complete(A)},complete:function(P,U){if(P.type==="throw")throw P.arg;return P.type==="break"||P.type==="continue"?this.next=P.arg:P.type==="return"?(this.rval=this.arg=P.arg,this.method="return",this.next="end"):P.type==="normal"&&U&&(this.next=U),u},finish:function(P){for(var U=this.tryEntries.length-1;U>=0;--U){var k=this.tryEntries[U];if(k.finallyLoc===P)return this.complete(k.completion,k.afterLoc),V(k),u}},catch:function(P){for(var U=this.tryEntries.length-1;U>=0;--U){var k=this.tryEntries[U];if(k.tryLoc===P){var h=k.completion;if(h.type==="throw"){var y=h.arg;V(k)}return y}}throw new Error("illegal catch attempt")},delegateYield:function(P,U,k){return this.delegate={iterator:b(P),resultName:U,nextLoc:k},this.method==="next"&&(this.arg=void 0),u}},e}function G(e){return G=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},G(e)}function $(e,t,n,i,r,o,c){try{var a=e[o](c),s=a.value}catch(l){return void n(l)}a.done?t(s):Promise.resolve(s).then(i,r)}function H(e){return function(){var t=this,n=arguments;return new Promise(function(i,r){var o=e.apply(t,n);function c(s){$(o,i,r,c,a,"next",s)}function a(s){$(o,i,r,c,a,"throw",s)}c(void 0)})}}function Q(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function Re(e,t){for(var n=0;n<t.length;n++){var i=t[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}function Ie(e,t,n){return t&&Re(e.prototype,t),n&&Re(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function $e(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Et(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&dr(e,t)}function Ye(e){return Ye=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},Ye(e)}function dr(e,t){return dr=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(n,i){return n.__proto__=i,n},dr(e,t)}function Ac(){if(typeof Reflect=="undefined"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch(e){return!1}}function zo(e,t,n){return zo=Ac()?Reflect.construct.bind():function(i,r,o){var c=[null];c.push.apply(c,r);var a=new(Function.bind.apply(i,c));return o&&dr(a,o.prototype),a},zo.apply(null,arguments)}function Wo(e){var t=typeof Map=="function"?new Map:void 0;return Wo=function(n){if(n===null||(i=n,Function.toString.call(i).indexOf("[native code]")===-1))return n;var i;if(typeof n!="function")throw new TypeError("Super expression must either be null or a function");if(t!==void 0){if(t.has(n))return t.get(n);t.set(n,r)}function r(){return zo(n,arguments,Ye(this).constructor)}return r.prototype=Object.create(n.prototype,{constructor:{value:r,enumerable:!1,writable:!0,configurable:!0}}),dr(r,n)},Wo(e)}function Jo(e,t){if(t&&(typeof t=="object"||typeof t=="function"))return t;if(t!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return function(n){if(n===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return n}(e)}function Rr(e){var t=Ac();return function(){var n,i=Ye(e);if(t){var r=Ye(this).constructor;n=Reflect.construct(i,arguments,r)}else n=i.apply(this,arguments);return Jo(this,n)}}function Pc(e,t){for(;!Object.prototype.hasOwnProperty.call(e,t)&&(e=Ye(e))!==null;);return e}function le(){return le=typeof Reflect!="undefined"&&Reflect.get?Reflect.get.bind():function(e,t,n){var i=Pc(e,t);if(i){var r=Object.getOwnPropertyDescriptor(i,t);return r.get?r.get.call(arguments.length<3?e:n):r.value}},le.apply(this,arguments)}function Te(e,t){return function(n){if(Array.isArray(n))return n}(e)||function(n,i){var r=n==null?null:typeof Symbol!="undefined"&&n[Symbol.iterator]||n["@@iterator"];if(r!=null){var o,c,a=[],s=!0,l=!1;try{for(r=r.call(n);!(s=(o=r.next()).done)&&(a.push(o.value),!i||a.length!==i);s=!0);}catch(u){l=!0,c=u}finally{try{s||r.return==null||r.return()}finally{if(l)throw c}}return a}}(e,t)||je(e,t)||function(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
2
2
|
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}()}function Se(e){return function(t){if(Array.isArray(t))return He(t)}(e)||function(t){if(typeof Symbol!="undefined"&&t[Symbol.iterator]!=null||t["@@iterator"]!=null)return Array.from(t)}(e)||je(e)||function(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
|
|
3
3
|
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}()}function je(e,t){if(e){if(typeof e=="string")return He(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set"?Array.from(e):n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?He(e,t):void 0}}function He(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,i=new Array(t);n<t;n++)i[n]=e[n];return i}function oe(e,t){var n=typeof Symbol!="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=je(e))||t&&e&&typeof e.length=="number"){n&&(e=n);var i=0,r=function(){};return{s:r,n:function(){return i>=e.length?{done:!0}:{done:!1,value:e[i++]}},e:function(s){throw s},f:r}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
|
|
4
|
-
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var o,c=!0,a=!1;return{s:function(){n=n.call(e)},n:function(){var s=n.next();return c=s.done,s},e:function(s){a=!0,o=s},f:function(){try{c||n.return==null||n.return()}finally{if(a)throw o}}}}function Y(e,t,n,i,r){var o={};return Object.keys(i).forEach(function(c){o[c]=i[c]}),o.enumerable=!!o.enumerable,o.configurable=!!o.configurable,("value"in o||o.initializer)&&(o.writable=!0),o=n.slice().reverse().reduce(function(c,a){return a(e,t,c)||c},o),r&&o.initializer!==void 0&&(o.value=o.initializer?o.initializer.call(r):void 0,o.initializer=void 0),o.initializer===void 0&&(Object.defineProperty(e,t,o),o=null),o}var se=typeof globalThis!="undefined"?globalThis:typeof window!="undefined"?window:typeof global!="undefined"?global:typeof self!="undefined"?self:{},z=function(e){return e&&e.Math==Math&&e},re=z(typeof globalThis=="object"&&globalThis)||z(typeof window=="object"&&window)||z(typeof self=="object"&&self)||z(typeof se=="object"&&se)||function(){return this}()||Function("return this")(),be={},ue=function(e){try{return!!e()}catch(t){return!0}},ye=!ue(function(){return Object.defineProperty({},1,{get:function(){return 7}})[1]!=7}),Me=!ue(function(){var e=function(){}.bind();return typeof e!="function"||e.hasOwnProperty("prototype")}),Wt=Me,$t=Function.prototype.call,Ke=Wt?$t.bind($t):function(){return $t.apply($t,arguments)},qt={},dt={}.propertyIsEnumerable,Wn=Object.getOwnPropertyDescriptor,dr=Wn&&!dt.call({1:2},1);qt.f=dr?function(e){var t=Wn(this,e);return!!t&&t.enumerable}:dt;var Ht,En,Ze=function(e,t){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:t}},Gt=Me,qn=Function.prototype,he=qn.call,de=Gt&&qn.bind.bind(he,he),Ne=function(e){return Gt?de(e):function(){return he.apply(e,arguments)}},We=Ne,De=We({}.toString),ct=We("".slice),rt=function(e){return ct(De(e),8,-1)},Ut=rt,Zt=Ne,pe=function(e){if(Ut(e)==="Function")return Zt(e)},Lt=ue,Jt=rt,hr=Object,Ri=pe("".split),_n=Lt(function(){return!hr("z").propertyIsEnumerable(0)})?function(e){return Jt(e)=="String"?Ri(e,""):hr(e)}:hr,Rt=function(e){return e==null},Id=Rt,Ot=TypeError,ht=function(e){if(Id(e))throw Ot("Can't call method on "+e);return e},Pc=_n,Dc=ht,yn=function(e){return Pc(Dc(e))},_a=typeof document=="object"&&document.all,Ai={all:_a,IS_HTMLDDA:_a===void 0&&_a!==void 0},Lc=Ai.all,it=Ai.IS_HTMLDDA?function(e){return typeof e=="function"||e===Lc}:function(e){return typeof e=="function"},ya=it,Oc=Ai.all,at=Ai.IS_HTMLDDA?function(e){return typeof e=="object"?e!==null:ya(e)||e===Oc}:function(e){return typeof e=="object"?e!==null:ya(e)},ba=re,qo=it,Mc=function(e){return qo(e)?e:void 0},Rn=function(e,t){return arguments.length<2?Mc(ba[e]):ba[e]&&ba[e][t]},bn=pe({}.isPrototypeOf),Jn=Rn("navigator","userAgent")||"",Nc=re,Sa=Jn,Kr=Nc.process,ka=Nc.Deno,Jo=Kr&&Kr.versions||ka&&ka.version,Ko=Jo&&Jo.v8;Ko&&(En=(Ht=Ko.split("."))[0]>0&&Ht[0]<4?1:+(Ht[0]+Ht[1])),!En&&Sa&&(!(Ht=Sa.match(/Edge\/(\d+)/))||Ht[1]>=74)&&(Ht=Sa.match(/Chrome\/(\d+)/))&&(En=+Ht[1]);var fr=En,pr=fr,Pi=ue,Yo=!!Object.getOwnPropertySymbols&&!Pi(function(){var e=Symbol();return!String(e)||!(Object(e)instanceof Symbol)||!Symbol.sham&&pr&&pr<41}),Xo=Yo&&!Symbol.sham&&typeof Symbol.iterator=="symbol",Qo=Rn,Uc=it,Ar=bn,$o=Object,Di=Xo?function(e){return typeof e=="symbol"}:function(e){var t=Qo("Symbol");return Uc(t)&&Ar(t.prototype,$o(e))},Ta=String,Kn=function(e){try{return Ta(e)}catch(t){return"Object"}},wd=it,Yr=Kn,Yn=TypeError,Vt=function(e){if(wd(e))return e;throw Yn(Yr(e)+" is not a function")},Vc=Vt,It=Rt,Kt=function(e,t){var n=e[t];return It(n)?void 0:Vc(n)},Li=Ke,Zo=it,Xr=at,es=TypeError,Pr={exports:{}},Qr=re,xa=Object.defineProperty,Ia=function(e,t){try{xa(Qr,e,{value:t,configurable:!0,writable:!0})}catch(n){Qr[e]=t}return t},ts=Ia,wa="__core-js_shared__",Ca=re[wa]||ts(wa,{}),hn=Ca;(Pr.exports=function(e,t){return hn[e]||(hn[e]=t!==void 0?t:{})})("versions",[]).push({version:"3.25.5",mode:"global",copyright:"\xA9 2014-2022 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.25.5/LICENSE",source:"https://github.com/zloirock/core-js"});var An=ht,Oi=Object,Mt=function(e){return Oi(An(e))},ns=Mt,jc=pe({}.hasOwnProperty),kt=Object.hasOwn||function(e,t){return jc(ns(e),t)},Pn=pe,Bc=0,Ea=Math.random(),Dn=Pn(1 .toString),Mi=function(e){return"Symbol("+(e===void 0?"":e)+")_"+Dn(++Bc+Ea,36)},rs=re,Cd=Pr.exports,Fc=kt,Hc=Mi,is=Yo,as=Xo,$r=Cd("wks"),At=rs.Symbol,os=At&&At.for,Gc=as?At:At&&At.withoutSetter||Hc,tt=function(e){if(!Fc($r,e)||!is&&typeof $r[e]!="string"){var t="Symbol."+e;is&&Fc(At,e)?$r[e]=At[e]:$r[e]=as&&os?os(t):Gc(t)}return $r[e]},zc=Ke,ss=at,Wc=Di,qc=Kt,Jc=function(e,t){var n,i;if(t==="string"&&Zo(n=e.toString)&&!Xr(i=Li(n,e))||Zo(n=e.valueOf)&&!Xr(i=Li(n,e))||t!=="string"&&Zo(n=e.toString)&&!Xr(i=Li(n,e)))return i;throw es("Can't convert object to primitive value")},Ra=TypeError,Kc=tt("toPrimitive"),Ni=function(e,t){if(!ss(e)||Wc(e))return e;var n,i=qc(e,Kc);if(i){if(t===void 0&&(t="default"),n=zc(i,e,t),!ss(n)||Wc(n))return n;throw Ra("Can't convert object to primitive value")}return t===void 0&&(t="number"),Jc(e,t)},Ui=Ni,Ed=Di,Aa=function(e){var t=Ui(e,"string");return Ed(t)?t:t+""},Yc=at,cs=re.document,us=Yc(cs)&&Yc(cs.createElement),mr=function(e){return us?cs.createElement(e):{}},Rd=mr,Xc=!ye&&!ue(function(){return Object.defineProperty(Rd("div"),"a",{get:function(){return 7}}).a!=7}),Ad=ye,Pd=Ke,ls=qt,Qc=Ze,$c=yn,Vi=Aa,Sn=kt,Dd=Xc,Zc=Object.getOwnPropertyDescriptor;be.f=Ad?Zc:function(e,t){if(e=$c(e),t=Vi(t),Dd)try{return Zc(e,t)}catch(n){}if(Sn(e,t))return Qc(!Pd(ls.f,e,t),e[t])};var Pt={},ds=ye&&ue(function(){return Object.defineProperty(function(){},"prototype",{value:42,writable:!1}).prototype!=42}),hs=at,fs=String,Zr=TypeError,Tt=function(e){if(hs(e))return e;throw Zr(fs(e)+" is not an object")},ps=ye,Ld=Xc,Od=ds,vr=Tt,ms=Aa,eu=TypeError,vs=Object.defineProperty,Md=Object.getOwnPropertyDescriptor,Pa="enumerable",tu="configurable",Nd="writable";Pt.f=ps?Od?function(e,t,n){if(vr(e),t=ms(t),vr(n),typeof e=="function"&&t==="prototype"&&"value"in n&&Nd in n&&!n.writable){var i=Md(e,t);i&&i.writable&&(e[t]=n.value,n={configurable:tu in n?n.configurable:i.configurable,enumerable:Pa in n?n.enumerable:i.enumerable,writable:!1})}return vs(e,t,n)}:vs:function(e,t,n){if(vr(e),t=ms(t),vr(n),Ld)try{return vs(e,t,n)}catch(i){}if("get"in n||"set"in n)throw eu("Accessors not supported");return"value"in n&&(e[t]=n.value),e};var nu=Pt,Ud=Ze,Ln=ye?function(e,t,n){return nu.f(e,t,Ud(1,n))}:function(e,t,n){return e[t]=n,e},ji={exports:{}},Da=ye,Vd=kt,ru=Function.prototype,jd=Da&&Object.getOwnPropertyDescriptor,La=Vd(ru,"name"),Xn={EXISTS:La,PROPER:La&&function(){}.name==="something",CONFIGURABLE:La&&(!Da||Da&&jd(ru,"name").configurable)},Bd=it,ei=Ca,Fd=pe(Function.toString);Bd(ei.inspectSource)||(ei.inspectSource=function(e){return Fd(e)});var Oa,ti,Bi,d=ei.inspectSource,g=it,w=re.WeakMap,L=g(w)&&/native code/.test(String(w)),B=Pr.exports,M=Mi,F=B("keys"),W=function(e){return F[e]||(F[e]=M(e))},Z={},fe=L,me=re,we=at,Ae=Ln,ve=kt,Le=Ca,Be=W,ot=Z,ut="Object already initialized",jt=me.TypeError,fn=me.WeakMap;if(fe||Le.state){var yt=Le.state||(Le.state=new fn);yt.get=yt.get,yt.has=yt.has,yt.set=yt.set,Oa=function(e,t){if(yt.has(e))throw jt(ut);return t.facade=e,yt.set(e,t),t},ti=function(e){return yt.get(e)||{}},Bi=function(e){return yt.has(e)}}else{var Je=Be("state");ot[Je]=!0,Oa=function(e,t){if(ve(e,Je))throw jt(ut);return t.facade=e,Ae(e,Je,t),t},ti=function(e){return ve(e,Je)?e[Je]:{}},Bi=function(e){return ve(e,Je)}}var Ye={set:Oa,get:ti,has:Bi,enforce:function(e){return Bi(e)?ti(e):Oa(e,{})},getterFor:function(e){return function(t){var n;if(!we(t)||(n=ti(t)).type!==e)throw jt("Incompatible receiver, "+e+" required");return n}}},gr=ue,Ma=it,On=kt,Na=ye,ni=Xn.CONFIGURABLE,Ua=d,gs=Ye.enforce,fw=Ye.get,iu=Object.defineProperty,pw=Na&&!gr(function(){return iu(function(){},"length",{value:8}).length!==8}),mw=String(String).split("String"),vw=ji.exports=function(e,t,n){String(t).slice(0,7)==="Symbol("&&(t="["+String(t).replace(/^Symbol\(([^)]*)\)/,"$1")+"]"),n&&n.getter&&(t="get "+t),n&&n.setter&&(t="set "+t),(!On(e,"name")||ni&&e.name!==t)&&(Na?iu(e,"name",{value:t,configurable:!0}):e.name=t),pw&&n&&On(n,"arity")&&e.length!==n.arity&&iu(e,"length",{value:n.arity});try{n&&On(n,"constructor")&&n.constructor?Na&&iu(e,"prototype",{writable:!1}):e.prototype&&(e.prototype=void 0)}catch(r){}var i=gs(e);return On(i,"source")||(i.source=mw.join(typeof t=="string"?t:"")),e};Function.prototype.toString=vw(function(){return Ma(this)&&fw(this).source||Ua(this)},"toString");var gw=it,_w=Pt,yw=ji.exports,bw=Ia,Yt=function(e,t,n,i){i||(i={});var r=i.enumerable,o=i.name!==void 0?i.name:t;if(gw(n)&&yw(n,o,i),i.global)r?e[t]=n:bw(t,n);else{try{i.unsafe?e[t]&&(r=!0):delete e[t]}catch(c){}r?e[t]=n:_w.f(e,t,{value:n,enumerable:!1,configurable:!i.nonConfigurable,writable:!i.nonWritable})}return e},ri={},Sw=Math.ceil,kw=Math.floor,Tw=Math.trunc||function(e){var t=+e;return(t>0?kw:Sw)(t)},Qn=function(e){var t=+e;return t!=t||t===0?0:Tw(t)},xw=Qn,Iw=Math.max,ww=Math.min,ii=function(e,t){var n=xw(e);return n<0?Iw(n+t,0):ww(n,t)},Cw=Qn,Ew=Math.min,_r=function(e){return e>0?Ew(Cw(e),9007199254740991):0},Rw=_r,tn=function(e){return Rw(e.length)},Aw=yn,Pw=ii,Dw=tn,fg=function(e){return function(t,n,i){var r,o=Aw(t),c=Dw(o),a=Pw(i,c);if(e&&n!=n){for(;c>a;)if((r=o[a++])!=r)return!0}else for(;c>a;a++)if((e||a in o)&&o[a]===n)return e||a||0;return!e&&-1}},_s={includes:fg(!0),indexOf:fg(!1)},Hd=kt,Lw=yn,Ow=_s.indexOf,Mw=Z,pg=pe([].push),mg=function(e,t){var n,i=Lw(e),r=0,o=[];for(n in i)!Hd(Mw,n)&&Hd(i,n)&&pg(o,n);for(;t.length>r;)Hd(i,n=t[r++])&&(~Ow(o,n)||pg(o,n));return o},Gd=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],Nw=mg,Uw=Gd.concat("length","prototype");ri.f=Object.getOwnPropertyNames||function(e){return Nw(e,Uw)};var zd={};zd.f=Object.getOwnPropertySymbols;var Vw=Rn,jw=ri,Bw=zd,Fw=Tt,Hw=pe([].concat),Gw=Vw("Reflect","ownKeys")||function(e){var t=jw.f(Fw(e)),n=Bw.f;return n?Hw(t,n(e)):t},vg=kt,zw=Gw,Ww=be,qw=Pt,Jw=ue,Kw=it,Yw=/#|\.prototype\./,ys=function(e,t){var n=Qw[Xw(e)];return n==Zw||n!=$w&&(Kw(t)?Jw(t):!!t)},Xw=ys.normalize=function(e){return String(e).replace(Yw,".").toLowerCase()},Qw=ys.data={},$w=ys.NATIVE="N",Zw=ys.POLYFILL="P",bs=ys,Wd=re,eC=be.f,tC=Ln,nC=Yt,rC=Ia,iC=function(e,t,n){for(var i=zw(t),r=qw.f,o=Ww.f,c=0;c<i.length;c++){var a=i[c];vg(e,a)||n&&vg(n,a)||r(e,a,o(t,a))}},aC=bs,Oe=function(e,t){var n,i,r,o,c,a=e.target,s=e.global,l=e.stat;if(n=s?Wd:l?Wd[a]||rC(a,{}):(Wd[a]||{}).prototype)for(i in t){if(o=t[i],r=e.dontCallGetSet?(c=eC(n,i))&&c.value:n[i],!aC(s?i:a+(l?".":"#")+i,e.forced)&&r!==void 0){if(typeof o==typeof r)continue;iC(o,r)}(e.sham||r&&r.sham)&&tC(o,"sham",!0),nC(n,i,o,e)}},oC=Oe,sC=ue,cC=yn,gg=be.f,_g=ye,uC=sC(function(){gg(1)});function qd(e){throw new Error('Could not dynamically require "'+e+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}oC({target:"Object",stat:!0,forced:!_g||uC,sham:!_g},{getOwnPropertyDescriptor:function(e,t){return gg(cC(e),t)}}),function(e,t){e.exports=function(){function n(i,r,o){function c(l,u){if(!r[l]){if(!i[l]){if(!u&&qd)return qd(l);if(a)return a(l,!0);var p=new Error("Cannot find module '"+l+"'");throw p.code="MODULE_NOT_FOUND",p}var k=r[l]={exports:{}};i[l][0].call(k.exports,function(x){return c(i[l][1][x]||x)},k,k.exports,n,i,r,o)}return r[l].exports}for(var a=qd,s=0;s<o.length;s++)c(o[s]);return c}return n}()({1:[function(n,i,r){var o=(0,n("./adapter_factory.js").adapterFactory)({window:typeof window=="undefined"?void 0:window});i.exports=o},{"./adapter_factory.js":2}],2:[function(n,i,r){function o(I){return o=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(m){return typeof m}:function(m){return m&&typeof Symbol=="function"&&m.constructor===Symbol&&m!==Symbol.prototype?"symbol":typeof m},o(I)}Object.defineProperty(r,"__esModule",{value:!0}),r.adapterFactory=E;var c=x(n("./utils")),a=x(n("./chrome/chrome_shim")),s=x(n("./firefox/firefox_shim")),l=x(n("./safari/safari_shim")),u=x(n("./common_shim")),p=x(n("sdp"));function k(I){if(typeof WeakMap!="function")return null;var m=new WeakMap,T=new WeakMap;return(k=function(v){return v?T:m})(I)}function x(I,m){if(!m&&I&&I.__esModule)return I;if(I===null||o(I)!=="object"&&typeof I!="function")return{default:I};var T=k(m);if(T&&T.has(I))return T.get(I);var v={},C=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var O in I)if(O!=="default"&&Object.prototype.hasOwnProperty.call(I,O)){var N=C?Object.getOwnPropertyDescriptor(I,O):null;N&&(N.get||N.set)?Object.defineProperty(v,O,N):v[O]=I[O]}return v.default=I,T&&T.set(I,v),v}function E(){var I=(arguments.length>0&&arguments[0]!==void 0?arguments[0]:{}).window,m=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{shimChrome:!0,shimFirefox:!0,shimSafari:!0},T=c.log,v=c.detectBrowser(I),C={browserDetails:v,commonShim:u,extractVersion:c.extractVersion,disableLog:c.disableLog,disableWarnings:c.disableWarnings,sdp:p};switch(v.browser){case"chrome":if(!a||!a.shimPeerConnection||!m.shimChrome)return T("Chrome shim is not included in this adapter release."),C;if(v.version===null)return T("Chrome shim can not determine version, not shimming."),C;T("adapter.js shimming chrome."),C.browserShim=a,u.shimAddIceCandidateNullOrEmpty(I,v),u.shimParameterlessSetLocalDescription(I,v),a.shimGetUserMedia(I,v),a.shimMediaStream(I,v),a.shimPeerConnection(I,v),a.shimOnTrack(I,v),a.shimAddTrackRemoveTrack(I,v),a.shimGetSendersWithDtmf(I,v),a.shimGetStats(I,v),a.shimSenderReceiverGetStats(I,v),a.fixNegotiationNeeded(I,v),u.shimRTCIceCandidate(I,v),u.shimRTCIceCandidateRelayProtocol(I,v),u.shimConnectionState(I,v),u.shimMaxMessageSize(I,v),u.shimSendThrowTypeError(I,v),u.removeExtmapAllowMixed(I,v);break;case"firefox":if(!s||!s.shimPeerConnection||!m.shimFirefox)return T("Firefox shim is not included in this adapter release."),C;T("adapter.js shimming firefox."),C.browserShim=s,u.shimAddIceCandidateNullOrEmpty(I,v),u.shimParameterlessSetLocalDescription(I,v),s.shimGetUserMedia(I,v),s.shimPeerConnection(I,v),s.shimOnTrack(I,v),s.shimRemoveStream(I,v),s.shimSenderGetStats(I,v),s.shimReceiverGetStats(I,v),s.shimRTCDataChannel(I,v),s.shimAddTransceiver(I,v),s.shimGetParameters(I,v),s.shimCreateOffer(I,v),s.shimCreateAnswer(I,v),u.shimRTCIceCandidate(I,v),u.shimConnectionState(I,v),u.shimMaxMessageSize(I,v),u.shimSendThrowTypeError(I,v);break;case"safari":if(!l||!m.shimSafari)return T("Safari shim is not included in this adapter release."),C;T("adapter.js shimming safari."),C.browserShim=l,u.shimAddIceCandidateNullOrEmpty(I,v),u.shimParameterlessSetLocalDescription(I,v),l.shimRTCIceServerUrls(I,v),l.shimCreateOfferLegacy(I,v),l.shimCallbacksAPI(I,v),l.shimLocalStreamsAPI(I,v),l.shimRemoteStreamsAPI(I,v),l.shimTrackEventTransceiver(I,v),l.shimGetUserMedia(I,v),l.shimAudioContext(I,v),u.shimRTCIceCandidate(I,v),u.shimRTCIceCandidateRelayProtocol(I,v),u.shimMaxMessageSize(I,v),u.shimSendThrowTypeError(I,v),u.removeExtmapAllowMixed(I,v);break;default:T("Unsupported browser!")}return C}},{"./chrome/chrome_shim":3,"./common_shim":6,"./firefox/firefox_shim":7,"./safari/safari_shim":10,"./utils":11,sdp:12}],3:[function(n,i,r){Object.defineProperty(r,"__esModule",{value:!0}),r.fixNegotiationNeeded=j,r.shimAddTrackRemoveTrack=O,r.shimAddTrackRemoveTrackWithNative=C,Object.defineProperty(r,"shimGetDisplayMedia",{enumerable:!0,get:function(){return a.shimGetDisplayMedia}}),r.shimGetSendersWithDtmf=m,r.shimGetStats=T,Object.defineProperty(r,"shimGetUserMedia",{enumerable:!0,get:function(){return c.shimGetUserMedia}}),r.shimMediaStream=E,r.shimOnTrack=I,r.shimPeerConnection=N,r.shimSenderReceiverGetStats=v;var o=l(n("../utils.js")),c=n("./getusermedia"),a=n("./getdisplaymedia");function s(_){if(typeof WeakMap!="function")return null;var b=new WeakMap,R=new WeakMap;return(s=function(P){return P?R:b})(_)}function l(_,b){if(!b&&_&&_.__esModule)return _;if(_===null||x(_)!=="object"&&typeof _!="function")return{default:_};var R=s(b);if(R&&R.has(_))return R.get(_);var P={},V=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var S in _)if(S!=="default"&&Object.prototype.hasOwnProperty.call(_,S)){var h=V?Object.getOwnPropertyDescriptor(_,S):null;h&&(h.get||h.set)?Object.defineProperty(P,S,h):P[S]=_[S]}return P.default=_,R&&R.set(_,P),P}function u(_,b,R){return(b=p(b))in _?Object.defineProperty(_,b,{value:R,enumerable:!0,configurable:!0,writable:!0}):_[b]=R,_}function p(_){var b=k(_,"string");return x(b)==="symbol"?b:String(b)}function k(_,b){if(x(_)!=="object"||_===null)return _;var R=_[Symbol.toPrimitive];if(R!==void 0){var P=R.call(_,b||"default");if(x(P)!=="object")return P;throw new TypeError("@@toPrimitive must return a primitive value.")}return(b==="string"?String:Number)(_)}function x(_){return x=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(b){return typeof b}:function(b){return b&&typeof Symbol=="function"&&b.constructor===Symbol&&b!==Symbol.prototype?"symbol":typeof b},x(_)}function E(_){_.MediaStream=_.MediaStream||_.webkitMediaStream}function I(_){if(x(_)==="object"&&_.RTCPeerConnection&&!("ontrack"in _.RTCPeerConnection.prototype)){Object.defineProperty(_.RTCPeerConnection.prototype,"ontrack",{get:function(){return this._ontrack},set:function(R){this._ontrack&&this.removeEventListener("track",this._ontrack),this.addEventListener("track",this._ontrack=R)},enumerable:!0,configurable:!0});var b=_.RTCPeerConnection.prototype.setRemoteDescription;_.RTCPeerConnection.prototype.setRemoteDescription=function(){var R=this;return this._ontrackpoly||(this._ontrackpoly=function(P){P.stream.addEventListener("addtrack",function(V){var S;S=_.RTCPeerConnection.prototype.getReceivers?R.getReceivers().find(function(y){return y.track&&y.track.id===V.track.id}):{track:V.track};var h=new Event("track");h.track=V.track,h.receiver=S,h.transceiver={receiver:S},h.streams=[P.stream],R.dispatchEvent(h)}),P.stream.getTracks().forEach(function(V){var S;S=_.RTCPeerConnection.prototype.getReceivers?R.getReceivers().find(function(y){return y.track&&y.track.id===V.id}):{track:V};var h=new Event("track");h.track=V,h.receiver=S,h.transceiver={receiver:S},h.streams=[P.stream],R.dispatchEvent(h)})},this.addEventListener("addstream",this._ontrackpoly)),b.apply(this,arguments)}}else o.wrapPeerConnectionEvent(_,"track",function(R){return R.transceiver||Object.defineProperty(R,"transceiver",{value:{receiver:R.receiver}}),R})}function m(_){if(x(_)==="object"&&_.RTCPeerConnection&&!("getSenders"in _.RTCPeerConnection.prototype)&&"createDTMFSender"in _.RTCPeerConnection.prototype){var b=function(y,A){return{track:A,get dtmf(){return this._dtmf===void 0&&(A.kind==="audio"?this._dtmf=y.createDTMFSender(A):this._dtmf=null),this._dtmf},_pc:y}};if(!_.RTCPeerConnection.prototype.getSenders){_.RTCPeerConnection.prototype.getSenders=function(){return this._senders=this._senders||[],this._senders.slice()};var R=_.RTCPeerConnection.prototype.addTrack;_.RTCPeerConnection.prototype.addTrack=function(y,A){var D=R.apply(this,arguments);return D||(D=b(this,y),this._senders.push(D)),D};var P=_.RTCPeerConnection.prototype.removeTrack;_.RTCPeerConnection.prototype.removeTrack=function(y){P.apply(this,arguments);var A=this._senders.indexOf(y);A!==-1&&this._senders.splice(A,1)}}var V=_.RTCPeerConnection.prototype.addStream;_.RTCPeerConnection.prototype.addStream=function(y){var A=this;this._senders=this._senders||[],V.apply(this,[y]),y.getTracks().forEach(function(D){A._senders.push(b(A,D))})};var S=_.RTCPeerConnection.prototype.removeStream;_.RTCPeerConnection.prototype.removeStream=function(y){var A=this;this._senders=this._senders||[],S.apply(this,[y]),y.getTracks().forEach(function(D){var U=A._senders.find(function(K){return K.track===D});U&&A._senders.splice(A._senders.indexOf(U),1)})}}else if(x(_)==="object"&&_.RTCPeerConnection&&"getSenders"in _.RTCPeerConnection.prototype&&"createDTMFSender"in _.RTCPeerConnection.prototype&&_.RTCRtpSender&&!("dtmf"in _.RTCRtpSender.prototype)){var h=_.RTCPeerConnection.prototype.getSenders;_.RTCPeerConnection.prototype.getSenders=function(){var y=this,A=h.apply(this,[]);return A.forEach(function(D){return D._pc=y}),A},Object.defineProperty(_.RTCRtpSender.prototype,"dtmf",{get:function(){return this._dtmf===void 0&&(this.track.kind==="audio"?this._dtmf=this._pc.createDTMFSender(this.track):this._dtmf=null),this._dtmf}})}}function T(_){if(_.RTCPeerConnection){var b=_.RTCPeerConnection.prototype.getStats;_.RTCPeerConnection.prototype.getStats=function(){var R=this,P=Array.prototype.slice.call(arguments),V=P[0],S=P[1],h=P[2];if(arguments.length>0&&typeof V=="function")return b.apply(this,arguments);if(b.length===0&&(arguments.length===0||typeof V!="function"))return b.apply(this,[]);var y=function(U){var K={};return U.result().forEach(function(J){var ce={id:J.id,timestamp:J.timestamp,type:{localcandidate:"local-candidate",remotecandidate:"remote-candidate"}[J.type]||J.type};J.names().forEach(function(ae){ce[ae]=J.stat(ae)}),K[ce.id]=ce}),K},A=function(U){return new Map(Object.keys(U).map(function(K){return[K,U[K]]}))};if(arguments.length>=2){var D=function(U){S(A(y(U)))};return b.apply(this,[D,V])}return new Promise(function(U,K){b.apply(R,[function(J){U(A(y(J)))},K])}).then(S,h)}}}function v(_){if(x(_)==="object"&&_.RTCPeerConnection&&_.RTCRtpSender&&_.RTCRtpReceiver){if(!("getStats"in _.RTCRtpSender.prototype)){var b=_.RTCPeerConnection.prototype.getSenders;b&&(_.RTCPeerConnection.prototype.getSenders=function(){var S=this,h=b.apply(this,[]);return h.forEach(function(y){return y._pc=S}),h});var R=_.RTCPeerConnection.prototype.addTrack;R&&(_.RTCPeerConnection.prototype.addTrack=function(){var S=R.apply(this,arguments);return S._pc=this,S}),_.RTCRtpSender.prototype.getStats=function(){var S=this;return this._pc.getStats().then(function(h){return o.filterStats(h,S.track,!0)})}}if(!("getStats"in _.RTCRtpReceiver.prototype)){var P=_.RTCPeerConnection.prototype.getReceivers;P&&(_.RTCPeerConnection.prototype.getReceivers=function(){var S=this,h=P.apply(this,[]);return h.forEach(function(y){return y._pc=S}),h}),o.wrapPeerConnectionEvent(_,"track",function(S){return S.receiver._pc=S.srcElement,S}),_.RTCRtpReceiver.prototype.getStats=function(){var S=this;return this._pc.getStats().then(function(h){return o.filterStats(h,S.track,!1)})}}if("getStats"in _.RTCRtpSender.prototype&&"getStats"in _.RTCRtpReceiver.prototype){var V=_.RTCPeerConnection.prototype.getStats;_.RTCPeerConnection.prototype.getStats=function(){if(arguments.length>0&&arguments[0]instanceof _.MediaStreamTrack){var S,h,y,A=arguments[0];return this.getSenders().forEach(function(D){D.track===A&&(S?y=!0:S=D)}),this.getReceivers().forEach(function(D){return D.track===A&&(h?y=!0:h=D),D.track===A}),y||S&&h?Promise.reject(new DOMException("There are more than one sender or receiver for the track.","InvalidAccessError")):S?S.getStats():h?h.getStats():Promise.reject(new DOMException("There is no sender or receiver for the track.","InvalidAccessError"))}return V.apply(this,arguments)}}}}function C(_){_.RTCPeerConnection.prototype.getLocalStreams=function(){var S=this;return this._shimmedLocalStreams=this._shimmedLocalStreams||{},Object.keys(this._shimmedLocalStreams).map(function(h){return S._shimmedLocalStreams[h][0]})};var b=_.RTCPeerConnection.prototype.addTrack;_.RTCPeerConnection.prototype.addTrack=function(S,h){if(!h)return b.apply(this,arguments);this._shimmedLocalStreams=this._shimmedLocalStreams||{};var y=b.apply(this,arguments);return this._shimmedLocalStreams[h.id]?this._shimmedLocalStreams[h.id].indexOf(y)===-1&&this._shimmedLocalStreams[h.id].push(y):this._shimmedLocalStreams[h.id]=[h,y],y};var R=_.RTCPeerConnection.prototype.addStream;_.RTCPeerConnection.prototype.addStream=function(S){var h=this;this._shimmedLocalStreams=this._shimmedLocalStreams||{},S.getTracks().forEach(function(D){if(h.getSenders().find(function(U){return U.track===D}))throw new DOMException("Track already exists.","InvalidAccessError")});var y=this.getSenders();R.apply(this,arguments);var A=this.getSenders().filter(function(D){return y.indexOf(D)===-1});this._shimmedLocalStreams[S.id]=[S].concat(A)};var P=_.RTCPeerConnection.prototype.removeStream;_.RTCPeerConnection.prototype.removeStream=function(S){return this._shimmedLocalStreams=this._shimmedLocalStreams||{},delete this._shimmedLocalStreams[S.id],P.apply(this,arguments)};var V=_.RTCPeerConnection.prototype.removeTrack;_.RTCPeerConnection.prototype.removeTrack=function(S){var h=this;return this._shimmedLocalStreams=this._shimmedLocalStreams||{},S&&Object.keys(this._shimmedLocalStreams).forEach(function(y){var A=h._shimmedLocalStreams[y].indexOf(S);A!==-1&&h._shimmedLocalStreams[y].splice(A,1),h._shimmedLocalStreams[y].length===1&&delete h._shimmedLocalStreams[y]}),V.apply(this,arguments)}}function O(_,b){if(_.RTCPeerConnection){if(_.RTCPeerConnection.prototype.addTrack&&b.version>=65)return C(_);var R=_.RTCPeerConnection.prototype.getLocalStreams;_.RTCPeerConnection.prototype.getLocalStreams=function(){var D=this,U=R.apply(this);return this._reverseStreams=this._reverseStreams||{},U.map(function(K){return D._reverseStreams[K.id]})};var P=_.RTCPeerConnection.prototype.addStream;_.RTCPeerConnection.prototype.addStream=function(D){var U=this;if(this._streams=this._streams||{},this._reverseStreams=this._reverseStreams||{},D.getTracks().forEach(function(J){if(U.getSenders().find(function(ce){return ce.track===J}))throw new DOMException("Track already exists.","InvalidAccessError")}),!this._reverseStreams[D.id]){var K=new _.MediaStream(D.getTracks());this._streams[D.id]=K,this._reverseStreams[K.id]=D,D=K}P.apply(this,[D])};var V=_.RTCPeerConnection.prototype.removeStream;_.RTCPeerConnection.prototype.removeStream=function(D){this._streams=this._streams||{},this._reverseStreams=this._reverseStreams||{},V.apply(this,[this._streams[D.id]||D]),delete this._reverseStreams[this._streams[D.id]?this._streams[D.id].id:D.id],delete this._streams[D.id]},_.RTCPeerConnection.prototype.addTrack=function(D,U){var K=this;if(this.signalingState==="closed")throw new DOMException("The RTCPeerConnection's signalingState is 'closed'.","InvalidStateError");var J=[].slice.call(arguments,1);if(J.length!==1||!J[0].getTracks().find(function(qe){return qe===D}))throw new DOMException("The adapter.js addTrack polyfill only supports a single stream which is associated with the specified track.","NotSupportedError");if(this.getSenders().find(function(qe){return qe.track===D}))throw new DOMException("Track already exists.","InvalidAccessError");this._streams=this._streams||{},this._reverseStreams=this._reverseStreams||{};var ce=this._streams[U.id];if(ce)ce.addTrack(D),Promise.resolve().then(function(){K.dispatchEvent(new Event("negotiationneeded"))});else{var ae=new _.MediaStream([D]);this._streams[U.id]=ae,this._reverseStreams[ae.id]=U,this.addStream(ae)}return this.getSenders().find(function(qe){return qe.track===D})},["createOffer","createAnswer"].forEach(function(D){var U=_.RTCPeerConnection.prototype[D],K=u({},D,function(){var J=this,ce=arguments;return arguments.length&&typeof arguments[0]=="function"?U.apply(this,[function(ae){var qe=y(J,ae);ce[0].apply(null,[qe])},function(ae){ce[1]&&ce[1].apply(null,ae)},arguments[2]]):U.apply(this,arguments).then(function(ae){return y(J,ae)})});_.RTCPeerConnection.prototype[D]=K[D]});var S=_.RTCPeerConnection.prototype.setLocalDescription;_.RTCPeerConnection.prototype.setLocalDescription=function(){return arguments.length&&arguments[0].type?(arguments[0]=A(this,arguments[0]),S.apply(this,arguments)):S.apply(this,arguments)};var h=Object.getOwnPropertyDescriptor(_.RTCPeerConnection.prototype,"localDescription");Object.defineProperty(_.RTCPeerConnection.prototype,"localDescription",{get:function(){var D=h.get.apply(this);return D.type===""?D:y(this,D)}}),_.RTCPeerConnection.prototype.removeTrack=function(D){var U,K=this;if(this.signalingState==="closed")throw new DOMException("The RTCPeerConnection's signalingState is 'closed'.","InvalidStateError");if(!D._pc)throw new DOMException("Argument 1 of RTCPeerConnection.removeTrack does not implement interface RTCRtpSender.","TypeError");if(D._pc!==this)throw new DOMException("Sender was not created by this connection.","InvalidAccessError");this._streams=this._streams||{},Object.keys(this._streams).forEach(function(J){K._streams[J].getTracks().find(function(ce){return D.track===ce})&&(U=K._streams[J])}),U&&(U.getTracks().length===1?this.removeStream(this._reverseStreams[U.id]):U.removeTrack(D.track),this.dispatchEvent(new Event("negotiationneeded")))}}function y(D,U){var K=U.sdp;return Object.keys(D._reverseStreams||[]).forEach(function(J){var ce=D._reverseStreams[J],ae=D._streams[ce.id];K=K.replace(new RegExp(ae.id,"g"),ce.id)}),new RTCSessionDescription({type:U.type,sdp:K})}function A(D,U){var K=U.sdp;return Object.keys(D._reverseStreams||[]).forEach(function(J){var ce=D._reverseStreams[J],ae=D._streams[ce.id];K=K.replace(new RegExp(ce.id,"g"),ae.id)}),new RTCSessionDescription({type:U.type,sdp:K})}}function N(_,b){!_.RTCPeerConnection&&_.webkitRTCPeerConnection&&(_.RTCPeerConnection=_.webkitRTCPeerConnection),_.RTCPeerConnection&&b.version<53&&["setLocalDescription","setRemoteDescription","addIceCandidate"].forEach(function(R){var P=_.RTCPeerConnection.prototype[R],V=u({},R,function(){return arguments[0]=new(R==="addIceCandidate"?_.RTCIceCandidate:_.RTCSessionDescription)(arguments[0]),P.apply(this,arguments)});_.RTCPeerConnection.prototype[R]=V[R]})}function j(_,b){o.wrapPeerConnectionEvent(_,"negotiationneeded",function(R){var P=R.target;if(!(b.version<72||P.getConfiguration&&P.getConfiguration().sdpSemantics==="plan-b")||P.signalingState==="stable")return R})}},{"../utils.js":11,"./getdisplaymedia":4,"./getusermedia":5}],4:[function(n,i,r){function o(c,a){c.navigator.mediaDevices&&"getDisplayMedia"in c.navigator.mediaDevices||c.navigator.mediaDevices&&(typeof a=="function"?c.navigator.mediaDevices.getDisplayMedia=function(s){return a(s).then(function(l){var u=s.video&&s.video.width,p=s.video&&s.video.height,k=s.video&&s.video.frameRate;return s.video={mandatory:{chromeMediaSource:"desktop",chromeMediaSourceId:l,maxFrameRate:k||3}},u&&(s.video.mandatory.maxWidth=u),p&&(s.video.mandatory.maxHeight=p),c.navigator.mediaDevices.getUserMedia(s)})}:console.error("shimGetDisplayMedia: getSourceId argument is not a function"))}Object.defineProperty(r,"__esModule",{value:!0}),r.shimGetDisplayMedia=o},{}],5:[function(n,i,r){function o(u){if(typeof WeakMap!="function")return null;var p=new WeakMap,k=new WeakMap;return(o=function(x){return x?k:p})(u)}function c(u,p){if(!p&&u&&u.__esModule)return u;if(u===null||a(u)!=="object"&&typeof u!="function")return{default:u};var k=o(p);if(k&&k.has(u))return k.get(u);var x={},E=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var I in u)if(I!=="default"&&Object.prototype.hasOwnProperty.call(u,I)){var m=E?Object.getOwnPropertyDescriptor(u,I):null;m&&(m.get||m.set)?Object.defineProperty(x,I,m):x[I]=u[I]}return x.default=u,k&&k.set(u,x),x}function a(u){return a=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(p){return typeof p}:function(p){return p&&typeof Symbol=="function"&&p.constructor===Symbol&&p!==Symbol.prototype?"symbol":typeof p},a(u)}Object.defineProperty(r,"__esModule",{value:!0}),r.shimGetUserMedia=l;var s=c(n("../utils.js")).log;function l(u,p){var k=u&&u.navigator;if(k.mediaDevices){var x=function(v){if(a(v)!=="object"||v.mandatory||v.optional)return v;var C={};return Object.keys(v).forEach(function(O){if(O!=="require"&&O!=="advanced"&&O!=="mediaSource"){var N=a(v[O])==="object"?v[O]:{ideal:v[O]};N.exact!==void 0&&typeof N.exact=="number"&&(N.min=N.max=N.exact);var j=function(b,R){return b?b+R.charAt(0).toUpperCase()+R.slice(1):R==="deviceId"?"sourceId":R};if(N.ideal!==void 0){C.optional=C.optional||[];var _={};typeof N.ideal=="number"?(_[j("min",O)]=N.ideal,C.optional.push(_),(_={})[j("max",O)]=N.ideal,C.optional.push(_)):(_[j("",O)]=N.ideal,C.optional.push(_))}N.exact!==void 0&&typeof N.exact!="number"?(C.mandatory=C.mandatory||{},C.mandatory[j("",O)]=N.exact):["min","max"].forEach(function(b){N[b]!==void 0&&(C.mandatory=C.mandatory||{},C.mandatory[j(b,O)]=N[b])})}}),v.advanced&&(C.optional=(C.optional||[]).concat(v.advanced)),C},E=function(v,C){if(p.version>=61)return C(v);if((v=JSON.parse(JSON.stringify(v)))&&a(v.audio)==="object"){var O=function(b,R,P){R in b&&!(P in b)&&(b[P]=b[R],delete b[R])};O((v=JSON.parse(JSON.stringify(v))).audio,"autoGainControl","googAutoGainControl"),O(v.audio,"noiseSuppression","googNoiseSuppression"),v.audio=x(v.audio)}if(v&&a(v.video)==="object"){var N=v.video.facingMode;N=N&&(a(N)==="object"?N:{ideal:N});var j,_=p.version<66;if(N&&(N.exact==="user"||N.exact==="environment"||N.ideal==="user"||N.ideal==="environment")&&(!k.mediaDevices.getSupportedConstraints||!k.mediaDevices.getSupportedConstraints().facingMode||_)&&(delete v.video.facingMode,N.exact==="environment"||N.ideal==="environment"?j=["back","rear"]:N.exact!=="user"&&N.ideal!=="user"||(j=["front"]),j))return k.mediaDevices.enumerateDevices().then(function(b){var R=(b=b.filter(function(P){return P.kind==="videoinput"})).find(function(P){return j.some(function(V){return P.label.toLowerCase().includes(V)})});return!R&&b.length&&j.includes("back")&&(R=b[b.length-1]),R&&(v.video.deviceId=N.exact?{exact:R.deviceId}:{ideal:R.deviceId}),v.video=x(v.video),s("chrome: "+JSON.stringify(v)),C(v)});v.video=x(v.video)}return s("chrome: "+JSON.stringify(v)),C(v)},I=function(v){return p.version>=64?v:{name:{PermissionDeniedError:"NotAllowedError",PermissionDismissedError:"NotAllowedError",InvalidStateError:"NotAllowedError",DevicesNotFoundError:"NotFoundError",ConstraintNotSatisfiedError:"OverconstrainedError",TrackStartError:"NotReadableError",MediaDeviceFailedDueToShutdown:"NotAllowedError",MediaDeviceKillSwitchOn:"NotAllowedError",TabCaptureError:"AbortError",ScreenCaptureError:"AbortError",DeviceCaptureError:"AbortError"}[v.name]||v.name,message:v.message,constraint:v.constraint||v.constraintName,toString:function(){return this.name+(this.message&&": ")+this.message}}},m=function(v,C,O){E(v,function(N){k.webkitGetUserMedia(N,C,function(j){O&&O(I(j))})})};if(k.getUserMedia=m.bind(k),k.mediaDevices.getUserMedia){var T=k.mediaDevices.getUserMedia.bind(k.mediaDevices);k.mediaDevices.getUserMedia=function(v){return E(v,function(C){return T(C).then(function(O){if(C.audio&&!O.getAudioTracks().length||C.video&&!O.getVideoTracks().length)throw O.getTracks().forEach(function(N){N.stop()}),new DOMException("","NotFoundError");return O},function(O){return Promise.reject(I(O))})})}}}}},{"../utils.js":11}],6:[function(n,i,r){Object.defineProperty(r,"__esModule",{value:!0}),r.removeExtmapAllowMixed=m,r.shimAddIceCandidateNullOrEmpty=T,r.shimConnectionState=I,r.shimMaxMessageSize=x,r.shimParameterlessSetLocalDescription=v,r.shimRTCIceCandidate=p,r.shimRTCIceCandidateRelayProtocol=k,r.shimSendThrowTypeError=E;var o=l(n("sdp")),c=s(n("./utils"));function a(C){if(typeof WeakMap!="function")return null;var O=new WeakMap,N=new WeakMap;return(a=function(j){return j?N:O})(C)}function s(C,O){if(!O&&C&&C.__esModule)return C;if(C===null||u(C)!=="object"&&typeof C!="function")return{default:C};var N=a(O);if(N&&N.has(C))return N.get(C);var j={},_=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var b in C)if(b!=="default"&&Object.prototype.hasOwnProperty.call(C,b)){var R=_?Object.getOwnPropertyDescriptor(C,b):null;R&&(R.get||R.set)?Object.defineProperty(j,b,R):j[b]=C[b]}return j.default=C,N&&N.set(C,j),j}function l(C){return C&&C.__esModule?C:{default:C}}function u(C){return u=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(O){return typeof O}:function(O){return O&&typeof Symbol=="function"&&O.constructor===Symbol&&O!==Symbol.prototype?"symbol":typeof O},u(C)}function p(C){if(!(!C.RTCIceCandidate||C.RTCIceCandidate&&"foundation"in C.RTCIceCandidate.prototype)){var O=C.RTCIceCandidate;C.RTCIceCandidate=function(N){if(u(N)==="object"&&N.candidate&&N.candidate.indexOf("a=")===0&&((N=JSON.parse(JSON.stringify(N))).candidate=N.candidate.substring(2)),N.candidate&&N.candidate.length){var j=new O(N),_=o.default.parseCandidate(N.candidate);for(var b in _)b in j||Object.defineProperty(j,b,{value:_[b]});return j.toJSON=function(){return{candidate:j.candidate,sdpMid:j.sdpMid,sdpMLineIndex:j.sdpMLineIndex,usernameFragment:j.usernameFragment}},j}return new O(N)},C.RTCIceCandidate.prototype=O.prototype,c.wrapPeerConnectionEvent(C,"icecandidate",function(N){return N.candidate&&Object.defineProperty(N,"candidate",{value:new C.RTCIceCandidate(N.candidate),writable:"false"}),N})}}function k(C){!C.RTCIceCandidate||C.RTCIceCandidate&&"relayProtocol"in C.RTCIceCandidate.prototype||c.wrapPeerConnectionEvent(C,"icecandidate",function(O){if(O.candidate){var N=o.default.parseCandidate(O.candidate.candidate);N.type==="relay"&&(O.candidate.relayProtocol={0:"tls",1:"tcp",2:"udp"}[N.priority>>24])}return O})}function x(C,O){if(C.RTCPeerConnection){"sctp"in C.RTCPeerConnection.prototype||Object.defineProperty(C.RTCPeerConnection.prototype,"sctp",{get:function(){return this._sctp===void 0?null:this._sctp}});var N=function(P){if(!P||!P.sdp)return!1;var V=o.default.splitSections(P.sdp);return V.shift(),V.some(function(S){var h=o.default.parseMLine(S);return h&&h.kind==="application"&&h.protocol.indexOf("SCTP")!==-1})},j=function(P){var V=P.sdp.match(/mozilla...THIS_IS_SDPARTA-(\d+)/);if(V===null||V.length<2)return-1;var S=parseInt(V[1],10);return S!=S?-1:S},_=function(P){var V=65536;return O.browser==="firefox"&&(V=O.version<57?P===-1?16384:2147483637:O.version<60?O.version===57?65535:65536:2147483637),V},b=function(P,V){var S=65536;O.browser==="firefox"&&O.version===57&&(S=65535);var h=o.default.matchPrefix(P.sdp,"a=max-message-size:");return h.length>0?S=parseInt(h[0].substring(19),10):O.browser==="firefox"&&V!==-1&&(S=2147483637),S},R=C.RTCPeerConnection.prototype.setRemoteDescription;C.RTCPeerConnection.prototype.setRemoteDescription=function(){if(this._sctp=null,O.browser==="chrome"&&O.version>=76&&this.getConfiguration().sdpSemantics==="plan-b"&&Object.defineProperty(this,"sctp",{get:function(){return this._sctp===void 0?null:this._sctp},enumerable:!0,configurable:!0}),N(arguments[0])){var P,V=j(arguments[0]),S=_(V),h=b(arguments[0],V);P=S===0&&h===0?Number.POSITIVE_INFINITY:S===0||h===0?Math.max(S,h):Math.min(S,h);var y={};Object.defineProperty(y,"maxMessageSize",{get:function(){return P}}),this._sctp=y}return R.apply(this,arguments)}}}function E(C){if(C.RTCPeerConnection&&"createDataChannel"in C.RTCPeerConnection.prototype){var O=C.RTCPeerConnection.prototype.createDataChannel;C.RTCPeerConnection.prototype.createDataChannel=function(){var j=O.apply(this,arguments);return N(j,this),j},c.wrapPeerConnectionEvent(C,"datachannel",function(j){return N(j.channel,j.target),j})}function N(j,_){var b=j.send;j.send=function(){var R=arguments[0],P=R.length||R.size||R.byteLength;if(j.readyState==="open"&&_.sctp&&P>_.sctp.maxMessageSize)throw new TypeError("Message too large (can send a maximum of "+_.sctp.maxMessageSize+" bytes)");return b.apply(j,arguments)}}}function I(C){if(C.RTCPeerConnection&&!("connectionState"in C.RTCPeerConnection.prototype)){var O=C.RTCPeerConnection.prototype;Object.defineProperty(O,"connectionState",{get:function(){return{completed:"connected",checking:"connecting"}[this.iceConnectionState]||this.iceConnectionState},enumerable:!0,configurable:!0}),Object.defineProperty(O,"onconnectionstatechange",{get:function(){return this._onconnectionstatechange||null},set:function(N){this._onconnectionstatechange&&(this.removeEventListener("connectionstatechange",this._onconnectionstatechange),delete this._onconnectionstatechange),N&&this.addEventListener("connectionstatechange",this._onconnectionstatechange=N)},enumerable:!0,configurable:!0}),["setLocalDescription","setRemoteDescription"].forEach(function(N){var j=O[N];O[N]=function(){return this._connectionstatechangepoly||(this._connectionstatechangepoly=function(_){var b=_.target;if(b._lastConnectionState!==b.connectionState){b._lastConnectionState=b.connectionState;var R=new Event("connectionstatechange",_);b.dispatchEvent(R)}return _},this.addEventListener("iceconnectionstatechange",this._connectionstatechangepoly)),j.apply(this,arguments)}})}}function m(C,O){if(C.RTCPeerConnection&&!(O.browser==="chrome"&&O.version>=71||O.browser==="safari"&&O.version>=605)){var N=C.RTCPeerConnection.prototype.setRemoteDescription;C.RTCPeerConnection.prototype.setRemoteDescription=function(j){if(j&&j.sdp&&j.sdp.indexOf(`
|
|
5
|
-
a=extmap-allow-mixed`)!==-1){var _=
|
|
4
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var o,c=!0,a=!1;return{s:function(){n=n.call(e)},n:function(){var s=n.next();return c=s.done,s},e:function(s){a=!0,o=s},f:function(){try{c||n.return==null||n.return()}finally{if(a)throw o}}}}function X(e,t,n,i,r){var o={};return Object.keys(i).forEach(function(c){o[c]=i[c]}),o.enumerable=!!o.enumerable,o.configurable=!!o.configurable,("value"in o||o.initializer)&&(o.writable=!0),o=n.slice().reverse().reduce(function(c,a){return a(e,t,c)||c},o),r&&o.initializer!==void 0&&(o.value=o.initializer?o.initializer.call(r):void 0,o.initializer=void 0),o.initializer===void 0&&(Object.defineProperty(e,t,o),o=null),o}var ce=typeof globalThis!="undefined"?globalThis:typeof window!="undefined"?window:typeof global!="undefined"?global:typeof self!="undefined"?self:{},z=function(e){return e&&e.Math==Math&&e},re=z(typeof globalThis=="object"&&globalThis)||z(typeof window=="object"&&window)||z(typeof self=="object"&&self)||z(typeof ce=="object"&&ce)||function(){return this}()||Function("return this")(),be={},ue=function(e){try{return!!e()}catch(t){return!0}},ye=!ue(function(){return Object.defineProperty({},1,{get:function(){return 7}})[1]!=7}),Me=!ue(function(){var e=function(){}.bind();return typeof e!="function"||e.hasOwnProperty("prototype")}),Jt=Me,Zt=Function.prototype.call,Ke=Jt?Zt.bind(Zt):function(){return Zt.apply(Zt,arguments)},qt={},ft={}.propertyIsEnumerable,Jn=Object.getOwnPropertyDescriptor,hr=Jn&&!ft.call({1:2},1);qt.f=hr?function(e){var t=Jn(this,e);return!!t&&t.enumerable}:ft;var Ht,Rn,Ze=function(e,t){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:t}},Gt=Me,qn=Function.prototype,he=qn.call,de=Gt&&qn.bind.bind(he,he),Ne=function(e){return Gt?de(e):function(){return he.apply(e,arguments)}},We=Ne,De=We({}.toString),ut=We("".slice),rt=function(e){return ut(De(e),8,-1)},Ut=rt,en=Ne,pe=function(e){if(Ut(e)==="Function")return en(e)},Ot=ue,Kt=rt,fr=Object,Pi=pe("".split),yn=Ot(function(){return!fr("z").propertyIsEnumerable(0)})?function(e){return Kt(e)=="String"?Pi(e,""):fr(e)}:fr,Rt=function(e){return e==null},Cd=Rt,Lt=TypeError,pt=function(e){if(Cd(e))throw Lt("Can't call method on "+e);return e},Dc=yn,Oc=pt,bn=function(e){return Dc(Oc(e))},ba=typeof document=="object"&&document.all,Di={all:ba,IS_HTMLDDA:ba===void 0&&ba!==void 0},Lc=Di.all,it=Di.IS_HTMLDDA?function(e){return typeof e=="function"||e===Lc}:function(e){return typeof e=="function"},Sa=it,Mc=Di.all,at=Di.IS_HTMLDDA?function(e){return typeof e=="object"?e!==null:Sa(e)||e===Mc}:function(e){return typeof e=="object"?e!==null:Sa(e)},ka=re,qo=it,Nc=function(e){return qo(e)?e:void 0},An=function(e,t){return arguments.length<2?Nc(ka[e]):ka[e]&&ka[e][t]},Sn=pe({}.isPrototypeOf),Kn=An("navigator","userAgent")||"",Uc=re,Ta=Kn,Xr=Uc.process,xa=Uc.Deno,Ko=Xr&&Xr.versions||xa&&xa.version,Xo=Ko&&Ko.v8;Xo&&(Rn=(Ht=Xo.split("."))[0]>0&&Ht[0]<4?1:+(Ht[0]+Ht[1])),!Rn&&Ta&&(!(Ht=Ta.match(/Edge\/(\d+)/))||Ht[1]>=74)&&(Ht=Ta.match(/Chrome\/(\d+)/))&&(Rn=+Ht[1]);var pr=Rn,mr=pr,Oi=ue,Qo=!!Object.getOwnPropertySymbols&&!Oi(function(){var e=Symbol();return!String(e)||!(Object(e)instanceof Symbol)||!Symbol.sham&&mr&&mr<41}),Yo=Qo&&!Symbol.sham&&typeof Symbol.iterator=="symbol",$o=An,Vc=it,Ar=Sn,Zo=Object,Li=Yo?function(e){return typeof e=="symbol"}:function(e){var t=$o("Symbol");return Vc(t)&&Ar(t.prototype,Zo(e))},Ia=String,Xn=function(e){try{return Ia(e)}catch(t){return"Object"}},Ed=it,Qr=Xn,Qn=TypeError,Vt=function(e){if(Ed(e))return e;throw Qn(Qr(e)+" is not a function")},jc=Vt,It=Rt,Xt=function(e,t){var n=e[t];return It(n)?void 0:jc(n)},Mi=Ke,es=it,Yr=at,ts=TypeError,Pr={exports:{}},$r=re,wa=Object.defineProperty,Ca=function(e,t){try{wa($r,e,{value:t,configurable:!0,writable:!0})}catch(n){$r[e]=t}return t},ns=Ca,Ea="__core-js_shared__",Ra=re[Ea]||ns(Ea,{}),pn=Ra;(Pr.exports=function(e,t){return pn[e]||(pn[e]=t!==void 0?t:{})})("versions",[]).push({version:"3.25.5",mode:"global",copyright:"\xA9 2014-2022 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.25.5/LICENSE",source:"https://github.com/zloirock/core-js"});var Pn=pt,Ni=Object,Mt=function(e){return Ni(Pn(e))},rs=Mt,Bc=pe({}.hasOwnProperty),kt=Object.hasOwn||function(e,t){return Bc(rs(e),t)},Dn=pe,Fc=0,Aa=Math.random(),On=Dn(1 .toString),Ui=function(e){return"Symbol("+(e===void 0?"":e)+")_"+On(++Fc+Aa,36)},is=re,Rd=Pr.exports,Hc=kt,Gc=Ui,as=Qo,os=Yo,Zr=Rd("wks"),At=is.Symbol,ss=At&&At.for,zc=os?At:At&&At.withoutSetter||Gc,tt=function(e){if(!Hc(Zr,e)||!as&&typeof Zr[e]!="string"){var t="Symbol."+e;as&&Hc(At,e)?Zr[e]=At[e]:Zr[e]=os&&ss?ss(t):zc(t)}return Zr[e]},Wc=Ke,cs=at,Jc=Li,qc=Xt,Kc=function(e,t){var n,i;if(t==="string"&&es(n=e.toString)&&!Yr(i=Mi(n,e))||es(n=e.valueOf)&&!Yr(i=Mi(n,e))||t!=="string"&&es(n=e.toString)&&!Yr(i=Mi(n,e)))return i;throw ts("Can't convert object to primitive value")},Pa=TypeError,Xc=tt("toPrimitive"),Vi=function(e,t){if(!cs(e)||Jc(e))return e;var n,i=qc(e,Xc);if(i){if(t===void 0&&(t="default"),n=Wc(i,e,t),!cs(n)||Jc(n))return n;throw Pa("Can't convert object to primitive value")}return t===void 0&&(t="number"),Kc(e,t)},ji=Vi,Ad=Li,Da=function(e){var t=ji(e,"string");return Ad(t)?t:t+""},Qc=at,us=re.document,ls=Qc(us)&&Qc(us.createElement),vr=function(e){return ls?us.createElement(e):{}},Pd=vr,Yc=!ye&&!ue(function(){return Object.defineProperty(Pd("div"),"a",{get:function(){return 7}}).a!=7}),Dd=ye,Od=Ke,ds=qt,$c=Ze,Zc=bn,Bi=Da,kn=kt,Ld=Yc,eu=Object.getOwnPropertyDescriptor;be.f=Dd?eu:function(e,t){if(e=Zc(e),t=Bi(t),Ld)try{return eu(e,t)}catch(n){}if(kn(e,t))return $c(!Od(ds.f,e,t),e[t])};var Pt={},hs=ye&&ue(function(){return Object.defineProperty(function(){},"prototype",{value:42,writable:!1}).prototype!=42}),fs=at,ps=String,ei=TypeError,Tt=function(e){if(fs(e))return e;throw ei(ps(e)+" is not an object")},ms=ye,Md=Yc,Nd=hs,gr=Tt,vs=Da,tu=TypeError,gs=Object.defineProperty,Ud=Object.getOwnPropertyDescriptor,Oa="enumerable",nu="configurable",Vd="writable";Pt.f=ms?Nd?function(e,t,n){if(gr(e),t=vs(t),gr(n),typeof e=="function"&&t==="prototype"&&"value"in n&&Vd in n&&!n.writable){var i=Ud(e,t);i&&i.writable&&(e[t]=n.value,n={configurable:nu in n?n.configurable:i.configurable,enumerable:Oa in n?n.enumerable:i.enumerable,writable:!1})}return gs(e,t,n)}:gs:function(e,t,n){if(gr(e),t=vs(t),gr(n),Md)try{return gs(e,t,n)}catch(i){}if("get"in n||"set"in n)throw tu("Accessors not supported");return"value"in n&&(e[t]=n.value),e};var ru=Pt,jd=Ze,Ln=ye?function(e,t,n){return ru.f(e,t,jd(1,n))}:function(e,t,n){return e[t]=n,e},Fi={exports:{}},La=ye,Bd=kt,iu=Function.prototype,Fd=La&&Object.getOwnPropertyDescriptor,Ma=Bd(iu,"name"),Yn={EXISTS:Ma,PROPER:Ma&&function(){}.name==="something",CONFIGURABLE:Ma&&(!La||La&&Fd(iu,"name").configurable)},Hd=it,ti=Ra,Gd=pe(Function.toString);Hd(ti.inspectSource)||(ti.inspectSource=function(e){return Gd(e)});var Na,ni,Hi,d=ti.inspectSource,g=it,C=re.WeakMap,O=g(C)&&/native code/.test(String(C)),B=Pr.exports,M=Ui,F=B("keys"),W=function(e){return F[e]||(F[e]=M(e))},ee={},fe=O,me=re,we=at,Ae=Ln,ve=kt,Oe=Ra,Be=W,ot=ee,lt="Object already initialized",jt=me.TypeError,mn=me.WeakMap;if(fe||Oe.state){var bt=Oe.state||(Oe.state=new mn);bt.get=bt.get,bt.has=bt.has,bt.set=bt.set,Na=function(e,t){if(bt.has(e))throw jt(lt);return t.facade=e,bt.set(e,t),t},ni=function(e){return bt.get(e)||{}},Hi=function(e){return bt.has(e)}}else{var qe=Be("state");ot[qe]=!0,Na=function(e,t){if(ve(e,qe))throw jt(lt);return t.facade=e,Ae(e,qe,t),t},ni=function(e){return ve(e,qe)?e[qe]:{}},Hi=function(e){return ve(e,qe)}}var Xe={set:Na,get:ni,has:Hi,enforce:function(e){return Hi(e)?ni(e):Na(e,{})},getterFor:function(e){return function(t){var n;if(!we(t)||(n=ni(t)).type!==e)throw jt("Incompatible receiver, "+e+" required");return n}}},_r=ue,Ua=it,Mn=kt,Va=ye,ri=Yn.CONFIGURABLE,ja=d,_s=Xe.enforce,yw=Xe.get,au=Object.defineProperty,bw=Va&&!_r(function(){return au(function(){},"length",{value:8}).length!==8}),Sw=String(String).split("String"),kw=Fi.exports=function(e,t,n){String(t).slice(0,7)==="Symbol("&&(t="["+String(t).replace(/^Symbol\(([^)]*)\)/,"$1")+"]"),n&&n.getter&&(t="get "+t),n&&n.setter&&(t="set "+t),(!Mn(e,"name")||ri&&e.name!==t)&&(Va?au(e,"name",{value:t,configurable:!0}):e.name=t),bw&&n&&Mn(n,"arity")&&e.length!==n.arity&&au(e,"length",{value:n.arity});try{n&&Mn(n,"constructor")&&n.constructor?Va&&au(e,"prototype",{writable:!1}):e.prototype&&(e.prototype=void 0)}catch(r){}var i=_s(e);return Mn(i,"source")||(i.source=Sw.join(typeof t=="string"?t:"")),e};Function.prototype.toString=kw(function(){return Ua(this)&&yw(this).source||ja(this)},"toString");var Tw=it,xw=Pt,Iw=Fi.exports,ww=Ca,Qt=function(e,t,n,i){i||(i={});var r=i.enumerable,o=i.name!==void 0?i.name:t;if(Tw(n)&&Iw(n,o,i),i.global)r?e[t]=n:ww(t,n);else{try{i.unsafe?e[t]&&(r=!0):delete e[t]}catch(c){}r?e[t]=n:xw.f(e,t,{value:n,enumerable:!1,configurable:!i.nonConfigurable,writable:!i.nonWritable})}return e},ii={},Cw=Math.ceil,Ew=Math.floor,Rw=Math.trunc||function(e){var t=+e;return(t>0?Ew:Cw)(t)},$n=function(e){var t=+e;return t!=t||t===0?0:Rw(t)},Aw=$n,Pw=Math.max,Dw=Math.min,ai=function(e,t){var n=Aw(e);return n<0?Pw(n+t,0):Dw(n,t)},Ow=$n,Lw=Math.min,yr=function(e){return e>0?Lw(Ow(e),9007199254740991):0},Mw=yr,nn=function(e){return Mw(e.length)},Nw=bn,Uw=ai,Vw=nn,pg=function(e){return function(t,n,i){var r,o=Nw(t),c=Vw(o),a=Uw(i,c);if(e&&n!=n){for(;c>a;)if((r=o[a++])!=r)return!0}else for(;c>a;a++)if((e||a in o)&&o[a]===n)return e||a||0;return!e&&-1}},ys={includes:pg(!0),indexOf:pg(!1)},zd=kt,jw=bn,Bw=ys.indexOf,Fw=ee,mg=pe([].push),vg=function(e,t){var n,i=jw(e),r=0,o=[];for(n in i)!zd(Fw,n)&&zd(i,n)&&mg(o,n);for(;t.length>r;)zd(i,n=t[r++])&&(~Bw(o,n)||mg(o,n));return o},Wd=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],Hw=vg,Gw=Wd.concat("length","prototype");ii.f=Object.getOwnPropertyNames||function(e){return Hw(e,Gw)};var Jd={};Jd.f=Object.getOwnPropertySymbols;var zw=An,Ww=ii,Jw=Jd,qw=Tt,Kw=pe([].concat),Xw=zw("Reflect","ownKeys")||function(e){var t=Ww.f(qw(e)),n=Jw.f;return n?Kw(t,n(e)):t},gg=kt,Qw=Xw,Yw=be,$w=Pt,Zw=ue,eC=it,tC=/#|\.prototype\./,bs=function(e,t){var n=rC[nC(e)];return n==aC||n!=iC&&(eC(t)?Zw(t):!!t)},nC=bs.normalize=function(e){return String(e).replace(tC,".").toLowerCase()},rC=bs.data={},iC=bs.NATIVE="N",aC=bs.POLYFILL="P",Ss=bs,qd=re,oC=be.f,sC=Ln,cC=Qt,uC=Ca,lC=function(e,t,n){for(var i=Qw(t),r=$w.f,o=Yw.f,c=0;c<i.length;c++){var a=i[c];gg(e,a)||n&&gg(n,a)||r(e,a,o(t,a))}},dC=Ss,Le=function(e,t){var n,i,r,o,c,a=e.target,s=e.global,l=e.stat;if(n=s?qd:l?qd[a]||uC(a,{}):(qd[a]||{}).prototype)for(i in t){if(o=t[i],r=e.dontCallGetSet?(c=oC(n,i))&&c.value:n[i],!dC(s?i:a+(l?".":"#")+i,e.forced)&&r!==void 0){if(typeof o==typeof r)continue;lC(o,r)}(e.sham||r&&r.sham)&&sC(o,"sham",!0),cC(n,i,o,e)}},hC=Le,fC=ue,pC=bn,_g=be.f,yg=ye,mC=fC(function(){_g(1)});function Kd(e){throw new Error('Could not dynamically require "'+e+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}hC({target:"Object",stat:!0,forced:!yg||mC,sham:!yg},{getOwnPropertyDescriptor:function(e,t){return _g(pC(e),t)}}),function(e,t){e.exports=function(){function n(i,r,o){function c(l,u){if(!r[l]){if(!i[l]){if(!u&&Kd)return Kd(l);if(a)return a(l,!0);var f=new Error("Cannot find module '"+l+"'");throw f.code="MODULE_NOT_FOUND",f}var S=r[l]={exports:{}};i[l][0].call(S.exports,function(x){return c(i[l][1][x]||x)},S,S.exports,n,i,r,o)}return r[l].exports}for(var a=Kd,s=0;s<o.length;s++)c(o[s]);return c}return n}()({1:[function(n,i,r){var o=(0,n("./adapter_factory.js").adapterFactory)({window:typeof window=="undefined"?void 0:window});i.exports=o},{"./adapter_factory.js":2}],2:[function(n,i,r){function o(I){return o=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(m){return typeof m}:function(m){return m&&typeof Symbol=="function"&&m.constructor===Symbol&&m!==Symbol.prototype?"symbol":typeof m},o(I)}Object.defineProperty(r,"__esModule",{value:!0}),r.adapterFactory=E;var c=x(n("./utils")),a=x(n("./chrome/chrome_shim")),s=x(n("./firefox/firefox_shim")),l=x(n("./safari/safari_shim")),u=x(n("./common_shim")),f=x(n("sdp"));function S(I){if(typeof WeakMap!="function")return null;var m=new WeakMap,T=new WeakMap;return(S=function(v){return v?T:m})(I)}function x(I,m){if(!m&&I&&I.__esModule)return I;if(I===null||o(I)!=="object"&&typeof I!="function")return{default:I};var T=S(m);if(T&&T.has(I))return T.get(I);var v={},w=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var L in I)if(L!=="default"&&Object.prototype.hasOwnProperty.call(I,L)){var N=w?Object.getOwnPropertyDescriptor(I,L):null;N&&(N.get||N.set)?Object.defineProperty(v,L,N):v[L]=I[L]}return v.default=I,T&&T.set(I,v),v}function E(){var I=(arguments.length>0&&arguments[0]!==void 0?arguments[0]:{}).window,m=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{shimChrome:!0,shimFirefox:!0,shimSafari:!0},T=c.log,v=c.detectBrowser(I),w={browserDetails:v,commonShim:u,extractVersion:c.extractVersion,disableLog:c.disableLog,disableWarnings:c.disableWarnings,sdp:f};switch(v.browser){case"chrome":if(!a||!a.shimPeerConnection||!m.shimChrome)return T("Chrome shim is not included in this adapter release."),w;if(v.version===null)return T("Chrome shim can not determine version, not shimming."),w;T("adapter.js shimming chrome."),w.browserShim=a,u.shimAddIceCandidateNullOrEmpty(I,v),u.shimParameterlessSetLocalDescription(I,v),a.shimGetUserMedia(I,v),a.shimMediaStream(I,v),a.shimPeerConnection(I,v),a.shimOnTrack(I,v),a.shimAddTrackRemoveTrack(I,v),a.shimGetSendersWithDtmf(I,v),a.shimGetStats(I,v),a.shimSenderReceiverGetStats(I,v),a.fixNegotiationNeeded(I,v),u.shimRTCIceCandidate(I,v),u.shimRTCIceCandidateRelayProtocol(I,v),u.shimConnectionState(I,v),u.shimMaxMessageSize(I,v),u.shimSendThrowTypeError(I,v),u.removeExtmapAllowMixed(I,v);break;case"firefox":if(!s||!s.shimPeerConnection||!m.shimFirefox)return T("Firefox shim is not included in this adapter release."),w;T("adapter.js shimming firefox."),w.browserShim=s,u.shimAddIceCandidateNullOrEmpty(I,v),u.shimParameterlessSetLocalDescription(I,v),s.shimGetUserMedia(I,v),s.shimPeerConnection(I,v),s.shimOnTrack(I,v),s.shimRemoveStream(I,v),s.shimSenderGetStats(I,v),s.shimReceiverGetStats(I,v),s.shimRTCDataChannel(I,v),s.shimAddTransceiver(I,v),s.shimGetParameters(I,v),s.shimCreateOffer(I,v),s.shimCreateAnswer(I,v),u.shimRTCIceCandidate(I,v),u.shimConnectionState(I,v),u.shimMaxMessageSize(I,v),u.shimSendThrowTypeError(I,v);break;case"safari":if(!l||!m.shimSafari)return T("Safari shim is not included in this adapter release."),w;T("adapter.js shimming safari."),w.browserShim=l,u.shimAddIceCandidateNullOrEmpty(I,v),u.shimParameterlessSetLocalDescription(I,v),l.shimRTCIceServerUrls(I,v),l.shimCreateOfferLegacy(I,v),l.shimCallbacksAPI(I,v),l.shimLocalStreamsAPI(I,v),l.shimRemoteStreamsAPI(I,v),l.shimTrackEventTransceiver(I,v),l.shimGetUserMedia(I,v),l.shimAudioContext(I,v),u.shimRTCIceCandidate(I,v),u.shimRTCIceCandidateRelayProtocol(I,v),u.shimMaxMessageSize(I,v),u.shimSendThrowTypeError(I,v),u.removeExtmapAllowMixed(I,v);break;default:T("Unsupported browser!")}return w}},{"./chrome/chrome_shim":3,"./common_shim":6,"./firefox/firefox_shim":7,"./safari/safari_shim":10,"./utils":11,sdp:12}],3:[function(n,i,r){Object.defineProperty(r,"__esModule",{value:!0}),r.fixNegotiationNeeded=V,r.shimAddTrackRemoveTrack=L,r.shimAddTrackRemoveTrackWithNative=w,Object.defineProperty(r,"shimGetDisplayMedia",{enumerable:!0,get:function(){return a.shimGetDisplayMedia}}),r.shimGetSendersWithDtmf=m,r.shimGetStats=T,Object.defineProperty(r,"shimGetUserMedia",{enumerable:!0,get:function(){return c.shimGetUserMedia}}),r.shimMediaStream=E,r.shimOnTrack=I,r.shimPeerConnection=N,r.shimSenderReceiverGetStats=v;var o=l(n("../utils.js")),c=n("./getusermedia"),a=n("./getdisplaymedia");function s(_){if(typeof WeakMap!="function")return null;var b=new WeakMap,R=new WeakMap;return(s=function(P){return P?R:b})(_)}function l(_,b){if(!b&&_&&_.__esModule)return _;if(_===null||x(_)!=="object"&&typeof _!="function")return{default:_};var R=s(b);if(R&&R.has(_))return R.get(_);var P={},U=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var k in _)if(k!=="default"&&Object.prototype.hasOwnProperty.call(_,k)){var h=U?Object.getOwnPropertyDescriptor(_,k):null;h&&(h.get||h.set)?Object.defineProperty(P,k,h):P[k]=_[k]}return P.default=_,R&&R.set(_,P),P}function u(_,b,R){return(b=f(b))in _?Object.defineProperty(_,b,{value:R,enumerable:!0,configurable:!0,writable:!0}):_[b]=R,_}function f(_){var b=S(_,"string");return x(b)==="symbol"?b:String(b)}function S(_,b){if(x(_)!=="object"||_===null)return _;var R=_[Symbol.toPrimitive];if(R!==void 0){var P=R.call(_,b||"default");if(x(P)!=="object")return P;throw new TypeError("@@toPrimitive must return a primitive value.")}return(b==="string"?String:Number)(_)}function x(_){return x=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(b){return typeof b}:function(b){return b&&typeof Symbol=="function"&&b.constructor===Symbol&&b!==Symbol.prototype?"symbol":typeof b},x(_)}function E(_){_.MediaStream=_.MediaStream||_.webkitMediaStream}function I(_){if(x(_)==="object"&&_.RTCPeerConnection&&!("ontrack"in _.RTCPeerConnection.prototype)){Object.defineProperty(_.RTCPeerConnection.prototype,"ontrack",{get:function(){return this._ontrack},set:function(R){this._ontrack&&this.removeEventListener("track",this._ontrack),this.addEventListener("track",this._ontrack=R)},enumerable:!0,configurable:!0});var b=_.RTCPeerConnection.prototype.setRemoteDescription;_.RTCPeerConnection.prototype.setRemoteDescription=function(){var R=this;return this._ontrackpoly||(this._ontrackpoly=function(P){P.stream.addEventListener("addtrack",function(U){var k;k=_.RTCPeerConnection.prototype.getReceivers?R.getReceivers().find(function(y){return y.track&&y.track.id===U.track.id}):{track:U.track};var h=new Event("track");h.track=U.track,h.receiver=k,h.transceiver={receiver:k},h.streams=[P.stream],R.dispatchEvent(h)}),P.stream.getTracks().forEach(function(U){var k;k=_.RTCPeerConnection.prototype.getReceivers?R.getReceivers().find(function(y){return y.track&&y.track.id===U.id}):{track:U};var h=new Event("track");h.track=U,h.receiver=k,h.transceiver={receiver:k},h.streams=[P.stream],R.dispatchEvent(h)})},this.addEventListener("addstream",this._ontrackpoly)),b.apply(this,arguments)}}else o.wrapPeerConnectionEvent(_,"track",function(R){return R.transceiver||Object.defineProperty(R,"transceiver",{value:{receiver:R.receiver}}),R})}function m(_){if(x(_)==="object"&&_.RTCPeerConnection&&!("getSenders"in _.RTCPeerConnection.prototype)&&"createDTMFSender"in _.RTCPeerConnection.prototype){var b=function(y,A){return{track:A,get dtmf(){return this._dtmf===void 0&&(A.kind==="audio"?this._dtmf=y.createDTMFSender(A):this._dtmf=null),this._dtmf},_pc:y}};if(!_.RTCPeerConnection.prototype.getSenders){_.RTCPeerConnection.prototype.getSenders=function(){return this._senders=this._senders||[],this._senders.slice()};var R=_.RTCPeerConnection.prototype.addTrack;_.RTCPeerConnection.prototype.addTrack=function(y,A){var D=R.apply(this,arguments);return D||(D=b(this,y),this._senders.push(D)),D};var P=_.RTCPeerConnection.prototype.removeTrack;_.RTCPeerConnection.prototype.removeTrack=function(y){P.apply(this,arguments);var A=this._senders.indexOf(y);A!==-1&&this._senders.splice(A,1)}}var U=_.RTCPeerConnection.prototype.addStream;_.RTCPeerConnection.prototype.addStream=function(y){var A=this;this._senders=this._senders||[],U.apply(this,[y]),y.getTracks().forEach(function(D){A._senders.push(b(A,D))})};var k=_.RTCPeerConnection.prototype.removeStream;_.RTCPeerConnection.prototype.removeStream=function(y){var A=this;this._senders=this._senders||[],k.apply(this,[y]),y.getTracks().forEach(function(D){var j=A._senders.find(function(K){return K.track===D});j&&A._senders.splice(A._senders.indexOf(j),1)})}}else if(x(_)==="object"&&_.RTCPeerConnection&&"getSenders"in _.RTCPeerConnection.prototype&&"createDTMFSender"in _.RTCPeerConnection.prototype&&_.RTCRtpSender&&!("dtmf"in _.RTCRtpSender.prototype)){var h=_.RTCPeerConnection.prototype.getSenders;_.RTCPeerConnection.prototype.getSenders=function(){var y=this,A=h.apply(this,[]);return A.forEach(function(D){return D._pc=y}),A},Object.defineProperty(_.RTCRtpSender.prototype,"dtmf",{get:function(){return this._dtmf===void 0&&(this.track.kind==="audio"?this._dtmf=this._pc.createDTMFSender(this.track):this._dtmf=null),this._dtmf}})}}function T(_){if(_.RTCPeerConnection){var b=_.RTCPeerConnection.prototype.getStats;_.RTCPeerConnection.prototype.getStats=function(){var R=this,P=Array.prototype.slice.call(arguments),U=P[0],k=P[1],h=P[2];if(arguments.length>0&&typeof U=="function")return b.apply(this,arguments);if(b.length===0&&(arguments.length===0||typeof U!="function"))return b.apply(this,[]);var y=function(j){var K={};return j.result().forEach(function(J){var se={id:J.id,timestamp:J.timestamp,type:{localcandidate:"local-candidate",remotecandidate:"remote-candidate"}[J.type]||J.type};J.names().forEach(function(ie){se[ie]=J.stat(ie)}),K[se.id]=se}),K},A=function(j){return new Map(Object.keys(j).map(function(K){return[K,j[K]]}))};if(arguments.length>=2){var D=function(j){k(A(y(j)))};return b.apply(this,[D,U])}return new Promise(function(j,K){b.apply(R,[function(J){j(A(y(J)))},K])}).then(k,h)}}}function v(_){if(x(_)==="object"&&_.RTCPeerConnection&&_.RTCRtpSender&&_.RTCRtpReceiver){if(!("getStats"in _.RTCRtpSender.prototype)){var b=_.RTCPeerConnection.prototype.getSenders;b&&(_.RTCPeerConnection.prototype.getSenders=function(){var k=this,h=b.apply(this,[]);return h.forEach(function(y){return y._pc=k}),h});var R=_.RTCPeerConnection.prototype.addTrack;R&&(_.RTCPeerConnection.prototype.addTrack=function(){var k=R.apply(this,arguments);return k._pc=this,k}),_.RTCRtpSender.prototype.getStats=function(){var k=this;return this._pc.getStats().then(function(h){return o.filterStats(h,k.track,!0)})}}if(!("getStats"in _.RTCRtpReceiver.prototype)){var P=_.RTCPeerConnection.prototype.getReceivers;P&&(_.RTCPeerConnection.prototype.getReceivers=function(){var k=this,h=P.apply(this,[]);return h.forEach(function(y){return y._pc=k}),h}),o.wrapPeerConnectionEvent(_,"track",function(k){return k.receiver._pc=k.srcElement,k}),_.RTCRtpReceiver.prototype.getStats=function(){var k=this;return this._pc.getStats().then(function(h){return o.filterStats(h,k.track,!1)})}}if("getStats"in _.RTCRtpSender.prototype&&"getStats"in _.RTCRtpReceiver.prototype){var U=_.RTCPeerConnection.prototype.getStats;_.RTCPeerConnection.prototype.getStats=function(){if(arguments.length>0&&arguments[0]instanceof _.MediaStreamTrack){var k,h,y,A=arguments[0];return this.getSenders().forEach(function(D){D.track===A&&(k?y=!0:k=D)}),this.getReceivers().forEach(function(D){return D.track===A&&(h?y=!0:h=D),D.track===A}),y||k&&h?Promise.reject(new DOMException("There are more than one sender or receiver for the track.","InvalidAccessError")):k?k.getStats():h?h.getStats():Promise.reject(new DOMException("There is no sender or receiver for the track.","InvalidAccessError"))}return U.apply(this,arguments)}}}}function w(_){_.RTCPeerConnection.prototype.getLocalStreams=function(){var k=this;return this._shimmedLocalStreams=this._shimmedLocalStreams||{},Object.keys(this._shimmedLocalStreams).map(function(h){return k._shimmedLocalStreams[h][0]})};var b=_.RTCPeerConnection.prototype.addTrack;_.RTCPeerConnection.prototype.addTrack=function(k,h){if(!h)return b.apply(this,arguments);this._shimmedLocalStreams=this._shimmedLocalStreams||{};var y=b.apply(this,arguments);return this._shimmedLocalStreams[h.id]?this._shimmedLocalStreams[h.id].indexOf(y)===-1&&this._shimmedLocalStreams[h.id].push(y):this._shimmedLocalStreams[h.id]=[h,y],y};var R=_.RTCPeerConnection.prototype.addStream;_.RTCPeerConnection.prototype.addStream=function(k){var h=this;this._shimmedLocalStreams=this._shimmedLocalStreams||{},k.getTracks().forEach(function(D){if(h.getSenders().find(function(j){return j.track===D}))throw new DOMException("Track already exists.","InvalidAccessError")});var y=this.getSenders();R.apply(this,arguments);var A=this.getSenders().filter(function(D){return y.indexOf(D)===-1});this._shimmedLocalStreams[k.id]=[k].concat(A)};var P=_.RTCPeerConnection.prototype.removeStream;_.RTCPeerConnection.prototype.removeStream=function(k){return this._shimmedLocalStreams=this._shimmedLocalStreams||{},delete this._shimmedLocalStreams[k.id],P.apply(this,arguments)};var U=_.RTCPeerConnection.prototype.removeTrack;_.RTCPeerConnection.prototype.removeTrack=function(k){var h=this;return this._shimmedLocalStreams=this._shimmedLocalStreams||{},k&&Object.keys(this._shimmedLocalStreams).forEach(function(y){var A=h._shimmedLocalStreams[y].indexOf(k);A!==-1&&h._shimmedLocalStreams[y].splice(A,1),h._shimmedLocalStreams[y].length===1&&delete h._shimmedLocalStreams[y]}),U.apply(this,arguments)}}function L(_,b){if(_.RTCPeerConnection){if(_.RTCPeerConnection.prototype.addTrack&&b.version>=65)return w(_);var R=_.RTCPeerConnection.prototype.getLocalStreams;_.RTCPeerConnection.prototype.getLocalStreams=function(){var D=this,j=R.apply(this);return this._reverseStreams=this._reverseStreams||{},j.map(function(K){return D._reverseStreams[K.id]})};var P=_.RTCPeerConnection.prototype.addStream;_.RTCPeerConnection.prototype.addStream=function(D){var j=this;if(this._streams=this._streams||{},this._reverseStreams=this._reverseStreams||{},D.getTracks().forEach(function(J){if(j.getSenders().find(function(se){return se.track===J}))throw new DOMException("Track already exists.","InvalidAccessError")}),!this._reverseStreams[D.id]){var K=new _.MediaStream(D.getTracks());this._streams[D.id]=K,this._reverseStreams[K.id]=D,D=K}P.apply(this,[D])};var U=_.RTCPeerConnection.prototype.removeStream;_.RTCPeerConnection.prototype.removeStream=function(D){this._streams=this._streams||{},this._reverseStreams=this._reverseStreams||{},U.apply(this,[this._streams[D.id]||D]),delete this._reverseStreams[this._streams[D.id]?this._streams[D.id].id:D.id],delete this._streams[D.id]},_.RTCPeerConnection.prototype.addTrack=function(D,j){var K=this;if(this.signalingState==="closed")throw new DOMException("The RTCPeerConnection's signalingState is 'closed'.","InvalidStateError");var J=[].slice.call(arguments,1);if(J.length!==1||!J[0].getTracks().find(function(Je){return Je===D}))throw new DOMException("The adapter.js addTrack polyfill only supports a single stream which is associated with the specified track.","NotSupportedError");if(this.getSenders().find(function(Je){return Je.track===D}))throw new DOMException("Track already exists.","InvalidAccessError");this._streams=this._streams||{},this._reverseStreams=this._reverseStreams||{};var se=this._streams[j.id];if(se)se.addTrack(D),Promise.resolve().then(function(){K.dispatchEvent(new Event("negotiationneeded"))});else{var ie=new _.MediaStream([D]);this._streams[j.id]=ie,this._reverseStreams[ie.id]=j,this.addStream(ie)}return this.getSenders().find(function(Je){return Je.track===D})},["createOffer","createAnswer"].forEach(function(D){var j=_.RTCPeerConnection.prototype[D],K=u({},D,function(){var J=this,se=arguments;return arguments.length&&typeof arguments[0]=="function"?j.apply(this,[function(ie){var Je=y(J,ie);se[0].apply(null,[Je])},function(ie){se[1]&&se[1].apply(null,ie)},arguments[2]]):j.apply(this,arguments).then(function(ie){return y(J,ie)})});_.RTCPeerConnection.prototype[D]=K[D]});var k=_.RTCPeerConnection.prototype.setLocalDescription;_.RTCPeerConnection.prototype.setLocalDescription=function(){return arguments.length&&arguments[0].type?(arguments[0]=A(this,arguments[0]),k.apply(this,arguments)):k.apply(this,arguments)};var h=Object.getOwnPropertyDescriptor(_.RTCPeerConnection.prototype,"localDescription");Object.defineProperty(_.RTCPeerConnection.prototype,"localDescription",{get:function(){var D=h.get.apply(this);return D.type===""?D:y(this,D)}}),_.RTCPeerConnection.prototype.removeTrack=function(D){var j,K=this;if(this.signalingState==="closed")throw new DOMException("The RTCPeerConnection's signalingState is 'closed'.","InvalidStateError");if(!D._pc)throw new DOMException("Argument 1 of RTCPeerConnection.removeTrack does not implement interface RTCRtpSender.","TypeError");if(D._pc!==this)throw new DOMException("Sender was not created by this connection.","InvalidAccessError");this._streams=this._streams||{},Object.keys(this._streams).forEach(function(J){K._streams[J].getTracks().find(function(se){return D.track===se})&&(j=K._streams[J])}),j&&(j.getTracks().length===1?this.removeStream(this._reverseStreams[j.id]):j.removeTrack(D.track),this.dispatchEvent(new Event("negotiationneeded")))}}function y(D,j){var K=j.sdp;return Object.keys(D._reverseStreams||[]).forEach(function(J){var se=D._reverseStreams[J],ie=D._streams[se.id];K=K.replace(new RegExp(ie.id,"g"),se.id)}),new RTCSessionDescription({type:j.type,sdp:K})}function A(D,j){var K=j.sdp;return Object.keys(D._reverseStreams||[]).forEach(function(J){var se=D._reverseStreams[J],ie=D._streams[se.id];K=K.replace(new RegExp(se.id,"g"),ie.id)}),new RTCSessionDescription({type:j.type,sdp:K})}}function N(_,b){!_.RTCPeerConnection&&_.webkitRTCPeerConnection&&(_.RTCPeerConnection=_.webkitRTCPeerConnection),_.RTCPeerConnection&&b.version<53&&["setLocalDescription","setRemoteDescription","addIceCandidate"].forEach(function(R){var P=_.RTCPeerConnection.prototype[R],U=u({},R,function(){return arguments[0]=new(R==="addIceCandidate"?_.RTCIceCandidate:_.RTCSessionDescription)(arguments[0]),P.apply(this,arguments)});_.RTCPeerConnection.prototype[R]=U[R]})}function V(_,b){o.wrapPeerConnectionEvent(_,"negotiationneeded",function(R){var P=R.target;if(!(b.version<72||P.getConfiguration&&P.getConfiguration().sdpSemantics==="plan-b")||P.signalingState==="stable")return R})}},{"../utils.js":11,"./getdisplaymedia":4,"./getusermedia":5}],4:[function(n,i,r){function o(c,a){c.navigator.mediaDevices&&"getDisplayMedia"in c.navigator.mediaDevices||c.navigator.mediaDevices&&(typeof a=="function"?c.navigator.mediaDevices.getDisplayMedia=function(s){return a(s).then(function(l){var u=s.video&&s.video.width,f=s.video&&s.video.height,S=s.video&&s.video.frameRate;return s.video={mandatory:{chromeMediaSource:"desktop",chromeMediaSourceId:l,maxFrameRate:S||3}},u&&(s.video.mandatory.maxWidth=u),f&&(s.video.mandatory.maxHeight=f),c.navigator.mediaDevices.getUserMedia(s)})}:console.error("shimGetDisplayMedia: getSourceId argument is not a function"))}Object.defineProperty(r,"__esModule",{value:!0}),r.shimGetDisplayMedia=o},{}],5:[function(n,i,r){function o(u){if(typeof WeakMap!="function")return null;var f=new WeakMap,S=new WeakMap;return(o=function(x){return x?S:f})(u)}function c(u,f){if(!f&&u&&u.__esModule)return u;if(u===null||a(u)!=="object"&&typeof u!="function")return{default:u};var S=o(f);if(S&&S.has(u))return S.get(u);var x={},E=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var I in u)if(I!=="default"&&Object.prototype.hasOwnProperty.call(u,I)){var m=E?Object.getOwnPropertyDescriptor(u,I):null;m&&(m.get||m.set)?Object.defineProperty(x,I,m):x[I]=u[I]}return x.default=u,S&&S.set(u,x),x}function a(u){return a=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(f){return typeof f}:function(f){return f&&typeof Symbol=="function"&&f.constructor===Symbol&&f!==Symbol.prototype?"symbol":typeof f},a(u)}Object.defineProperty(r,"__esModule",{value:!0}),r.shimGetUserMedia=l;var s=c(n("../utils.js")).log;function l(u,f){var S=u&&u.navigator;if(S.mediaDevices){var x=function(v){if(a(v)!=="object"||v.mandatory||v.optional)return v;var w={};return Object.keys(v).forEach(function(L){if(L!=="require"&&L!=="advanced"&&L!=="mediaSource"){var N=a(v[L])==="object"?v[L]:{ideal:v[L]};N.exact!==void 0&&typeof N.exact=="number"&&(N.min=N.max=N.exact);var V=function(b,R){return b?b+R.charAt(0).toUpperCase()+R.slice(1):R==="deviceId"?"sourceId":R};if(N.ideal!==void 0){w.optional=w.optional||[];var _={};typeof N.ideal=="number"?(_[V("min",L)]=N.ideal,w.optional.push(_),(_={})[V("max",L)]=N.ideal,w.optional.push(_)):(_[V("",L)]=N.ideal,w.optional.push(_))}N.exact!==void 0&&typeof N.exact!="number"?(w.mandatory=w.mandatory||{},w.mandatory[V("",L)]=N.exact):["min","max"].forEach(function(b){N[b]!==void 0&&(w.mandatory=w.mandatory||{},w.mandatory[V(b,L)]=N[b])})}}),v.advanced&&(w.optional=(w.optional||[]).concat(v.advanced)),w},E=function(v,w){if(f.version>=61)return w(v);if((v=JSON.parse(JSON.stringify(v)))&&a(v.audio)==="object"){var L=function(b,R,P){R in b&&!(P in b)&&(b[P]=b[R],delete b[R])};L((v=JSON.parse(JSON.stringify(v))).audio,"autoGainControl","googAutoGainControl"),L(v.audio,"noiseSuppression","googNoiseSuppression"),v.audio=x(v.audio)}if(v&&a(v.video)==="object"){var N=v.video.facingMode;N=N&&(a(N)==="object"?N:{ideal:N});var V,_=f.version<66;if(N&&(N.exact==="user"||N.exact==="environment"||N.ideal==="user"||N.ideal==="environment")&&(!S.mediaDevices.getSupportedConstraints||!S.mediaDevices.getSupportedConstraints().facingMode||_)&&(delete v.video.facingMode,N.exact==="environment"||N.ideal==="environment"?V=["back","rear"]:N.exact!=="user"&&N.ideal!=="user"||(V=["front"]),V))return S.mediaDevices.enumerateDevices().then(function(b){var R=(b=b.filter(function(P){return P.kind==="videoinput"})).find(function(P){return V.some(function(U){return P.label.toLowerCase().includes(U)})});return!R&&b.length&&V.includes("back")&&(R=b[b.length-1]),R&&(v.video.deviceId=N.exact?{exact:R.deviceId}:{ideal:R.deviceId}),v.video=x(v.video),s("chrome: "+JSON.stringify(v)),w(v)});v.video=x(v.video)}return s("chrome: "+JSON.stringify(v)),w(v)},I=function(v){return f.version>=64?v:{name:{PermissionDeniedError:"NotAllowedError",PermissionDismissedError:"NotAllowedError",InvalidStateError:"NotAllowedError",DevicesNotFoundError:"NotFoundError",ConstraintNotSatisfiedError:"OverconstrainedError",TrackStartError:"NotReadableError",MediaDeviceFailedDueToShutdown:"NotAllowedError",MediaDeviceKillSwitchOn:"NotAllowedError",TabCaptureError:"AbortError",ScreenCaptureError:"AbortError",DeviceCaptureError:"AbortError"}[v.name]||v.name,message:v.message,constraint:v.constraint||v.constraintName,toString:function(){return this.name+(this.message&&": ")+this.message}}},m=function(v,w,L){E(v,function(N){S.webkitGetUserMedia(N,w,function(V){L&&L(I(V))})})};if(S.getUserMedia=m.bind(S),S.mediaDevices.getUserMedia){var T=S.mediaDevices.getUserMedia.bind(S.mediaDevices);S.mediaDevices.getUserMedia=function(v){return E(v,function(w){return T(w).then(function(L){if(w.audio&&!L.getAudioTracks().length||w.video&&!L.getVideoTracks().length)throw L.getTracks().forEach(function(N){N.stop()}),new DOMException("","NotFoundError");return L},function(L){return Promise.reject(I(L))})})}}}}},{"../utils.js":11}],6:[function(n,i,r){Object.defineProperty(r,"__esModule",{value:!0}),r.removeExtmapAllowMixed=m,r.shimAddIceCandidateNullOrEmpty=T,r.shimConnectionState=I,r.shimMaxMessageSize=x,r.shimParameterlessSetLocalDescription=v,r.shimRTCIceCandidate=f,r.shimRTCIceCandidateRelayProtocol=S,r.shimSendThrowTypeError=E;var o=l(n("sdp")),c=s(n("./utils"));function a(w){if(typeof WeakMap!="function")return null;var L=new WeakMap,N=new WeakMap;return(a=function(V){return V?N:L})(w)}function s(w,L){if(!L&&w&&w.__esModule)return w;if(w===null||u(w)!=="object"&&typeof w!="function")return{default:w};var N=a(L);if(N&&N.has(w))return N.get(w);var V={},_=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var b in w)if(b!=="default"&&Object.prototype.hasOwnProperty.call(w,b)){var R=_?Object.getOwnPropertyDescriptor(w,b):null;R&&(R.get||R.set)?Object.defineProperty(V,b,R):V[b]=w[b]}return V.default=w,N&&N.set(w,V),V}function l(w){return w&&w.__esModule?w:{default:w}}function u(w){return u=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(L){return typeof L}:function(L){return L&&typeof Symbol=="function"&&L.constructor===Symbol&&L!==Symbol.prototype?"symbol":typeof L},u(w)}function f(w){if(!(!w.RTCIceCandidate||w.RTCIceCandidate&&"foundation"in w.RTCIceCandidate.prototype)){var L=w.RTCIceCandidate;w.RTCIceCandidate=function(N){if(u(N)==="object"&&N.candidate&&N.candidate.indexOf("a=")===0&&((N=JSON.parse(JSON.stringify(N))).candidate=N.candidate.substring(2)),N.candidate&&N.candidate.length){var V=new L(N),_=o.default.parseCandidate(N.candidate);for(var b in _)b in V||Object.defineProperty(V,b,{value:_[b]});return V.toJSON=function(){return{candidate:V.candidate,sdpMid:V.sdpMid,sdpMLineIndex:V.sdpMLineIndex,usernameFragment:V.usernameFragment}},V}return new L(N)},w.RTCIceCandidate.prototype=L.prototype,c.wrapPeerConnectionEvent(w,"icecandidate",function(N){return N.candidate&&Object.defineProperty(N,"candidate",{value:new w.RTCIceCandidate(N.candidate),writable:"false"}),N})}}function S(w){!w.RTCIceCandidate||w.RTCIceCandidate&&"relayProtocol"in w.RTCIceCandidate.prototype||c.wrapPeerConnectionEvent(w,"icecandidate",function(L){if(L.candidate){var N=o.default.parseCandidate(L.candidate.candidate);N.type==="relay"&&(L.candidate.relayProtocol={0:"tls",1:"tcp",2:"udp"}[N.priority>>24])}return L})}function x(w,L){if(w.RTCPeerConnection){"sctp"in w.RTCPeerConnection.prototype||Object.defineProperty(w.RTCPeerConnection.prototype,"sctp",{get:function(){return this._sctp===void 0?null:this._sctp}});var N=function(P){if(!P||!P.sdp)return!1;var U=o.default.splitSections(P.sdp);return U.shift(),U.some(function(k){var h=o.default.parseMLine(k);return h&&h.kind==="application"&&h.protocol.indexOf("SCTP")!==-1})},V=function(P){var U=P.sdp.match(/mozilla...THIS_IS_SDPARTA-(\d+)/);if(U===null||U.length<2)return-1;var k=parseInt(U[1],10);return k!=k?-1:k},_=function(P){var U=65536;return L.browser==="firefox"&&(U=L.version<57?P===-1?16384:2147483637:L.version<60?L.version===57?65535:65536:2147483637),U},b=function(P,U){var k=65536;L.browser==="firefox"&&L.version===57&&(k=65535);var h=o.default.matchPrefix(P.sdp,"a=max-message-size:");return h.length>0?k=parseInt(h[0].substring(19),10):L.browser==="firefox"&&U!==-1&&(k=2147483637),k},R=w.RTCPeerConnection.prototype.setRemoteDescription;w.RTCPeerConnection.prototype.setRemoteDescription=function(){if(this._sctp=null,L.browser==="chrome"&&L.version>=76&&this.getConfiguration().sdpSemantics==="plan-b"&&Object.defineProperty(this,"sctp",{get:function(){return this._sctp===void 0?null:this._sctp},enumerable:!0,configurable:!0}),N(arguments[0])){var P,U=V(arguments[0]),k=_(U),h=b(arguments[0],U);P=k===0&&h===0?Number.POSITIVE_INFINITY:k===0||h===0?Math.max(k,h):Math.min(k,h);var y={};Object.defineProperty(y,"maxMessageSize",{get:function(){return P}}),this._sctp=y}return R.apply(this,arguments)}}}function E(w){if(w.RTCPeerConnection&&"createDataChannel"in w.RTCPeerConnection.prototype){var L=w.RTCPeerConnection.prototype.createDataChannel;w.RTCPeerConnection.prototype.createDataChannel=function(){var V=L.apply(this,arguments);return N(V,this),V},c.wrapPeerConnectionEvent(w,"datachannel",function(V){return N(V.channel,V.target),V})}function N(V,_){var b=V.send;V.send=function(){var R=arguments[0],P=R.length||R.size||R.byteLength;if(V.readyState==="open"&&_.sctp&&P>_.sctp.maxMessageSize)throw new TypeError("Message too large (can send a maximum of "+_.sctp.maxMessageSize+" bytes)");return b.apply(V,arguments)}}}function I(w){if(w.RTCPeerConnection&&!("connectionState"in w.RTCPeerConnection.prototype)){var L=w.RTCPeerConnection.prototype;Object.defineProperty(L,"connectionState",{get:function(){return{completed:"connected",checking:"connecting"}[this.iceConnectionState]||this.iceConnectionState},enumerable:!0,configurable:!0}),Object.defineProperty(L,"onconnectionstatechange",{get:function(){return this._onconnectionstatechange||null},set:function(N){this._onconnectionstatechange&&(this.removeEventListener("connectionstatechange",this._onconnectionstatechange),delete this._onconnectionstatechange),N&&this.addEventListener("connectionstatechange",this._onconnectionstatechange=N)},enumerable:!0,configurable:!0}),["setLocalDescription","setRemoteDescription"].forEach(function(N){var V=L[N];L[N]=function(){return this._connectionstatechangepoly||(this._connectionstatechangepoly=function(_){var b=_.target;if(b._lastConnectionState!==b.connectionState){b._lastConnectionState=b.connectionState;var R=new Event("connectionstatechange",_);b.dispatchEvent(R)}return _},this.addEventListener("iceconnectionstatechange",this._connectionstatechangepoly)),V.apply(this,arguments)}})}}function m(w,L){if(w.RTCPeerConnection&&!(L.browser==="chrome"&&L.version>=71||L.browser==="safari"&&L.version>=605)){var N=w.RTCPeerConnection.prototype.setRemoteDescription;w.RTCPeerConnection.prototype.setRemoteDescription=function(V){if(V&&V.sdp&&V.sdp.indexOf(`
|
|
5
|
+
a=extmap-allow-mixed`)!==-1){var _=V.sdp.split(`
|
|
6
6
|
`).filter(function(b){return b.trim()!=="a=extmap-allow-mixed"}).join(`
|
|
7
|
-
`);
|
|
8
|
-
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function k(y,A){if(y){if(typeof y=="string")return I(y,A);var D=Object.prototype.toString.call(y).slice(8,-1);return D==="Object"&&y.constructor&&(D=y.constructor.name),D==="Map"||D==="Set"?Array.from(y):D==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(D)?I(y,A):void 0}}function x(y){if(typeof Symbol!="undefined"&&y[Symbol.iterator]!=null||y["@@iterator"]!=null)return Array.from(y)}function E(y){if(Array.isArray(y))return I(y)}function I(y,A){(A==null||A>y.length)&&(A=y.length);for(var D=0,U=new Array(A);D<A;D++)U[D]=y[D];return U}function m(y,A,D){return(A=T(A))in y?Object.defineProperty(y,A,{value:D,enumerable:!0,configurable:!0,writable:!0}):y[A]=D,y}function T(y){var A=v(y,"string");return C(A)==="symbol"?A:String(A)}function v(y,A){if(C(y)!=="object"||y===null)return y;var D=y[Symbol.toPrimitive];if(D!==void 0){var U=D.call(y,A||"default");if(C(U)!=="object")return U;throw new TypeError("@@toPrimitive must return a primitive value.")}return(A==="string"?String:Number)(y)}function C(y){return C=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(A){return typeof A}:function(A){return A&&typeof Symbol=="function"&&A.constructor===Symbol&&A!==Symbol.prototype?"symbol":typeof A},C(y)}function O(y){C(y)==="object"&&y.RTCTrackEvent&&"receiver"in y.RTCTrackEvent.prototype&&!("transceiver"in y.RTCTrackEvent.prototype)&&Object.defineProperty(y.RTCTrackEvent.prototype,"transceiver",{get:function(){return{receiver:this.receiver}}})}function N(y,A){if(C(y)==="object"&&(y.RTCPeerConnection||y.mozRTCPeerConnection)){!y.RTCPeerConnection&&y.mozRTCPeerConnection&&(y.RTCPeerConnection=y.mozRTCPeerConnection),A.version<53&&["setLocalDescription","setRemoteDescription","addIceCandidate"].forEach(function(K){var J=y.RTCPeerConnection.prototype[K],ce=m({},K,function(){return arguments[0]=new(K==="addIceCandidate"?y.RTCIceCandidate:y.RTCSessionDescription)(arguments[0]),J.apply(this,arguments)});y.RTCPeerConnection.prototype[K]=ce[K]});var D={inboundrtp:"inbound-rtp",outboundrtp:"outbound-rtp",candidatepair:"candidate-pair",localcandidate:"local-candidate",remotecandidate:"remote-candidate"},U=y.RTCPeerConnection.prototype.getStats;y.RTCPeerConnection.prototype.getStats=function(){var K=Array.prototype.slice.call(arguments),J=K[0],ce=K[1],ae=K[2];return U.apply(this,[J||null]).then(function(qe){if(A.version<53&&!ce)try{qe.forEach(function(Ue){Ue.type=D[Ue.type]||Ue.type})}catch(Ue){if(Ue.name!=="TypeError")throw Ue;qe.forEach(function(Fe,lt){qe.set(lt,Object.assign({},Fe,{type:D[Fe.type]||Fe.type}))})}return qe}).then(ce,ae)}}}function j(y){if(C(y)==="object"&&y.RTCPeerConnection&&y.RTCRtpSender&&(!y.RTCRtpSender||!("getStats"in y.RTCRtpSender.prototype))){var A=y.RTCPeerConnection.prototype.getSenders;A&&(y.RTCPeerConnection.prototype.getSenders=function(){var U=this,K=A.apply(this,[]);return K.forEach(function(J){return J._pc=U}),K});var D=y.RTCPeerConnection.prototype.addTrack;D&&(y.RTCPeerConnection.prototype.addTrack=function(){var U=D.apply(this,arguments);return U._pc=this,U}),y.RTCRtpSender.prototype.getStats=function(){return this.track?this._pc.getStats(this.track):Promise.resolve(new Map)}}}function _(y){if(C(y)==="object"&&y.RTCPeerConnection&&y.RTCRtpSender&&(!y.RTCRtpSender||!("getStats"in y.RTCRtpReceiver.prototype))){var A=y.RTCPeerConnection.prototype.getReceivers;A&&(y.RTCPeerConnection.prototype.getReceivers=function(){var D=this,U=A.apply(this,[]);return U.forEach(function(K){return K._pc=D}),U}),o.wrapPeerConnectionEvent(y,"track",function(D){return D.receiver._pc=D.srcElement,D}),y.RTCRtpReceiver.prototype.getStats=function(){return this._pc.getStats(this.track)}}}function b(y){y.RTCPeerConnection&&!("removeStream"in y.RTCPeerConnection.prototype)&&(y.RTCPeerConnection.prototype.removeStream=function(A){var D=this;o.deprecated("removeStream","removeTrack"),this.getSenders().forEach(function(U){U.track&&A.getTracks().includes(U.track)&&D.removeTrack(U)})})}function R(y){y.DataChannel&&!y.RTCDataChannel&&(y.RTCDataChannel=y.DataChannel)}function P(y){if(C(y)==="object"&&y.RTCPeerConnection){var A=y.RTCPeerConnection.prototype.addTransceiver;A&&(y.RTCPeerConnection.prototype.addTransceiver=function(){this.setParametersPromises=[];var D=arguments[1]&&arguments[1].sendEncodings;D===void 0&&(D=[]);var U=(D=u(D)).length>0;U&&D.forEach(function(ae){if("rid"in ae&&!/^[a-z0-9]{0,16}$/i.test(ae.rid))throw new TypeError("Invalid RID value provided.");if("scaleResolutionDownBy"in ae&&!(parseFloat(ae.scaleResolutionDownBy)>=1))throw new RangeError("scale_resolution_down_by must be >= 1.0");if("maxFramerate"in ae&&!(parseFloat(ae.maxFramerate)>=0))throw new RangeError("max_framerate must be >= 0.0")});var K=A.apply(this,arguments);if(U){var J=K.sender,ce=J.getParameters();(!("encodings"in ce)||ce.encodings.length===1&&Object.keys(ce.encodings[0]).length===0)&&(ce.encodings=D,J.sendEncodings=D,this.setParametersPromises.push(J.setParameters(ce).then(function(){delete J.sendEncodings}).catch(function(){delete J.sendEncodings})))}return K})}}function V(y){if(C(y)==="object"&&y.RTCRtpSender){var A=y.RTCRtpSender.prototype.getParameters;A&&(y.RTCRtpSender.prototype.getParameters=function(){var D=A.apply(this,arguments);return"encodings"in D||(D.encodings=[].concat(this.sendEncodings||[{}])),D})}}function S(y){if(C(y)==="object"&&y.RTCPeerConnection){var A=y.RTCPeerConnection.prototype.createOffer;y.RTCPeerConnection.prototype.createOffer=function(){var D=arguments,U=this;return this.setParametersPromises&&this.setParametersPromises.length?Promise.all(this.setParametersPromises).then(function(){return A.apply(U,D)}).finally(function(){U.setParametersPromises=[]}):A.apply(this,arguments)}}}function h(y){if(C(y)==="object"&&y.RTCPeerConnection){var A=y.RTCPeerConnection.prototype.createAnswer;y.RTCPeerConnection.prototype.createAnswer=function(){var D=arguments,U=this;return this.setParametersPromises&&this.setParametersPromises.length?Promise.all(this.setParametersPromises).then(function(){return A.apply(U,D)}).finally(function(){U.setParametersPromises=[]}):A.apply(this,arguments)}}}},{"../utils":11,"./getdisplaymedia":8,"./getusermedia":9}],8:[function(n,i,r){function o(c,a){c.navigator.mediaDevices&&"getDisplayMedia"in c.navigator.mediaDevices||c.navigator.mediaDevices&&(c.navigator.mediaDevices.getDisplayMedia=function(s){if(!s||!s.video){var l=new DOMException("getDisplayMedia without video constraints is undefined");return l.name="NotFoundError",l.code=8,Promise.reject(l)}return s.video===!0?s.video={mediaSource:a}:s.video.mediaSource=a,c.navigator.mediaDevices.getUserMedia(s)})}Object.defineProperty(r,"__esModule",{value:!0}),r.shimGetDisplayMedia=o},{}],9:[function(n,i,r){Object.defineProperty(r,"__esModule",{value:!0}),r.shimGetUserMedia=l;var o=a(n("../utils"));function c(u){if(typeof WeakMap!="function")return null;var p=new WeakMap,k=new WeakMap;return(c=function(x){return x?k:p})(u)}function a(u,p){if(!p&&u&&u.__esModule)return u;if(u===null||s(u)!=="object"&&typeof u!="function")return{default:u};var k=c(p);if(k&&k.has(u))return k.get(u);var x={},E=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var I in u)if(I!=="default"&&Object.prototype.hasOwnProperty.call(u,I)){var m=E?Object.getOwnPropertyDescriptor(u,I):null;m&&(m.get||m.set)?Object.defineProperty(x,I,m):x[I]=u[I]}return x.default=u,k&&k.set(u,x),x}function s(u){return s=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(p){return typeof p}:function(p){return p&&typeof Symbol=="function"&&p.constructor===Symbol&&p!==Symbol.prototype?"symbol":typeof p},s(u)}function l(u,p){var k=u&&u.navigator,x=u&&u.MediaStreamTrack;if(k.getUserMedia=function(v,C,O){o.deprecated("navigator.getUserMedia","navigator.mediaDevices.getUserMedia"),k.mediaDevices.getUserMedia(v).then(C,O)},!(p.version>55&&"autoGainControl"in k.mediaDevices.getSupportedConstraints())){var E=function(v,C,O){C in v&&!(O in v)&&(v[O]=v[C],delete v[C])},I=k.mediaDevices.getUserMedia.bind(k.mediaDevices);if(k.mediaDevices.getUserMedia=function(v){return s(v)==="object"&&s(v.audio)==="object"&&(v=JSON.parse(JSON.stringify(v)),E(v.audio,"autoGainControl","mozAutoGainControl"),E(v.audio,"noiseSuppression","mozNoiseSuppression")),I(v)},x&&x.prototype.getSettings){var m=x.prototype.getSettings;x.prototype.getSettings=function(){var v=m.apply(this,arguments);return E(v,"mozAutoGainControl","autoGainControl"),E(v,"mozNoiseSuppression","noiseSuppression"),v}}if(x&&x.prototype.applyConstraints){var T=x.prototype.applyConstraints;x.prototype.applyConstraints=function(v){return this.kind==="audio"&&s(v)==="object"&&(v=JSON.parse(JSON.stringify(v)),E(v,"autoGainControl","mozAutoGainControl"),E(v,"noiseSuppression","mozNoiseSuppression")),T.apply(this,[v])}}}}},{"../utils":11}],10:[function(n,i,r){Object.defineProperty(r,"__esModule",{value:!0}),r.shimAudioContext=T,r.shimCallbacksAPI=p,r.shimConstraints=x,r.shimCreateOfferLegacy=m,r.shimGetUserMedia=k,r.shimLocalStreamsAPI=l,r.shimRTCIceServerUrls=E,r.shimRemoteStreamsAPI=u,r.shimTrackEventTransceiver=I;var o=a(n("../utils"));function c(v){if(typeof WeakMap!="function")return null;var C=new WeakMap,O=new WeakMap;return(c=function(N){return N?O:C})(v)}function a(v,C){if(!C&&v&&v.__esModule)return v;if(v===null||s(v)!=="object"&&typeof v!="function")return{default:v};var O=c(C);if(O&&O.has(v))return O.get(v);var N={},j=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var _ in v)if(_!=="default"&&Object.prototype.hasOwnProperty.call(v,_)){var b=j?Object.getOwnPropertyDescriptor(v,_):null;b&&(b.get||b.set)?Object.defineProperty(N,_,b):N[_]=v[_]}return N.default=v,O&&O.set(v,N),N}function s(v){return s=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(C){return typeof C}:function(C){return C&&typeof Symbol=="function"&&C.constructor===Symbol&&C!==Symbol.prototype?"symbol":typeof C},s(v)}function l(v){if(s(v)==="object"&&v.RTCPeerConnection){if("getLocalStreams"in v.RTCPeerConnection.prototype||(v.RTCPeerConnection.prototype.getLocalStreams=function(){return this._localStreams||(this._localStreams=[]),this._localStreams}),!("addStream"in v.RTCPeerConnection.prototype)){var C=v.RTCPeerConnection.prototype.addTrack;v.RTCPeerConnection.prototype.addStream=function(O){var N=this;this._localStreams||(this._localStreams=[]),this._localStreams.includes(O)||this._localStreams.push(O),O.getAudioTracks().forEach(function(j){return C.call(N,j,O)}),O.getVideoTracks().forEach(function(j){return C.call(N,j,O)})},v.RTCPeerConnection.prototype.addTrack=function(O){for(var N=this,j=arguments.length,_=new Array(j>1?j-1:0),b=1;b<j;b++)_[b-1]=arguments[b];return _&&_.forEach(function(R){N._localStreams?N._localStreams.includes(R)||N._localStreams.push(R):N._localStreams=[R]}),C.apply(this,arguments)}}"removeStream"in v.RTCPeerConnection.prototype||(v.RTCPeerConnection.prototype.removeStream=function(O){var N=this;this._localStreams||(this._localStreams=[]);var j=this._localStreams.indexOf(O);if(j!==-1){this._localStreams.splice(j,1);var _=O.getTracks();this.getSenders().forEach(function(b){_.includes(b.track)&&N.removeTrack(b)})}})}}function u(v){if(s(v)==="object"&&v.RTCPeerConnection&&("getRemoteStreams"in v.RTCPeerConnection.prototype||(v.RTCPeerConnection.prototype.getRemoteStreams=function(){return this._remoteStreams?this._remoteStreams:[]}),!("onaddstream"in v.RTCPeerConnection.prototype))){Object.defineProperty(v.RTCPeerConnection.prototype,"onaddstream",{get:function(){return this._onaddstream},set:function(O){var N=this;this._onaddstream&&(this.removeEventListener("addstream",this._onaddstream),this.removeEventListener("track",this._onaddstreampoly)),this.addEventListener("addstream",this._onaddstream=O),this.addEventListener("track",this._onaddstreampoly=function(j){j.streams.forEach(function(_){if(N._remoteStreams||(N._remoteStreams=[]),!N._remoteStreams.includes(_)){N._remoteStreams.push(_);var b=new Event("addstream");b.stream=_,N.dispatchEvent(b)}})})}});var C=v.RTCPeerConnection.prototype.setRemoteDescription;v.RTCPeerConnection.prototype.setRemoteDescription=function(){var O=this;return this._onaddstreampoly||this.addEventListener("track",this._onaddstreampoly=function(N){N.streams.forEach(function(j){if(O._remoteStreams||(O._remoteStreams=[]),!(O._remoteStreams.indexOf(j)>=0)){O._remoteStreams.push(j);var _=new Event("addstream");_.stream=j,O.dispatchEvent(_)}})}),C.apply(O,arguments)}}}function p(v){if(s(v)==="object"&&v.RTCPeerConnection){var C=v.RTCPeerConnection.prototype,O=C.createOffer,N=C.createAnswer,j=C.setLocalDescription,_=C.setRemoteDescription,b=C.addIceCandidate;C.createOffer=function(P,V){var S=arguments.length>=2?arguments[2]:arguments[0],h=O.apply(this,[S]);return V?(h.then(P,V),Promise.resolve()):h},C.createAnswer=function(P,V){var S=arguments.length>=2?arguments[2]:arguments[0],h=N.apply(this,[S]);return V?(h.then(P,V),Promise.resolve()):h};var R=function(P,V,S){var h=j.apply(this,[P]);return S?(h.then(V,S),Promise.resolve()):h};C.setLocalDescription=R,R=function(P,V,S){var h=_.apply(this,[P]);return S?(h.then(V,S),Promise.resolve()):h},C.setRemoteDescription=R,R=function(P,V,S){var h=b.apply(this,[P]);return S?(h.then(V,S),Promise.resolve()):h},C.addIceCandidate=R}}function k(v){var C=v&&v.navigator;if(C.mediaDevices&&C.mediaDevices.getUserMedia){var O=C.mediaDevices,N=O.getUserMedia.bind(O);C.mediaDevices.getUserMedia=function(j){return N(x(j))}}!C.getUserMedia&&C.mediaDevices&&C.mediaDevices.getUserMedia&&(C.getUserMedia=function(j,_,b){C.mediaDevices.getUserMedia(j).then(_,b)}.bind(C))}function x(v){return v&&v.video!==void 0?Object.assign({},v,{video:o.compactObject(v.video)}):v}function E(v){if(v.RTCPeerConnection){var C=v.RTCPeerConnection;v.RTCPeerConnection=function(O,N){if(O&&O.iceServers){for(var j=[],_=0;_<O.iceServers.length;_++){var b=O.iceServers[_];b.urls===void 0&&b.url?(o.deprecated("RTCIceServer.url","RTCIceServer.urls"),(b=JSON.parse(JSON.stringify(b))).urls=b.url,delete b.url,j.push(b)):j.push(O.iceServers[_])}O.iceServers=j}return new C(O,N)},v.RTCPeerConnection.prototype=C.prototype,"generateCertificate"in C&&Object.defineProperty(v.RTCPeerConnection,"generateCertificate",{get:function(){return C.generateCertificate}})}}function I(v){s(v)==="object"&&v.RTCTrackEvent&&"receiver"in v.RTCTrackEvent.prototype&&!("transceiver"in v.RTCTrackEvent.prototype)&&Object.defineProperty(v.RTCTrackEvent.prototype,"transceiver",{get:function(){return{receiver:this.receiver}}})}function m(v){var C=v.RTCPeerConnection.prototype.createOffer;v.RTCPeerConnection.prototype.createOffer=function(O){if(O){O.offerToReceiveAudio!==void 0&&(O.offerToReceiveAudio=!!O.offerToReceiveAudio);var N=this.getTransceivers().find(function(_){return _.receiver.track.kind==="audio"});O.offerToReceiveAudio===!1&&N?N.direction==="sendrecv"?N.setDirection?N.setDirection("sendonly"):N.direction="sendonly":N.direction==="recvonly"&&(N.setDirection?N.setDirection("inactive"):N.direction="inactive"):O.offerToReceiveAudio!==!0||N||this.addTransceiver("audio",{direction:"recvonly"}),O.offerToReceiveVideo!==void 0&&(O.offerToReceiveVideo=!!O.offerToReceiveVideo);var j=this.getTransceivers().find(function(_){return _.receiver.track.kind==="video"});O.offerToReceiveVideo===!1&&j?j.direction==="sendrecv"?j.setDirection?j.setDirection("sendonly"):j.direction="sendonly":j.direction==="recvonly"&&(j.setDirection?j.setDirection("inactive"):j.direction="inactive"):O.offerToReceiveVideo!==!0||j||this.addTransceiver("video",{direction:"recvonly"})}return C.apply(this,arguments)}}function T(v){s(v)!=="object"||v.AudioContext||(v.AudioContext=v.webkitAudioContext)}},{"../utils":11}],11:[function(n,i,r){function o(j,_,b){return(_=c(_))in j?Object.defineProperty(j,_,{value:b,enumerable:!0,configurable:!0,writable:!0}):j[_]=b,j}function c(j){var _=a(j,"string");return s(_)==="symbol"?_:String(_)}function a(j,_){if(s(j)!=="object"||j===null)return j;var b=j[Symbol.toPrimitive];if(b!==void 0){var R=b.call(j,_||"default");if(s(R)!=="object")return R;throw new TypeError("@@toPrimitive must return a primitive value.")}return(_==="string"?String:Number)(j)}function s(j){return s=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(_){return typeof _}:function(_){return _&&typeof Symbol=="function"&&_.constructor===Symbol&&_!==Symbol.prototype?"symbol":typeof _},s(j)}Object.defineProperty(r,"__esModule",{value:!0}),r.compactObject=C,r.deprecated=m,r.detectBrowser=T,r.disableLog=x,r.disableWarnings=E,r.extractVersion=p,r.filterStats=N,r.log=I,r.walkStats=O,r.wrapPeerConnectionEvent=k;var l=!0,u=!0;function p(j,_,b){var R=j.match(_);return R&&R.length>=b&&parseInt(R[b],10)}function k(j,_,b){if(j.RTCPeerConnection){var R=j.RTCPeerConnection.prototype,P=R.addEventListener;R.addEventListener=function(S,h){if(S!==_)return P.apply(this,arguments);var y=function(A){var D=b(A);D&&(h.handleEvent?h.handleEvent(D):h(D))};return this._eventMap=this._eventMap||{},this._eventMap[_]||(this._eventMap[_]=new Map),this._eventMap[_].set(h,y),P.apply(this,[S,y])};var V=R.removeEventListener;R.removeEventListener=function(S,h){if(S!==_||!this._eventMap||!this._eventMap[_])return V.apply(this,arguments);if(!this._eventMap[_].has(h))return V.apply(this,arguments);var y=this._eventMap[_].get(h);return this._eventMap[_].delete(h),this._eventMap[_].size===0&&delete this._eventMap[_],Object.keys(this._eventMap).length===0&&delete this._eventMap,V.apply(this,[S,y])},Object.defineProperty(R,"on"+_,{get:function(){return this["_on"+_]},set:function(S){this["_on"+_]&&(this.removeEventListener(_,this["_on"+_]),delete this["_on"+_]),S&&this.addEventListener(_,this["_on"+_]=S)},enumerable:!0,configurable:!0})}}function x(j){return typeof j!="boolean"?new Error("Argument type: "+s(j)+". Please use a boolean."):(l=j,j?"adapter.js logging disabled":"adapter.js logging enabled")}function E(j){return typeof j!="boolean"?new Error("Argument type: "+s(j)+". Please use a boolean."):(u=!j,"adapter.js deprecation warnings "+(j?"disabled":"enabled"))}function I(){if((typeof window=="undefined"?"undefined":s(window))==="object"){if(l)return;typeof console!="undefined"&&typeof console.log=="function"&&console.log.apply(console,arguments)}}function m(j,_){u&&console.warn(j+" is deprecated, please use "+_+" instead.")}function T(j){var _={browser:null,version:null};if(j===void 0||!j.navigator||!j.navigator.userAgent)return _.browser="Not a browser.",_;var b=j.navigator;if(b.mozGetUserMedia)_.browser="firefox",_.version=p(b.userAgent,/Firefox\/(\d+)\./,1);else if(b.webkitGetUserMedia||j.isSecureContext===!1&&j.webkitRTCPeerConnection)_.browser="chrome",_.version=p(b.userAgent,/Chrom(e|ium)\/(\d+)\./,2);else{if(!j.RTCPeerConnection||!b.userAgent.match(/AppleWebKit\/(\d+)\./))return _.browser="Not a supported browser.",_;_.browser="safari",_.version=p(b.userAgent,/AppleWebKit\/(\d+)\./,1),_.supportsUnifiedPlan=j.RTCRtpTransceiver&&"currentDirection"in j.RTCRtpTransceiver.prototype}return _}function v(j){return Object.prototype.toString.call(j)==="[object Object]"}function C(j){return v(j)?Object.keys(j).reduce(function(_,b){var R=v(j[b]),P=R?C(j[b]):j[b],V=R&&!Object.keys(P).length;return P===void 0||V?_:Object.assign(_,o({},b,P))},{}):j}function O(j,_,b){_&&!b.has(_.id)&&(b.set(_.id,_),Object.keys(_).forEach(function(R){R.endsWith("Id")?O(j,j.get(_[R]),b):R.endsWith("Ids")&&_[R].forEach(function(P){O(j,j.get(P),b)})}))}function N(j,_,b){var R=b?"outbound-rtp":"inbound-rtp",P=new Map;if(_===null)return P;var V=[];return j.forEach(function(S){S.type==="track"&&S.trackIdentifier===_.id&&V.push(S)}),V.forEach(function(S){j.forEach(function(h){h.type===R&&h.trackId===S.id&&O(j,h,P)})}),P}},{}],12:[function(n,i,r){var o=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(a){return typeof a}:function(a){return a&&typeof Symbol=="function"&&a.constructor===Symbol&&a!==Symbol.prototype?"symbol":typeof a},c={generateIdentifier:function(){return Math.random().toString(36).substring(2,12)}};c.localCName=c.generateIdentifier(),c.splitLines=function(a){return a.trim().split(`
|
|
7
|
+
`);w.RTCSessionDescription&&V instanceof w.RTCSessionDescription?arguments[0]=new w.RTCSessionDescription({type:V.type,sdp:_}):V.sdp=_}return N.apply(this,arguments)}}}function T(w,L){if(w.RTCPeerConnection&&w.RTCPeerConnection.prototype){var N=w.RTCPeerConnection.prototype.addIceCandidate;N&&N.length!==0&&(w.RTCPeerConnection.prototype.addIceCandidate=function(){return arguments[0]?(L.browser==="chrome"&&L.version<78||L.browser==="firefox"&&L.version<68||L.browser==="safari")&&arguments[0]&&arguments[0].candidate===""?Promise.resolve():N.apply(this,arguments):(arguments[1]&&arguments[1].apply(null),Promise.resolve())})}}function v(w,L){if(w.RTCPeerConnection&&w.RTCPeerConnection.prototype){var N=w.RTCPeerConnection.prototype.setLocalDescription;N&&N.length!==0&&(w.RTCPeerConnection.prototype.setLocalDescription=function(){var V=this,_=arguments[0]||{};if(u(_)!=="object"||_.type&&_.sdp)return N.apply(this,arguments);if(!(_={type:_.type,sdp:_.sdp}).type)switch(this.signalingState){case"stable":case"have-local-offer":case"have-remote-pranswer":_.type="offer";break;default:_.type="answer"}return _.sdp||_.type!=="offer"&&_.type!=="answer"?N.apply(this,[_]):(_.type==="offer"?this.createOffer:this.createAnswer).apply(this).then(function(b){return N.apply(V,[b])})})}}},{"./utils":11,sdp:12}],7:[function(n,i,r){Object.defineProperty(r,"__esModule",{value:!0}),r.shimAddTransceiver=P,r.shimCreateAnswer=h,r.shimCreateOffer=k,Object.defineProperty(r,"shimGetDisplayMedia",{enumerable:!0,get:function(){return a.shimGetDisplayMedia}}),r.shimGetParameters=U,Object.defineProperty(r,"shimGetUserMedia",{enumerable:!0,get:function(){return c.shimGetUserMedia}}),r.shimOnTrack=L,r.shimPeerConnection=N,r.shimRTCDataChannel=R,r.shimReceiverGetStats=_,r.shimRemoveStream=b,r.shimSenderGetStats=V;var o=l(n("../utils")),c=n("./getusermedia"),a=n("./getdisplaymedia");function s(y){if(typeof WeakMap!="function")return null;var A=new WeakMap,D=new WeakMap;return(s=function(j){return j?D:A})(y)}function l(y,A){if(!A&&y&&y.__esModule)return y;if(y===null||w(y)!=="object"&&typeof y!="function")return{default:y};var D=s(A);if(D&&D.has(y))return D.get(y);var j={},K=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var J in y)if(J!=="default"&&Object.prototype.hasOwnProperty.call(y,J)){var se=K?Object.getOwnPropertyDescriptor(y,J):null;se&&(se.get||se.set)?Object.defineProperty(j,J,se):j[J]=y[J]}return j.default=y,D&&D.set(y,j),j}function u(y){return E(y)||x(y)||S(y)||f()}function f(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
|
|
8
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function S(y,A){if(y){if(typeof y=="string")return I(y,A);var D=Object.prototype.toString.call(y).slice(8,-1);return D==="Object"&&y.constructor&&(D=y.constructor.name),D==="Map"||D==="Set"?Array.from(y):D==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(D)?I(y,A):void 0}}function x(y){if(typeof Symbol!="undefined"&&y[Symbol.iterator]!=null||y["@@iterator"]!=null)return Array.from(y)}function E(y){if(Array.isArray(y))return I(y)}function I(y,A){(A==null||A>y.length)&&(A=y.length);for(var D=0,j=new Array(A);D<A;D++)j[D]=y[D];return j}function m(y,A,D){return(A=T(A))in y?Object.defineProperty(y,A,{value:D,enumerable:!0,configurable:!0,writable:!0}):y[A]=D,y}function T(y){var A=v(y,"string");return w(A)==="symbol"?A:String(A)}function v(y,A){if(w(y)!=="object"||y===null)return y;var D=y[Symbol.toPrimitive];if(D!==void 0){var j=D.call(y,A||"default");if(w(j)!=="object")return j;throw new TypeError("@@toPrimitive must return a primitive value.")}return(A==="string"?String:Number)(y)}function w(y){return w=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(A){return typeof A}:function(A){return A&&typeof Symbol=="function"&&A.constructor===Symbol&&A!==Symbol.prototype?"symbol":typeof A},w(y)}function L(y){w(y)==="object"&&y.RTCTrackEvent&&"receiver"in y.RTCTrackEvent.prototype&&!("transceiver"in y.RTCTrackEvent.prototype)&&Object.defineProperty(y.RTCTrackEvent.prototype,"transceiver",{get:function(){return{receiver:this.receiver}}})}function N(y,A){if(w(y)==="object"&&(y.RTCPeerConnection||y.mozRTCPeerConnection)){!y.RTCPeerConnection&&y.mozRTCPeerConnection&&(y.RTCPeerConnection=y.mozRTCPeerConnection),A.version<53&&["setLocalDescription","setRemoteDescription","addIceCandidate"].forEach(function(K){var J=y.RTCPeerConnection.prototype[K],se=m({},K,function(){return arguments[0]=new(K==="addIceCandidate"?y.RTCIceCandidate:y.RTCSessionDescription)(arguments[0]),J.apply(this,arguments)});y.RTCPeerConnection.prototype[K]=se[K]});var D={inboundrtp:"inbound-rtp",outboundrtp:"outbound-rtp",candidatepair:"candidate-pair",localcandidate:"local-candidate",remotecandidate:"remote-candidate"},j=y.RTCPeerConnection.prototype.getStats;y.RTCPeerConnection.prototype.getStats=function(){var K=Array.prototype.slice.call(arguments),J=K[0],se=K[1],ie=K[2];return j.apply(this,[J||null]).then(function(Je){if(A.version<53&&!se)try{Je.forEach(function(Ue){Ue.type=D[Ue.type]||Ue.type})}catch(Ue){if(Ue.name!=="TypeError")throw Ue;Je.forEach(function(Fe,ht){Je.set(ht,Object.assign({},Fe,{type:D[Fe.type]||Fe.type}))})}return Je}).then(se,ie)}}}function V(y){if(w(y)==="object"&&y.RTCPeerConnection&&y.RTCRtpSender&&(!y.RTCRtpSender||!("getStats"in y.RTCRtpSender.prototype))){var A=y.RTCPeerConnection.prototype.getSenders;A&&(y.RTCPeerConnection.prototype.getSenders=function(){var j=this,K=A.apply(this,[]);return K.forEach(function(J){return J._pc=j}),K});var D=y.RTCPeerConnection.prototype.addTrack;D&&(y.RTCPeerConnection.prototype.addTrack=function(){var j=D.apply(this,arguments);return j._pc=this,j}),y.RTCRtpSender.prototype.getStats=function(){return this.track?this._pc.getStats(this.track):Promise.resolve(new Map)}}}function _(y){if(w(y)==="object"&&y.RTCPeerConnection&&y.RTCRtpSender&&(!y.RTCRtpSender||!("getStats"in y.RTCRtpReceiver.prototype))){var A=y.RTCPeerConnection.prototype.getReceivers;A&&(y.RTCPeerConnection.prototype.getReceivers=function(){var D=this,j=A.apply(this,[]);return j.forEach(function(K){return K._pc=D}),j}),o.wrapPeerConnectionEvent(y,"track",function(D){return D.receiver._pc=D.srcElement,D}),y.RTCRtpReceiver.prototype.getStats=function(){return this._pc.getStats(this.track)}}}function b(y){y.RTCPeerConnection&&!("removeStream"in y.RTCPeerConnection.prototype)&&(y.RTCPeerConnection.prototype.removeStream=function(A){var D=this;o.deprecated("removeStream","removeTrack"),this.getSenders().forEach(function(j){j.track&&A.getTracks().includes(j.track)&&D.removeTrack(j)})})}function R(y){y.DataChannel&&!y.RTCDataChannel&&(y.RTCDataChannel=y.DataChannel)}function P(y){if(w(y)==="object"&&y.RTCPeerConnection){var A=y.RTCPeerConnection.prototype.addTransceiver;A&&(y.RTCPeerConnection.prototype.addTransceiver=function(){this.setParametersPromises=[];var D=arguments[1]&&arguments[1].sendEncodings;D===void 0&&(D=[]);var j=(D=u(D)).length>0;j&&D.forEach(function(ie){if("rid"in ie&&!/^[a-z0-9]{0,16}$/i.test(ie.rid))throw new TypeError("Invalid RID value provided.");if("scaleResolutionDownBy"in ie&&!(parseFloat(ie.scaleResolutionDownBy)>=1))throw new RangeError("scale_resolution_down_by must be >= 1.0");if("maxFramerate"in ie&&!(parseFloat(ie.maxFramerate)>=0))throw new RangeError("max_framerate must be >= 0.0")});var K=A.apply(this,arguments);if(j){var J=K.sender,se=J.getParameters();(!("encodings"in se)||se.encodings.length===1&&Object.keys(se.encodings[0]).length===0)&&(se.encodings=D,J.sendEncodings=D,this.setParametersPromises.push(J.setParameters(se).then(function(){delete J.sendEncodings}).catch(function(){delete J.sendEncodings})))}return K})}}function U(y){if(w(y)==="object"&&y.RTCRtpSender){var A=y.RTCRtpSender.prototype.getParameters;A&&(y.RTCRtpSender.prototype.getParameters=function(){var D=A.apply(this,arguments);return"encodings"in D||(D.encodings=[].concat(this.sendEncodings||[{}])),D})}}function k(y){if(w(y)==="object"&&y.RTCPeerConnection){var A=y.RTCPeerConnection.prototype.createOffer;y.RTCPeerConnection.prototype.createOffer=function(){var D=arguments,j=this;return this.setParametersPromises&&this.setParametersPromises.length?Promise.all(this.setParametersPromises).then(function(){return A.apply(j,D)}).finally(function(){j.setParametersPromises=[]}):A.apply(this,arguments)}}}function h(y){if(w(y)==="object"&&y.RTCPeerConnection){var A=y.RTCPeerConnection.prototype.createAnswer;y.RTCPeerConnection.prototype.createAnswer=function(){var D=arguments,j=this;return this.setParametersPromises&&this.setParametersPromises.length?Promise.all(this.setParametersPromises).then(function(){return A.apply(j,D)}).finally(function(){j.setParametersPromises=[]}):A.apply(this,arguments)}}}},{"../utils":11,"./getdisplaymedia":8,"./getusermedia":9}],8:[function(n,i,r){function o(c,a){c.navigator.mediaDevices&&"getDisplayMedia"in c.navigator.mediaDevices||c.navigator.mediaDevices&&(c.navigator.mediaDevices.getDisplayMedia=function(s){if(!s||!s.video){var l=new DOMException("getDisplayMedia without video constraints is undefined");return l.name="NotFoundError",l.code=8,Promise.reject(l)}return s.video===!0?s.video={mediaSource:a}:s.video.mediaSource=a,c.navigator.mediaDevices.getUserMedia(s)})}Object.defineProperty(r,"__esModule",{value:!0}),r.shimGetDisplayMedia=o},{}],9:[function(n,i,r){Object.defineProperty(r,"__esModule",{value:!0}),r.shimGetUserMedia=l;var o=a(n("../utils"));function c(u){if(typeof WeakMap!="function")return null;var f=new WeakMap,S=new WeakMap;return(c=function(x){return x?S:f})(u)}function a(u,f){if(!f&&u&&u.__esModule)return u;if(u===null||s(u)!=="object"&&typeof u!="function")return{default:u};var S=c(f);if(S&&S.has(u))return S.get(u);var x={},E=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var I in u)if(I!=="default"&&Object.prototype.hasOwnProperty.call(u,I)){var m=E?Object.getOwnPropertyDescriptor(u,I):null;m&&(m.get||m.set)?Object.defineProperty(x,I,m):x[I]=u[I]}return x.default=u,S&&S.set(u,x),x}function s(u){return s=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(f){return typeof f}:function(f){return f&&typeof Symbol=="function"&&f.constructor===Symbol&&f!==Symbol.prototype?"symbol":typeof f},s(u)}function l(u,f){var S=u&&u.navigator,x=u&&u.MediaStreamTrack;if(S.getUserMedia=function(v,w,L){o.deprecated("navigator.getUserMedia","navigator.mediaDevices.getUserMedia"),S.mediaDevices.getUserMedia(v).then(w,L)},!(f.version>55&&"autoGainControl"in S.mediaDevices.getSupportedConstraints())){var E=function(v,w,L){w in v&&!(L in v)&&(v[L]=v[w],delete v[w])},I=S.mediaDevices.getUserMedia.bind(S.mediaDevices);if(S.mediaDevices.getUserMedia=function(v){return s(v)==="object"&&s(v.audio)==="object"&&(v=JSON.parse(JSON.stringify(v)),E(v.audio,"autoGainControl","mozAutoGainControl"),E(v.audio,"noiseSuppression","mozNoiseSuppression")),I(v)},x&&x.prototype.getSettings){var m=x.prototype.getSettings;x.prototype.getSettings=function(){var v=m.apply(this,arguments);return E(v,"mozAutoGainControl","autoGainControl"),E(v,"mozNoiseSuppression","noiseSuppression"),v}}if(x&&x.prototype.applyConstraints){var T=x.prototype.applyConstraints;x.prototype.applyConstraints=function(v){return this.kind==="audio"&&s(v)==="object"&&(v=JSON.parse(JSON.stringify(v)),E(v,"autoGainControl","mozAutoGainControl"),E(v,"noiseSuppression","mozNoiseSuppression")),T.apply(this,[v])}}}}},{"../utils":11}],10:[function(n,i,r){Object.defineProperty(r,"__esModule",{value:!0}),r.shimAudioContext=T,r.shimCallbacksAPI=f,r.shimConstraints=x,r.shimCreateOfferLegacy=m,r.shimGetUserMedia=S,r.shimLocalStreamsAPI=l,r.shimRTCIceServerUrls=E,r.shimRemoteStreamsAPI=u,r.shimTrackEventTransceiver=I;var o=a(n("../utils"));function c(v){if(typeof WeakMap!="function")return null;var w=new WeakMap,L=new WeakMap;return(c=function(N){return N?L:w})(v)}function a(v,w){if(!w&&v&&v.__esModule)return v;if(v===null||s(v)!=="object"&&typeof v!="function")return{default:v};var L=c(w);if(L&&L.has(v))return L.get(v);var N={},V=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var _ in v)if(_!=="default"&&Object.prototype.hasOwnProperty.call(v,_)){var b=V?Object.getOwnPropertyDescriptor(v,_):null;b&&(b.get||b.set)?Object.defineProperty(N,_,b):N[_]=v[_]}return N.default=v,L&&L.set(v,N),N}function s(v){return s=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(w){return typeof w}:function(w){return w&&typeof Symbol=="function"&&w.constructor===Symbol&&w!==Symbol.prototype?"symbol":typeof w},s(v)}function l(v){if(s(v)==="object"&&v.RTCPeerConnection){if("getLocalStreams"in v.RTCPeerConnection.prototype||(v.RTCPeerConnection.prototype.getLocalStreams=function(){return this._localStreams||(this._localStreams=[]),this._localStreams}),!("addStream"in v.RTCPeerConnection.prototype)){var w=v.RTCPeerConnection.prototype.addTrack;v.RTCPeerConnection.prototype.addStream=function(L){var N=this;this._localStreams||(this._localStreams=[]),this._localStreams.includes(L)||this._localStreams.push(L),L.getAudioTracks().forEach(function(V){return w.call(N,V,L)}),L.getVideoTracks().forEach(function(V){return w.call(N,V,L)})},v.RTCPeerConnection.prototype.addTrack=function(L){for(var N=this,V=arguments.length,_=new Array(V>1?V-1:0),b=1;b<V;b++)_[b-1]=arguments[b];return _&&_.forEach(function(R){N._localStreams?N._localStreams.includes(R)||N._localStreams.push(R):N._localStreams=[R]}),w.apply(this,arguments)}}"removeStream"in v.RTCPeerConnection.prototype||(v.RTCPeerConnection.prototype.removeStream=function(L){var N=this;this._localStreams||(this._localStreams=[]);var V=this._localStreams.indexOf(L);if(V!==-1){this._localStreams.splice(V,1);var _=L.getTracks();this.getSenders().forEach(function(b){_.includes(b.track)&&N.removeTrack(b)})}})}}function u(v){if(s(v)==="object"&&v.RTCPeerConnection&&("getRemoteStreams"in v.RTCPeerConnection.prototype||(v.RTCPeerConnection.prototype.getRemoteStreams=function(){return this._remoteStreams?this._remoteStreams:[]}),!("onaddstream"in v.RTCPeerConnection.prototype))){Object.defineProperty(v.RTCPeerConnection.prototype,"onaddstream",{get:function(){return this._onaddstream},set:function(L){var N=this;this._onaddstream&&(this.removeEventListener("addstream",this._onaddstream),this.removeEventListener("track",this._onaddstreampoly)),this.addEventListener("addstream",this._onaddstream=L),this.addEventListener("track",this._onaddstreampoly=function(V){V.streams.forEach(function(_){if(N._remoteStreams||(N._remoteStreams=[]),!N._remoteStreams.includes(_)){N._remoteStreams.push(_);var b=new Event("addstream");b.stream=_,N.dispatchEvent(b)}})})}});var w=v.RTCPeerConnection.prototype.setRemoteDescription;v.RTCPeerConnection.prototype.setRemoteDescription=function(){var L=this;return this._onaddstreampoly||this.addEventListener("track",this._onaddstreampoly=function(N){N.streams.forEach(function(V){if(L._remoteStreams||(L._remoteStreams=[]),!(L._remoteStreams.indexOf(V)>=0)){L._remoteStreams.push(V);var _=new Event("addstream");_.stream=V,L.dispatchEvent(_)}})}),w.apply(L,arguments)}}}function f(v){if(s(v)==="object"&&v.RTCPeerConnection){var w=v.RTCPeerConnection.prototype,L=w.createOffer,N=w.createAnswer,V=w.setLocalDescription,_=w.setRemoteDescription,b=w.addIceCandidate;w.createOffer=function(P,U){var k=arguments.length>=2?arguments[2]:arguments[0],h=L.apply(this,[k]);return U?(h.then(P,U),Promise.resolve()):h},w.createAnswer=function(P,U){var k=arguments.length>=2?arguments[2]:arguments[0],h=N.apply(this,[k]);return U?(h.then(P,U),Promise.resolve()):h};var R=function(P,U,k){var h=V.apply(this,[P]);return k?(h.then(U,k),Promise.resolve()):h};w.setLocalDescription=R,R=function(P,U,k){var h=_.apply(this,[P]);return k?(h.then(U,k),Promise.resolve()):h},w.setRemoteDescription=R,R=function(P,U,k){var h=b.apply(this,[P]);return k?(h.then(U,k),Promise.resolve()):h},w.addIceCandidate=R}}function S(v){var w=v&&v.navigator;if(w.mediaDevices&&w.mediaDevices.getUserMedia){var L=w.mediaDevices,N=L.getUserMedia.bind(L);w.mediaDevices.getUserMedia=function(V){return N(x(V))}}!w.getUserMedia&&w.mediaDevices&&w.mediaDevices.getUserMedia&&(w.getUserMedia=function(V,_,b){w.mediaDevices.getUserMedia(V).then(_,b)}.bind(w))}function x(v){return v&&v.video!==void 0?Object.assign({},v,{video:o.compactObject(v.video)}):v}function E(v){if(v.RTCPeerConnection){var w=v.RTCPeerConnection;v.RTCPeerConnection=function(L,N){if(L&&L.iceServers){for(var V=[],_=0;_<L.iceServers.length;_++){var b=L.iceServers[_];b.urls===void 0&&b.url?(o.deprecated("RTCIceServer.url","RTCIceServer.urls"),(b=JSON.parse(JSON.stringify(b))).urls=b.url,delete b.url,V.push(b)):V.push(L.iceServers[_])}L.iceServers=V}return new w(L,N)},v.RTCPeerConnection.prototype=w.prototype,"generateCertificate"in w&&Object.defineProperty(v.RTCPeerConnection,"generateCertificate",{get:function(){return w.generateCertificate}})}}function I(v){s(v)==="object"&&v.RTCTrackEvent&&"receiver"in v.RTCTrackEvent.prototype&&!("transceiver"in v.RTCTrackEvent.prototype)&&Object.defineProperty(v.RTCTrackEvent.prototype,"transceiver",{get:function(){return{receiver:this.receiver}}})}function m(v){var w=v.RTCPeerConnection.prototype.createOffer;v.RTCPeerConnection.prototype.createOffer=function(L){if(L){L.offerToReceiveAudio!==void 0&&(L.offerToReceiveAudio=!!L.offerToReceiveAudio);var N=this.getTransceivers().find(function(_){return _.receiver.track.kind==="audio"});L.offerToReceiveAudio===!1&&N?N.direction==="sendrecv"?N.setDirection?N.setDirection("sendonly"):N.direction="sendonly":N.direction==="recvonly"&&(N.setDirection?N.setDirection("inactive"):N.direction="inactive"):L.offerToReceiveAudio!==!0||N||this.addTransceiver("audio",{direction:"recvonly"}),L.offerToReceiveVideo!==void 0&&(L.offerToReceiveVideo=!!L.offerToReceiveVideo);var V=this.getTransceivers().find(function(_){return _.receiver.track.kind==="video"});L.offerToReceiveVideo===!1&&V?V.direction==="sendrecv"?V.setDirection?V.setDirection("sendonly"):V.direction="sendonly":V.direction==="recvonly"&&(V.setDirection?V.setDirection("inactive"):V.direction="inactive"):L.offerToReceiveVideo!==!0||V||this.addTransceiver("video",{direction:"recvonly"})}return w.apply(this,arguments)}}function T(v){s(v)!=="object"||v.AudioContext||(v.AudioContext=v.webkitAudioContext)}},{"../utils":11}],11:[function(n,i,r){function o(V,_,b){return(_=c(_))in V?Object.defineProperty(V,_,{value:b,enumerable:!0,configurable:!0,writable:!0}):V[_]=b,V}function c(V){var _=a(V,"string");return s(_)==="symbol"?_:String(_)}function a(V,_){if(s(V)!=="object"||V===null)return V;var b=V[Symbol.toPrimitive];if(b!==void 0){var R=b.call(V,_||"default");if(s(R)!=="object")return R;throw new TypeError("@@toPrimitive must return a primitive value.")}return(_==="string"?String:Number)(V)}function s(V){return s=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(_){return typeof _}:function(_){return _&&typeof Symbol=="function"&&_.constructor===Symbol&&_!==Symbol.prototype?"symbol":typeof _},s(V)}Object.defineProperty(r,"__esModule",{value:!0}),r.compactObject=w,r.deprecated=m,r.detectBrowser=T,r.disableLog=x,r.disableWarnings=E,r.extractVersion=f,r.filterStats=N,r.log=I,r.walkStats=L,r.wrapPeerConnectionEvent=S;var l=!0,u=!0;function f(V,_,b){var R=V.match(_);return R&&R.length>=b&&parseInt(R[b],10)}function S(V,_,b){if(V.RTCPeerConnection){var R=V.RTCPeerConnection.prototype,P=R.addEventListener;R.addEventListener=function(k,h){if(k!==_)return P.apply(this,arguments);var y=function(A){var D=b(A);D&&(h.handleEvent?h.handleEvent(D):h(D))};return this._eventMap=this._eventMap||{},this._eventMap[_]||(this._eventMap[_]=new Map),this._eventMap[_].set(h,y),P.apply(this,[k,y])};var U=R.removeEventListener;R.removeEventListener=function(k,h){if(k!==_||!this._eventMap||!this._eventMap[_])return U.apply(this,arguments);if(!this._eventMap[_].has(h))return U.apply(this,arguments);var y=this._eventMap[_].get(h);return this._eventMap[_].delete(h),this._eventMap[_].size===0&&delete this._eventMap[_],Object.keys(this._eventMap).length===0&&delete this._eventMap,U.apply(this,[k,y])},Object.defineProperty(R,"on"+_,{get:function(){return this["_on"+_]},set:function(k){this["_on"+_]&&(this.removeEventListener(_,this["_on"+_]),delete this["_on"+_]),k&&this.addEventListener(_,this["_on"+_]=k)},enumerable:!0,configurable:!0})}}function x(V){return typeof V!="boolean"?new Error("Argument type: "+s(V)+". Please use a boolean."):(l=V,V?"adapter.js logging disabled":"adapter.js logging enabled")}function E(V){return typeof V!="boolean"?new Error("Argument type: "+s(V)+". Please use a boolean."):(u=!V,"adapter.js deprecation warnings "+(V?"disabled":"enabled"))}function I(){if((typeof window=="undefined"?"undefined":s(window))==="object"){if(l)return;typeof console!="undefined"&&typeof console.log=="function"&&console.log.apply(console,arguments)}}function m(V,_){u&&console.warn(V+" is deprecated, please use "+_+" instead.")}function T(V){var _={browser:null,version:null};if(V===void 0||!V.navigator||!V.navigator.userAgent)return _.browser="Not a browser.",_;var b=V.navigator;if(b.mozGetUserMedia)_.browser="firefox",_.version=f(b.userAgent,/Firefox\/(\d+)\./,1);else if(b.webkitGetUserMedia||V.isSecureContext===!1&&V.webkitRTCPeerConnection)_.browser="chrome",_.version=f(b.userAgent,/Chrom(e|ium)\/(\d+)\./,2);else{if(!V.RTCPeerConnection||!b.userAgent.match(/AppleWebKit\/(\d+)\./))return _.browser="Not a supported browser.",_;_.browser="safari",_.version=f(b.userAgent,/AppleWebKit\/(\d+)\./,1),_.supportsUnifiedPlan=V.RTCRtpTransceiver&&"currentDirection"in V.RTCRtpTransceiver.prototype}return _}function v(V){return Object.prototype.toString.call(V)==="[object Object]"}function w(V){return v(V)?Object.keys(V).reduce(function(_,b){var R=v(V[b]),P=R?w(V[b]):V[b],U=R&&!Object.keys(P).length;return P===void 0||U?_:Object.assign(_,o({},b,P))},{}):V}function L(V,_,b){_&&!b.has(_.id)&&(b.set(_.id,_),Object.keys(_).forEach(function(R){R.endsWith("Id")?L(V,V.get(_[R]),b):R.endsWith("Ids")&&_[R].forEach(function(P){L(V,V.get(P),b)})}))}function N(V,_,b){var R=b?"outbound-rtp":"inbound-rtp",P=new Map;if(_===null)return P;var U=[];return V.forEach(function(k){k.type==="track"&&k.trackIdentifier===_.id&&U.push(k)}),U.forEach(function(k){V.forEach(function(h){h.type===R&&h.trackId===k.id&&L(V,h,P)})}),P}},{}],12:[function(n,i,r){var o=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(a){return typeof a}:function(a){return a&&typeof Symbol=="function"&&a.constructor===Symbol&&a!==Symbol.prototype?"symbol":typeof a},c={generateIdentifier:function(){return Math.random().toString(36).substring(2,12)}};c.localCName=c.generateIdentifier(),c.splitLines=function(a){return a.trim().split(`
|
|
9
9
|
`).map(function(s){return s.trim()})},c.splitSections=function(a){return a.split(`
|
|
10
10
|
m=`).map(function(s,l){return(l>0?"m="+s:s).trim()+`\r
|
|
11
11
|
`})},c.getDescription=function(a){var s=c.splitSections(a);return s&&s[0]},c.getMediaSections=function(a){var s=c.splitSections(a);return s.shift(),s},c.matchPrefix=function(a,s){return c.splitLines(a).filter(function(l){return l.indexOf(s)===0})},c.parseCandidate=function(a){for(var s=void 0,l={foundation:(s=a.indexOf("a=candidate:")===0?a.substring(12).split(" "):a.substring(10).split(" "))[0],component:{1:"rtp",2:"rtcp"}[s[1]]||s[1],protocol:s[2].toLowerCase(),priority:parseInt(s[3],10),ip:s[4],address:s[4],port:parseInt(s[5],10),type:s[7]},u=8;u<s.length;u+=2)switch(s[u]){case"raddr":l.relatedAddress=s[u+1];break;case"rport":l.relatedPort=parseInt(s[u+1],10);break;case"tcptype":l.tcpType=s[u+1];break;case"ufrag":l.ufrag=s[u+1],l.usernameFragment=s[u+1];break;default:l[s[u]]===void 0&&(l[s[u]]=s[u+1])}return l},c.writeCandidate=function(a){var s=[];s.push(a.foundation);var l=a.component;l==="rtp"?s.push(1):l==="rtcp"?s.push(2):s.push(l),s.push(a.protocol.toUpperCase()),s.push(a.priority),s.push(a.address||a.ip),s.push(a.port);var u=a.type;return s.push("typ"),s.push(u),u!=="host"&&a.relatedAddress&&a.relatedPort&&(s.push("raddr"),s.push(a.relatedAddress),s.push("rport"),s.push(a.relatedPort)),a.tcpType&&a.protocol.toLowerCase()==="tcp"&&(s.push("tcptype"),s.push(a.tcpType)),(a.usernameFragment||a.ufrag)&&(s.push("ufrag"),s.push(a.usernameFragment||a.ufrag)),"candidate:"+s.join(" ")},c.parseIceOptions=function(a){return a.substring(14).split(" ")},c.parseRtpMap=function(a){var s=a.substring(9).split(" "),l={payloadType:parseInt(s.shift(),10)};return s=s[0].split("/"),l.name=s[0],l.clockRate=parseInt(s[1],10),l.channels=s.length===3?parseInt(s[2],10):1,l.numChannels=l.channels,l},c.writeRtpMap=function(a){var s=a.payloadType;a.preferredPayloadType!==void 0&&(s=a.preferredPayloadType);var l=a.channels||a.numChannels||1;return"a=rtpmap:"+s+" "+a.name+"/"+a.clockRate+(l!==1?"/"+l:"")+`\r
|
|
12
12
|
`},c.parseExtmap=function(a){var s=a.substring(9).split(" ");return{id:parseInt(s[0],10),direction:s[0].indexOf("/")>0?s[0].split("/")[1]:"sendrecv",uri:s[1],attributes:s.slice(2).join(" ")}},c.writeExtmap=function(a){return"a=extmap:"+(a.id||a.preferredId)+(a.direction&&a.direction!=="sendrecv"?"/"+a.direction:"")+" "+a.uri+(a.attributes?" "+a.attributes:"")+`\r
|
|
13
|
-
`},c.parseFmtp=function(a){for(var s={},l=void 0,u=a.substring(a.indexOf(" ")+1).split(";"),
|
|
13
|
+
`},c.parseFmtp=function(a){for(var s={},l=void 0,u=a.substring(a.indexOf(" ")+1).split(";"),f=0;f<u.length;f++)s[(l=u[f].trim().split("="))[0].trim()]=l[1];return s},c.writeFmtp=function(a){var s="",l=a.payloadType;if(a.preferredPayloadType!==void 0&&(l=a.preferredPayloadType),a.parameters&&Object.keys(a.parameters).length){var u=[];Object.keys(a.parameters).forEach(function(f){a.parameters[f]!==void 0?u.push(f+"="+a.parameters[f]):u.push(f)}),s+="a=fmtp:"+l+" "+u.join(";")+`\r
|
|
14
14
|
`}return s},c.parseRtcpFb=function(a){var s=a.substring(a.indexOf(" ")+1).split(" ");return{type:s.shift(),parameter:s.join(" ")}},c.writeRtcpFb=function(a){var s="",l=a.payloadType;return a.preferredPayloadType!==void 0&&(l=a.preferredPayloadType),a.rtcpFeedback&&a.rtcpFeedback.length&&a.rtcpFeedback.forEach(function(u){s+="a=rtcp-fb:"+l+" "+u.type+(u.parameter&&u.parameter.length?" "+u.parameter:"")+`\r
|
|
15
15
|
`}),s},c.parseSsrcMedia=function(a){var s=a.indexOf(" "),l={ssrc:parseInt(a.substring(7,s),10)},u=a.indexOf(":",s);return u>-1?(l.attribute=a.substring(s+1,u),l.value=a.substring(u+1)):l.attribute=a.substring(s+1),l},c.parseSsrcGroup=function(a){var s=a.substring(13).split(" ");return{semantics:s.shift(),ssrcs:s.map(function(l){return parseInt(l,10)})}},c.getMid=function(a){var s=c.matchPrefix(a,"a=mid:")[0];if(s)return s.substring(6)},c.parseFingerprint=function(a){var s=a.substring(14).split(" ");return{algorithm:s[0].toLowerCase(),value:s[1].toUpperCase()}},c.getDtlsParameters=function(a,s){return{role:"auto",fingerprints:c.matchPrefix(a+s,"a=fingerprint:").map(c.parseFingerprint)}},c.writeDtlsParameters=function(a,s){var l="a=setup:"+s+`\r
|
|
16
16
|
`;return a.fingerprints.forEach(function(u){l+="a=fingerprint:"+u.algorithm+" "+u.value+`\r
|
|
@@ -18,14 +18,14 @@ m=`).map(function(s,l){return(l>0?"m="+s:s).trim()+`\r
|
|
|
18
18
|
`},c.parseCryptoKeyParams=function(a){if(a.indexOf("inline:")!==0)return null;var s=a.substring(7).split("|");return{keyMethod:"inline",keySalt:s[0],lifeTime:s[1],mkiValue:s[2]?s[2].split(":")[0]:void 0,mkiLength:s[2]?s[2].split(":")[1]:void 0}},c.writeCryptoKeyParams=function(a){return a.keyMethod+":"+a.keySalt+(a.lifeTime?"|"+a.lifeTime:"")+(a.mkiValue&&a.mkiLength?"|"+a.mkiValue+":"+a.mkiLength:"")},c.getCryptoParameters=function(a,s){return c.matchPrefix(a+s,"a=crypto:").map(c.parseCryptoLine)},c.getIceParameters=function(a,s){var l=c.matchPrefix(a+s,"a=ice-ufrag:")[0],u=c.matchPrefix(a+s,"a=ice-pwd:")[0];return l&&u?{usernameFragment:l.substring(12),password:u.substring(10)}:null},c.writeIceParameters=function(a){var s="a=ice-ufrag:"+a.usernameFragment+`\r
|
|
19
19
|
a=ice-pwd:`+a.password+`\r
|
|
20
20
|
`;return a.iceLite&&(s+=`a=ice-lite\r
|
|
21
|
-
`),s},c.parseRtpParameters=function(a){var s={codecs:[],headerExtensions:[],fecMechanisms:[],rtcp:[]},l=c.splitLines(a)[0].split(" ");s.profile=l[2];for(var u=3;u<l.length;u++){var
|
|
21
|
+
`),s},c.parseRtpParameters=function(a){var s={codecs:[],headerExtensions:[],fecMechanisms:[],rtcp:[]},l=c.splitLines(a)[0].split(" ");s.profile=l[2];for(var u=3;u<l.length;u++){var f=l[u],S=c.matchPrefix(a,"a=rtpmap:"+f+" ")[0];if(S){var x=c.parseRtpMap(S),E=c.matchPrefix(a,"a=fmtp:"+f+" ");switch(x.parameters=E.length?c.parseFmtp(E[0]):{},x.rtcpFeedback=c.matchPrefix(a,"a=rtcp-fb:"+f+" ").map(c.parseRtcpFb),s.codecs.push(x),x.name.toUpperCase()){case"RED":case"ULPFEC":s.fecMechanisms.push(x.name.toUpperCase())}}}c.matchPrefix(a,"a=extmap:").forEach(function(m){s.headerExtensions.push(c.parseExtmap(m))});var I=c.matchPrefix(a,"a=rtcp-fb:* ").map(c.parseRtcpFb);return s.codecs.forEach(function(m){I.forEach(function(T){m.rtcpFeedback.find(function(v){return v.type===T.type&&v.parameter===T.parameter})||m.rtcpFeedback.push(T)})}),s},c.writeRtpDescription=function(a,s){var l="";l+="m="+a+" ",l+=s.codecs.length>0?"9":"0",l+=" "+(s.profile||"UDP/TLS/RTP/SAVPF")+" ",l+=s.codecs.map(function(f){return f.preferredPayloadType!==void 0?f.preferredPayloadType:f.payloadType}).join(" ")+`\r
|
|
22
22
|
`,l+=`c=IN IP4 0.0.0.0\r
|
|
23
23
|
`,l+=`a=rtcp:9 IN IP4 0.0.0.0\r
|
|
24
|
-
`,s.codecs.forEach(function(
|
|
25
|
-
`),s.headerExtensions&&s.headerExtensions.forEach(function(
|
|
24
|
+
`,s.codecs.forEach(function(f){l+=c.writeRtpMap(f),l+=c.writeFmtp(f),l+=c.writeRtcpFb(f)});var u=0;return s.codecs.forEach(function(f){f.maxptime>u&&(u=f.maxptime)}),u>0&&(l+="a=maxptime:"+u+`\r
|
|
25
|
+
`),s.headerExtensions&&s.headerExtensions.forEach(function(f){l+=c.writeExtmap(f)}),l},c.parseRtpEncodingParameters=function(a){var s=[],l=c.parseRtpParameters(a),u=l.fecMechanisms.indexOf("RED")!==-1,f=l.fecMechanisms.indexOf("ULPFEC")!==-1,S=c.matchPrefix(a,"a=ssrc:").map(function(T){return c.parseSsrcMedia(T)}).filter(function(T){return T.attribute==="cname"}),x=S.length>0&&S[0].ssrc,E=void 0,I=c.matchPrefix(a,"a=ssrc-group:FID").map(function(T){return T.substring(17).split(" ").map(function(v){return parseInt(v,10)})});I.length>0&&I[0].length>1&&I[0][0]===x&&(E=I[0][1]),l.codecs.forEach(function(T){if(T.name.toUpperCase()==="RTX"&&T.parameters.apt){var v={ssrc:x,codecPayloadType:parseInt(T.parameters.apt,10)};x&&E&&(v.rtx={ssrc:E}),s.push(v),u&&((v=JSON.parse(JSON.stringify(v))).fec={ssrc:x,mechanism:f?"red+ulpfec":"red"},s.push(v))}}),s.length===0&&x&&s.push({ssrc:x});var m=c.matchPrefix(a,"b=");return m.length&&(m=m[0].indexOf("b=TIAS:")===0?parseInt(m[0].substring(7),10):m[0].indexOf("b=AS:")===0?1e3*parseInt(m[0].substring(5),10)*.95-16e3:void 0,s.forEach(function(T){T.maxBitrate=m})),s},c.parseRtcpParameters=function(a){var s={},l=c.matchPrefix(a,"a=ssrc:").map(function(S){return c.parseSsrcMedia(S)}).filter(function(S){return S.attribute==="cname"})[0];l&&(s.cname=l.value,s.ssrc=l.ssrc);var u=c.matchPrefix(a,"a=rtcp-rsize");s.reducedSize=u.length>0,s.compound=u.length===0;var f=c.matchPrefix(a,"a=rtcp-mux");return s.mux=f.length>0,s},c.writeRtcpParameters=function(a){var s="";return a.reducedSize&&(s+=`a=rtcp-rsize\r
|
|
26
26
|
`),a.mux&&(s+=`a=rtcp-mux\r
|
|
27
27
|
`),a.ssrc!==void 0&&a.cname&&(s+="a=ssrc:"+a.ssrc+" cname:"+a.cname+`\r
|
|
28
|
-
`),s},c.parseMsid=function(a){var s=void 0,l=c.matchPrefix(a,"a=msid:");if(l.length===1)return{stream:(s=l[0].substring(7).split(" "))[0],track:s[1]};var u=c.matchPrefix(a,"a=ssrc:").map(function(
|
|
28
|
+
`),s},c.parseMsid=function(a){var s=void 0,l=c.matchPrefix(a,"a=msid:");if(l.length===1)return{stream:(s=l[0].substring(7).split(" "))[0],track:s[1]};var u=c.matchPrefix(a,"a=ssrc:").map(function(f){return c.parseSsrcMedia(f)}).filter(function(f){return f.attribute==="msid"});return u.length>0?{stream:(s=u[0].value.split(" "))[0],track:s[1]}:void 0},c.parseSctpDescription=function(a){var s=c.parseMLine(a),l=c.matchPrefix(a,"a=max-message-size:"),u=void 0;l.length>0&&(u=parseInt(l[0].substring(19),10)),isNaN(u)&&(u=65536);var f=c.matchPrefix(a,"a=sctp-port:");if(f.length>0)return{port:parseInt(f[0].substring(12),10),protocol:s.fmt,maxMessageSize:u};var S=c.matchPrefix(a,"a=sctpmap:");if(S.length>0){var x=S[0].substring(10).split(" ");return{port:parseInt(x[0],10),protocol:x[1],maxMessageSize:u}}},c.writeSctpDescription=function(a,s){var l=[];return l=a.protocol!=="DTLS/SCTP"?["m="+a.kind+" 9 "+a.protocol+" "+s.protocol+`\r
|
|
29
29
|
`,`c=IN IP4 0.0.0.0\r
|
|
30
30
|
`,"a=sctp-port:"+s.port+`\r
|
|
31
31
|
`]:["m="+a.kind+" 9 "+a.protocol+" "+s.port+`\r
|
|
@@ -36,40 +36,40 @@ a=ice-pwd:`+a.password+`\r
|
|
|
36
36
|
o=`+(l||"thisisadapterortc")+" "+(a||c.generateSessionId())+" "+u+` IN IP4 127.0.0.1\r
|
|
37
37
|
s=-\r
|
|
38
38
|
t=0 0\r
|
|
39
|
-
`},c.getDirection=function(a,s){for(var l=c.splitLines(a),u=0;u<l.length;u++)switch(l[u]){case"a=sendrecv":case"a=sendonly":case"a=recvonly":case"a=inactive":return l[u].substring(2)}return s?c.getDirection(s):"sendrecv"},c.getKind=function(a){return c.splitLines(a)[0].split(" ")[0].substring(2)},c.isRejected=function(a){return a.split(" ",2)[1]==="0"},c.parseMLine=function(a){var s=c.splitLines(a)[0].substring(2).split(" ");return{kind:s[0],port:parseInt(s[1],10),protocol:s[2],fmt:s.slice(3).join(" ")}},c.parseOLine=function(a){var s=c.matchPrefix(a,"o=")[0].substring(2).split(" ");return{username:s[0],sessionId:s[1],sessionVersion:parseInt(s[2],10),netType:s[3],addressType:s[4],address:s[5]}},c.isValidSDP=function(a){if(typeof a!="string"||a.length===0)return!1;for(var s=c.splitLines(a),l=0;l<s.length;l++)if(s[l].length<2||s[l].charAt(1)!=="=")return!1;return!0},(i===void 0?"undefined":o(i))==="object"&&(i.exports=c)},{}]},{},[1])(1)}({exports:{}});var Fi="4.15.15",yg={},lC=mg,dC=Gd,au=Object.keys||function(e){return lC(e,dC)},hC=ye,fC=ds,pC=Pt,mC=Tt,vC=yn,gC=au;yg.f=hC&&!fC?Object.defineProperties:function(e,t){mC(e);for(var n,i=vC(t),r=gC(t),o=r.length,c=0;o>c;)pC.f(e,n=r[c++],i[n]);return e};var ou,bg=Rn("document","documentElement"),_C=Tt,yC=yg,Sg=Gd,bC=Z,SC=bg,kC=mr,kg=W("IE_PROTO"),Jd=function(){},Tg=function(e){return"<script>"+e+"<\/script>"},xg=function(e){e.write(Tg("")),e.close();var t=e.parentWindow.Object;return e=null,t},su=function(){try{ou=new ActiveXObject("htmlfile")}catch(i){}var e,t;su=typeof document!="undefined"?document.domain&&ou?xg(ou):((t=kC("iframe")).style.display="none",SC.appendChild(t),t.src=String("javascript:"),(e=t.contentWindow.document).open(),e.write(Tg("document.F=Object")),e.close(),e.F):xg(ou);for(var n=Sg.length;n--;)delete su.prototype[Sg[n]];return su()};bC[kg]=!0;var Va=Object.create||function(e,t){var n;return e!==null?(Jd.prototype=_C(e),n=new Jd,Jd.prototype=null,n[kg]=e):n=su(),t===void 0?n:yC.f(n,t)},TC=tt,xC=Va,IC=Pt.f,Kd=TC("unscopables"),Yd=Array.prototype;Yd[Kd]==null&&IC(Yd,Kd,{configurable:!0,value:xC(null)});var Hi,Ig,wg,cu=function(e){Yd[Kd][e]=!0},Ss={},Cg=!ue(function(){function e(){}return e.prototype.constructor=null,Object.getPrototypeOf(new e)!==e.prototype}),wC=kt,CC=it,EC=Mt,RC=Cg,Eg=W("IE_PROTO"),Xd=Object,AC=Xd.prototype,ks=RC?Xd.getPrototypeOf:function(e){var t=EC(e);if(wC(t,Eg))return t[Eg];var n=t.constructor;return CC(n)&&t instanceof n?n.prototype:t instanceof Xd?AC:null},PC=ue,DC=it,LC=at,Rg=ks,OC=Yt,Qd=tt("iterator"),Ag=!1;[].keys&&("next"in(wg=[].keys())?(Ig=Rg(Rg(wg)))!==Object.prototype&&(Hi=Ig):Ag=!0);var MC=!LC(Hi)||PC(function(){var e={};return Hi[Qd].call(e)!==e});MC&&(Hi={}),DC(Hi[Qd])||OC(Hi,Qd,function(){return this});var $d={IteratorPrototype:Hi,BUGGY_SAFARI_ITERATORS:Ag},NC=Pt.f,UC=kt,Pg=tt("toStringTag"),Gi=function(e,t,n){e&&!n&&(e=e.prototype),e&&!UC(e,Pg)&&NC(e,Pg,{configurable:!0,value:t})},VC=$d.IteratorPrototype,jC=Va,BC=Ze,FC=Gi,HC=Ss,GC=function(){return this},Dg=function(e,t,n,i){var r=t+" Iterator";return e.prototype=jC(VC,{next:BC(+!i,n)}),FC(e,r,!1),HC[r]=GC,e},zC=it,WC=String,qC=TypeError,JC=pe,KC=Tt,YC=function(e){if(typeof e=="object"||zC(e))return e;throw qC("Can't set "+WC(e)+" as a prototype")},ja=Object.setPrototypeOf||("__proto__"in{}?function(){var e,t=!1,n={};try{(e=JC(Object.getOwnPropertyDescriptor(Object.prototype,"__proto__").set))(n,[]),t=n instanceof Array}catch(i){}return function(i,r){return KC(i),YC(r),t?e(i,r):i.__proto__=r,i}}():void 0),XC=Oe,QC=Ke,$C=it,ZC=Dg,Lg=ks,Og=ja,eE=Gi,tE=Ln,Zd=Yt,nE=Ss,rE=Xn.PROPER,iE=Xn.CONFIGURABLE,Mg=$d.IteratorPrototype,uu=$d.BUGGY_SAFARI_ITERATORS,Ts=tt("iterator"),Ng="keys",xs="values",Ug="entries",aE=function(){return this},eh=function(e,t,n,i,r,o,c){ZC(n,t,i);var a,s,l,u=function(T){if(T===r&&I)return I;if(!uu&&T in x)return x[T];switch(T){case Ng:case xs:case Ug:return function(){return new n(this,T)}}return function(){return new n(this)}},p=t+" Iterator",k=!1,x=e.prototype,E=x[Ts]||x["@@iterator"]||r&&x[r],I=!uu&&E||u(r),m=t=="Array"&&x.entries||E;if(m&&(a=Lg(m.call(new e)))!==Object.prototype&&a.next&&(Lg(a)!==Mg&&(Og?Og(a,Mg):$C(a[Ts])||Zd(a,Ts,aE)),eE(a,p,!0)),rE&&r==xs&&E&&E.name!==xs&&(iE?tE(x,"name",xs):(k=!0,I=function(){return QC(E,this)})),r)if(s={values:u(xs),keys:o?I:u(Ng),entries:u(Ug)},c)for(l in s)(uu||k||!(l in x))&&Zd(x,l,s[l]);else XC({target:t,proto:!0,forced:uu||k},s);return x[Ts]!==I&&Zd(x,Ts,I,{name:r}),nE[t]=I,s},th=function(e,t){return{value:e,done:t}},oE=yn,nh=cu,Vg=Ss,jg=Ye,sE=Pt.f,cE=eh,Bg=th,uE=ye,Fg="Array Iterator",lE=jg.set,dE=jg.getterFor(Fg),Hg=cE(Array,"Array",function(e,t){lE(this,{type:Fg,target:oE(e),index:0,kind:t})},function(){var e=dE(this),t=e.target,n=e.kind,i=e.index++;return!t||i>=t.length?(e.target=void 0,Bg(void 0,!0)):Bg(n=="keys"?i:n=="values"?t[i]:[i,t[i]],!1)},"values"),Gg=Vg.Arguments=Vg.Array;if(nh("keys"),nh("values"),nh("entries"),uE&&Gg.name!=="values")try{sE(Gg,"name",{value:"values"})}catch(e){}var zg={};zg[tt("toStringTag")]="z";var rh=String(zg)==="[object z]",hE=rh,fE=it,lu=rt,pE=tt("toStringTag"),mE=Object,vE=lu(function(){return arguments}())=="Arguments",Dr=hE?lu:function(e){var t,n,i;return e===void 0?"Undefined":e===null?"Null":typeof(n=function(r,o){try{return r[o]}catch(c){}}(t=mE(e),pE))=="string"?n:vE?lu(t):(i=lu(t))=="Object"&&fE(t.callee)?"Arguments":i},gE=Dr,_E=rh?{}.toString:function(){return"[object "+gE(this)+"]"};rh||Yt(Object.prototype,"toString",_E,{unsafe:!0});var Is={exports:{}},ih={},yE=Aa,bE=Pt,SE=Ze,ws=function(e,t,n){var i=yE(t);i in e?bE.f(e,i,SE(0,n)):e[i]=n},Wg=ii,kE=tn,TE=ws,xE=Array,IE=Math.max,du=function(e,t,n){for(var i=kE(e),r=Wg(t,i),o=Wg(n===void 0?i:n,i),c=xE(IE(o-r,0)),a=0;r<o;r++,a++)TE(c,a,e[r]);return c.length=a,c},wE=rt,CE=yn,qg=ri.f,EE=du,Jg=typeof window=="object"&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[];ih.f=function(e){return Jg&&wE(e)=="Window"?function(t){try{return qg(t)}catch(n){return EE(Jg)}}(e):qg(CE(e))};var RE=ue(function(){if(typeof ArrayBuffer=="function"){var e=new ArrayBuffer(8);Object.isExtensible(e)&&Object.defineProperty(e,"a",{value:8})}}),AE=ue,PE=at,DE=rt,Kg=RE,hu=Object.isExtensible,Yg=AE(function(){hu(1)})||Kg?function(e){return!!PE(e)&&(!Kg||DE(e)!="ArrayBuffer")&&(!hu||hu(e))}:hu,LE=!ue(function(){return Object.isExtensible(Object.preventExtensions({}))}),OE=Oe,ME=pe,NE=Z,UE=at,ah=kt,VE=Pt.f,Xg=ri,jE=ih,oh=Yg,BE=LE,Qg=!1,Lr=Mi("meta"),FE=0,sh=function(e){VE(e,Lr,{value:{objectID:"O"+FE++,weakData:{}}})},HE=Is.exports={enable:function(){HE.enable=function(){},Qg=!0;var e=Xg.f,t=ME([].splice),n={};n[Lr]=1,e(n).length&&(Xg.f=function(i){for(var r=e(i),o=0,c=r.length;o<c;o++)if(r[o]===Lr){t(r,o,1);break}return r},OE({target:"Object",stat:!0,forced:!0},{getOwnPropertyNames:jE.f}))},fastKey:function(e,t){if(!UE(e))return typeof e=="symbol"?e:(typeof e=="string"?"S":"P")+e;if(!ah(e,Lr)){if(!oh(e))return"F";if(!t)return"E";sh(e)}return e[Lr].objectID},getWeakData:function(e,t){if(!ah(e,Lr)){if(!oh(e))return!0;if(!t)return!1;sh(e)}return e[Lr].weakData},onFreeze:function(e){return BE&&Qg&&oh(e)&&!ah(e,Lr)&&sh(e),e}};NE[Lr]=!0;var GE=Vt,zE=Me,WE=pe(pe.bind),Or=function(e,t){return GE(e),t===void 0?e:zE?WE(e,t):function(){return e.apply(t,arguments)}},qE=Ss,JE=tt("iterator"),KE=Array.prototype,ch=function(e){return e!==void 0&&(qE.Array===e||KE[JE]===e)},YE=Dr,$g=Kt,XE=Rt,QE=Ss,$E=tt("iterator"),Cs=function(e){if(!XE(e))return $g(e,$E)||$g(e,"@@iterator")||QE[YE(e)]},ZE=Ke,eR=Vt,tR=Tt,nR=Kn,rR=Cs,iR=TypeError,fu=function(e,t){var n=arguments.length<2?rR(e):t;if(eR(n))return tR(ZE(n,e));throw iR(nR(e)+" is not iterable")},aR=Ke,Zg=Tt,oR=Kt,e_=function(e,t,n){var i,r;Zg(e);try{if(!(i=oR(e,"return"))){if(t==="throw")throw n;return n}i=aR(i,e)}catch(o){r=!0,i=o}if(t==="throw")throw n;if(r)throw i;return Zg(i),n},sR=Or,cR=Ke,uR=Tt,lR=Kn,dR=ch,hR=tn,t_=bn,fR=fu,pR=Cs,n_=e_,mR=TypeError,pu=function(e,t){this.stopped=e,this.result=t},r_=pu.prototype,Es=function(e,t,n){var i,r,o,c,a,s,l,u=n&&n.that,p=!(!n||!n.AS_ENTRIES),k=!(!n||!n.IS_RECORD),x=!(!n||!n.IS_ITERATOR),E=!(!n||!n.INTERRUPTED),I=sR(t,u),m=function(v){return i&&n_(i,"normal",v),new pu(!0,v)},T=function(v){return p?(uR(v),E?I(v[0],v[1],m):I(v[0],v[1])):E?I(v,m):I(v)};if(k)i=e.iterator;else if(x)i=e;else{if(!(r=pR(e)))throw mR(lR(e)+" is not iterable");if(dR(r)){for(o=0,c=hR(e);c>o;o++)if((a=T(e[o]))&&t_(r_,a))return a;return new pu(!1)}i=fR(e,r)}for(s=k?e.next:i.next;!(l=cR(s,i)).done;){try{a=T(l.value)}catch(v){n_(i,"throw",v)}if(typeof a=="object"&&a&&t_(r_,a))return a}return new pu(!1)},vR=bn,gR=TypeError,ai=function(e,t){if(vR(t,e))return e;throw gR("Incorrect invocation")},i_=tt("iterator"),a_=!1;try{var _R=0,o_={next:function(){return{done:!!_R++}},return:function(){a_=!0}};o_[i_]=function(){return this},Array.from(o_,function(){throw 2})}catch(e){}var mu=function(e,t){if(!t&&!a_)return!1;var n=!1;try{var i={};i[i_]=function(){return{next:function(){return{done:n=!0}}}},e(i)}catch(r){}return n},yR=it,bR=at,s_=ja,vu=function(e,t,n){var i,r;return s_&&yR(i=t.constructor)&&i!==n&&bR(r=i.prototype)&&r!==n.prototype&&s_(e,r),e},SR=Oe,kR=re,TR=pe,c_=bs,xR=Yt,IR=Is.exports,wR=Es,CR=ai,ER=it,RR=Rt,uh=at,lh=ue,AR=mu,PR=Gi,DR=vu,dh=function(e,t,n){var i=e.indexOf("Map")!==-1,r=e.indexOf("Weak")!==-1,o=i?"set":"add",c=kR[e],a=c&&c.prototype,s=c,l={},u=function(m){var T=TR(a[m]);xR(a,m,m=="add"?function(v){return T(this,v===0?0:v),this}:m=="delete"?function(v){return!(r&&!uh(v))&&T(this,v===0?0:v)}:m=="get"?function(v){return r&&!uh(v)?void 0:T(this,v===0?0:v)}:m=="has"?function(v){return!(r&&!uh(v))&&T(this,v===0?0:v)}:function(v,C){return T(this,v===0?0:v,C),this})};if(c_(e,!ER(c)||!(r||a.forEach&&!lh(function(){new c().entries().next()}))))s=n.getConstructor(t,e,i,o),IR.enable();else if(c_(e,!0)){var p=new s,k=p[o](r?{}:-0,1)!=p,x=lh(function(){p.has(1)}),E=AR(function(m){new c(m)}),I=!r&&lh(function(){for(var m=new c,T=5;T--;)m[o](T,T);return!m.has(-0)});E||((s=t(function(m,T){CR(m,a);var v=DR(new c,m,s);return RR(T)||wR(T,v[o],{that:v,AS_ENTRIES:i}),v})).prototype=a,a.constructor=s),(x||I)&&(u("delete"),u("has"),i&&u("get")),(I||k)&&u(o),r&&a.clear&&delete a.clear}return l[e]=s,SR({global:!0,constructor:!0,forced:s!=c},l),PR(s,e),r||n.setStrong(s,e,i),s},LR=Yt,Rs=function(e,t,n){for(var i in t)LR(e,i,t[i],n);return e},OR=Rn,MR=Pt,NR=ye,u_=tt("species"),As=function(e){var t=OR(e),n=MR.f;NR&&t&&!t[u_]&&n(t,u_,{configurable:!0,get:function(){return this}})},UR=Pt.f,VR=Va,l_=Rs,jR=Or,BR=ai,FR=Rt,HR=Es,GR=eh,d_=th,zR=As,Ps=ye,h_=Is.exports.fastKey,f_=Ye.set,hh=Ye.getterFor,p_={getConstructor:function(e,t,n,i){var r=e(function(l,u){BR(l,o),f_(l,{type:t,index:VR(null),first:void 0,last:void 0,size:0}),Ps||(l.size=0),FR(u)||HR(u,l[i],{that:l,AS_ENTRIES:n})}),o=r.prototype,c=hh(t),a=function(l,u,p){var k,x,E=c(l),I=s(l,u);return I?I.value=p:(E.last=I={index:x=h_(u,!0),key:u,value:p,previous:k=E.last,next:void 0,removed:!1},E.first||(E.first=I),k&&(k.next=I),Ps?E.size++:l.size++,x!=="F"&&(E.index[x]=I)),l},s=function(l,u){var p,k=c(l),x=h_(u);if(x!=="F")return k.index[x];for(p=k.first;p;p=p.next)if(p.key==u)return p};return l_(o,{clear:function(){for(var l=c(this),u=l.index,p=l.first;p;)p.removed=!0,p.previous&&(p.previous=p.previous.next=void 0),delete u[p.index],p=p.next;l.first=l.last=void 0,Ps?l.size=0:this.size=0},delete:function(l){var u=this,p=c(u),k=s(u,l);if(k){var x=k.next,E=k.previous;delete p.index[k.index],k.removed=!0,E&&(E.next=x),x&&(x.previous=E),p.first==k&&(p.first=x),p.last==k&&(p.last=E),Ps?p.size--:u.size--}return!!k},forEach:function(l){for(var u,p=c(this),k=jR(l,arguments.length>1?arguments[1]:void 0);u=u?u.next:p.first;)for(k(u.value,u.key,this);u&&u.removed;)u=u.previous},has:function(l){return!!s(this,l)}}),l_(o,n?{get:function(l){var u=s(this,l);return u&&u.value},set:function(l,u){return a(this,l===0?0:l,u)}}:{add:function(l){return a(this,l=l===0?0:l,l)}}),Ps&&UR(o,"size",{get:function(){return c(this).size}}),r},setStrong:function(e,t,n){var i=t+" Iterator",r=hh(t),o=hh(i);GR(e,t,function(c,a){f_(this,{type:i,target:c,state:r(c),kind:a,last:void 0})},function(){for(var c=o(this),a=c.kind,s=c.last;s&&s.removed;)s=s.previous;return c.target&&(c.last=s=s?s.next:c.state.first)?d_(a=="keys"?s.key:a=="values"?s.value:[s.key,s.value],!1):(c.target=void 0,d_(void 0,!0))},n?"entries":"values",!n,!0),zR(t)}};dh("Set",function(e){return function(){return e(this,arguments.length?arguments[0]:void 0)}},p_);var WR=Dr,qR=String,zt=function(e){if(WR(e)==="Symbol")throw TypeError("Cannot convert a Symbol value to a string");return qR(e)},fh=pe,JR=Qn,KR=zt,YR=ht,XR=fh("".charAt),m_=fh("".charCodeAt),QR=fh("".slice),v_=function(e){return function(t,n){var i,r,o=KR(YR(t)),c=JR(n),a=o.length;return c<0||c>=a?e?"":void 0:(i=m_(o,c))<55296||i>56319||c+1===a||(r=m_(o,c+1))<56320||r>57343?e?XR(o,c):i:e?QR(o,c,c+2):r-56320+(i-55296<<10)+65536}},ph={codeAt:v_(!1),charAt:v_(!0)},$R=ph.charAt,ZR=zt,g_=Ye,eA=eh,__=th,y_="String Iterator",tA=g_.set,nA=g_.getterFor(y_);eA(String,"String",function(e){tA(this,{type:y_,string:ZR(e),index:0})},function(){var e,t=nA(this),n=t.string,i=t.index;return i>=n.length?__(void 0,!0):(e=$R(n,i),t.index+=e.length,__(e,!1))});var b_={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},mh=mr("span").classList,S_=mh&&mh.constructor&&mh.constructor.prototype,k_=S_===Object.prototype?void 0:S_,T_=re,x_=b_,rA=k_,Ds=Hg,vh=Ln,I_=tt,gh=I_("iterator"),w_=I_("toStringTag"),_h=Ds.values,C_=function(e,t){if(e){if(e[gh]!==_h)try{vh(e,gh,_h)}catch(i){e[gh]=_h}if(e[w_]||vh(e,w_,t),x_[t]){for(var n in Ds)if(e[n]!==Ds[n])try{vh(e,n,Ds[n])}catch(i){e[n]=Ds[n]}}}};for(var yh in x_)C_(T_[yh]&&T_[yh].prototype,yh);C_(rA,"DOMTokenList");var iA=Me,E_=Function.prototype,R_=E_.apply,A_=E_.call,zi=typeof Reflect=="object"&&Reflect.apply||(iA?A_.bind(R_):function(){return A_.apply(R_,arguments)}),Ba=pe([].slice),aA=TypeError,gu=function(e,t){if(e<t)throw aA("Not enough arguments");return e},bh=re,oA=zi,sA=it,cA=Ba,uA=gu,lA=/MSIE .\./.test(Jn),dA=bh.Function,P_=function(e){return lA?function(t,n){var i=uA(arguments.length,1)>2,r=sA(t)?t:dA(t),o=i?cA(arguments,2):void 0;return e(i?function(){oA(r,this,o)}:r,n)}:e},D_={setTimeout:P_(bh.setTimeout),setInterval:P_(bh.setInterval)},L_=D_.setInterval;Oe({global:!0,bind:!0,forced:re.setInterval!==L_},{setInterval:L_});var O_=D_.setTimeout;Oe({global:!0,bind:!0,forced:re.setTimeout!==O_},{setTimeout:O_}),dh("Map",function(e){return function(){return e(this,arguments.length?arguments[0]:void 0)}},p_);var hA=rt,Fa=Array.isArray||function(e){return hA(e)=="Array"},fA=pe,pA=ue,M_=it,mA=Dr,vA=d,N_=function(){},gA=[],U_=Rn("Reflect","construct"),Sh=/^\s*(?:class|function)\b/,_A=fA(Sh.exec),yA=!Sh.exec(N_),Ls=function(e){if(!M_(e))return!1;try{return U_(N_,gA,e),!0}catch(t){return!1}},V_=function(e){if(!M_(e))return!1;switch(mA(e)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}try{return yA||!!_A(Sh,vA(e))}catch(t){return!0}};V_.sham=!0;var _u=!U_||pA(function(){var e;return Ls(Ls.call)||!Ls(Object)||!Ls(function(){e=!0})||e})?V_:Ls,j_=Fa,bA=_u,SA=at,kA=tt("species"),B_=Array,TA=function(e){var t;return j_(e)&&(t=e.constructor,(bA(t)&&(t===B_||j_(t.prototype))||SA(t)&&(t=t[kA])===null)&&(t=void 0)),t===void 0?B_:t},kh=function(e,t){return new(TA(e))(t===0?0:t)},xA=Or,IA=_n,wA=Mt,CA=tn,EA=kh,F_=pe([].push),oi=function(e){var t=e==1,n=e==2,i=e==3,r=e==4,o=e==6,c=e==7,a=e==5||o;return function(s,l,u,p){for(var k,x,E=wA(s),I=IA(E),m=xA(l,u),T=CA(I),v=0,C=p||EA,O=t?C(s,T):n||c?C(s,0):void 0;T>v;v++)if((a||v in I)&&(x=m(k=I[v],v,E),e))if(t)O[v]=x;else if(x)switch(e){case 3:return!0;case 5:return k;case 6:return v;case 2:F_(O,k)}else switch(e){case 4:return!1;case 7:F_(O,k)}return o?-1:i||r?r:O}},nn={forEach:oi(0),map:oi(1),filter:oi(2),some:oi(3),every:oi(4),find:oi(5),findIndex:oi(6),filterReject:oi(7)},RA=ue,AA=fr,PA=tt("species"),Os=function(e){return AA>=51||!RA(function(){var t=[];return(t.constructor={})[PA]=function(){return{foo:1}},t[e](Boolean).foo!==1})},DA=nn.map;Oe({target:"Array",proto:!0,forced:!Os("map")},{map:function(e){return DA(this,e,arguments.length>1?arguments[1]:void 0)}});var LA=ye,OA=Fa,MA=TypeError,NA=Object.getOwnPropertyDescriptor,UA=LA&&!function(){if(this!==void 0)return!0;try{Object.defineProperty([],"length",{writable:!1}).length=1}catch(e){return e instanceof TypeError}}(),VA=TypeError,H_=function(e){if(e>9007199254740991)throw VA("Maximum allowed index exceeded");return e},G_=Kn,jA=TypeError,z_=function(e,t){if(!delete e[t])throw jA("Cannot delete property "+G_(t)+" of "+G_(e))},BA=Oe,FA=Mt,HA=ii,GA=Qn,zA=tn,WA=UA?function(e,t){if(OA(e)&&!NA(e,"length").writable)throw MA("Cannot set read only .length");return e.length=t}:function(e,t){return e.length=t},qA=H_,JA=kh,KA=ws,Th=z_,YA=Os("splice"),XA=Math.max,QA=Math.min;BA({target:"Array",proto:!0,forced:!YA},{splice:function(e,t){var n,i,r,o,c,a,s=FA(this),l=zA(s),u=HA(e,l),p=arguments.length;for(p===0?n=i=0:p===1?(n=0,i=l-u):(n=p-2,i=QA(XA(GA(t),0),l-u)),qA(l+n-i),r=JA(s,i),o=0;o<i;o++)(c=u+o)in s&&KA(r,o,s[c]);if(r.length=i,n<i){for(o=u;o<l-i;o++)a=o+n,(c=o+i)in s?s[a]=s[c]:Th(s,a);for(o=l;o>l-i+n;o--)Th(s,o-1)}else if(n>i)for(o=l-i;o>u;o--)a=o+n-1,(c=o+i-1)in s?s[a]=s[c]:Th(s,a);for(o=0;o<n;o++)s[o+u]=arguments[o+2];return WA(s,l-i+n),r}});var $A=ue,Ms=function(e,t){var n=[][e];return!!n&&$A(function(){n.call(null,t||function(){return 1},1)})},ZA=nn.forEach,xh=Ms("forEach")?[].forEach:function(e){return ZA(this,e,arguments.length>1?arguments[1]:void 0)};Oe({target:"Array",proto:!0,forced:[].forEach!=xh},{forEach:xh});var W_=re,q_=b_,e2=k_,Ih=xh,t2=Ln,J_=function(e){if(e&&e.forEach!==Ih)try{t2(e,"forEach",Ih)}catch(t){e.forEach=Ih}};for(var wh in q_)q_[wh]&&J_(W_[wh]&&W_[wh].prototype);J_(e2);var n2=Oe,r2=_n,i2=yn,a2=Ms,o2=pe([].join),s2=r2!=Object,c2=a2("join",",");n2({target:"Array",proto:!0,forced:s2||!c2},{join:function(e){return o2(i2(this),e===void 0?",":e)}});var u2=nn.filter;Oe({target:"Array",proto:!0,forced:!Os("filter")},{filter:function(e){return u2(this,e,arguments.length>1?arguments[1]:void 0)}});var l2=Oe,d2=ue,h2=Fa,f2=at,p2=Mt,m2=tn,K_=H_,Y_=ws,v2=kh,g2=Os,_2=fr,X_=tt("isConcatSpreadable"),y2=_2>=51||!d2(function(){var e=[];return e[X_]=!1,e.concat()[0]!==e}),b2=g2("concat"),S2=function(e){if(!f2(e))return!1;var t=e[X_];return t!==void 0?!!t:h2(e)};l2({target:"Array",proto:!0,arity:1,forced:!y2||!b2},{concat:function(e){var t,n,i,r,o,c=p2(this),a=v2(c,0),s=0;for(t=-1,i=arguments.length;t<i;t++)if(S2(o=t===-1?c:arguments[t]))for(r=m2(o),K_(s+r),n=0;n<r;n++,s++)n in o&&Y_(a,s,o[n]);else K_(s+1),Y_(a,s++,o);return a.length=s,a}});var Q_=pe,k2=Yt,Ch=Date.prototype,$_="Invalid Date",T2="toString",x2=Q_(Ch.toString),I2=Q_(Ch.getTime);String(new Date(NaN))!=$_&&k2(Ch,T2,function(){var e=I2(this);return e==e?x2(this):$_});var w2=Qn,C2=zt,E2=ht,R2=RangeError,Z_=function(e){var t=C2(E2(this)),n="",i=w2(e);if(i<0||i==1/0)throw R2("Wrong number of repetitions");for(;i>0;(i>>>=1)&&(t+=t))1&i&&(n+=t);return n},ey=pe,A2=_r,ty=zt,P2=ht,D2=ey(Z_),L2=ey("".slice),O2=Math.ceil,ny=function(e){return function(t,n,i){var r,o,c=ty(P2(t)),a=A2(n),s=c.length,l=i===void 0?" ":ty(i);return a<=s||l==""?c:((o=D2(l,O2((r=a-s)/l.length))).length>r&&(o=L2(o,0,r)),e?c+o:o+c)}},M2={start:ny(!1),end:ny(!0)},N2=/Version\/10(?:\.\d+){1,2}(?: [\w./]+)?(?: Mobile\/\w+)? Safari\//.test(Jn),U2=M2.start;Oe({target:"String",proto:!0,forced:N2},{padStart:function(e){return U2(this,e,arguments.length>1?arguments[1]:void 0)}});var V2=Tt,ry=function(){var e=V2(this),t="";return e.hasIndices&&(t+="d"),e.global&&(t+="g"),e.ignoreCase&&(t+="i"),e.multiline&&(t+="m"),e.dotAll&&(t+="s"),e.unicode&&(t+="u"),e.unicodeSets&&(t+="v"),e.sticky&&(t+="y"),t},Eh=ue,Rh=re.RegExp,Ah=Eh(function(){var e=Rh("a","y");return e.lastIndex=2,e.exec("abcd")!=null}),j2=Ah||Eh(function(){return!Rh("a","y").sticky}),iy={BROKEN_CARET:Ah||Eh(function(){var e=Rh("^r","gy");return e.lastIndex=2,e.exec("str")!=null}),MISSED_STICKY:j2,UNSUPPORTED_Y:Ah},B2=ue,F2=re.RegExp,ay=B2(function(){var e=F2(".","s");return!(e.dotAll&&e.exec(`
|
|
40
|
-
`)&&e.flags==="s")}),
|
|
41
|
-
`)&&(I="(?: "+I+")",T=" "+T,m++),n=new RegExp("^(?:"+I+")",E)),Oh&&(n=new RegExp("^"+I+"$(?!\\s)",E)),Lh&&(i=s.lastIndex),r=Ha(bu,x?n:s,T),x?r?(r.input=Dh(r.input,m),r[0]=Dh(r[0],m),r.index=s.lastIndex,s.lastIndex+=r[0].length):s.lastIndex=0:Lh&&r&&(s.lastIndex=s.global?r.index+r[0].length:i),Oh&&r&&r.length>1&&Ha($2,r[0],n,function(){for(o=1;o<arguments.length-2;o++)arguments[o]===void 0&&(r[o]=void 0)}),r&&k)for(r.groups=c=K2(null),o=0;o<k.length;o++)c[(a=k[o])[0]]=r[a[1]];return r});var Su=Ph;Oe({target:"RegExp",proto:!0,forced:/./.exec!==Su},{exec:Su});var cy=pe,uy=Yt,nP=Su,ly=ue,dy=tt,rP=Ln,iP=dy("species"),Mh=RegExp.prototype,Nh=function(e,t,n,i){var r=dy(e),o=!ly(function(){var l={};return l[r]=function(){return 7},""[e](l)!=7}),c=o&&!ly(function(){var l=!1,u=/a/;return e==="split"&&((u={}).constructor={},u.constructor[iP]=function(){return u},u.flags="",u[r]=/./[r]),u.exec=function(){return l=!0,null},u[r](""),!l});if(!o||!c||n){var a=cy(/./[r]),s=t(r,""[e],function(l,u,p,k,x){var E=cy(l),I=u.exec;return I===nP||I===Mh.exec?o&&!x?{done:!0,value:a(u,p,k)}:{done:!0,value:E(p,u,k)}:{done:!1}});uy(String.prototype,e,s[0]),uy(Mh,r,s[1])}i&&rP(Mh[r],"sham",!0)},aP=ph.charAt,hy=function(e,t,n){return t+(n?aP(e,t).length:1)},Uh=pe,oP=Mt,sP=Math.floor,Vh=Uh("".charAt),cP=Uh("".replace),jh=Uh("".slice),uP=/\$([$&'`]|\d{1,2}|<[^>]*>)/g,lP=/\$([$&'`]|\d{1,2})/g,fy=Ke,dP=Tt,hP=it,fP=rt,pP=Su,mP=TypeError,Bh=function(e,t){var n=e.exec;if(hP(n)){var i=fy(n,e,t);return i!==null&&dP(i),i}if(fP(e)==="RegExp")return fy(pP,e,t);throw mP("RegExp#exec called on incompatible receiver")},vP=zi,py=Ke,ku=pe,gP=Nh,_P=ue,yP=Tt,bP=it,SP=Rt,kP=Qn,TP=_r,Ga=zt,xP=ht,IP=hy,wP=Kt,CP=function(e,t,n,i,r,o){var c=n+e.length,a=i.length,s=lP;return r!==void 0&&(r=oP(r),s=uP),cP(o,s,function(l,u){var p;switch(Vh(u,0)){case"$":return"$";case"&":return e;case"`":return jh(t,0,n);case"'":return jh(t,c);case"<":p=r[jh(u,1,-1)];break;default:var k=+u;if(k===0)return l;if(k>a){var x=sP(k/10);return x===0?l:x<=a?i[x-1]===void 0?Vh(u,1):i[x-1]+Vh(u,1):l}p=i[k-1]}return p===void 0?"":p})},EP=Bh,Fh=tt("replace"),RP=Math.max,AP=Math.min,PP=ku([].concat),Hh=ku([].push),my=ku("".indexOf),vy=ku("".slice),DP="a".replace(/./,"$0")==="$0",gy=!!/./[Fh]&&/./[Fh]("a","$0")==="",LP=!_P(function(){var e=/./;return e.exec=function(){var t=[];return t.groups={a:"7"},t},"".replace(e,"$<a>")!=="7"});gP("replace",function(e,t,n){var i=gy?"$":"$0";return[function(r,o){var c=xP(this),a=SP(r)?void 0:wP(r,Fh);return a?py(a,r,c,o):py(t,Ga(c),r,o)},function(r,o){var c=yP(this),a=Ga(r);if(typeof o=="string"&&my(o,i)===-1&&my(o,"$<")===-1){var s=n(t,c,a,o);if(s.done)return s.value}var l=bP(o);l||(o=Ga(o));var u=c.global;if(u){var p=c.unicode;c.lastIndex=0}for(var k=[];;){var x=EP(c,a);if(x===null||(Hh(k,x),!u))break;Ga(x[0])===""&&(c.lastIndex=IP(a,TP(c.lastIndex),p))}for(var E,I="",m=0,T=0;T<k.length;T++){for(var v=Ga((x=k[T])[0]),C=RP(AP(kP(x.index),a.length),0),O=[],N=1;N<x.length;N++)Hh(O,(E=x[N])===void 0?E:String(E));var j=x.groups;if(l){var _=PP([v],O,C,a);j!==void 0&&Hh(_,j);var b=Ga(vP(o,void 0,_))}else b=CP(v,a,C,O,j,o);C>=m&&(I+=vy(a,m,C)+b,m=C+v.length)}return I+vy(a,m)}]},!LP||!DP||gy);var OP=Ke,MP=kt,NP=bn,UP=ry,_y=RegExp.prototype,yy=function(e){var t=e.flags;return t!==void 0||"flags"in _y||MP(e,"flags")||!NP(_y,e)?t:OP(UP,e)},VP=Xn.PROPER,jP=Yt,BP=Tt,by=zt,FP=ue,HP=yy,Sy="toString",ky=RegExp.prototype.toString,GP=FP(function(){return ky.call({source:"a",flags:"b"})!="/a/b"}),zP=VP&&ky.name!=Sy;(GP||zP)&&jP(RegExp.prototype,Sy,function(){var e=BP(this);return"/"+by(e.source)+"/"+by(HP(e))},{unsafe:!0});var WP=ue,qP=tt("iterator"),Ty=!WP(function(){var e=new URL("b?a=1&b=2&c=3","http://a"),t=e.searchParams,n="";return e.pathname="c%20d",t.forEach(function(i,r){t.delete("b"),n+=r+i}),!t.sort||e.href!=="http://a/c%20d?a=1&c=3"||t.get("c")!=="3"||String(new URLSearchParams("?a=1"))!=="a=1"||!t[qP]||new URL("https://a@b").username!=="a"||new URLSearchParams(new URLSearchParams("a=b")).get("a")!=="b"||new URL("http://\u0442\u0435\u0441\u0442").host!=="xn--e1aybc"||new URL("http://a#\u0431").hash!=="#%D0%B1"||n!=="a1c3"||new URL("http://x",void 0).host!=="x"}),xy=du,JP=Math.floor,Gh=function(e,t){var n=e.length,i=JP(n/2);return n<8?KP(e,t):YP(e,Gh(xy(e,0,i),t),Gh(xy(e,i),t),t)},KP=function(e,t){for(var n,i,r=e.length,o=1;o<r;){for(i=o,n=e[o];i&&t(e[i-1],n)>0;)e[i]=e[--i];i!==o++&&(e[i]=n)}return e},YP=function(e,t,n,i){for(var r=t.length,o=n.length,c=0,a=0;c<r||a<o;)e[c+a]=c<r&&a<o?i(t[c],n[a])<=0?t[c++]:n[a++]:c<r?t[c++]:n[a++];return e},Iy=Gh,zh=Oe,za=re,Tu=Ke,yr=pe,XP=ye,wy=Ty,Cy=Yt,QP=Rs,$P=Gi,ZP=Dg,Wh=Ye,Ey=ai,qh=it,eD=kt,tD=Or,nD=Dr,rD=Tt,Ry=at,kn=zt,iD=Va,Ay=Ze,Jh=fu,aD=Cs,Wa=gu,oD=Iy,sD=tt("iterator"),xu="URLSearchParams",Py="URLSearchParamsIterator",Dy=Wh.set,$n=Wh.getterFor(xu),cD=Wh.getterFor(Py),uD=Object.getOwnPropertyDescriptor,Kh=function(e){if(!XP)return za[e];var t=uD(za,e);return t&&t.value},Ly=Kh("fetch"),Iu=Kh("Request"),Ns=Kh("Headers"),Yh=Iu&&Iu.prototype,Oy=Ns&&Ns.prototype,lD=za.RegExp,dD=za.TypeError,My=za.decodeURIComponent,hD=za.encodeURIComponent,fD=yr("".charAt),Ny=yr([].join),Wi=yr([].push),Xh=yr("".replace),pD=yr([].shift),Uy=yr([].splice),Vy=yr("".split),mD=yr("".slice),vD=/\+/g,jy=Array(4),gD=function(e){return jy[e-1]||(jy[e-1]=lD("((?:%[\\da-f]{2}){"+e+"})","gi"))},_D=function(e){try{return My(e)}catch(t){return e}},By=function(e){var t=Xh(e,vD," "),n=4;try{return My(t)}catch(i){for(;n;)t=Xh(t,gD(n--),_D);return t}},yD=/[!'()~]|%20/g,bD={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+"},SD=function(e){return bD[e]},Fy=function(e){return Xh(hD(e),yD,SD)},Qh=ZP(function(e,t){Dy(this,{type:Py,iterator:Jh($n(e).entries),kind:t})},"Iterator",function(){var e=cD(this),t=e.kind,n=e.iterator.next(),i=n.value;return n.done||(n.value=t==="keys"?i.key:t==="values"?i.value:[i.key,i.value]),n},!0),Hy=function(e){this.entries=[],this.url=null,e!==void 0&&(Ry(e)?this.parseObject(e):this.parseQuery(typeof e=="string"?fD(e,0)==="?"?mD(e,1):e:kn(e)))};Hy.prototype={type:xu,bindURL:function(e){this.url=e,this.update()},parseObject:function(e){var t,n,i,r,o,c,a,s=aD(e);if(s)for(n=(t=Jh(e,s)).next;!(i=Tu(n,t)).done;){if(o=(r=Jh(rD(i.value))).next,(c=Tu(o,r)).done||(a=Tu(o,r)).done||!Tu(o,r).done)throw dD("Expected sequence with length 2");Wi(this.entries,{key:kn(c.value),value:kn(a.value)})}else for(var l in e)eD(e,l)&&Wi(this.entries,{key:l,value:kn(e[l])})},parseQuery:function(e){if(e)for(var t,n,i=Vy(e,"&"),r=0;r<i.length;)(t=i[r++]).length&&(n=Vy(t,"="),Wi(this.entries,{key:By(pD(n)),value:By(Ny(n,"="))}))},serialize:function(){for(var e,t=this.entries,n=[],i=0;i<t.length;)e=t[i++],Wi(n,Fy(e.key)+"="+Fy(e.value));return Ny(n,"&")},update:function(){this.entries.length=0,this.parseQuery(this.url.query)},updateURL:function(){this.url&&this.url.update()}};var wu=function(){Ey(this,Us);var e=arguments.length>0?arguments[0]:void 0;Dy(this,new Hy(e))},Us=wu.prototype;if(QP(Us,{append:function(e,t){Wa(arguments.length,2);var n=$n(this);Wi(n.entries,{key:kn(e),value:kn(t)}),n.updateURL()},delete:function(e){Wa(arguments.length,1);for(var t=$n(this),n=t.entries,i=kn(e),r=0;r<n.length;)n[r].key===i?Uy(n,r,1):r++;t.updateURL()},get:function(e){Wa(arguments.length,1);for(var t=$n(this).entries,n=kn(e),i=0;i<t.length;i++)if(t[i].key===n)return t[i].value;return null},getAll:function(e){Wa(arguments.length,1);for(var t=$n(this).entries,n=kn(e),i=[],r=0;r<t.length;r++)t[r].key===n&&Wi(i,t[r].value);return i},has:function(e){Wa(arguments.length,1);for(var t=$n(this).entries,n=kn(e),i=0;i<t.length;)if(t[i++].key===n)return!0;return!1},set:function(e,t){Wa(arguments.length,1);for(var n,i=$n(this),r=i.entries,o=!1,c=kn(e),a=kn(t),s=0;s<r.length;s++)(n=r[s]).key===c&&(o?Uy(r,s--,1):(o=!0,n.value=a));o||Wi(r,{key:c,value:a}),i.updateURL()},sort:function(){var e=$n(this);oD(e.entries,function(t,n){return t.key>n.key?1:-1}),e.updateURL()},forEach:function(e){for(var t,n=$n(this).entries,i=tD(e,arguments.length>1?arguments[1]:void 0),r=0;r<n.length;)i((t=n[r++]).value,t.key,this)},keys:function(){return new Qh(this,"keys")},values:function(){return new Qh(this,"values")},entries:function(){return new Qh(this,"entries")}},{enumerable:!0}),Cy(Us,sD,Us.entries,{name:"entries"}),Cy(Us,"toString",function(){return $n(this).serialize()},{enumerable:!0}),$P(wu,xu),zh({global:!0,constructor:!0,forced:!wy},{URLSearchParams:wu}),!wy&&qh(Ns)){var kD=yr(Oy.has),TD=yr(Oy.set),Gy=function(e){if(Ry(e)){var t,n=e.body;if(nD(n)===xu)return t=e.headers?new Ns(e.headers):new Ns,kD(t,"content-type")||TD(t,"content-type","application/x-www-form-urlencoded;charset=UTF-8"),iD(e,{body:Ay(0,kn(n)),headers:Ay(0,t)})}return e};if(qh(Ly)&&zh({global:!0,enumerable:!0,dontCallGetSet:!0,forced:!0},{fetch:function(e){return Ly(e,arguments.length>1?Gy(arguments[1]):{})}}),qh(Iu)){var $h=function(e){return Ey(this,Yh),new Iu(e,arguments.length>1?Gy(arguments[1]):{})};Yh.constructor=$h,$h.prototype=Yh,zh({global:!0,constructor:!0,dontCallGetSet:!0,forced:!0},{Request:$h})}}var xD={URLSearchParams:wu,getState:$n},ID=Object.is||function(e,t){return e===t?e!==0||1/e==1/t:e!=e&&t!=t},wD=Ke,CD=Tt,ED=Rt,RD=ht,zy=ID,Wy=zt,AD=Kt,PD=Bh;Nh("search",function(e,t,n){return[function(i){var r=RD(this),o=ED(i)?void 0:AD(i,e);return o?wD(o,i,r):new RegExp(i)[e](Wy(r))},function(i){var r=CD(this),o=Wy(i),c=n(t,r,o);if(c.done)return c.value;var a=r.lastIndex;zy(a,0)||(r.lastIndex=0);var s=PD(r,o);return zy(r.lastIndex,a)||(r.lastIndex=a),s===null?-1:s.index}]}),new Date().getTime();var Zh=0,rn=function(){return new Date().getTime()+Zh},qy=function(){var e=new Date;return e.setTime(rn()),e.toLocaleString()},DD=Ke,LD=Tt,OD=Rt,MD=_r,ef=zt,ND=ht,UD=Kt,VD=hy,Jy=Bh;Nh("match",function(e,t,n){return[function(i){var r=ND(this),o=OD(i)?void 0:UD(i,e);return o?DD(o,i,r):new RegExp(i)[e](ef(r))},function(i){var r=LD(this),o=ef(i),c=n(t,r,o);if(c.done)return c.value;if(!r.global)return Jy(r,o);var a=r.unicode;r.lastIndex=0;for(var s,l=[],u=0;(s=Jy(r,o))!==null;){var p=ef(s[0]);l[u]=p,p===""&&(r.lastIndex=VD(o,MD(r.lastIndex),a)),u++}return u===0?null:l}]});var jD=at,BD=rt,FD=tt("match"),Ky=function(e){var t;return jD(e)&&((t=e[FD])!==void 0?!!t:BD(e)=="RegExp")},HD=Pt.f,GD=ye,tf=re,Vs=pe,zD=bs,WD=vu,qD=Ln,JD=ri.f,Yy=bn,KD=Ky,Xy=zt,YD=yy,Qy=iy,XD=function(e,t,n){n in e||HD(e,n,{configurable:!0,get:function(){return t[n]},set:function(i){t[n]=i}})},QD=Yt,$D=ue,ZD=kt,eL=Ye.enforce,tL=As,$y=ay,Zy=oy,nL=tt("match"),si=tf.RegExp,qa=si.prototype,rL=tf.SyntaxError,iL=Vs(qa.exec),Cu=Vs("".charAt),e0=Vs("".replace),t0=Vs("".indexOf),aL=Vs("".slice),oL=/^\?<[^\s\d!#%&*+<=>@^][^\s!#%&*+<=>@^]*>/,qi=/a/g,nf=/a/g,sL=new si(qi)!==qi,n0=Qy.MISSED_STICKY,cL=Qy.UNSUPPORTED_Y,uL=GD&&(!sL||n0||$y||Zy||$D(function(){return nf[nL]=!1,si(qi)!=qi||si(nf)==nf||si(qi,"i")!="/a/i"}));if(zD("RegExp",uL)){for(var Ji=function(e,t){var n,i,r,o,c,a,s=Yy(qa,this),l=KD(e),u=t===void 0,p=[],k=e;if(!s&&l&&u&&e.constructor===Ji)return e;if((l||Yy(qa,e))&&(e=e.source,u&&(t=YD(k))),e=e===void 0?"":Xy(e),t=t===void 0?"":Xy(t),k=e,$y&&"dotAll"in qi&&(i=!!t&&t0(t,"s")>-1)&&(t=e0(t,/s/g,"")),n=t,n0&&"sticky"in qi&&(r=!!t&&t0(t,"y")>-1)&&cL&&(t=e0(t,/y/g,"")),Zy&&(o=function(x){for(var E,I=x.length,m=0,T="",v=[],C={},O=!1,N=!1,j=0,_="";m<=I;m++){if((E=Cu(x,m))==="\\")E+=Cu(x,++m);else if(E==="]")O=!1;else if(!O)switch(!0){case E==="[":O=!0;break;case E==="(":iL(oL,aL(x,m+1))&&(m+=2,N=!0),T+=E,j++;continue;case(E===">"&&N):if(_===""||ZD(C,_))throw new rL("Invalid capture group name");C[_]=!0,v[v.length]=[_,j],N=!1,_="";continue}N?_+=E:T+=E}return[T,v]}(e),e=o[0],p=o[1]),c=WD(si(e,t),s?this:qa,Ji),(i||r||p.length)&&(a=eL(c),i&&(a.dotAll=!0,a.raw=Ji(function(x){for(var E,I=x.length,m=0,T="",v=!1;m<=I;m++)(E=Cu(x,m))!=="\\"?v||E!=="."?(E==="["?v=!0:E==="]"&&(v=!1),T+=E):T+="[\\s\\S]":T+=E+Cu(x,++m);return T}(e),n)),r&&(a.sticky=!0),p.length&&(a.groups=p)),e!==k)try{qD(c,"source",k===""?"(?:)":k)}catch(x){}return c},r0=JD(si),i0=0;r0.length>i0;)XD(Ji,si,r0[i0++]);qa.constructor=Ji,Ji.prototype=qa,QD(tf,"RegExp",Ji,{constructor:!0})}tL("RegExp");var a0=pe(1 .valueOf),o0=`
|
|
42
|
-
\v\f\r \xA0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF`,
|
|
43
|
-
\v\f\r \xA0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF]`,hL=RegExp("^"+Eu+Eu+"*"),fL=RegExp(Eu+Eu+"*$"),rf=function(e){return function(t){var n=dL(lL(t));return 1&e&&(n=s0(n,hL,"")),2&e&&(n=s0(n,fL,"")),n}},Ru={start:rf(1),end:rf(2),trim:rf(3)},pL=ye,af=re,c0=pe,mL=bs,vL=Yt,u0=kt,gL=vu,_L=bn,yL=Di,l0=Ni,bL=ue,SL=ri.f,kL=be.f,TL=Pt.f,xL=a0,IL=Ru.trim,d0="Number",ci=af.Number,of=ci.prototype,wL=af.TypeError,CL=c0("".slice),Au=c0("".charCodeAt),EL=function(e){var t=l0(e,"number");return typeof t=="bigint"?t:RL(t)},RL=function(e){var t,n,i,r,o,c,a,s,l=l0(e,"number");if(yL(l))throw wL("Cannot convert a Symbol value to a number");if(typeof l=="string"&&l.length>2){if(l=IL(l),(t=Au(l,0))===43||t===45){if((n=Au(l,2))===88||n===120)return NaN}else if(t===48){switch(Au(l,1)){case 66:case 98:i=2,r=49;break;case 79:case 111:i=8,r=55;break;default:return+l}for(c=(o=CL(l,2)).length,a=0;a<c;a++)if((s=Au(o,a))<48||s>r)return NaN;return parseInt(o,i)}}return+l};if(mL(d0,!ci(" 0o1")||!ci("0b1")||ci("+0x1"))){for(var Pu,Ja=function(e){var t=arguments.length<1?0:ci(EL(e)),n=this;return _L(of,n)&&bL(function(){xL(n)})?gL(Object(t),n,Ja):t},h0=pL?SL(ci):"MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,EPSILON,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,isFinite,isInteger,isNaN,isSafeInteger,parseFloat,parseInt,fromString,range".split(","),sf=0;h0.length>sf;sf++)u0(ci,Pu=h0[sf])&&!u0(Ja,Pu)&&TL(Ja,Pu,kL(ci,Pu));Ja.prototype=of,of.constructor=Ja,vL(af,d0,Ja,{constructor:!0})}var AL=_s.includes,PL=cu;Oe({target:"Array",proto:!0,forced:ue(function(){return!Array(1).includes()})},{includes:function(e){return AL(this,e,arguments.length>1?arguments[1]:void 0)}}),PL("includes");var DL=Ky,LL=TypeError,f0=function(e){if(DL(e))throw LL("The method doesn't accept regular expressions");return e},OL=tt("match"),p0=function(e){var t=/./;try{"/./"[e](t)}catch(n){try{return t[OL]=!1,"/./"[e](t)}catch(i){}}return!1},ML=Oe,NL=f0,UL=ht,m0=zt,VL=p0,jL=pe("".indexOf);ML({target:"String",proto:!0,forced:!VL("includes")},{includes:function(e){return!!~jL(m0(UL(this)),m0(NL(e)),arguments.length>1?arguments[1]:void 0)}});var BL=Oe,FL=_s.indexOf,HL=Ms,cf=pe([].indexOf),v0=!!cf&&1/cf([1],1,-0)<0,GL=HL("indexOf");BL({target:"Array",proto:!0,forced:v0||!GL},{indexOf:function(e){var t=arguments.length>1?arguments[1]:void 0;return v0?cf(this,e,t)||0:FL(this,e,t)}});var zL=Mt,g0=ks,WL=Cg;Oe({target:"Object",stat:!0,forced:ue(function(){g0(1)}),sham:!WL},{getPrototypeOf:function(e){return g0(zL(e))}});var qL=zi,JL=Vt,KL=Tt;Oe({target:"Reflect",stat:!0,forced:!ue(function(){Reflect.apply(function(){})})},{apply:function(e,t,n){return qL(JL(e),t,KL(n))}});var YL=ye,XL=Xn.EXISTS,_0=pe,QL=Pt.f,y0=Function.prototype,$L=_0(y0.toString),b0=/function\b(?:\s|\/\*[\S\s]*?\*\/|\/\/[^\n\r]*[\n\r]+)*([^\s(/]*)/,ZL=_0(b0.exec);YL&&!XL&&QL(y0,"name",{configurable:!0,get:function(){try{return ZL(b0,$L(this))[1]}catch(e){return""}}});var eO=Oe,S0=Date,tO=pe(S0.prototype.getTime);eO({target:"Date",stat:!0},{now:function(){return tO(new S0)}});var js,Ka,k0,uf,Bs=rt(re.process)=="process",nO=_u,rO=Kn,iO=TypeError,T0=function(e){if(nO(e))return e;throw iO(rO(e)+" is not a constructor")},x0=Tt,aO=T0,oO=Rt,sO=tt("species"),Du=function(e,t){var n,i=x0(e).constructor;return i===void 0||oO(n=x0(i)[sO])?t:aO(n)},I0=/(?:ipad|iphone|ipod).*applewebkit/i.test(Jn),Tn=re,cO=zi,uO=Or,w0=it,lO=kt,dO=ue,C0=bg,hO=Ba,E0=mr,fO=gu,pO=I0,mO=Bs,lf=Tn.setImmediate,df=Tn.clearImmediate,vO=Tn.process,hf=Tn.Dispatch,gO=Tn.Function,R0=Tn.MessageChannel,_O=Tn.String,ff=0,Fs={},yO="onreadystatechange";try{js=Tn.location}catch(e){}var pf=function(e){if(lO(Fs,e)){var t=Fs[e];delete Fs[e],t()}},mf=function(e){return function(){pf(e)}},A0=function(e){pf(e.data)},P0=function(e){Tn.postMessage(_O(e),js.protocol+"//"+js.host)};lf&&df||(lf=function(e){fO(arguments.length,1);var t=w0(e)?e:gO(e),n=hO(arguments,1);return Fs[++ff]=function(){cO(t,void 0,n)},Ka(ff),ff},df=function(e){delete Fs[e]},mO?Ka=function(e){vO.nextTick(mf(e))}:hf&&hf.now?Ka=function(e){hf.now(mf(e))}:R0&&!pO?(uf=(k0=new R0).port2,k0.port1.onmessage=A0,Ka=uO(uf.postMessage,uf)):Tn.addEventListener&&w0(Tn.postMessage)&&!Tn.importScripts&&js&&js.protocol!=="file:"&&!dO(P0)?(Ka=P0,Tn.addEventListener("message",A0,!1)):Ka=yO in E0("script")?function(e){C0.appendChild(E0("script")).onreadystatechange=function(){C0.removeChild(this),pf(e)}}:function(e){setTimeout(mf(e),0)});var Hs,Ki,Gs,Ya,vf,gf,_f,D0,L0={set:lf,clear:df},bO=re,SO=/ipad|iphone|ipod/i.test(Jn)&&bO.Pebble!==void 0,kO=/web0s(?!.*chrome)/i.test(Jn),Yi=re,O0=Or,TO=be.f,yf=L0.set,xO=I0,IO=SO,wO=kO,bf=Bs,M0=Yi.MutationObserver||Yi.WebKitMutationObserver,N0=Yi.document,U0=Yi.process,Lu=Yi.Promise,V0=TO(Yi,"queueMicrotask"),j0=V0&&V0.value;j0||(Hs=function(){var e,t;for(bf&&(e=U0.domain)&&e.exit();Ki;){t=Ki.fn,Ki=Ki.next;try{t()}catch(n){throw Ki?Ya():Gs=void 0,n}}Gs=void 0,e&&e.enter()},xO||bf||wO||!M0||!N0?!IO&&Lu&&Lu.resolve?((_f=Lu.resolve(void 0)).constructor=Lu,D0=O0(_f.then,_f),Ya=function(){D0(Hs)}):bf?Ya=function(){U0.nextTick(Hs)}:(yf=O0(yf,Yi),Ya=function(){yf(Hs)}):(vf=!0,gf=N0.createTextNode(""),new M0(Hs).observe(gf,{characterData:!0}),Ya=function(){gf.data=vf=!vf}));var CO=j0||function(e){var t={fn:e,next:void 0};Gs&&(Gs.next=t),Ki||(Ki=t,Ya()),Gs=t},EO=re,Sf=function(e){try{return{error:!1,value:e()}}catch(t){return{error:!0,value:t}}},B0=function(){this.head=null,this.tail=null};B0.prototype={add:function(e){var t={item:e,next:null};this.head?this.tail.next=t:this.head=t,this.tail=t},get:function(){var e=this.head;if(e)return this.head=e.next,this.tail===e&&(this.tail=null),e.item}};var RO=B0,zs=re.Promise,F0=typeof Deno=="object"&&Deno&&typeof Deno.version=="object",AO=!F0&&!Bs&&typeof window=="object"&&typeof document=="object",PO=re,Ws=zs,DO=it,LO=bs,OO=d,MO=tt,NO=AO,UO=F0,kf=fr;Ws&&Ws.prototype;var VO=MO("species"),H0=!1,G0=DO(PO.PromiseRejectionEvent),jO=LO("Promise",function(){var e=OO(Ws),t=e!==String(Ws);if(!t&&kf===66)return!0;if(!kf||kf<51||!/native code/.test(e)){var n=new Ws(function(r){r(1)}),i=function(r){r(function(){},function(){})};if((n.constructor={})[VO]=i,!(H0=n.then(function(){})instanceof i))return!0}return!t&&(NO||UO)&&!G0}),Xi={CONSTRUCTOR:jO,REJECTION_EVENT:G0,SUBCLASSING:H0},Xa={},z0=Vt,BO=TypeError,FO=function(e){var t,n;this.promise=new e(function(i,r){if(t!==void 0||n!==void 0)throw BO("Bad Promise constructor");t=i,n=r}),this.resolve=z0(t),this.reject=z0(n)};Xa.f=function(e){return new FO(e)};var Tf,W0,q0,HO=Oe,Ou=Bs,ui=re,Qa=Ke,J0=Yt,K0=ja,GO=Gi,zO=As,WO=Vt,Mu=it,qO=at,JO=ai,KO=Du,Y0=L0.set,xf=CO,YO=function(e,t){var n=EO.console;n&&n.error&&(arguments.length==1?n.error(e):n.error(e,t))},XO=Sf,QO=RO,X0=Ye,Nu=zs,Q0=Xa,Uu="Promise",$0=Xi.CONSTRUCTOR,$O=Xi.REJECTION_EVENT,ZO=Xi.SUBCLASSING,If=X0.getterFor(Uu),eM=X0.set,$a=Nu&&Nu.prototype,Za=Nu,Vu=$a,Z0=ui.TypeError,wf=ui.document,Cf=ui.process,Ef=Q0.f,tM=Ef,nM=!!(wf&&wf.createEvent&&ui.dispatchEvent),eb="unhandledrejection",tb=function(e){var t;return!(!qO(e)||!Mu(t=e.then))&&t},nb=function(e,t){var n,i,r,o=t.value,c=t.state==1,a=c?e.ok:e.fail,s=e.resolve,l=e.reject,u=e.domain;try{a?(c||(t.rejection===2&&iM(t),t.rejection=1),a===!0?n=o:(u&&u.enter(),n=a(o),u&&(u.exit(),r=!0)),n===e.promise?l(Z0("Promise-chain cycle")):(i=tb(n))?Qa(i,n,s,l):s(n)):l(o)}catch(p){u&&!r&&u.exit(),l(p)}},rb=function(e,t){e.notified||(e.notified=!0,xf(function(){for(var n,i=e.reactions;n=i.get();)nb(n,e);e.notified=!1,t&&!e.rejection&&rM(e)}))},ib=function(e,t,n){var i,r;nM?((i=wf.createEvent("Event")).promise=t,i.reason=n,i.initEvent(e,!1,!0),ui.dispatchEvent(i)):i={promise:t,reason:n},!$O&&(r=ui["on"+e])?r(i):e===eb&&YO("Unhandled promise rejection",n)},rM=function(e){Qa(Y0,ui,function(){var t,n=e.facade,i=e.value;if(ab(e)&&(t=XO(function(){Ou?Cf.emit("unhandledRejection",i,n):ib(eb,n,i)}),e.rejection=Ou||ab(e)?2:1,t.error))throw t.value})},ab=function(e){return e.rejection!==1&&!e.parent},iM=function(e){Qa(Y0,ui,function(){var t=e.facade;Ou?Cf.emit("rejectionHandled",t):ib("rejectionhandled",t,e.value)})},eo=function(e,t,n){return function(i){e(t,i,n)}},to=function(e,t,n){e.done||(e.done=!0,n&&(e=n),e.value=t,e.state=2,rb(e,!0))},Rf=function(e,t,n){if(!e.done){e.done=!0,n&&(e=n);try{if(e.facade===t)throw Z0("Promise can't be resolved itself");var i=tb(t);i?xf(function(){var r={done:!1};try{Qa(i,t,eo(Rf,r,e),eo(to,r,e))}catch(o){to(r,o,e)}}):(e.value=t,e.state=1,rb(e,!1))}catch(r){to({done:!1},r,e)}}};if($0&&(Vu=(Za=function(e){JO(this,Vu),WO(e),Qa(Tf,this);var t=If(this);try{e(eo(Rf,t),eo(to,t))}catch(n){to(t,n)}}).prototype,(Tf=function(e){eM(this,{type:Uu,done:!1,notified:!1,parent:!1,reactions:new QO,rejection:!1,state:0,value:void 0})}).prototype=J0(Vu,"then",function(e,t){var n=If(this),i=Ef(KO(this,Za));return n.parent=!0,i.ok=!Mu(e)||e,i.fail=Mu(t)&&t,i.domain=Ou?Cf.domain:void 0,n.state==0?n.reactions.add(i):xf(function(){nb(i,n)}),i.promise}),W0=function(){var e=new Tf,t=If(e);this.promise=e,this.resolve=eo(Rf,t),this.reject=eo(to,t)},Q0.f=Ef=function(e){return e===Za||e===void 0?new W0(e):tM(e)},Mu(Nu)&&$a!==Object.prototype)){q0=$a.then,ZO||J0($a,"then",function(e,t){var n=this;return new Za(function(i,r){Qa(q0,n,i,r)}).then(e,t)},{unsafe:!0});try{delete $a.constructor}catch(e){}K0&&K0($a,Vu)}HO({global:!0,constructor:!0,wrap:!0,forced:$0},{Promise:Za}),GO(Za,Uu,!1),zO(Uu);var aM=zs,ob=Xi.CONSTRUCTOR||!mu(function(e){aM.all(e).then(void 0,function(){})}),oM=Ke,sM=Vt,cM=Xa,uM=Sf,lM=Es;Oe({target:"Promise",stat:!0,forced:ob},{all:function(e){var t=this,n=cM.f(t),i=n.resolve,r=n.reject,o=uM(function(){var c=sM(t.resolve),a=[],s=0,l=1;lM(e,function(u){var p=s++,k=!1;l++,oM(c,t,u).then(function(x){k||(k=!0,a[p]=x,--l||i(a))},r)}),--l||i(a)});return o.error&&r(o.value),n.promise}});var dM=Oe,hM=Xi.CONSTRUCTOR,Af=zs,fM=Rn,pM=it,mM=Yt,sb=Af&&Af.prototype;if(dM({target:"Promise",proto:!0,forced:hM,real:!0},{catch:function(e){return this.then(void 0,e)}}),pM(Af)){var cb=fM("Promise").prototype.catch;sb.catch!==cb&&mM(sb,"catch",cb,{unsafe:!0})}var vM=Ke,gM=Vt,_M=Xa,yM=Sf,bM=Es;Oe({target:"Promise",stat:!0,forced:ob},{race:function(e){var t=this,n=_M.f(t),i=n.reject,r=yM(function(){var o=gM(t.resolve);bM(e,function(c){vM(o,t,c).then(n.resolve,i)})});return r.error&&i(r.value),n.promise}});var SM=Ke,kM=Xa;Oe({target:"Promise",stat:!0,forced:Xi.CONSTRUCTOR},{reject:function(e){var t=kM.f(this);return SM(t.reject,void 0,e),t.promise}});var TM=Tt,xM=at,IM=Xa,ub=function(e,t){if(TM(e),xM(t)&&t.constructor===e)return t;var n=IM.f(e);return(0,n.resolve)(t),n.promise},wM=Oe,CM=Xi.CONSTRUCTOR,EM=ub;Rn("Promise"),wM({target:"Promise",stat:!0,forced:CM},{resolve:function(e){return EM(this,e)}});var RM=Mt,lb=au;Oe({target:"Object",stat:!0,forced:ue(function(){lb(1)})},{keys:function(e){return lb(RM(e))}});var db="canvas",Ee="audio",xe="video",Pf="screen",Mr="small",ju="big",pt="auxiliary",Mn="aux",Bu="smallVideo",hb="user",fb="environment",en="mute",br="unmute",Nt="ended",li="playing",di="pause",no="error",Df="loadeddata",qs="audioinput",Fu="videoinput",pb="detail",AM="text",Xe="main",Zn="backup",PM="banned",DM="kick",LM="user_time_out",OM="room_disband",mb="sei-message",ro="PLAYING",Sr="PAUSED",hi="STOPPED",io="inactive",fi="sendonly",Lf="recvonly",vb="add",gb="remove",MM="replace",Of="track",NM="wss://trtc.rtc.qq.com",UM="wss://webrtc.qq.com",Hu="qcloud",VM="trtc",jM="webrtc",Js="",_b="jssdk_log",BM="jssdk_event",FM="jssdk_new_endreport",Mf=function(e){return Js=e},HM=1,GM=2,Gu="live",ao=20,Nf=21,kr="anchor",Qi="audience",Tr="5Y2wZK8nANNAoVw6dSAHVjNxrD1ObBM2kBPV",Ks="224d130c-7b5c-415b-aaa2-79c2eb5a6df2",zM=2,gt=Xe,Dt=pt,zu="unknown",an="DISCONNECTED",yb="CONNECTING",Uf="RECONNECTING",pn="CONNECTED",WM="new",Wu="connecting",bb="failed",Vf="closed",qM="disconnected",Sb="connected",JM="completed",jf=30,kb="join",KM="delta-join",Tb="rejoin",YM="leave",XM="delta-leave",xb="publish",QM="delta-publish",Ib="unpublish",wb="subscribe",Cb="unsubscribe",Eb="uplink-connection",Rb="uplink-reconnection",Ab="downlink-connection",Pb="downlink-reconnection",qu="setLocalDescription",Db="setRemoteDescription",Lb="iceConnectionState",Ys="stream-initialize",Bf="websocketConnectionState",Ob="websocketReconnectionState",Mb="update-stream",Nb="recover-subscription",Ub="start-mix-transcode",Vb="stop-mix-transcode",jb="player-error",Bb="schedule",Ff="unsubscribe",Hf="subscribe_change",Xs="unified-plan",Gf="plan-b",zf={MANUAL:"manual",PRESET_LAYOUT:"preset-layout"},Fb={REMOTE:"$PLACE_HOLDER_REMOTE$"},Hb={IT_AUDIO_VIDEO:0,IT_PICTURE:2,IT_CANVAS:3,IT_PURE_AUDIO:4,IT_PURE_VIDEO:5},bt="string",wt="number",on="boolean",$M="array",xr="object",sn={ADD:vb,REMOVE:gb},Wf={unknown:0,wifi:1,"4g":2,"3g":3,"2g":4,wired:5},Gb=-1,Qs=0,ZM=1,zb=ju,Wb=Mr,qb=6048e5,eN="schedule.rtc.qq.com",tN="schedule.rtc.qcloud.com",nN="schedule.rtc.tencentcloud.com",rN="schedule-ecdn.rtc.tencentcloud.com",qf="",Jb=function(e){return qf=e},$s="TRTC",cn="Client",pi="LocalStream",Jf="RemoteStream",iN="Stream",Kf="web.sdk.qcloud.com",Kb="web.sdk.tencent.cn",Yb="web.sdk.cloud.tencent.cn",Xb="https://console.cloud.tencent.com/trtc",oo="https://".concat(Kf,"/trtc/webrtc/doc"),Yf="".concat(oo,"/zh-cn/"),Xf="trtc_error_assistance",Ju="default",Qb="communications",Nn={TRACE:0,DEBUG:1,INFO:2,WARN:3,ERROR:4,NONE:5},aN=1,$b=2,oN=1,Zb=2,$i=Object.keys(Nn),sN=["normal leave","timeout leave","kick","role change"],Ku=2e3,so="ric",Yu="raf",cN="interval",eS="timeout",tS="Resolution reset to 1080p, need to upgrade ability here https://cloud.tencent.com/document/product/647/85386",uN={"TRTC.checkSystemRequirements":40001,"TRTC.isScreenShareSupported":40002,"TRTC.isSmallStreamSupported":40003,"TRTC.createClient.rtc":40004,"TRTC.createClient.live":40005,"TRTC.createClient.intRoomId":40006,"TRTC.createClient.stringRoomId":40007,"TRTC.createClient.autoSubscribe":40008,"TRTC.createClient.manualSubscribe":40009,"TRTC.enableUploadLog":40010,"TRTC.disableUploadLog":40011,"Client.publish":40012,"Client.publish.isAuxiliary":40013,"Client.switchRole":40014,"Client.startPublishCDNStream":40015,"Client.stopPublishCDNStream":40016,"Client.startMixTranscode":40017,"Client.stopMixTranscode":40018,"Client.enableAudioVolumeEvaluation":40019,"Client.enableSmallStream":40020,"Client.disableSmallStream":40021,"Client.setSmallStreamProfile":40022,"Client.setRemoteVideoStreamType":40023,"Client.sendSEIMessage":40024,"Client.setProxyServer":40025,"Client.setTurnServer":40026,"LocalStream.setAudioProfile.standard":40027,"LocalStream.setAudioProfile.high":40028,"LocalStream.setAudioProfile.standard-stereo":40029,"LocalStream.setAudioProfile.high-stereo":40030,"LocalStream.setVideoProfile.120p":40031,"LocalStream.setVideoProfile.120p_2":40032,"LocalStream.setVideoProfile.180p":40033,"LocalStream.setVideoProfile.180p_2":40034,"LocalStream.setVideoProfile.240p":40035,"LocalStream.setVideoProfile.240p_2":40036,"LocalStream.setVideoProfile.360p":40037,"LocalStream.setVideoProfile.360p_2":40038,"LocalStream.setVideoProfile.480p":40039,"LocalStream.setVideoProfile.480p_2":40040,"LocalStream.setVideoProfile.720p":40041,"LocalStream.setVideoProfile.1080p":40042,"LocalStream.setVideoProfile.1440p":40043,"LocalStream.setVideoProfile.4K":40044,"LocalStream.setScreenProfile.480p":40045,"LocalStream.setScreenProfile.480p_2":40046,"LocalStream.setScreenProfile.720p":40047,"LocalStream.setScreenProfile.720p_2":40048,"LocalStream.setScreenProfile.1080p":40049,"LocalStream.setScreenProfile.1080p_2":40050,"LocalStream.setVideoContentHint.motion":40051,"LocalStream.setVideoContentHint.detail":40052,"LocalStream.setVideoContentHint.text":40053,"LocalStream.setAudioCaptureVolume":40054,"LocalStream.getVideoFrame":40055,"RemoteStream.setAudioOutput":40056,"RemoteStream.getVideoFrame":40057,AI_DENOISER:1700,SPATIAL_AUDIO:1701,"2K_4K":1704},Qf=["width","height","frameRate","facingMode","sampleRate","sampleSize","channelCount","deviceId"],lN=ht,nS=zt,dN=/"/g,hN=pe("".replace),rS=function(e,t,n,i){var r=nS(lN(e)),o="<"+t;return n!==""&&(o+=" "+n+'="'+hN(nS(i),dN,""")+'"'),o+">"+r+"</"+t+">"},fN=ue,iS=function(e){return fN(function(){var t=""[e]('"');return t!==t.toLowerCase()||t.split('"').length>3})},pN=rS;Oe({target:"String",proto:!0,forced:iS("link")},{link:function(e){return pN(this,"a","href",e)}}),Oe({target:"Array",stat:!0},{isArray:Fa});var mN="AVOID_REPEATED_CALL",vN="INVALID_PARAMETER_REQUIRED",aS="INVALID_PARAMETER_TYPE",gN="INVALID_PARAMETER_EMPTY",oS="INVALID_PARAMETER_INSTANCE",_N="INVALID_PARAMETER_RANGE",yN="API_CALL_TIMEOUT",bN="SIGNAL_CHANNEL_RECONNECTION_FAILED",SN="SIGNAL_CHANNEL_SETUP_FAILED",kN="ERROR_MESSAGE",TN="EXCHANGE_SDP_TIMEOUT",xN="DOWNLINK_RECONNECTION_FAILED",IN="EXCHANGE_SDP_FAILED",wN="UPLINK_RECONNECTION_FAILED",CN="INVALID_PURE_AUDIO",EN="INVALID_STREAMID",RN="INVALID_USER_DEFINE_RECORDID",AN="INVALID_USER_DEFINE_PUSH_ARGS",PN="INVALID_PROXY",DN="INVALID_JOIN",LN="INVALID_ROOMID_STRING",ON="INVALID_ROOMID_INTEGER",MN="JOIN_ROOM_TIMEOUT",sS="JOIN_ROOM_FAILED",NN="REJOIN_ROOM_FAILED",UN="INVALID_DESTROY",VN="INVALID_PUBLISH",jN="INVALID_UNPUBLISH",BN="INVALID_AUDIENCE",FN="INVALID_INITIALIZE",HN="INVALID_DUPLICATE_PUBLISHING",$f="INVALID_REMOTE_STREAM",GN="SUBSCRIBE_FAILED",zN="INVALID_ROLE",WN="INVALID_OPERATION_SWITCH_ROLE",qN="SWITCH_ROLE_TIMEOUT",JN="SWITCH_ROLE_FAILED",KN="CLIENT_BANNED",cS="INVALID_OPERATION_START_PUBLISH_CDN",YN="INVALID_OPERATION_STOP_PUBLISH_CDN",XN="INVALID_STREAM_ID",uS="START_PUBLISH_CDN_FAILED",lS="STOP_PUBLISH_CDN_FAILED",QN="START_MIX_TRANSCODE",$N="STOP_MIX_TRANSCODE",ZN="INVALID_AUDIO_VOLUME",e3="ENABLE_SMALL_STREAM_PUBLISHED",t3="DISABLE_SMALL_STREAM_PUBLISHED",n3="NOT_SUPPORTED_SMALL_STREAM",r3="INVALID_SMALL_STREAM_PROFILE",i3="INVALID_PARAMETER_REMOTE_STREAM",a3="INVALID_SWITCH_DEVICE",o3="INVALID_SWITCH_DEVICE_PUBLISHING",dS="INVALID_REPLACE_TRACK",s3="INVALID_INITIALIZE_LOCAL_STREAM",c3="INVALID_ADD_TRACK_REPETITIVE",u3="INVALID_ADD_TRACK_REMOVING",l3="INVALID_ADD_TRACK_PUBLISHING",hS="INVALID_STREAM_INITIALIZED",d3="INVALID_ADD_TRACK_NUMBER",h3="INVALID_REMOVE_AUDIO_TRACK",f3="INVALID_REMOVE_AUDIO_ADDING",p3="INVALID_REMOVE_AUDIO_ON",m3="INVALID_REMOVE_TRACK_PUBLISHING",v3="INVALID_REMOVE_TRACK_NOT_PUBLISHING",g3="INVALID_REMOVE_TRACK_NUMBER",_3="INVALID_REPLACE_TRACK_NO_TRACK",y3="REPEAT_JOIN",Zf="CLIENT_DESTROYED",b3="START_MIX_TRANSCODE_FAILED",S3="STOP_MIX_TRANSCODE_FAILED",k3="MIX_TRANSCODE_NOT_STARTED",T3="CANNOT_LESS_THAN_ZERO",x3="MIX_PARAMS_VIDEO_FRAMERATE",I3="MIX_PARAMS_VIDEO_GOP",w3="MIX_PARAMS_AUDIO_BITRATE",C3="MIX_PARAMS_USER_Z_ORDER",E3="MIX_PARAMS_NOT_SELF",R3="MIX_PARAMS_USER_STREAM",A3="INVALID_ELEMENT_ID",P3="INVALID_ELEMENT_ID_TYPE",ep="PLAY_FAILED",D3="INVALID_CREATE_STREAM_SOURCE",L3="INVALID_CREATE_STREAM_SCREEN",O3="INVALID_CREATE_STREAM_AUDIO",M3="INVALID_CREATE_STREAM_SCREEN_AUDIO",fS="NOT_SUPPORTED_HTTP",pS="NOT_SUPPORTED_WEBRTC",N3="NOT_SUPPORTED_PROFILE",mS="NOT_SUPPORTED_H264ENCODE",vS="NOT_SUPPORTED_H264DECODE",tp="NOT_SUPPORTED_TRACK",U3="NOT_SUPPORTED_SWITCH_DEVICE",V3="NOT_SUPPORTED_CAPTURE",j3="NOT_SUPPORTED_AUX",B3="MICROPHONE_NOT_FOUND",F3="CAMERA_NOT_FOUND",gS="SIGNAL_RESPONSE_FAILED",H3="CATCH_HANDLER_ERROR",G3="API_NOT_EXIST",z3="CONNECTION_CLOSED",W3="SUBSCRIBE_ALL_FALSE",_S="SEI_NOT_SUPPORT",q3="SEI_DISABLED",J3="SEI_EMPTY",K3="SEI_OVERSIZE",Y3="SEI_BEFORE_PUBLISH",X3="SEI_NOT_VIDEO",Q3="CALL_FREQUENCY_LIMIT",$3="CONNECTION_ABORTED",np="API_CALL_ABORTED",Z3="DUPLICATE_AUX",mi={AVOID_REPEATED_CALL:function(e){return"previous ".concat(e.name,"() is ongoing, please avoid repeated calls.")},INVALID_PARAMETER_REQUIRED:function(e){var t=e.key,n=e.rule,i=e.fnName,r=e.value;return"'".concat(t||n.name,"' is a required param when calling ").concat(i,"(), received: ").concat(r,".")},INVALID_PARAMETER_TYPE:function(e){var t=e.key,n=e.rule,i=e.fnName,r=e.value,o="".concat(t||n.name),c="";return c=Array.isArray(n.type)?n.type.join("|"):n.type,"'".concat(o,"' must be type of ").concat(c," when calling ").concat(i,"(), received type: ").concat(yi(r),".")},INVALID_PARAMETER_EMPTY:function(e){var t=e.key,n=e.rule,i=e.fnName,r=e.value;return"'".concat(t||n.name,"' cannot be '").concat(r,"' when calling ").concat(i,"().")},INVALID_PARAMETER_INSTANCE:function(e){var t=e.key,n=e.rule,i=e.fnName,r=e.value,o="".concat(t||n.name),c="".concat(n.instanceOf.name||n.instanceOf);return"'".concat(o,"' must be instanceof ").concat(c," when calling ").concat(i,"(), received type: ").concat(yi(r),".")},INVALID_PARAMETER_RANGE:function(e){var t=e.key,n=e.rule,i=e.fnName,r=e.value;return"'".concat(t||n.name,"' must be one of ").concat(n.values.join("|")," when calling ").concat(i,"(), received: ").concat(r,".")},API_CALL_TIMEOUT:function(e){return"".concat(e.commandDesc||e.command," timeout observed.")},SIGNAL_CHANNEL_RECONNECTION_FAILED:"signal channel reconnection failed, please check your network.",SIGNAL_CHANNEL_SETUP_FAILED:function(e){return"SignalChannel setup failure: (errorCode: ".concat(e.errorCode,", errorMsg: ").concat(e.errorMsg," }).")},ERROR_MESSAGE:function(e){var t="".concat(e.type," failed");return e.message&&(t="".concat(t,": ").concat(e.message,".")),t},EXCHANGE_SDP_TIMEOUT:"exchange sdp timeout.",DOWNLINK_RECONNECTION_FAILED:"downlink reconnection failed, please check your network and re-join room.",EXCHANGE_SDP_FAILED:function(e){return"exchange sdp failed ".concat(e.errMsg,".")},UPDATE_OFFER_TIMEOUT:"update offer timeout observed.",UPLINK_RECONNECTION_FAILED:"uplink reconnection failed, please check your network and publish again.",INVALID_RECORDID:"recordId must be an integer number.",INVALID_PURE_AUDIO:"pureAudioPushMode must be 1 or 2.",INVALID_STREAMID:"streamId must be a sting literal within 64 bytes, and not be empty.",INVALID_USER_DEFINE_RECORDID:"userDefineRecordId must be a sting literal contains (a-zA-Z),(0-9), underline and hyphen, within 64 bytes, and not be empty.",INVALID_USER_DEFINE_PUSH_ARGS:"userDefinePushArgs must be a sting literal within 256 bytes, and not be empty.",INVALID_PROXY:'proxy server url must start with "wss://".',INVALID_JOIN:"duplicate join() called.",INVALID_ROOMID_STRING:function(e){return"'".concat(e,"' must be validate string when useStringRoomId is true.")},INVALID_ROOMID_INTEGER:function(e){return"'".concat(e,"' must be an integer between [1, 4294967294] when useStringRoomId is false.")},INVALID_SIGNAL_CHANNEL:"SignalChannel is not ready yet.",JOIN_ROOM_TIMEOUT:"join room timeout.",JOIN_ROOM_FAILED:function(e){var t=e.error,n=e.code;return"Failed to join room - ".concat(t," code: ").concat(n)},REJOIN_ROOM_FAILED:function(e){return"reJoin room: ".concat(e.roomId," failed, please check your network.")},INVALID_DESTROY:"please call leave() before destroy().",INVALID_PUBLISH:"please call join() before publish().",INVALID_UNPUBLISH:"stream has not been published yet.",INVALID_AUDIENCE:"no permission to publish() under live/".concat(Qi,', please call switchRole("').concat(kr,'") firstly before publish().'),INVALID_INITIALIZE:"cannot publish stream because stream is not initialized, is switching device, or has been closed.",INVALID_DUPLICATE_PUBLISHING:function(e){return"duplicate ".concat(e," stream publishing, please unpublish your prev ").concat(e," stream and then re-publish.")},INVALID_SUBSCRIBE_UNDEFINED:"stream is undefined or null.",INVALID_SUBSCRIBE_LOCAL:"stream cannot be LocalStream.",INVALID_REMOTE_STREAM:"remoteStream does not exist because it has been unpublished by remote peer.",SUBSCRIBE_FAILED:function(e){var t=e.message,n=e.stream;return"failed to subscribe ".concat(n.getUserId()," ").concat(n.getType()," stream, reason: ").concat(t,".")},INVALID_ROLE:"switchRole can only be called in live mode.",INVALID_PARAMETER_SWITCH_ROLE:"role could only be set to a value as ".concat(kr," or ").concat(Qi,"."),INVALID_OPERATION_SWITCH_ROLE:"please call join() before switchRole().",SWITCH_ROLE_TIMEOUT:"switchRole timeout.",SWITCH_ROLE_FAILED:function(e){return"switchRole failed, errCode: ".concat(e.code," errMsg: ").concat(e.message,".")},CLIENT_BANNED:function(e){return"client was banned because of "+e.message+"."},INVALID_OPERATION_START_PUBLISH_CDN:"please call startPublishCDNStream() before client join the room or after client join the room and successfully publish the local stream.",INVALID_OPERATION_STOP_PUBLISH_CDN:"please call startPublishCDNStream() before stopPublishCDNStream().",START_PUBLISH_CDN_FAILED:function(e){return"startPublishCDNStream failed, errMsg: ".concat(e.message,".")},STOP_PUBLISH_CDN_FAILED:function(e){return"stopPublishCDNStream failed, errMsg: ".concat(e.message,".")},INVALID_STREAM_ID:function(e){return"'".concat(e,"' can only consist of uppercase and lowercase english letters (a-zA-Z), numbers (0-9), hyphens and underscores.")},START_MIX_TRANSCODE:"please call startMixTranscode() after join().",STOP_MIX_TRANSCODE:"please call stopMixTranscode() after startMixTranscode().",INVALID_AUDIO_VOLUME:"interval must be a number.",ENABLE_SMALL_STREAM_PUBLISHED:"Cannot enable small stream after localStream published.",DISABLE_SMALL_STREAM_PUBLISHED:"Cannot disable small stream after localStream published.",NOT_SUPPORTED_SMALL_STREAM:"your browser does not support opening small stream.",INVALID_SMALL_STREAM_PROFILE:"small stream profile is invalid.",INVALID_PARAMETER_REMOTE_STREAM:"remoteStream is invalid.",INVALID_OPERATION_CHANGE_SMALL:"cannot switch to the small stream without subscribing to the video of remoteStream.",REMOTE_NOT_PUBLISH_SMALL_STREAM:"remote peer does not publish small stream.",INVALID_SWITCH_DEVICE:"cannot switch device on current stream.",INVALID_SWITCH_DEVICE_PUBLISHING:"cannot switch device when publishing localStream.",INVALID_REPLACE_TRACK:"cannot replace track when publishing localStream.",INVALID_INITIALIZE_LOCAL_STREAM:"local stream has not initialized yet.",INVALID_ADD_TRACK_REPETITIVE:"previous addTrack is ongoing, please avoid repetitive execution.",INVALID_ADD_TRACK_REMOVING:"cannot add track when a track is removing.",INVALID_ADD_TRACK_PUBLISHING:"cannot add track when publishing localStream.",INVALID_STREAM_INITIALIZED:"your local stream haven't been initialized yet.",INVALID_ADD_TRACK_NUMBER:"a Stream has at most one audio track and one video track.",INVALID_REMOVE_AUDIO_TRACK:"remove audio track is not supported on your browser.",INVALID_REMOVE_AUDIO_ADDING:"cannot remove track when a track is adding.",INVALID_REMOVE_AUDIO_ON:"previous removeTrack is ongoing, please avoid repetitive execution.",INVALID_REMOVE_TRACK_PUBLISHING:"cannot remove track when publishing localStream.",INVALID_REMOVE_TRACK_NOT_PUBLISHING:"the track to be removed is not being publishing.",INVALID_REMOVE_TRACK_NUMBER:"remove the only video track is not supported, please use replaceTrack or muteVideo.",INVALID_REPLACE_TRACK_NO_TRACK:function(e){return"cannot replace ".concat(e.kind," track because stream has not ").concat(e.kind," track")},START_MIX_TRANSCODE_FAILED:function(e){return"startMixTranscode failed, errMsg: ".concat(e.message,".")},STOP_MIX_TRANSCODE_FAILED:function(e){return"stopMixTranscode failed, errMsg: ".concat(e.message,".")},MIX_TRANSCODE_NOT_STARTED:"mixTranscode has not been started.",CANNOT_LESS_THAN_ZERO:function(e){var t=e.key,n=e.rule,i=e.fnName;return e.value,"'".concat(t||n.name,"' cannot be less than 0 when calling ").concat(i,"().")},MIX_PARAMS_VIDEO_FRAMERATE:"'config.videoFramerate' should be an integer between 0 and 30, excluding 0.",MIX_PARAMS_VIDEO_GOP:"'config.videoGOP' should be an integer between 1 and 8.",MIX_PARAMS_AUDIO_BITRATE:"'config.audioBitrate' should be an integer between 32 and 192.",MIX_PARAMS_USER_Z_ORDER:function(e){return"'".concat(e,"' is required and must be between 1 and 15.")},MIX_PARAMS_NOT_SELF:"'config.mixUsers' must contain self.",MIX_PARAMS_USER_STREAM:"'config.videoWidth' and 'config.videoHeight' of output stream should be contain all mix stream.",INVALID_PLAY:"duplicate play() call observed, please stop() firstly.",INVALID_ELEMENT_ID:function(e){var t=e.key,n=e.fnName;return"'".concat(t,"' is not found in the document object when calling ").concat(n,"().")},INVALID_ELEMENT_ID_TYPE:function(e){var t=e.key,n=e.fnName,i=e.type;return"the element corresponding to '".concat(t,"' must be instanceof HTMLDivElement when calling ").concat(n,"(), received: ").concat(i,".")},PLAY_FAILED:function(e){return"".concat(e.media," play failed\uFF0Cbrowser exception: ").concat(e.error.toString())},INVALID_USERID:"userId cannot be all spaces.",INVALID_CREATE_STREAM_SOURCE:"LocalStream must be created by createStream() with either audio/video or audioSource/videoSource, but can not be mixed with audio/video and audioSource/videoSource.",INVALID_CREATE_STREAM_SCREEN:"screen/video cannot be both true.",INVALID_CREATE_STREAM_AUDIO:"audio/screenAudio cannot be both true.",INVALID_CREATE_STREAM_SCREEN_AUDIO:"when screen is true, screenAudio can be configured.",NOT_SUPPORTED_HTTP:"http protocol does not support the ability to capture and publish streams, please use the https protocol.",NOT_SUPPORTED_WEBRTC:"your browser or environment does not support full WebRTC capabilities.",NOT_SUPPORTED_PROFILE:"your browser does not support setVideoProfile.",NOT_SUPPORTED_MEDIA:"your browser or environment does not support navigator.mediaDevices.",NOT_SUPPORTED_H264ENCODE:"your device does not support H.264 encoding.",NOT_SUPPORTED_H264DECODE:"your device does not support H.264 decoding.",NOT_SUPPORTED_TRACK:function(e){return"".concat(e,"Track is not supported on your browser.")},NOT_SUPPORTED_SWITCH_DEVICE:"switchDevice is not supported on your browser.",NOT_SUPPORTED_CAPTURE:"Your browser or environment does not support screen sharing, please check whether the browser version.",MICROPHONE_NOT_FOUND:"no microphone detected, please check your microphone and the configuration on TRTC.createStream.",CAMERA_NOT_FOUND:"no camera detected, please check your camera and the configuration on TRTC.createStream.",SIGNAL_RESPONSE_FAILED:function(e){return"".concat(e.signalResponse," failed, response code is ").concat(e.code," , errMsg: ").concat(e.message,".")},CATCH_HANDLER_ERROR:function(e){var t=e.name,n=e.event;return"an error was caught on ".concat(t,".on('").concat(n,"', handler), please check your code on 'handler'.")},API_NOT_EXIST:function(e){var t=e.name;return"experimental api ".concat(t," does not exist.")},REPEAT_JOIN:function(e){return"[".concat(e,"] is calling client.join api or has already joined room, please avoid repeated join.")},CONNECTION_CLOSED:"remoteStream has been unsubscribed or unpublished by remote user.",SUBSCRIBE_ALL_FALSE:"cannot subscribe when both audio & video are false, use client.unsubscribe() instead",CLIENT_DESTROYED:function(e){var t=e.funName;return"failed to call ".concat(t,"() because client was destroyed.")},SEI_NOT_SUPPORT:function(e){return"not support to sendSEIMessage".concat(e===!1?" without using h264 codec":"")},SEI_DISABLED:"SEI is disabled, to enable SEI: TRTC.createClient({ enableSEI: true })",SEI_EMPTY:"buffer cannot be empty",SEI_OVERSIZE:function(e){return"buffer size(".concat(e,") is over 1000 Bytes")},SEI_BEFORE_PUBLISH:"please call sendSEIMessage() after publish() success",SEI_NOT_VIDEO:"cannot send sei when localStream has not video.",CALL_FREQUENCY_LIMIT:function(e){var t=e.isSize,n=e.name,i=e.timesInSecond,r=e.maxSizeInSecond;return"api ".concat(n," call ").concat(t?"size":"times"," is over ").concat(t?r+" bytes":i," in a second.")},CONNECTION_ABORTED:function(e){return"connection aborted due to: "+e},API_CALL_ABORTED:function(e){return e.message.includes("REMOTE_STREAM_NOT_EXIST")?"Subscribe ".concat(e.stream.getUserId()," ").concat(e.stream.getType()," stream aborted, reason: remote user ").concat(e.stream.getUserId()," unpublished stream."):"API aborted, reason: ".concat(e.message)},DUPLICATE_AUX:"only one auxiliary stream can be published in a room.",NOT_SUPPORTED_AUX:"publish auxiliary stream is not supported on your browser."},yS=re,e4=ue,t4=zt,n4=Ru.trim,r4=pe("".charAt),Xu=yS.parseFloat,bS=yS.Symbol,SS=bS&&bS.iterator,kS=1/Xu(`
|
|
44
|
-
\v\f\r \xA0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF-0`)!=-1/0||
|
|
45
|
-
\u8BF7\u67E5\u770B\u6587\u6863: `+
|
|
39
|
+
`},c.getDirection=function(a,s){for(var l=c.splitLines(a),u=0;u<l.length;u++)switch(l[u]){case"a=sendrecv":case"a=sendonly":case"a=recvonly":case"a=inactive":return l[u].substring(2)}return s?c.getDirection(s):"sendrecv"},c.getKind=function(a){return c.splitLines(a)[0].split(" ")[0].substring(2)},c.isRejected=function(a){return a.split(" ",2)[1]==="0"},c.parseMLine=function(a){var s=c.splitLines(a)[0].substring(2).split(" ");return{kind:s[0],port:parseInt(s[1],10),protocol:s[2],fmt:s.slice(3).join(" ")}},c.parseOLine=function(a){var s=c.matchPrefix(a,"o=")[0].substring(2).split(" ");return{username:s[0],sessionId:s[1],sessionVersion:parseInt(s[2],10),netType:s[3],addressType:s[4],address:s[5]}},c.isValidSDP=function(a){if(typeof a!="string"||a.length===0)return!1;for(var s=c.splitLines(a),l=0;l<s.length;l++)if(s[l].length<2||s[l].charAt(1)!=="=")return!1;return!0},(i===void 0?"undefined":o(i))==="object"&&(i.exports=c)},{}]},{},[1])(1)}({exports:{}});var Gi="4.15.21",bg={},vC=vg,gC=Wd,ou=Object.keys||function(e){return vC(e,gC)},_C=ye,yC=hs,bC=Pt,SC=Tt,kC=bn,TC=ou;bg.f=_C&&!yC?Object.defineProperties:function(e,t){SC(e);for(var n,i=kC(t),r=TC(t),o=r.length,c=0;o>c;)bC.f(e,n=r[c++],i[n]);return e};var su,Sg=An("document","documentElement"),xC=Tt,IC=bg,kg=Wd,wC=ee,CC=Sg,EC=vr,Tg=W("IE_PROTO"),Xd=function(){},xg=function(e){return"<script>"+e+"<\/script>"},Ig=function(e){e.write(xg("")),e.close();var t=e.parentWindow.Object;return e=null,t},cu=function(){try{su=new ActiveXObject("htmlfile")}catch(i){}var e,t;cu=typeof document!="undefined"?document.domain&&su?Ig(su):((t=EC("iframe")).style.display="none",CC.appendChild(t),t.src=String("javascript:"),(e=t.contentWindow.document).open(),e.write(xg("document.F=Object")),e.close(),e.F):Ig(su);for(var n=kg.length;n--;)delete cu.prototype[kg[n]];return cu()};wC[Tg]=!0;var Ba=Object.create||function(e,t){var n;return e!==null?(Xd.prototype=xC(e),n=new Xd,Xd.prototype=null,n[Tg]=e):n=cu(),t===void 0?n:IC.f(n,t)},RC=tt,AC=Ba,PC=Pt.f,Qd=RC("unscopables"),Yd=Array.prototype;Yd[Qd]==null&&PC(Yd,Qd,{configurable:!0,value:AC(null)});var zi,wg,Cg,uu=function(e){Yd[Qd][e]=!0},ks={},Eg=!ue(function(){function e(){}return e.prototype.constructor=null,Object.getPrototypeOf(new e)!==e.prototype}),DC=kt,OC=it,LC=Mt,MC=Eg,Rg=W("IE_PROTO"),$d=Object,NC=$d.prototype,Ts=MC?$d.getPrototypeOf:function(e){var t=LC(e);if(DC(t,Rg))return t[Rg];var n=t.constructor;return OC(n)&&t instanceof n?n.prototype:t instanceof $d?NC:null},UC=ue,VC=it,jC=at,Ag=Ts,BC=Qt,Zd=tt("iterator"),Pg=!1;[].keys&&("next"in(Cg=[].keys())?(wg=Ag(Ag(Cg)))!==Object.prototype&&(zi=wg):Pg=!0);var FC=!jC(zi)||UC(function(){var e={};return zi[Zd].call(e)!==e});FC&&(zi={}),VC(zi[Zd])||BC(zi,Zd,function(){return this});var eh={IteratorPrototype:zi,BUGGY_SAFARI_ITERATORS:Pg},HC=Pt.f,GC=kt,Dg=tt("toStringTag"),Wi=function(e,t,n){e&&!n&&(e=e.prototype),e&&!GC(e,Dg)&&HC(e,Dg,{configurable:!0,value:t})},zC=eh.IteratorPrototype,WC=Ba,JC=Ze,qC=Wi,KC=ks,XC=function(){return this},Og=function(e,t,n,i){var r=t+" Iterator";return e.prototype=WC(zC,{next:JC(+!i,n)}),qC(e,r,!1),KC[r]=XC,e},QC=it,YC=String,$C=TypeError,ZC=pe,eE=Tt,tE=function(e){if(typeof e=="object"||QC(e))return e;throw $C("Can't set "+YC(e)+" as a prototype")},Fa=Object.setPrototypeOf||("__proto__"in{}?function(){var e,t=!1,n={};try{(e=ZC(Object.getOwnPropertyDescriptor(Object.prototype,"__proto__").set))(n,[]),t=n instanceof Array}catch(i){}return function(i,r){return eE(i),tE(r),t?e(i,r):i.__proto__=r,i}}():void 0),nE=Le,rE=Ke,iE=it,aE=Og,Lg=Ts,Mg=Fa,oE=Wi,sE=Ln,th=Qt,cE=ks,uE=Yn.PROPER,lE=Yn.CONFIGURABLE,Ng=eh.IteratorPrototype,lu=eh.BUGGY_SAFARI_ITERATORS,xs=tt("iterator"),Ug="keys",Is="values",Vg="entries",dE=function(){return this},nh=function(e,t,n,i,r,o,c){aE(n,t,i);var a,s,l,u=function(T){if(T===r&&I)return I;if(!lu&&T in x)return x[T];switch(T){case Ug:case Is:case Vg:return function(){return new n(this,T)}}return function(){return new n(this)}},f=t+" Iterator",S=!1,x=e.prototype,E=x[xs]||x["@@iterator"]||r&&x[r],I=!lu&&E||u(r),m=t=="Array"&&x.entries||E;if(m&&(a=Lg(m.call(new e)))!==Object.prototype&&a.next&&(Lg(a)!==Ng&&(Mg?Mg(a,Ng):iE(a[xs])||th(a,xs,dE)),oE(a,f,!0)),uE&&r==Is&&E&&E.name!==Is&&(lE?sE(x,"name",Is):(S=!0,I=function(){return rE(E,this)})),r)if(s={values:u(Is),keys:o?I:u(Ug),entries:u(Vg)},c)for(l in s)(lu||S||!(l in x))&&th(x,l,s[l]);else nE({target:t,proto:!0,forced:lu||S},s);return x[xs]!==I&&th(x,xs,I,{name:r}),cE[t]=I,s},rh=function(e,t){return{value:e,done:t}},hE=bn,ih=uu,jg=ks,Bg=Xe,fE=Pt.f,pE=nh,Fg=rh,mE=ye,Hg="Array Iterator",vE=Bg.set,gE=Bg.getterFor(Hg),Gg=pE(Array,"Array",function(e,t){vE(this,{type:Hg,target:hE(e),index:0,kind:t})},function(){var e=gE(this),t=e.target,n=e.kind,i=e.index++;return!t||i>=t.length?(e.target=void 0,Fg(void 0,!0)):Fg(n=="keys"?i:n=="values"?t[i]:[i,t[i]],!1)},"values"),zg=jg.Arguments=jg.Array;if(ih("keys"),ih("values"),ih("entries"),mE&&zg.name!=="values")try{fE(zg,"name",{value:"values"})}catch(e){}var Wg={};Wg[tt("toStringTag")]="z";var ah=String(Wg)==="[object z]",_E=ah,yE=it,du=rt,bE=tt("toStringTag"),SE=Object,kE=du(function(){return arguments}())=="Arguments",Dr=_E?du:function(e){var t,n,i;return e===void 0?"Undefined":e===null?"Null":typeof(n=function(r,o){try{return r[o]}catch(c){}}(t=SE(e),bE))=="string"?n:kE?du(t):(i=du(t))=="Object"&&yE(t.callee)?"Arguments":i},TE=Dr,xE=ah?{}.toString:function(){return"[object "+TE(this)+"]"};ah||Qt(Object.prototype,"toString",xE,{unsafe:!0});var ws={exports:{}},oh={},IE=Da,wE=Pt,CE=Ze,Cs=function(e,t,n){var i=IE(t);i in e?wE.f(e,i,CE(0,n)):e[i]=n},Jg=ai,EE=nn,RE=Cs,AE=Array,PE=Math.max,hu=function(e,t,n){for(var i=EE(e),r=Jg(t,i),o=Jg(n===void 0?i:n,i),c=AE(PE(o-r,0)),a=0;r<o;r++,a++)RE(c,a,e[r]);return c.length=a,c},DE=rt,OE=bn,qg=ii.f,LE=hu,Kg=typeof window=="object"&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[];oh.f=function(e){return Kg&&DE(e)=="Window"?function(t){try{return qg(t)}catch(n){return LE(Kg)}}(e):qg(OE(e))};var ME=ue(function(){if(typeof ArrayBuffer=="function"){var e=new ArrayBuffer(8);Object.isExtensible(e)&&Object.defineProperty(e,"a",{value:8})}}),NE=ue,UE=at,VE=rt,Xg=ME,fu=Object.isExtensible,Qg=NE(function(){fu(1)})||Xg?function(e){return!!UE(e)&&(!Xg||VE(e)!="ArrayBuffer")&&(!fu||fu(e))}:fu,jE=!ue(function(){return Object.isExtensible(Object.preventExtensions({}))}),BE=Le,FE=pe,HE=ee,GE=at,sh=kt,zE=Pt.f,Yg=ii,WE=oh,ch=Qg,JE=jE,$g=!1,Or=Ui("meta"),qE=0,uh=function(e){zE(e,Or,{value:{objectID:"O"+qE++,weakData:{}}})},KE=ws.exports={enable:function(){KE.enable=function(){},$g=!0;var e=Yg.f,t=FE([].splice),n={};n[Or]=1,e(n).length&&(Yg.f=function(i){for(var r=e(i),o=0,c=r.length;o<c;o++)if(r[o]===Or){t(r,o,1);break}return r},BE({target:"Object",stat:!0,forced:!0},{getOwnPropertyNames:WE.f}))},fastKey:function(e,t){if(!GE(e))return typeof e=="symbol"?e:(typeof e=="string"?"S":"P")+e;if(!sh(e,Or)){if(!ch(e))return"F";if(!t)return"E";uh(e)}return e[Or].objectID},getWeakData:function(e,t){if(!sh(e,Or)){if(!ch(e))return!0;if(!t)return!1;uh(e)}return e[Or].weakData},onFreeze:function(e){return JE&&$g&&ch(e)&&!sh(e,Or)&&uh(e),e}};HE[Or]=!0;var XE=Vt,QE=Me,YE=pe(pe.bind),Lr=function(e,t){return XE(e),t===void 0?e:QE?YE(e,t):function(){return e.apply(t,arguments)}},$E=ks,ZE=tt("iterator"),eR=Array.prototype,lh=function(e){return e!==void 0&&($E.Array===e||eR[ZE]===e)},tR=Dr,Zg=Xt,nR=Rt,rR=ks,iR=tt("iterator"),Es=function(e){if(!nR(e))return Zg(e,iR)||Zg(e,"@@iterator")||rR[tR(e)]},aR=Ke,oR=Vt,sR=Tt,cR=Xn,uR=Es,lR=TypeError,pu=function(e,t){var n=arguments.length<2?uR(e):t;if(oR(n))return sR(aR(n,e));throw lR(cR(e)+" is not iterable")},dR=Ke,e_=Tt,hR=Xt,t_=function(e,t,n){var i,r;e_(e);try{if(!(i=hR(e,"return"))){if(t==="throw")throw n;return n}i=dR(i,e)}catch(o){r=!0,i=o}if(t==="throw")throw n;if(r)throw i;return e_(i),n},fR=Lr,pR=Ke,mR=Tt,vR=Xn,gR=lh,_R=nn,n_=Sn,yR=pu,bR=Es,r_=t_,SR=TypeError,mu=function(e,t){this.stopped=e,this.result=t},i_=mu.prototype,Rs=function(e,t,n){var i,r,o,c,a,s,l,u=n&&n.that,f=!(!n||!n.AS_ENTRIES),S=!(!n||!n.IS_RECORD),x=!(!n||!n.IS_ITERATOR),E=!(!n||!n.INTERRUPTED),I=fR(t,u),m=function(v){return i&&r_(i,"normal",v),new mu(!0,v)},T=function(v){return f?(mR(v),E?I(v[0],v[1],m):I(v[0],v[1])):E?I(v,m):I(v)};if(S)i=e.iterator;else if(x)i=e;else{if(!(r=bR(e)))throw SR(vR(e)+" is not iterable");if(gR(r)){for(o=0,c=_R(e);c>o;o++)if((a=T(e[o]))&&n_(i_,a))return a;return new mu(!1)}i=yR(e,r)}for(s=S?e.next:i.next;!(l=pR(s,i)).done;){try{a=T(l.value)}catch(v){r_(i,"throw",v)}if(typeof a=="object"&&a&&n_(i_,a))return a}return new mu(!1)},kR=Sn,TR=TypeError,oi=function(e,t){if(kR(t,e))return e;throw TR("Incorrect invocation")},a_=tt("iterator"),o_=!1;try{var xR=0,s_={next:function(){return{done:!!xR++}},return:function(){o_=!0}};s_[a_]=function(){return this},Array.from(s_,function(){throw 2})}catch(e){}var vu=function(e,t){if(!t&&!o_)return!1;var n=!1;try{var i={};i[a_]=function(){return{next:function(){return{done:n=!0}}}},e(i)}catch(r){}return n},IR=it,wR=at,c_=Fa,gu=function(e,t,n){var i,r;return c_&&IR(i=t.constructor)&&i!==n&&wR(r=i.prototype)&&r!==n.prototype&&c_(e,r),e},CR=Le,ER=re,RR=pe,u_=Ss,AR=Qt,PR=ws.exports,DR=Rs,OR=oi,LR=it,MR=Rt,dh=at,hh=ue,NR=vu,UR=Wi,VR=gu,fh=function(e,t,n){var i=e.indexOf("Map")!==-1,r=e.indexOf("Weak")!==-1,o=i?"set":"add",c=ER[e],a=c&&c.prototype,s=c,l={},u=function(m){var T=RR(a[m]);AR(a,m,m=="add"?function(v){return T(this,v===0?0:v),this}:m=="delete"?function(v){return!(r&&!dh(v))&&T(this,v===0?0:v)}:m=="get"?function(v){return r&&!dh(v)?void 0:T(this,v===0?0:v)}:m=="has"?function(v){return!(r&&!dh(v))&&T(this,v===0?0:v)}:function(v,w){return T(this,v===0?0:v,w),this})};if(u_(e,!LR(c)||!(r||a.forEach&&!hh(function(){new c().entries().next()}))))s=n.getConstructor(t,e,i,o),PR.enable();else if(u_(e,!0)){var f=new s,S=f[o](r?{}:-0,1)!=f,x=hh(function(){f.has(1)}),E=NR(function(m){new c(m)}),I=!r&&hh(function(){for(var m=new c,T=5;T--;)m[o](T,T);return!m.has(-0)});E||((s=t(function(m,T){OR(m,a);var v=VR(new c,m,s);return MR(T)||DR(T,v[o],{that:v,AS_ENTRIES:i}),v})).prototype=a,a.constructor=s),(x||I)&&(u("delete"),u("has"),i&&u("get")),(I||S)&&u(o),r&&a.clear&&delete a.clear}return l[e]=s,CR({global:!0,constructor:!0,forced:s!=c},l),UR(s,e),r||n.setStrong(s,e,i),s},jR=Qt,As=function(e,t,n){for(var i in t)jR(e,i,t[i],n);return e},BR=An,FR=Pt,HR=ye,l_=tt("species"),Ps=function(e){var t=BR(e),n=FR.f;HR&&t&&!t[l_]&&n(t,l_,{configurable:!0,get:function(){return this}})},GR=Pt.f,zR=Ba,d_=As,WR=Lr,JR=oi,qR=Rt,KR=Rs,XR=nh,h_=rh,QR=Ps,Ds=ye,f_=ws.exports.fastKey,p_=Xe.set,ph=Xe.getterFor,m_={getConstructor:function(e,t,n,i){var r=e(function(l,u){JR(l,o),p_(l,{type:t,index:zR(null),first:void 0,last:void 0,size:0}),Ds||(l.size=0),qR(u)||KR(u,l[i],{that:l,AS_ENTRIES:n})}),o=r.prototype,c=ph(t),a=function(l,u,f){var S,x,E=c(l),I=s(l,u);return I?I.value=f:(E.last=I={index:x=f_(u,!0),key:u,value:f,previous:S=E.last,next:void 0,removed:!1},E.first||(E.first=I),S&&(S.next=I),Ds?E.size++:l.size++,x!=="F"&&(E.index[x]=I)),l},s=function(l,u){var f,S=c(l),x=f_(u);if(x!=="F")return S.index[x];for(f=S.first;f;f=f.next)if(f.key==u)return f};return d_(o,{clear:function(){for(var l=c(this),u=l.index,f=l.first;f;)f.removed=!0,f.previous&&(f.previous=f.previous.next=void 0),delete u[f.index],f=f.next;l.first=l.last=void 0,Ds?l.size=0:this.size=0},delete:function(l){var u=this,f=c(u),S=s(u,l);if(S){var x=S.next,E=S.previous;delete f.index[S.index],S.removed=!0,E&&(E.next=x),x&&(x.previous=E),f.first==S&&(f.first=x),f.last==S&&(f.last=E),Ds?f.size--:u.size--}return!!S},forEach:function(l){for(var u,f=c(this),S=WR(l,arguments.length>1?arguments[1]:void 0);u=u?u.next:f.first;)for(S(u.value,u.key,this);u&&u.removed;)u=u.previous},has:function(l){return!!s(this,l)}}),d_(o,n?{get:function(l){var u=s(this,l);return u&&u.value},set:function(l,u){return a(this,l===0?0:l,u)}}:{add:function(l){return a(this,l=l===0?0:l,l)}}),Ds&&GR(o,"size",{get:function(){return c(this).size}}),r},setStrong:function(e,t,n){var i=t+" Iterator",r=ph(t),o=ph(i);XR(e,t,function(c,a){p_(this,{type:i,target:c,state:r(c),kind:a,last:void 0})},function(){for(var c=o(this),a=c.kind,s=c.last;s&&s.removed;)s=s.previous;return c.target&&(c.last=s=s?s.next:c.state.first)?h_(a=="keys"?s.key:a=="values"?s.value:[s.key,s.value],!1):(c.target=void 0,h_(void 0,!0))},n?"entries":"values",!n,!0),QR(t)}};fh("Set",function(e){return function(){return e(this,arguments.length?arguments[0]:void 0)}},m_);var YR=Dr,$R=String,zt=function(e){if(YR(e)==="Symbol")throw TypeError("Cannot convert a Symbol value to a string");return $R(e)},mh=pe,ZR=$n,eA=zt,tA=pt,nA=mh("".charAt),v_=mh("".charCodeAt),rA=mh("".slice),g_=function(e){return function(t,n){var i,r,o=eA(tA(t)),c=ZR(n),a=o.length;return c<0||c>=a?e?"":void 0:(i=v_(o,c))<55296||i>56319||c+1===a||(r=v_(o,c+1))<56320||r>57343?e?nA(o,c):i:e?rA(o,c,c+2):r-56320+(i-55296<<10)+65536}},vh={codeAt:g_(!1),charAt:g_(!0)},iA=vh.charAt,aA=zt,__=Xe,oA=nh,y_=rh,b_="String Iterator",sA=__.set,cA=__.getterFor(b_);oA(String,"String",function(e){sA(this,{type:b_,string:aA(e),index:0})},function(){var e,t=cA(this),n=t.string,i=t.index;return i>=n.length?y_(void 0,!0):(e=iA(n,i),t.index+=e.length,y_(e,!1))});var S_={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},gh=vr("span").classList,k_=gh&&gh.constructor&&gh.constructor.prototype,T_=k_===Object.prototype?void 0:k_,x_=re,I_=S_,uA=T_,Os=Gg,_h=Ln,w_=tt,yh=w_("iterator"),C_=w_("toStringTag"),bh=Os.values,E_=function(e,t){if(e){if(e[yh]!==bh)try{_h(e,yh,bh)}catch(i){e[yh]=bh}if(e[C_]||_h(e,C_,t),I_[t]){for(var n in Os)if(e[n]!==Os[n])try{_h(e,n,Os[n])}catch(i){e[n]=Os[n]}}}};for(var Sh in I_)E_(x_[Sh]&&x_[Sh].prototype,Sh);E_(uA,"DOMTokenList");var lA=Me,R_=Function.prototype,A_=R_.apply,P_=R_.call,Ji=typeof Reflect=="object"&&Reflect.apply||(lA?P_.bind(A_):function(){return P_.apply(A_,arguments)}),Ha=pe([].slice),dA=TypeError,_u=function(e,t){if(e<t)throw dA("Not enough arguments");return e},kh=re,hA=Ji,fA=it,pA=Ha,mA=_u,vA=/MSIE .\./.test(Kn),gA=kh.Function,D_=function(e){return vA?function(t,n){var i=mA(arguments.length,1)>2,r=fA(t)?t:gA(t),o=i?pA(arguments,2):void 0;return e(i?function(){hA(r,this,o)}:r,n)}:e},O_={setTimeout:D_(kh.setTimeout),setInterval:D_(kh.setInterval)},L_=O_.setInterval;Le({global:!0,bind:!0,forced:re.setInterval!==L_},{setInterval:L_});var M_=O_.setTimeout;Le({global:!0,bind:!0,forced:re.setTimeout!==M_},{setTimeout:M_}),fh("Map",function(e){return function(){return e(this,arguments.length?arguments[0]:void 0)}},m_);var _A=rt,Ga=Array.isArray||function(e){return _A(e)=="Array"},yA=pe,bA=ue,N_=it,SA=Dr,kA=d,U_=function(){},TA=[],V_=An("Reflect","construct"),Th=/^\s*(?:class|function)\b/,xA=yA(Th.exec),IA=!Th.exec(U_),Ls=function(e){if(!N_(e))return!1;try{return V_(U_,TA,e),!0}catch(t){return!1}},j_=function(e){if(!N_(e))return!1;switch(SA(e)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}try{return IA||!!xA(Th,kA(e))}catch(t){return!0}};j_.sham=!0;var yu=!V_||bA(function(){var e;return Ls(Ls.call)||!Ls(Object)||!Ls(function(){e=!0})||e})?j_:Ls,B_=Ga,wA=yu,CA=at,EA=tt("species"),F_=Array,RA=function(e){var t;return B_(e)&&(t=e.constructor,(wA(t)&&(t===F_||B_(t.prototype))||CA(t)&&(t=t[EA])===null)&&(t=void 0)),t===void 0?F_:t},xh=function(e,t){return new(RA(e))(t===0?0:t)},AA=Lr,PA=yn,DA=Mt,OA=nn,LA=xh,H_=pe([].push),si=function(e){var t=e==1,n=e==2,i=e==3,r=e==4,o=e==6,c=e==7,a=e==5||o;return function(s,l,u,f){for(var S,x,E=DA(s),I=PA(E),m=AA(l,u),T=OA(I),v=0,w=f||LA,L=t?w(s,T):n||c?w(s,0):void 0;T>v;v++)if((a||v in I)&&(x=m(S=I[v],v,E),e))if(t)L[v]=x;else if(x)switch(e){case 3:return!0;case 5:return S;case 6:return v;case 2:H_(L,S)}else switch(e){case 4:return!1;case 7:H_(L,S)}return o?-1:i||r?r:L}},rn={forEach:si(0),map:si(1),filter:si(2),some:si(3),every:si(4),find:si(5),findIndex:si(6),filterReject:si(7)},MA=ue,NA=pr,UA=tt("species"),Ms=function(e){return NA>=51||!MA(function(){var t=[];return(t.constructor={})[UA]=function(){return{foo:1}},t[e](Boolean).foo!==1})},VA=rn.map;Le({target:"Array",proto:!0,forced:!Ms("map")},{map:function(e){return VA(this,e,arguments.length>1?arguments[1]:void 0)}});var jA=ye,BA=Ga,FA=TypeError,HA=Object.getOwnPropertyDescriptor,GA=jA&&!function(){if(this!==void 0)return!0;try{Object.defineProperty([],"length",{writable:!1}).length=1}catch(e){return e instanceof TypeError}}(),zA=TypeError,G_=function(e){if(e>9007199254740991)throw zA("Maximum allowed index exceeded");return e},z_=Xn,WA=TypeError,W_=function(e,t){if(!delete e[t])throw WA("Cannot delete property "+z_(t)+" of "+z_(e))},JA=Le,qA=Mt,KA=ai,XA=$n,QA=nn,YA=GA?function(e,t){if(BA(e)&&!HA(e,"length").writable)throw FA("Cannot set read only .length");return e.length=t}:function(e,t){return e.length=t},$A=G_,ZA=xh,e2=Cs,Ih=W_,t2=Ms("splice"),n2=Math.max,r2=Math.min;JA({target:"Array",proto:!0,forced:!t2},{splice:function(e,t){var n,i,r,o,c,a,s=qA(this),l=QA(s),u=KA(e,l),f=arguments.length;for(f===0?n=i=0:f===1?(n=0,i=l-u):(n=f-2,i=r2(n2(XA(t),0),l-u)),$A(l+n-i),r=ZA(s,i),o=0;o<i;o++)(c=u+o)in s&&e2(r,o,s[c]);if(r.length=i,n<i){for(o=u;o<l-i;o++)a=o+n,(c=o+i)in s?s[a]=s[c]:Ih(s,a);for(o=l;o>l-i+n;o--)Ih(s,o-1)}else if(n>i)for(o=l-i;o>u;o--)a=o+n-1,(c=o+i-1)in s?s[a]=s[c]:Ih(s,a);for(o=0;o<n;o++)s[o+u]=arguments[o+2];return YA(s,l-i+n),r}});var i2=ue,Ns=function(e,t){var n=[][e];return!!n&&i2(function(){n.call(null,t||function(){return 1},1)})},a2=rn.forEach,wh=Ns("forEach")?[].forEach:function(e){return a2(this,e,arguments.length>1?arguments[1]:void 0)};Le({target:"Array",proto:!0,forced:[].forEach!=wh},{forEach:wh});var J_=re,q_=S_,o2=T_,Ch=wh,s2=Ln,K_=function(e){if(e&&e.forEach!==Ch)try{s2(e,"forEach",Ch)}catch(t){e.forEach=Ch}};for(var Eh in q_)q_[Eh]&&K_(J_[Eh]&&J_[Eh].prototype);K_(o2);var c2=Le,u2=ue,l2=Ga,d2=at,h2=Mt,f2=nn,X_=G_,Q_=Cs,p2=xh,m2=Ms,v2=pr,Y_=tt("isConcatSpreadable"),g2=v2>=51||!u2(function(){var e=[];return e[Y_]=!1,e.concat()[0]!==e}),_2=m2("concat"),y2=function(e){if(!d2(e))return!1;var t=e[Y_];return t!==void 0?!!t:l2(e)};c2({target:"Array",proto:!0,arity:1,forced:!g2||!_2},{concat:function(e){var t,n,i,r,o,c=h2(this),a=p2(c,0),s=0;for(t=-1,i=arguments.length;t<i;t++)if(y2(o=t===-1?c:arguments[t]))for(r=f2(o),X_(s+r),n=0;n<r;n++,s++)n in o&&Q_(a,s,o[n]);else X_(s+1),Q_(a,s++,o);return a.length=s,a}});var b2=Le,S2=yn,k2=bn,T2=Ns,x2=pe([].join),I2=S2!=Object,w2=T2("join",",");b2({target:"Array",proto:!0,forced:I2||!w2},{join:function(e){return x2(k2(this),e===void 0?",":e)}});var C2=rn.filter;Le({target:"Array",proto:!0,forced:!Ms("filter")},{filter:function(e){return C2(this,e,arguments.length>1?arguments[1]:void 0)}});var $_=pe,E2=Qt,Rh=Date.prototype,Z_="Invalid Date",R2="toString",A2=$_(Rh.toString),P2=$_(Rh.getTime);String(new Date(NaN))!=Z_&&E2(Rh,R2,function(){var e=P2(this);return e==e?A2(this):Z_});var D2=$n,O2=zt,L2=pt,M2=RangeError,ey=function(e){var t=O2(L2(this)),n="",i=D2(e);if(i<0||i==1/0)throw M2("Wrong number of repetitions");for(;i>0;(i>>>=1)&&(t+=t))1&i&&(n+=t);return n},ty=pe,N2=yr,ny=zt,U2=pt,V2=ty(ey),j2=ty("".slice),B2=Math.ceil,ry=function(e){return function(t,n,i){var r,o,c=ny(U2(t)),a=N2(n),s=c.length,l=i===void 0?" ":ny(i);return a<=s||l==""?c:((o=V2(l,B2((r=a-s)/l.length))).length>r&&(o=j2(o,0,r)),e?c+o:o+c)}},F2={start:ry(!1),end:ry(!0)},H2=/Version\/10(?:\.\d+){1,2}(?: [\w./]+)?(?: Mobile\/\w+)? Safari\//.test(Kn),G2=F2.start;Le({target:"String",proto:!0,forced:H2},{padStart:function(e){return G2(this,e,arguments.length>1?arguments[1]:void 0)}});var z2=Tt,iy=function(){var e=z2(this),t="";return e.hasIndices&&(t+="d"),e.global&&(t+="g"),e.ignoreCase&&(t+="i"),e.multiline&&(t+="m"),e.dotAll&&(t+="s"),e.unicode&&(t+="u"),e.unicodeSets&&(t+="v"),e.sticky&&(t+="y"),t},Ah=ue,Ph=re.RegExp,Dh=Ah(function(){var e=Ph("a","y");return e.lastIndex=2,e.exec("abcd")!=null}),W2=Dh||Ah(function(){return!Ph("a","y").sticky}),ay={BROKEN_CARET:Dh||Ah(function(){var e=Ph("^r","gy");return e.lastIndex=2,e.exec("str")!=null}),MISSED_STICKY:W2,UNSUPPORTED_Y:Dh},J2=ue,q2=re.RegExp,oy=J2(function(){var e=q2(".","s");return!(e.dotAll&&e.exec(`
|
|
40
|
+
`)&&e.flags==="s")}),K2=ue,X2=re.RegExp,sy=K2(function(){var e=X2("(?<a>b)","g");return e.exec("b").groups.a!=="b"||"b".replace(e,"$<a>c")!=="bc"}),za=Ke,bu=pe,Q2=zt,Y2=iy,$2=ay,Z2=Pr.exports,eP=Ba,tP=Xe.get,nP=oy,rP=sy,iP=Z2("native-string-replace",String.prototype.replace),Su=RegExp.prototype.exec,Oh=Su,aP=bu("".charAt),oP=bu("".indexOf),sP=bu("".replace),Lh=bu("".slice),Mh=function(){var e=/a/,t=/b*/g;return za(Su,e,"a"),za(Su,t,"a"),e.lastIndex!==0||t.lastIndex!==0}(),cy=$2.BROKEN_CARET,Nh=/()??/.exec("")[1]!==void 0;(Mh||Nh||cy||nP||rP)&&(Oh=function(e){var t,n,i,r,o,c,a,s=this,l=tP(s),u=Q2(e),f=l.raw;if(f)return f.lastIndex=s.lastIndex,t=za(Oh,f,u),s.lastIndex=f.lastIndex,t;var S=l.groups,x=cy&&s.sticky,E=za(Y2,s),I=s.source,m=0,T=u;if(x&&(E=sP(E,"y",""),oP(E,"g")===-1&&(E+="g"),T=Lh(u,s.lastIndex),s.lastIndex>0&&(!s.multiline||s.multiline&&aP(u,s.lastIndex-1)!==`
|
|
41
|
+
`)&&(I="(?: "+I+")",T=" "+T,m++),n=new RegExp("^(?:"+I+")",E)),Nh&&(n=new RegExp("^"+I+"$(?!\\s)",E)),Mh&&(i=s.lastIndex),r=za(Su,x?n:s,T),x?r?(r.input=Lh(r.input,m),r[0]=Lh(r[0],m),r.index=s.lastIndex,s.lastIndex+=r[0].length):s.lastIndex=0:Mh&&r&&(s.lastIndex=s.global?r.index+r[0].length:i),Nh&&r&&r.length>1&&za(iP,r[0],n,function(){for(o=1;o<arguments.length-2;o++)arguments[o]===void 0&&(r[o]=void 0)}),r&&S)for(r.groups=c=eP(null),o=0;o<S.length;o++)c[(a=S[o])[0]]=r[a[1]];return r});var ku=Oh;Le({target:"RegExp",proto:!0,forced:/./.exec!==ku},{exec:ku});var uy=pe,ly=Qt,cP=ku,dy=ue,hy=tt,uP=Ln,lP=hy("species"),Uh=RegExp.prototype,Vh=function(e,t,n,i){var r=hy(e),o=!dy(function(){var l={};return l[r]=function(){return 7},""[e](l)!=7}),c=o&&!dy(function(){var l=!1,u=/a/;return e==="split"&&((u={}).constructor={},u.constructor[lP]=function(){return u},u.flags="",u[r]=/./[r]),u.exec=function(){return l=!0,null},u[r](""),!l});if(!o||!c||n){var a=uy(/./[r]),s=t(r,""[e],function(l,u,f,S,x){var E=uy(l),I=u.exec;return I===cP||I===Uh.exec?o&&!x?{done:!0,value:a(u,f,S)}:{done:!0,value:E(f,u,S)}:{done:!1}});ly(String.prototype,e,s[0]),ly(Uh,r,s[1])}i&&uP(Uh[r],"sham",!0)},dP=vh.charAt,fy=function(e,t,n){return t+(n?dP(e,t).length:1)},jh=pe,hP=Mt,fP=Math.floor,Bh=jh("".charAt),pP=jh("".replace),Fh=jh("".slice),mP=/\$([$&'`]|\d{1,2}|<[^>]*>)/g,vP=/\$([$&'`]|\d{1,2})/g,py=Ke,gP=Tt,_P=it,yP=rt,bP=ku,SP=TypeError,Hh=function(e,t){var n=e.exec;if(_P(n)){var i=py(n,e,t);return i!==null&&gP(i),i}if(yP(e)==="RegExp")return py(bP,e,t);throw SP("RegExp#exec called on incompatible receiver")},kP=Ji,my=Ke,Tu=pe,TP=Vh,xP=ue,IP=Tt,wP=it,CP=Rt,EP=$n,RP=yr,Wa=zt,AP=pt,PP=fy,DP=Xt,OP=function(e,t,n,i,r,o){var c=n+e.length,a=i.length,s=vP;return r!==void 0&&(r=hP(r),s=mP),pP(o,s,function(l,u){var f;switch(Bh(u,0)){case"$":return"$";case"&":return e;case"`":return Fh(t,0,n);case"'":return Fh(t,c);case"<":f=r[Fh(u,1,-1)];break;default:var S=+u;if(S===0)return l;if(S>a){var x=fP(S/10);return x===0?l:x<=a?i[x-1]===void 0?Bh(u,1):i[x-1]+Bh(u,1):l}f=i[S-1]}return f===void 0?"":f})},LP=Hh,Gh=tt("replace"),MP=Math.max,NP=Math.min,UP=Tu([].concat),zh=Tu([].push),vy=Tu("".indexOf),gy=Tu("".slice),VP="a".replace(/./,"$0")==="$0",_y=!!/./[Gh]&&/./[Gh]("a","$0")==="",jP=!xP(function(){var e=/./;return e.exec=function(){var t=[];return t.groups={a:"7"},t},"".replace(e,"$<a>")!=="7"});TP("replace",function(e,t,n){var i=_y?"$":"$0";return[function(r,o){var c=AP(this),a=CP(r)?void 0:DP(r,Gh);return a?my(a,r,c,o):my(t,Wa(c),r,o)},function(r,o){var c=IP(this),a=Wa(r);if(typeof o=="string"&&vy(o,i)===-1&&vy(o,"$<")===-1){var s=n(t,c,a,o);if(s.done)return s.value}var l=wP(o);l||(o=Wa(o));var u=c.global;if(u){var f=c.unicode;c.lastIndex=0}for(var S=[];;){var x=LP(c,a);if(x===null||(zh(S,x),!u))break;Wa(x[0])===""&&(c.lastIndex=PP(a,RP(c.lastIndex),f))}for(var E,I="",m=0,T=0;T<S.length;T++){for(var v=Wa((x=S[T])[0]),w=MP(NP(EP(x.index),a.length),0),L=[],N=1;N<x.length;N++)zh(L,(E=x[N])===void 0?E:String(E));var V=x.groups;if(l){var _=UP([v],L,w,a);V!==void 0&&zh(_,V);var b=Wa(kP(o,void 0,_))}else b=OP(v,a,w,L,V,o);w>=m&&(I+=gy(a,m,w)+b,m=w+v.length)}return I+gy(a,m)}]},!jP||!VP||_y);var BP=Ke,FP=kt,HP=Sn,GP=iy,yy=RegExp.prototype,by=function(e){var t=e.flags;return t!==void 0||"flags"in yy||FP(e,"flags")||!HP(yy,e)?t:BP(GP,e)},zP=Yn.PROPER,WP=Qt,JP=Tt,Sy=zt,qP=ue,KP=by,ky="toString",Ty=RegExp.prototype.toString,XP=qP(function(){return Ty.call({source:"a",flags:"b"})!="/a/b"}),QP=zP&&Ty.name!=ky;(XP||QP)&&WP(RegExp.prototype,ky,function(){var e=JP(this);return"/"+Sy(e.source)+"/"+Sy(KP(e))},{unsafe:!0});var YP=ue,$P=tt("iterator"),xy=!YP(function(){var e=new URL("b?a=1&b=2&c=3","http://a"),t=e.searchParams,n="";return e.pathname="c%20d",t.forEach(function(i,r){t.delete("b"),n+=r+i}),!t.sort||e.href!=="http://a/c%20d?a=1&c=3"||t.get("c")!=="3"||String(new URLSearchParams("?a=1"))!=="a=1"||!t[$P]||new URL("https://a@b").username!=="a"||new URLSearchParams(new URLSearchParams("a=b")).get("a")!=="b"||new URL("http://\u0442\u0435\u0441\u0442").host!=="xn--e1aybc"||new URL("http://a#\u0431").hash!=="#%D0%B1"||n!=="a1c3"||new URL("http://x",void 0).host!=="x"}),Iy=hu,ZP=Math.floor,Wh=function(e,t){var n=e.length,i=ZP(n/2);return n<8?eD(e,t):tD(e,Wh(Iy(e,0,i),t),Wh(Iy(e,i),t),t)},eD=function(e,t){for(var n,i,r=e.length,o=1;o<r;){for(i=o,n=e[o];i&&t(e[i-1],n)>0;)e[i]=e[--i];i!==o++&&(e[i]=n)}return e},tD=function(e,t,n,i){for(var r=t.length,o=n.length,c=0,a=0;c<r||a<o;)e[c+a]=c<r&&a<o?i(t[c],n[a])<=0?t[c++]:n[a++]:c<r?t[c++]:n[a++];return e},wy=Wh,Jh=Le,Ja=re,xu=Ke,br=pe,nD=ye,Cy=xy,Ey=Qt,rD=As,iD=Wi,aD=Og,qh=Xe,Ry=oi,Kh=it,oD=kt,sD=Lr,cD=Dr,uD=Tt,Ay=at,Tn=zt,lD=Ba,Py=Ze,Xh=pu,dD=Es,qa=_u,hD=wy,fD=tt("iterator"),Iu="URLSearchParams",Dy="URLSearchParamsIterator",Oy=qh.set,Zn=qh.getterFor(Iu),pD=qh.getterFor(Dy),mD=Object.getOwnPropertyDescriptor,Qh=function(e){if(!nD)return Ja[e];var t=mD(Ja,e);return t&&t.value},Ly=Qh("fetch"),wu=Qh("Request"),Us=Qh("Headers"),Yh=wu&&wu.prototype,My=Us&&Us.prototype,vD=Ja.RegExp,gD=Ja.TypeError,Ny=Ja.decodeURIComponent,_D=Ja.encodeURIComponent,yD=br("".charAt),Uy=br([].join),qi=br([].push),$h=br("".replace),bD=br([].shift),Vy=br([].splice),jy=br("".split),SD=br("".slice),kD=/\+/g,By=Array(4),TD=function(e){return By[e-1]||(By[e-1]=vD("((?:%[\\da-f]{2}){"+e+"})","gi"))},xD=function(e){try{return Ny(e)}catch(t){return e}},Fy=function(e){var t=$h(e,kD," "),n=4;try{return Ny(t)}catch(i){for(;n;)t=$h(t,TD(n--),xD);return t}},ID=/[!'()~]|%20/g,wD={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+"},CD=function(e){return wD[e]},Hy=function(e){return $h(_D(e),ID,CD)},Zh=aD(function(e,t){Oy(this,{type:Dy,iterator:Xh(Zn(e).entries),kind:t})},"Iterator",function(){var e=pD(this),t=e.kind,n=e.iterator.next(),i=n.value;return n.done||(n.value=t==="keys"?i.key:t==="values"?i.value:[i.key,i.value]),n},!0),Gy=function(e){this.entries=[],this.url=null,e!==void 0&&(Ay(e)?this.parseObject(e):this.parseQuery(typeof e=="string"?yD(e,0)==="?"?SD(e,1):e:Tn(e)))};Gy.prototype={type:Iu,bindURL:function(e){this.url=e,this.update()},parseObject:function(e){var t,n,i,r,o,c,a,s=dD(e);if(s)for(n=(t=Xh(e,s)).next;!(i=xu(n,t)).done;){if(o=(r=Xh(uD(i.value))).next,(c=xu(o,r)).done||(a=xu(o,r)).done||!xu(o,r).done)throw gD("Expected sequence with length 2");qi(this.entries,{key:Tn(c.value),value:Tn(a.value)})}else for(var l in e)oD(e,l)&&qi(this.entries,{key:l,value:Tn(e[l])})},parseQuery:function(e){if(e)for(var t,n,i=jy(e,"&"),r=0;r<i.length;)(t=i[r++]).length&&(n=jy(t,"="),qi(this.entries,{key:Fy(bD(n)),value:Fy(Uy(n,"="))}))},serialize:function(){for(var e,t=this.entries,n=[],i=0;i<t.length;)e=t[i++],qi(n,Hy(e.key)+"="+Hy(e.value));return Uy(n,"&")},update:function(){this.entries.length=0,this.parseQuery(this.url.query)},updateURL:function(){this.url&&this.url.update()}};var Cu=function(){Ry(this,Vs);var e=arguments.length>0?arguments[0]:void 0;Oy(this,new Gy(e))},Vs=Cu.prototype;if(rD(Vs,{append:function(e,t){qa(arguments.length,2);var n=Zn(this);qi(n.entries,{key:Tn(e),value:Tn(t)}),n.updateURL()},delete:function(e){qa(arguments.length,1);for(var t=Zn(this),n=t.entries,i=Tn(e),r=0;r<n.length;)n[r].key===i?Vy(n,r,1):r++;t.updateURL()},get:function(e){qa(arguments.length,1);for(var t=Zn(this).entries,n=Tn(e),i=0;i<t.length;i++)if(t[i].key===n)return t[i].value;return null},getAll:function(e){qa(arguments.length,1);for(var t=Zn(this).entries,n=Tn(e),i=[],r=0;r<t.length;r++)t[r].key===n&&qi(i,t[r].value);return i},has:function(e){qa(arguments.length,1);for(var t=Zn(this).entries,n=Tn(e),i=0;i<t.length;)if(t[i++].key===n)return!0;return!1},set:function(e,t){qa(arguments.length,1);for(var n,i=Zn(this),r=i.entries,o=!1,c=Tn(e),a=Tn(t),s=0;s<r.length;s++)(n=r[s]).key===c&&(o?Vy(r,s--,1):(o=!0,n.value=a));o||qi(r,{key:c,value:a}),i.updateURL()},sort:function(){var e=Zn(this);hD(e.entries,function(t,n){return t.key>n.key?1:-1}),e.updateURL()},forEach:function(e){for(var t,n=Zn(this).entries,i=sD(e,arguments.length>1?arguments[1]:void 0),r=0;r<n.length;)i((t=n[r++]).value,t.key,this)},keys:function(){return new Zh(this,"keys")},values:function(){return new Zh(this,"values")},entries:function(){return new Zh(this,"entries")}},{enumerable:!0}),Ey(Vs,fD,Vs.entries,{name:"entries"}),Ey(Vs,"toString",function(){return Zn(this).serialize()},{enumerable:!0}),iD(Cu,Iu),Jh({global:!0,constructor:!0,forced:!Cy},{URLSearchParams:Cu}),!Cy&&Kh(Us)){var ED=br(My.has),RD=br(My.set),zy=function(e){if(Ay(e)){var t,n=e.body;if(cD(n)===Iu)return t=e.headers?new Us(e.headers):new Us,ED(t,"content-type")||RD(t,"content-type","application/x-www-form-urlencoded;charset=UTF-8"),lD(e,{body:Py(0,Tn(n)),headers:Py(0,t)})}return e};if(Kh(Ly)&&Jh({global:!0,enumerable:!0,dontCallGetSet:!0,forced:!0},{fetch:function(e){return Ly(e,arguments.length>1?zy(arguments[1]):{})}}),Kh(wu)){var ef=function(e){return Ry(this,Yh),new wu(e,arguments.length>1?zy(arguments[1]):{})};Yh.constructor=ef,ef.prototype=Yh,Jh({global:!0,constructor:!0,dontCallGetSet:!0,forced:!0},{Request:ef})}}var AD={URLSearchParams:Cu,getState:Zn},PD=Object.is||function(e,t){return e===t?e!==0||1/e==1/t:e!=e&&t!=t},DD=Ke,OD=Tt,LD=Rt,MD=pt,Wy=PD,Jy=zt,ND=Xt,UD=Hh;Vh("search",function(e,t,n){return[function(i){var r=MD(this),o=LD(i)?void 0:ND(i,e);return o?DD(o,i,r):new RegExp(i)[e](Jy(r))},function(i){var r=OD(this),o=Jy(i),c=n(t,r,o);if(c.done)return c.value;var a=r.lastIndex;Wy(a,0)||(r.lastIndex=0);var s=UD(r,o);return Wy(r.lastIndex,a)||(r.lastIndex=a),s===null?-1:s.index}]}),new Date().getTime();var tf=0,an=function(){return new Date().getTime()+tf},qy=function(){var e=new Date;return e.setTime(an()),e.toLocaleString()},VD=Ke,jD=Tt,BD=Rt,FD=yr,nf=zt,HD=pt,GD=Xt,zD=fy,Ky=Hh;Vh("match",function(e,t,n){return[function(i){var r=HD(this),o=BD(i)?void 0:GD(i,e);return o?VD(o,i,r):new RegExp(i)[e](nf(r))},function(i){var r=jD(this),o=nf(i),c=n(t,r,o);if(c.done)return c.value;if(!r.global)return Ky(r,o);var a=r.unicode;r.lastIndex=0;for(var s,l=[],u=0;(s=Ky(r,o))!==null;){var f=nf(s[0]);l[u]=f,f===""&&(r.lastIndex=zD(o,FD(r.lastIndex),a)),u++}return u===0?null:l}]});var WD=at,JD=rt,qD=tt("match"),Xy=function(e){var t;return WD(e)&&((t=e[qD])!==void 0?!!t:JD(e)=="RegExp")},KD=Pt.f,XD=ye,rf=re,js=pe,QD=Ss,YD=gu,$D=Ln,ZD=ii.f,Qy=Sn,eO=Xy,Yy=zt,tO=by,$y=ay,nO=function(e,t,n){n in e||KD(e,n,{configurable:!0,get:function(){return t[n]},set:function(i){t[n]=i}})},rO=Qt,iO=ue,aO=kt,oO=Xe.enforce,sO=Ps,Zy=oy,e0=sy,cO=tt("match"),ci=rf.RegExp,Ka=ci.prototype,uO=rf.SyntaxError,lO=js(Ka.exec),Eu=js("".charAt),t0=js("".replace),n0=js("".indexOf),dO=js("".slice),hO=/^\?<[^\s\d!#%&*+<=>@^][^\s!#%&*+<=>@^]*>/,Ki=/a/g,af=/a/g,fO=new ci(Ki)!==Ki,r0=$y.MISSED_STICKY,pO=$y.UNSUPPORTED_Y,mO=XD&&(!fO||r0||Zy||e0||iO(function(){return af[cO]=!1,ci(Ki)!=Ki||ci(af)==af||ci(Ki,"i")!="/a/i"}));if(QD("RegExp",mO)){for(var Xi=function(e,t){var n,i,r,o,c,a,s=Qy(Ka,this),l=eO(e),u=t===void 0,f=[],S=e;if(!s&&l&&u&&e.constructor===Xi)return e;if((l||Qy(Ka,e))&&(e=e.source,u&&(t=tO(S))),e=e===void 0?"":Yy(e),t=t===void 0?"":Yy(t),S=e,Zy&&"dotAll"in Ki&&(i=!!t&&n0(t,"s")>-1)&&(t=t0(t,/s/g,"")),n=t,r0&&"sticky"in Ki&&(r=!!t&&n0(t,"y")>-1)&&pO&&(t=t0(t,/y/g,"")),e0&&(o=function(x){for(var E,I=x.length,m=0,T="",v=[],w={},L=!1,N=!1,V=0,_="";m<=I;m++){if((E=Eu(x,m))==="\\")E+=Eu(x,++m);else if(E==="]")L=!1;else if(!L)switch(!0){case E==="[":L=!0;break;case E==="(":lO(hO,dO(x,m+1))&&(m+=2,N=!0),T+=E,V++;continue;case(E===">"&&N):if(_===""||aO(w,_))throw new uO("Invalid capture group name");w[_]=!0,v[v.length]=[_,V],N=!1,_="";continue}N?_+=E:T+=E}return[T,v]}(e),e=o[0],f=o[1]),c=YD(ci(e,t),s?this:Ka,Xi),(i||r||f.length)&&(a=oO(c),i&&(a.dotAll=!0,a.raw=Xi(function(x){for(var E,I=x.length,m=0,T="",v=!1;m<=I;m++)(E=Eu(x,m))!=="\\"?v||E!=="."?(E==="["?v=!0:E==="]"&&(v=!1),T+=E):T+="[\\s\\S]":T+=E+Eu(x,++m);return T}(e),n)),r&&(a.sticky=!0),f.length&&(a.groups=f)),e!==S)try{$D(c,"source",S===""?"(?:)":S)}catch(x){}return c},i0=ZD(ci),a0=0;i0.length>a0;)nO(Xi,ci,i0[a0++]);Ka.constructor=Xi,Xi.prototype=Ka,rO(rf,"RegExp",Xi,{constructor:!0})}sO("RegExp");var o0=pe(1 .valueOf),s0=`
|
|
42
|
+
\v\f\r \xA0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF`,vO=pt,gO=zt,c0=pe("".replace),Ru=`[
|
|
43
|
+
\v\f\r \xA0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF]`,_O=RegExp("^"+Ru+Ru+"*"),yO=RegExp(Ru+Ru+"*$"),of=function(e){return function(t){var n=gO(vO(t));return 1&e&&(n=c0(n,_O,"")),2&e&&(n=c0(n,yO,"")),n}},Au={start:of(1),end:of(2),trim:of(3)},bO=ye,sf=re,u0=pe,SO=Ss,kO=Qt,l0=kt,TO=gu,xO=Sn,IO=Li,d0=Vi,wO=ue,CO=ii.f,EO=be.f,RO=Pt.f,AO=o0,PO=Au.trim,h0="Number",ui=sf.Number,cf=ui.prototype,DO=sf.TypeError,OO=u0("".slice),Pu=u0("".charCodeAt),LO=function(e){var t=d0(e,"number");return typeof t=="bigint"?t:MO(t)},MO=function(e){var t,n,i,r,o,c,a,s,l=d0(e,"number");if(IO(l))throw DO("Cannot convert a Symbol value to a number");if(typeof l=="string"&&l.length>2){if(l=PO(l),(t=Pu(l,0))===43||t===45){if((n=Pu(l,2))===88||n===120)return NaN}else if(t===48){switch(Pu(l,1)){case 66:case 98:i=2,r=49;break;case 79:case 111:i=8,r=55;break;default:return+l}for(c=(o=OO(l,2)).length,a=0;a<c;a++)if((s=Pu(o,a))<48||s>r)return NaN;return parseInt(o,i)}}return+l};if(SO(h0,!ui(" 0o1")||!ui("0b1")||ui("+0x1"))){for(var Du,Xa=function(e){var t=arguments.length<1?0:ui(LO(e)),n=this;return xO(cf,n)&&wO(function(){AO(n)})?TO(Object(t),n,Xa):t},f0=bO?CO(ui):"MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,EPSILON,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,isFinite,isInteger,isNaN,isSafeInteger,parseFloat,parseInt,fromString,range".split(","),uf=0;f0.length>uf;uf++)l0(ui,Du=f0[uf])&&!l0(Xa,Du)&&RO(Xa,Du,EO(ui,Du));Xa.prototype=cf,cf.constructor=Xa,kO(sf,h0,Xa,{constructor:!0})}var NO=ys.includes,UO=uu;Le({target:"Array",proto:!0,forced:ue(function(){return!Array(1).includes()})},{includes:function(e){return NO(this,e,arguments.length>1?arguments[1]:void 0)}}),UO("includes");var VO=Xy,jO=TypeError,p0=function(e){if(VO(e))throw jO("The method doesn't accept regular expressions");return e},BO=tt("match"),m0=function(e){var t=/./;try{"/./"[e](t)}catch(n){try{return t[BO]=!1,"/./"[e](t)}catch(i){}}return!1},FO=Le,HO=p0,GO=pt,v0=zt,zO=m0,WO=pe("".indexOf);FO({target:"String",proto:!0,forced:!zO("includes")},{includes:function(e){return!!~WO(v0(GO(this)),v0(HO(e)),arguments.length>1?arguments[1]:void 0)}});var JO=Le,qO=ys.indexOf,KO=Ns,lf=pe([].indexOf),g0=!!lf&&1/lf([1],1,-0)<0,XO=KO("indexOf");JO({target:"Array",proto:!0,forced:g0||!XO},{indexOf:function(e){var t=arguments.length>1?arguments[1]:void 0;return g0?lf(this,e,t)||0:qO(this,e,t)}});var QO=Mt,_0=Ts,YO=Eg;Le({target:"Object",stat:!0,forced:ue(function(){_0(1)}),sham:!YO},{getPrototypeOf:function(e){return _0(QO(e))}});var $O=Ji,ZO=Vt,eL=Tt;Le({target:"Reflect",stat:!0,forced:!ue(function(){Reflect.apply(function(){})})},{apply:function(e,t,n){return $O(ZO(e),t,eL(n))}});var tL=ye,nL=Yn.EXISTS,y0=pe,rL=Pt.f,b0=Function.prototype,iL=y0(b0.toString),S0=/function\b(?:\s|\/\*[\S\s]*?\*\/|\/\/[^\n\r]*[\n\r]+)*([^\s(/]*)/,aL=y0(S0.exec);tL&&!nL&&rL(b0,"name",{configurable:!0,get:function(){try{return aL(S0,iL(this))[1]}catch(e){return""}}});var oL=Le,k0=Date,sL=pe(k0.prototype.getTime);oL({target:"Date",stat:!0},{now:function(){return sL(new k0)}});var Bs,Qa,T0,df,Fs=rt(re.process)=="process",cL=yu,uL=Xn,lL=TypeError,x0=function(e){if(cL(e))return e;throw lL(uL(e)+" is not a constructor")},I0=Tt,dL=x0,hL=Rt,fL=tt("species"),Ou=function(e,t){var n,i=I0(e).constructor;return i===void 0||hL(n=I0(i)[fL])?t:dL(n)},w0=/(?:ipad|iphone|ipod).*applewebkit/i.test(Kn),xn=re,pL=Ji,mL=Lr,C0=it,vL=kt,gL=ue,E0=Sg,_L=Ha,R0=vr,yL=_u,bL=w0,SL=Fs,hf=xn.setImmediate,ff=xn.clearImmediate,kL=xn.process,pf=xn.Dispatch,TL=xn.Function,A0=xn.MessageChannel,xL=xn.String,mf=0,Hs={},IL="onreadystatechange";try{Bs=xn.location}catch(e){}var vf=function(e){if(vL(Hs,e)){var t=Hs[e];delete Hs[e],t()}},gf=function(e){return function(){vf(e)}},P0=function(e){vf(e.data)},D0=function(e){xn.postMessage(xL(e),Bs.protocol+"//"+Bs.host)};hf&&ff||(hf=function(e){yL(arguments.length,1);var t=C0(e)?e:TL(e),n=_L(arguments,1);return Hs[++mf]=function(){pL(t,void 0,n)},Qa(mf),mf},ff=function(e){delete Hs[e]},SL?Qa=function(e){kL.nextTick(gf(e))}:pf&&pf.now?Qa=function(e){pf.now(gf(e))}:A0&&!bL?(df=(T0=new A0).port2,T0.port1.onmessage=P0,Qa=mL(df.postMessage,df)):xn.addEventListener&&C0(xn.postMessage)&&!xn.importScripts&&Bs&&Bs.protocol!=="file:"&&!gL(D0)?(Qa=D0,xn.addEventListener("message",P0,!1)):Qa=IL in R0("script")?function(e){E0.appendChild(R0("script")).onreadystatechange=function(){E0.removeChild(this),vf(e)}}:function(e){setTimeout(gf(e),0)});var Gs,Qi,zs,Ya,_f,yf,bf,O0,L0={set:hf,clear:ff},wL=re,CL=/ipad|iphone|ipod/i.test(Kn)&&wL.Pebble!==void 0,EL=/web0s(?!.*chrome)/i.test(Kn),Yi=re,M0=Lr,RL=be.f,Sf=L0.set,AL=w0,PL=CL,DL=EL,kf=Fs,N0=Yi.MutationObserver||Yi.WebKitMutationObserver,U0=Yi.document,V0=Yi.process,Lu=Yi.Promise,j0=RL(Yi,"queueMicrotask"),B0=j0&&j0.value;B0||(Gs=function(){var e,t;for(kf&&(e=V0.domain)&&e.exit();Qi;){t=Qi.fn,Qi=Qi.next;try{t()}catch(n){throw Qi?Ya():zs=void 0,n}}zs=void 0,e&&e.enter()},AL||kf||DL||!N0||!U0?!PL&&Lu&&Lu.resolve?((bf=Lu.resolve(void 0)).constructor=Lu,O0=M0(bf.then,bf),Ya=function(){O0(Gs)}):kf?Ya=function(){V0.nextTick(Gs)}:(Sf=M0(Sf,Yi),Ya=function(){Sf(Gs)}):(_f=!0,yf=U0.createTextNode(""),new N0(Gs).observe(yf,{characterData:!0}),Ya=function(){yf.data=_f=!_f}));var OL=B0||function(e){var t={fn:e,next:void 0};zs&&(zs.next=t),Qi||(Qi=t,Ya()),zs=t},LL=re,Tf=function(e){try{return{error:!1,value:e()}}catch(t){return{error:!0,value:t}}},F0=function(){this.head=null,this.tail=null};F0.prototype={add:function(e){var t={item:e,next:null};this.head?this.tail.next=t:this.head=t,this.tail=t},get:function(){var e=this.head;if(e)return this.head=e.next,this.tail===e&&(this.tail=null),e.item}};var ML=F0,Ws=re.Promise,H0=typeof Deno=="object"&&Deno&&typeof Deno.version=="object",NL=!H0&&!Fs&&typeof window=="object"&&typeof document=="object",UL=re,Js=Ws,VL=it,jL=Ss,BL=d,FL=tt,HL=NL,GL=H0,xf=pr;Js&&Js.prototype;var zL=FL("species"),G0=!1,z0=VL(UL.PromiseRejectionEvent),WL=jL("Promise",function(){var e=BL(Js),t=e!==String(Js);if(!t&&xf===66)return!0;if(!xf||xf<51||!/native code/.test(e)){var n=new Js(function(r){r(1)}),i=function(r){r(function(){},function(){})};if((n.constructor={})[zL]=i,!(G0=n.then(function(){})instanceof i))return!0}return!t&&(HL||GL)&&!z0}),$i={CONSTRUCTOR:WL,REJECTION_EVENT:z0,SUBCLASSING:G0},$a={},W0=Vt,JL=TypeError,qL=function(e){var t,n;this.promise=new e(function(i,r){if(t!==void 0||n!==void 0)throw JL("Bad Promise constructor");t=i,n=r}),this.resolve=W0(t),this.reject=W0(n)};$a.f=function(e){return new qL(e)};var If,J0,q0,KL=Le,Mu=Fs,li=re,Za=Ke,K0=Qt,X0=Fa,XL=Wi,QL=Ps,YL=Vt,Nu=it,$L=at,ZL=oi,eM=Ou,Q0=L0.set,wf=OL,tM=function(e,t){var n=LL.console;n&&n.error&&(arguments.length==1?n.error(e):n.error(e,t))},nM=Tf,rM=ML,Y0=Xe,Uu=Ws,$0=$a,Vu="Promise",Z0=$i.CONSTRUCTOR,iM=$i.REJECTION_EVENT,aM=$i.SUBCLASSING,Cf=Y0.getterFor(Vu),oM=Y0.set,eo=Uu&&Uu.prototype,to=Uu,ju=eo,eb=li.TypeError,Ef=li.document,Rf=li.process,Af=$0.f,sM=Af,cM=!!(Ef&&Ef.createEvent&&li.dispatchEvent),tb="unhandledrejection",nb=function(e){var t;return!(!$L(e)||!Nu(t=e.then))&&t},rb=function(e,t){var n,i,r,o=t.value,c=t.state==1,a=c?e.ok:e.fail,s=e.resolve,l=e.reject,u=e.domain;try{a?(c||(t.rejection===2&&lM(t),t.rejection=1),a===!0?n=o:(u&&u.enter(),n=a(o),u&&(u.exit(),r=!0)),n===e.promise?l(eb("Promise-chain cycle")):(i=nb(n))?Za(i,n,s,l):s(n)):l(o)}catch(f){u&&!r&&u.exit(),l(f)}},ib=function(e,t){e.notified||(e.notified=!0,wf(function(){for(var n,i=e.reactions;n=i.get();)rb(n,e);e.notified=!1,t&&!e.rejection&&uM(e)}))},ab=function(e,t,n){var i,r;cM?((i=Ef.createEvent("Event")).promise=t,i.reason=n,i.initEvent(e,!1,!0),li.dispatchEvent(i)):i={promise:t,reason:n},!iM&&(r=li["on"+e])?r(i):e===tb&&tM("Unhandled promise rejection",n)},uM=function(e){Za(Q0,li,function(){var t,n=e.facade,i=e.value;if(ob(e)&&(t=nM(function(){Mu?Rf.emit("unhandledRejection",i,n):ab(tb,n,i)}),e.rejection=Mu||ob(e)?2:1,t.error))throw t.value})},ob=function(e){return e.rejection!==1&&!e.parent},lM=function(e){Za(Q0,li,function(){var t=e.facade;Mu?Rf.emit("rejectionHandled",t):ab("rejectionhandled",t,e.value)})},no=function(e,t,n){return function(i){e(t,i,n)}},ro=function(e,t,n){e.done||(e.done=!0,n&&(e=n),e.value=t,e.state=2,ib(e,!0))},Pf=function(e,t,n){if(!e.done){e.done=!0,n&&(e=n);try{if(e.facade===t)throw eb("Promise can't be resolved itself");var i=nb(t);i?wf(function(){var r={done:!1};try{Za(i,t,no(Pf,r,e),no(ro,r,e))}catch(o){ro(r,o,e)}}):(e.value=t,e.state=1,ib(e,!1))}catch(r){ro({done:!1},r,e)}}};if(Z0&&(ju=(to=function(e){ZL(this,ju),YL(e),Za(If,this);var t=Cf(this);try{e(no(Pf,t),no(ro,t))}catch(n){ro(t,n)}}).prototype,(If=function(e){oM(this,{type:Vu,done:!1,notified:!1,parent:!1,reactions:new rM,rejection:!1,state:0,value:void 0})}).prototype=K0(ju,"then",function(e,t){var n=Cf(this),i=Af(eM(this,to));return n.parent=!0,i.ok=!Nu(e)||e,i.fail=Nu(t)&&t,i.domain=Mu?Rf.domain:void 0,n.state==0?n.reactions.add(i):wf(function(){rb(i,n)}),i.promise}),J0=function(){var e=new If,t=Cf(e);this.promise=e,this.resolve=no(Pf,t),this.reject=no(ro,t)},$0.f=Af=function(e){return e===to||e===void 0?new J0(e):sM(e)},Nu(Uu)&&eo!==Object.prototype)){q0=eo.then,aM||K0(eo,"then",function(e,t){var n=this;return new to(function(i,r){Za(q0,n,i,r)}).then(e,t)},{unsafe:!0});try{delete eo.constructor}catch(e){}X0&&X0(eo,ju)}KL({global:!0,constructor:!0,wrap:!0,forced:Z0},{Promise:to}),XL(to,Vu,!1),QL(Vu);var dM=Ws,sb=$i.CONSTRUCTOR||!vu(function(e){dM.all(e).then(void 0,function(){})}),hM=Ke,fM=Vt,pM=$a,mM=Tf,vM=Rs;Le({target:"Promise",stat:!0,forced:sb},{all:function(e){var t=this,n=pM.f(t),i=n.resolve,r=n.reject,o=mM(function(){var c=fM(t.resolve),a=[],s=0,l=1;vM(e,function(u){var f=s++,S=!1;l++,hM(c,t,u).then(function(x){S||(S=!0,a[f]=x,--l||i(a))},r)}),--l||i(a)});return o.error&&r(o.value),n.promise}});var gM=Le,_M=$i.CONSTRUCTOR,Df=Ws,yM=An,bM=it,SM=Qt,cb=Df&&Df.prototype;if(gM({target:"Promise",proto:!0,forced:_M,real:!0},{catch:function(e){return this.then(void 0,e)}}),bM(Df)){var ub=yM("Promise").prototype.catch;cb.catch!==ub&&SM(cb,"catch",ub,{unsafe:!0})}var kM=Ke,TM=Vt,xM=$a,IM=Tf,wM=Rs;Le({target:"Promise",stat:!0,forced:sb},{race:function(e){var t=this,n=xM.f(t),i=n.reject,r=IM(function(){var o=TM(t.resolve);wM(e,function(c){kM(o,t,c).then(n.resolve,i)})});return r.error&&i(r.value),n.promise}});var CM=Ke,EM=$a;Le({target:"Promise",stat:!0,forced:$i.CONSTRUCTOR},{reject:function(e){var t=EM.f(this);return CM(t.reject,void 0,e),t.promise}});var RM=Tt,AM=at,PM=$a,lb=function(e,t){if(RM(e),AM(t)&&t.constructor===e)return t;var n=PM.f(e);return(0,n.resolve)(t),n.promise},DM=Le,OM=$i.CONSTRUCTOR,LM=lb;An("Promise"),DM({target:"Promise",stat:!0,forced:OM},{resolve:function(e){return LM(this,e)}});var MM=Mt,db=ou;Le({target:"Object",stat:!0,forced:ue(function(){db(1)})},{keys:function(e){return db(MM(e))}});var hb="canvas",Ee="audio",xe="video",Of="screen",Mr="small",Bu="big",gt="auxiliary",Nn="aux",Fu="smallVideo",fb="user",pb="environment",tn="mute",Sr="unmute",Nt="ended",di="playing",hi="pause",io="error",Lf="loadeddata",qs="audioinput",Hu="videoinput",mb="detail",NM="text",Qe="main",er="backup",UM="banned",VM="kick",jM="user_time_out",BM="room_disband",vb="sei-message",ao="PLAYING",kr="PAUSED",fi="STOPPED",oo="inactive",pi="sendonly",Mf="recvonly",gb="add",_b="remove",FM="replace",Nf="track",HM="wss://trtc.rtc.qq.com",GM="wss://webrtc.qq.com",Gu="qcloud",zM="trtc",WM="webrtc",Ks="",yb="jssdk_log",JM="jssdk_event",qM="jssdk_new_endreport",Uf=function(e){return Ks=e},KM=1,XM=2,zu="live",so=20,Vf=21,Tr="anchor",Zi="audience",xr="5Y2wZK8nANNAoVw6dSAHVjNxrD1ObBM2kBPV",Xs="224d130c-7b5c-415b-aaa2-79c2eb5a6df2",QM=2,yt=Qe,Dt=gt,Wu="unknown",on="DISCONNECTED",bb="CONNECTING",jf="RECONNECTING",sn="CONNECTED",YM="new",Ju="connecting",Sb="failed",Bf="closed",$M="disconnected",kb="connected",ZM="completed",Ff=30,Tb="join",eN="delta-join",xb="rejoin",tN="leave",nN="delta-leave",Ib="publish",rN="delta-publish",wb="unpublish",Cb="subscribe",Eb="unsubscribe",Rb="uplink-connection",Ab="uplink-reconnection",Pb="downlink-connection",Db="downlink-reconnection",qu="setLocalDescription",Ob="setRemoteDescription",Lb="iceConnectionState",Qs="stream-initialize",Hf="websocketConnectionState",Mb="websocketReconnectionState",Nb="update-stream",Ub="recover-subscription",Vb="start-mix-transcode",jb="stop-mix-transcode",Bb="player-error",Fb="schedule",Gf="unsubscribe",zf="subscribe_change",Ys="unified-plan",Wf="plan-b",Jf={MANUAL:"manual",PRESET_LAYOUT:"preset-layout"},Hb={REMOTE:"$PLACE_HOLDER_REMOTE$"},Gb={IT_AUDIO_VIDEO:0,IT_PICTURE:2,IT_CANVAS:3,IT_PURE_AUDIO:4,IT_PURE_VIDEO:5},dt="string",wt="number",Wt="boolean",zb="array",In="object",cn={ADD:gb,REMOVE:_b},qf={unknown:0,wifi:1,"4g":2,"3g":3,"2g":4,wired:5},Wb=-1,$s=0,iN=1,Jb=Bu,qb=Mr,Kb=6048e5,aN="schedule.cloud-rtc.com",oN="schedule.rtc.qcloud.com",sN="schedule.rtc.tencentcloud.com",cN="schedule-ecdn.rtc.tencentcloud.com",Kf="",Xb=function(e){return Kf=e},Zs="TRTC",un="Client",mi="LocalStream",Xf="RemoteStream",uN="Stream",Qf="web.sdk.qcloud.com",Qb="web.sdk.tencent.cn",Yb="web.sdk.cloud.tencent.cn",$b="https://console.cloud.tencent.com/trtc",co="https://".concat(Qf,"/trtc/webrtc/doc"),Yf="".concat(co,"/zh-cn/"),$f="trtc_error_assistance",Ku="default",Zb="communications",Un={TRACE:0,DEBUG:1,INFO:2,WARN:3,ERROR:4,NONE:5},lN=1,eS=2,dN=1,tS=2,ea=Object.keys(Un),hN=["normal leave","timeout leave","kick","role change"],Xu=2e3,uo="ric",Qu="raf",fN="interval",nS="timeout",rS="Resolution reset to 1080p, need to upgrade ability here https://cloud.tencent.com/document/product/647/85386",pN={"TRTC.checkSystemRequirements":40001,"TRTC.isScreenShareSupported":40002,"TRTC.isSmallStreamSupported":40003,"TRTC.createClient.rtc":40004,"TRTC.createClient.live":40005,"TRTC.createClient.intRoomId":40006,"TRTC.createClient.stringRoomId":40007,"TRTC.createClient.autoSubscribe":40008,"TRTC.createClient.manualSubscribe":40009,"TRTC.enableUploadLog":40010,"TRTC.disableUploadLog":40011,"Client.publish":40012,"Client.publish.isAuxiliary":40013,"Client.switchRole":40014,"Client.startPublishCDNStream":40015,"Client.stopPublishCDNStream":40016,"Client.startMixTranscode":40017,"Client.stopMixTranscode":40018,"Client.enableAudioVolumeEvaluation":40019,"Client.enableSmallStream":40020,"Client.disableSmallStream":40021,"Client.setSmallStreamProfile":40022,"Client.setRemoteVideoStreamType":40023,"Client.sendSEIMessage":40024,"Client.setProxyServer":40025,"Client.setTurnServer":40026,"LocalStream.setAudioProfile.standard":40027,"LocalStream.setAudioProfile.high":40028,"LocalStream.setAudioProfile.standard-stereo":40029,"LocalStream.setAudioProfile.high-stereo":40030,"LocalStream.setVideoProfile.120p":40031,"LocalStream.setVideoProfile.120p_2":40032,"LocalStream.setVideoProfile.180p":40033,"LocalStream.setVideoProfile.180p_2":40034,"LocalStream.setVideoProfile.240p":40035,"LocalStream.setVideoProfile.240p_2":40036,"LocalStream.setVideoProfile.360p":40037,"LocalStream.setVideoProfile.360p_2":40038,"LocalStream.setVideoProfile.480p":40039,"LocalStream.setVideoProfile.480p_2":40040,"LocalStream.setVideoProfile.720p":40041,"LocalStream.setVideoProfile.1080p":40042,"LocalStream.setVideoProfile.1440p":40043,"LocalStream.setVideoProfile.4K":40044,"LocalStream.setScreenProfile.480p":40045,"LocalStream.setScreenProfile.480p_2":40046,"LocalStream.setScreenProfile.720p":40047,"LocalStream.setScreenProfile.720p_2":40048,"LocalStream.setScreenProfile.1080p":40049,"LocalStream.setScreenProfile.1080p_2":40050,"LocalStream.setVideoContentHint.motion":40051,"LocalStream.setVideoContentHint.detail":40052,"LocalStream.setVideoContentHint.text":40053,"LocalStream.setAudioCaptureVolume":40054,"LocalStream.getVideoFrame":40055,"RemoteStream.setAudioOutput":40056,"RemoteStream.getVideoFrame":40057,AI_DENOISER:1700,SPATIAL_AUDIO:1701,"2K_4K":1704},Zf=["width","height","frameRate","facingMode","sampleRate","sampleSize","channelCount","deviceId"],mN=pt,iS=zt,vN=/"/g,gN=pe("".replace),aS=function(e,t,n,i){var r=iS(mN(e)),o="<"+t;return n!==""&&(o+=" "+n+'="'+gN(iS(i),vN,""")+'"'),o+">"+r+"</"+t+">"},_N=ue,oS=function(e){return _N(function(){var t=""[e]('"');return t!==t.toLowerCase()||t.split('"').length>3})},yN=aS;Le({target:"String",proto:!0,forced:oS("link")},{link:function(e){return yN(this,"a","href",e)}}),Le({target:"Array",stat:!0},{isArray:Ga});var bN="AVOID_REPEATED_CALL",SN="INVALID_PARAMETER_REQUIRED",sS="INVALID_PARAMETER_TYPE",kN="INVALID_PARAMETER_EMPTY",cS="INVALID_PARAMETER_INSTANCE",TN="INVALID_PARAMETER_RANGE",xN="API_CALL_TIMEOUT",IN="SIGNAL_CHANNEL_RECONNECTION_FAILED",wN="SIGNAL_CHANNEL_SETUP_FAILED",CN="ERROR_MESSAGE",EN="EXCHANGE_SDP_TIMEOUT",RN="DOWNLINK_RECONNECTION_FAILED",AN="EXCHANGE_SDP_FAILED",PN="UPLINK_RECONNECTION_FAILED",DN="INVALID_PURE_AUDIO",ON="INVALID_STREAMID",LN="INVALID_USER_DEFINE_RECORDID",MN="INVALID_USER_DEFINE_PUSH_ARGS",NN="INVALID_PROXY",UN="INVALID_JOIN",VN="INVALID_ROOMID_STRING",jN="INVALID_ROOMID_INTEGER",BN="JOIN_ROOM_TIMEOUT",uS="JOIN_ROOM_FAILED",FN="REJOIN_ROOM_FAILED",HN="INVALID_DESTROY",GN="INVALID_PUBLISH",zN="INVALID_UNPUBLISH",WN="INVALID_AUDIENCE",JN="INVALID_INITIALIZE",qN="INVALID_DUPLICATE_PUBLISHING",ep="INVALID_REMOTE_STREAM",KN="SUBSCRIBE_FAILED",XN="INVALID_ROLE",QN="INVALID_OPERATION_SWITCH_ROLE",YN="SWITCH_ROLE_TIMEOUT",$N="SWITCH_ROLE_FAILED",ZN="CLIENT_BANNED",lS="INVALID_OPERATION_START_PUBLISH_CDN",e3="INVALID_OPERATION_STOP_PUBLISH_CDN",t3="INVALID_STREAM_ID",dS="START_PUBLISH_CDN_FAILED",hS="STOP_PUBLISH_CDN_FAILED",n3="START_MIX_TRANSCODE",r3="STOP_MIX_TRANSCODE",i3="INVALID_AUDIO_VOLUME",a3="ENABLE_SMALL_STREAM_PUBLISHED",o3="DISABLE_SMALL_STREAM_PUBLISHED",s3="NOT_SUPPORTED_SMALL_STREAM",c3="INVALID_SMALL_STREAM_PROFILE",u3="INVALID_PARAMETER_REMOTE_STREAM",l3="INVALID_SWITCH_DEVICE",d3="INVALID_SWITCH_DEVICE_PUBLISHING",fS="INVALID_REPLACE_TRACK",h3="INVALID_INITIALIZE_LOCAL_STREAM",f3="INVALID_ADD_TRACK_REPETITIVE",p3="INVALID_ADD_TRACK_REMOVING",m3="INVALID_ADD_TRACK_PUBLISHING",pS="INVALID_STREAM_INITIALIZED",v3="INVALID_ADD_TRACK_NUMBER",g3="INVALID_REMOVE_AUDIO_TRACK",_3="INVALID_REMOVE_AUDIO_ADDING",y3="INVALID_REMOVE_AUDIO_ON",b3="INVALID_REMOVE_TRACK_PUBLISHING",S3="INVALID_REMOVE_TRACK_NOT_PUBLISHING",k3="INVALID_REMOVE_TRACK_NUMBER",T3="INVALID_REPLACE_TRACK_NO_TRACK",x3="REPEAT_JOIN",tp="CLIENT_DESTROYED",I3="START_MIX_TRANSCODE_FAILED",w3="STOP_MIX_TRANSCODE_FAILED",C3="MIX_TRANSCODE_NOT_STARTED",E3="CANNOT_LESS_THAN_ZERO",R3="MIX_PARAMS_VIDEO_FRAMERATE",A3="MIX_PARAMS_VIDEO_GOP",P3="MIX_PARAMS_AUDIO_BITRATE",D3="MIX_PARAMS_USER_Z_ORDER",O3="MIX_PARAMS_NOT_SELF",L3="MIX_PARAMS_USER_STREAM",M3="INVALID_ELEMENT_ID",N3="INVALID_ELEMENT_ID_TYPE",np="PLAY_FAILED",U3="INVALID_CREATE_STREAM_SOURCE",V3="INVALID_CREATE_STREAM_SCREEN",j3="INVALID_CREATE_STREAM_AUDIO",B3="INVALID_CREATE_STREAM_SCREEN_AUDIO",mS="NOT_SUPPORTED_HTTP",vS="NOT_SUPPORTED_WEBRTC",F3="NOT_SUPPORTED_PROFILE",gS="NOT_SUPPORTED_H264ENCODE",_S="NOT_SUPPORTED_H264DECODE",rp="NOT_SUPPORTED_TRACK",H3="NOT_SUPPORTED_SWITCH_DEVICE",G3="NOT_SUPPORTED_CAPTURE",z3="NOT_SUPPORTED_AUX",W3="MICROPHONE_NOT_FOUND",J3="CAMERA_NOT_FOUND",yS="SIGNAL_RESPONSE_FAILED",q3="CATCH_HANDLER_ERROR",K3="API_NOT_EXIST",X3="CONNECTION_CLOSED",Q3="SUBSCRIBE_ALL_FALSE",bS="SEI_NOT_SUPPORT",Y3="SEI_DISABLED",$3="SEI_EMPTY",Z3="SEI_OVERSIZE",e4="SEI_BEFORE_PUBLISH",t4="SEI_NOT_VIDEO",n4="CALL_FREQUENCY_LIMIT",r4="CONNECTION_ABORTED",ip="API_CALL_ABORTED",i4="DUPLICATE_AUX",vi={AVOID_REPEATED_CALL:function(e){return"previous ".concat(e.name,"() is ongoing, please avoid repeated calls.")},INVALID_PARAMETER_REQUIRED:function(e){var t=e.key,n=e.rule,i=e.fnName,r=e.value;return"'".concat(t||n.name,"' is a required param when calling ").concat(i,"(), received: ").concat(r,".")},INVALID_PARAMETER_TYPE:function(e){var t=e.key,n=e.rule,i=e.fnName,r=e.value,o="".concat(t||n.name),c="";return c=Array.isArray(n.type)?n.type.join("|"):n.type,"'".concat(o,"' must be type of ").concat(c," when calling ").concat(i,"(), received type: ").concat(bi(r),".")},INVALID_PARAMETER_EMPTY:function(e){var t=e.key,n=e.rule,i=e.fnName,r=e.value;return"'".concat(t||n.name,"' cannot be '").concat(r,"' when calling ").concat(i,"().")},INVALID_PARAMETER_INSTANCE:function(e){var t=e.key,n=e.rule,i=e.fnName,r=e.value,o="".concat(t||n.name),c="".concat(n.instanceOf.name||n.instanceOf);return"'".concat(o,"' must be instanceof ").concat(c," when calling ").concat(i,"(), received type: ").concat(bi(r),".")},INVALID_PARAMETER_RANGE:function(e){var t=e.key,n=e.rule,i=e.fnName,r=e.value;return"'".concat(t||n.name,"' must be one of ").concat(n.values.join("|")," when calling ").concat(i,"(), received: ").concat(r,".")},API_CALL_TIMEOUT:function(e){return"".concat(e.commandDesc||e.command," timeout observed.")},SIGNAL_CHANNEL_RECONNECTION_FAILED:"signal channel reconnection failed, please check your network.",SIGNAL_CHANNEL_SETUP_FAILED:function(e){return"SignalChannel setup failure: (errorCode: ".concat(e.errorCode,", errorMsg: ").concat(e.errorMsg," }).")},ERROR_MESSAGE:function(e){var t="".concat(e.type," failed");return e.message&&(t="".concat(t,": ").concat(e.message,".")),t},EXCHANGE_SDP_TIMEOUT:"exchange sdp timeout.",DOWNLINK_RECONNECTION_FAILED:"downlink reconnection failed, please check your network and re-join room.",EXCHANGE_SDP_FAILED:function(e){return"exchange sdp failed ".concat(e.errMsg,".")},UPDATE_OFFER_TIMEOUT:"update offer timeout observed.",UPLINK_RECONNECTION_FAILED:"uplink reconnection failed, please check your network and publish again.",INVALID_RECORDID:"recordId must be an integer number.",INVALID_PURE_AUDIO:"pureAudioPushMode must be 1 or 2.",INVALID_STREAMID:"streamId must be a sting literal within 64 bytes, and not be empty.",INVALID_USER_DEFINE_RECORDID:"userDefineRecordId must be a sting literal contains (a-zA-Z),(0-9), underline and hyphen, within 64 bytes, and not be empty.",INVALID_USER_DEFINE_PUSH_ARGS:"userDefinePushArgs must be a sting literal within 256 bytes, and not be empty.",INVALID_PROXY:'proxy server url must start with "wss://".',INVALID_JOIN:"duplicate join() called.",INVALID_ROOMID_STRING:function(e){return"'".concat(e,"' must be validate string when useStringRoomId is true.")},INVALID_ROOMID_INTEGER:function(e){return"'".concat(e,"' must be an integer between [1, 4294967294] when useStringRoomId is false.")},INVALID_SIGNAL_CHANNEL:"SignalChannel is not ready yet.",JOIN_ROOM_TIMEOUT:"join room timeout.",JOIN_ROOM_FAILED:function(e){var t=e.error,n=e.code;return"Failed to join room - ".concat(t," code: ").concat(n)},REJOIN_ROOM_FAILED:function(e){return"reJoin room: ".concat(e.roomId," failed, please check your network.")},INVALID_DESTROY:"please call leave() before destroy().",INVALID_PUBLISH:"please call join() before publish().",INVALID_UNPUBLISH:"stream has not been published yet.",INVALID_AUDIENCE:"no permission to publish() under live/".concat(Zi,', please call switchRole("').concat(Tr,'") firstly before publish().'),INVALID_INITIALIZE:"cannot publish stream because stream is not initialized, is switching device, or has been closed.",INVALID_DUPLICATE_PUBLISHING:function(e){return"duplicate ".concat(e," stream publishing, please unpublish your prev ").concat(e," stream and then re-publish.")},INVALID_SUBSCRIBE_UNDEFINED:"stream is undefined or null.",INVALID_SUBSCRIBE_LOCAL:"stream cannot be LocalStream.",INVALID_REMOTE_STREAM:"remoteStream does not exist because it has been unpublished by remote peer.",SUBSCRIBE_FAILED:function(e){var t=e.message,n=e.stream;return"failed to subscribe ".concat(n.getUserId()," ").concat(n.getType()," stream, reason: ").concat(t,".")},INVALID_ROLE:"switchRole can only be called in live mode.",INVALID_PARAMETER_SWITCH_ROLE:"role could only be set to a value as ".concat(Tr," or ").concat(Zi,"."),INVALID_OPERATION_SWITCH_ROLE:"please call join() before switchRole().",SWITCH_ROLE_TIMEOUT:"switchRole timeout.",SWITCH_ROLE_FAILED:function(e){return"switchRole failed, errCode: ".concat(e.code," errMsg: ").concat(e.message,".")},CLIENT_BANNED:function(e){return"client was banned because of "+e.message+"."},INVALID_OPERATION_START_PUBLISH_CDN:"please call startPublishCDNStream() before client join the room or after client join the room and successfully publish the local stream.",INVALID_OPERATION_STOP_PUBLISH_CDN:"please call startPublishCDNStream() before stopPublishCDNStream().",START_PUBLISH_CDN_FAILED:function(e){return"startPublishCDNStream failed, errMsg: ".concat(e.message,".")},STOP_PUBLISH_CDN_FAILED:function(e){return"stopPublishCDNStream failed, errMsg: ".concat(e.message,".")},INVALID_STREAM_ID:function(e){return"'".concat(e,"' can only consist of uppercase and lowercase english letters (a-zA-Z), numbers (0-9), hyphens and underscores.")},START_MIX_TRANSCODE:"please call startMixTranscode() after join().",STOP_MIX_TRANSCODE:"please call stopMixTranscode() after startMixTranscode().",INVALID_AUDIO_VOLUME:"interval must be a number.",ENABLE_SMALL_STREAM_PUBLISHED:"Cannot enable small stream after localStream published.",DISABLE_SMALL_STREAM_PUBLISHED:"Cannot disable small stream after localStream published.",NOT_SUPPORTED_SMALL_STREAM:"your browser does not support opening small stream.",INVALID_SMALL_STREAM_PROFILE:"small stream profile is invalid.",INVALID_PARAMETER_REMOTE_STREAM:"remoteStream is invalid.",INVALID_OPERATION_CHANGE_SMALL:"cannot switch to the small stream without subscribing to the video of remoteStream.",REMOTE_NOT_PUBLISH_SMALL_STREAM:"remote peer does not publish small stream.",INVALID_SWITCH_DEVICE:"cannot switch device on current stream.",INVALID_SWITCH_DEVICE_PUBLISHING:"cannot switch device when publishing localStream.",INVALID_REPLACE_TRACK:"cannot replace track when publishing localStream.",INVALID_INITIALIZE_LOCAL_STREAM:"local stream has not initialized yet.",INVALID_ADD_TRACK_REPETITIVE:"previous addTrack is ongoing, please avoid repetitive execution.",INVALID_ADD_TRACK_REMOVING:"cannot add track when a track is removing.",INVALID_ADD_TRACK_PUBLISHING:"cannot add track when publishing localStream.",INVALID_STREAM_INITIALIZED:"your local stream haven't been initialized yet.",INVALID_ADD_TRACK_NUMBER:"a Stream has at most one audio track and one video track.",INVALID_REMOVE_AUDIO_TRACK:"remove audio track is not supported on your browser.",INVALID_REMOVE_AUDIO_ADDING:"cannot remove track when a track is adding.",INVALID_REMOVE_AUDIO_ON:"previous removeTrack is ongoing, please avoid repetitive execution.",INVALID_REMOVE_TRACK_PUBLISHING:"cannot remove track when publishing localStream.",INVALID_REMOVE_TRACK_NOT_PUBLISHING:"the track to be removed is not being publishing.",INVALID_REMOVE_TRACK_NUMBER:"remove the only video track is not supported, please use replaceTrack or muteVideo.",INVALID_REPLACE_TRACK_NO_TRACK:function(e){return"cannot replace ".concat(e.kind," track because stream has not ").concat(e.kind," track")},START_MIX_TRANSCODE_FAILED:function(e){return"startMixTranscode failed, errMsg: ".concat(e.message,".")},STOP_MIX_TRANSCODE_FAILED:function(e){return"stopMixTranscode failed, errMsg: ".concat(e.message,".")},MIX_TRANSCODE_NOT_STARTED:"mixTranscode has not been started.",CANNOT_LESS_THAN_ZERO:function(e){var t=e.key,n=e.rule,i=e.fnName;return e.value,"'".concat(t||n.name,"' cannot be less than 0 when calling ").concat(i,"().")},MIX_PARAMS_VIDEO_FRAMERATE:"'config.videoFramerate' should be an integer between 0 and 30, excluding 0.",MIX_PARAMS_VIDEO_GOP:"'config.videoGOP' should be an integer between 1 and 8.",MIX_PARAMS_AUDIO_BITRATE:"'config.audioBitrate' should be an integer between 32 and 192.",MIX_PARAMS_USER_Z_ORDER:function(e){return"'".concat(e,"' is required and must be between 1 and 15.")},MIX_PARAMS_NOT_SELF:"'config.mixUsers' must contain self.",MIX_PARAMS_USER_STREAM:"'config.videoWidth' and 'config.videoHeight' of output stream should be contain all mix stream.",INVALID_PLAY:"duplicate play() call observed, please stop() firstly.",INVALID_ELEMENT_ID:function(e){var t=e.key,n=e.fnName;return"'".concat(t,"' is not found in the document object when calling ").concat(n,"().")},INVALID_ELEMENT_ID_TYPE:function(e){var t=e.key,n=e.fnName,i=e.type;return"the element corresponding to '".concat(t,"' must be instanceof HTMLDivElement when calling ").concat(n,"(), received: ").concat(i,".")},PLAY_FAILED:function(e){return"".concat(e.media," play failed\uFF0Cbrowser exception: ").concat(e.error.toString())},INVALID_USERID:"userId cannot be all spaces.",INVALID_CREATE_STREAM_SOURCE:"LocalStream must be created by createStream() with either audio/video or audioSource/videoSource, but can not be mixed with audio/video and audioSource/videoSource.",INVALID_CREATE_STREAM_SCREEN:"screen/video cannot be both true.",INVALID_CREATE_STREAM_AUDIO:"audio/screenAudio cannot be both true.",INVALID_CREATE_STREAM_SCREEN_AUDIO:"when screen is true, screenAudio can be configured.",NOT_SUPPORTED_HTTP:"http protocol does not support the ability to capture and publish streams, please use the https protocol.",NOT_SUPPORTED_WEBRTC:"your browser or environment does not support full WebRTC capabilities.",NOT_SUPPORTED_PROFILE:"your browser does not support setVideoProfile.",NOT_SUPPORTED_MEDIA:"your browser or environment does not support navigator.mediaDevices.",NOT_SUPPORTED_H264ENCODE:"your device does not support H.264 encoding.",NOT_SUPPORTED_H264DECODE:"your device does not support H.264 decoding.",NOT_SUPPORTED_TRACK:function(e){return"".concat(e,"Track is not supported on your browser.")},NOT_SUPPORTED_SWITCH_DEVICE:"switchDevice is not supported on your browser.",NOT_SUPPORTED_CAPTURE:"Your browser or environment does not support screen sharing, please check whether the browser version.",MICROPHONE_NOT_FOUND:"no microphone detected, please check your microphone and the configuration on TRTC.createStream.",CAMERA_NOT_FOUND:"no camera detected, please check your camera and the configuration on TRTC.createStream.",SIGNAL_RESPONSE_FAILED:function(e){return"".concat(e.signalResponse," failed, response code is ").concat(e.code," , errMsg: ").concat(e.message,".")},CATCH_HANDLER_ERROR:function(e){var t=e.name,n=e.event;return"an error was caught on ".concat(t,".on('").concat(n,"', handler), please check your code on 'handler'.")},API_NOT_EXIST:function(e){var t=e.name;return"experimental api ".concat(t," does not exist.")},REPEAT_JOIN:function(e){return"[".concat(e,"] is calling client.join api or has already joined room, please avoid repeated join.")},CONNECTION_CLOSED:"remoteStream has been unsubscribed or unpublished by remote user.",SUBSCRIBE_ALL_FALSE:"cannot subscribe when both audio & video are false, use client.unsubscribe() instead",CLIENT_DESTROYED:function(e){var t=e.funName;return"failed to call ".concat(t,"() because client was destroyed.")},SEI_NOT_SUPPORT:function(e){return"not support to sendSEIMessage".concat(e===!1?" without using h264 codec":"")},SEI_DISABLED:"SEI is disabled, to enable SEI: TRTC.createClient({ enableSEI: true })",SEI_EMPTY:"buffer cannot be empty",SEI_OVERSIZE:function(e){return"buffer size(".concat(e,") is over 1000 Bytes")},SEI_BEFORE_PUBLISH:"please call sendSEIMessage() after publish() success",SEI_NOT_VIDEO:"cannot send sei when localStream has not video.",CALL_FREQUENCY_LIMIT:function(e){var t=e.isSize,n=e.name,i=e.timesInSecond,r=e.maxSizeInSecond;return"api ".concat(n," call ").concat(t?"size":"times"," is over ").concat(t?r+" bytes":i," in a second.")},CONNECTION_ABORTED:function(e){return"connection aborted due to: "+e},API_CALL_ABORTED:function(e){return e.message.includes("REMOTE_STREAM_NOT_EXIST")?"Subscribe ".concat(e.stream.getUserId()," ").concat(e.stream.getType()," stream aborted, reason: remote user ").concat(e.stream.getUserId()," unpublished stream."):"API aborted, reason: ".concat(e.message)},DUPLICATE_AUX:"only one auxiliary stream can be published in a room.",NOT_SUPPORTED_AUX:"publish auxiliary stream is not supported on your browser."},SS=re,a4=ue,o4=zt,s4=Au.trim,c4=pe("".charAt),Yu=SS.parseFloat,kS=SS.Symbol,TS=kS&&kS.iterator,xS=1/Yu(`
|
|
44
|
+
\v\f\r \xA0\u1680\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF-0`)!=-1/0||TS&&!a4(function(){Yu(Object(TS))})?function(e){var t=s4(o4(e)),n=Yu(t);return n===0&&c4(t,0)=="-"?-0:n}:Yu;Le({global:!0,forced:parseFloat!=xS},{parseFloat:xS});var Ce=window.navigator&&window.navigator.userAgent||"",IS=/AppleWebKit\/([\d.]+)/i.exec(Ce);IS&&parseFloat(IS.pop());var ap=/iPad/i.test(Ce),wS=navigator.maxTouchPoints&&navigator.maxTouchPoints>2&&/Macintosh/.test(Ce),op=/iPhone/i.test(Ce)&&!ap,u4=/iPod/i.test(Ce),gi=op||ap||u4||wS,ta=/Android/i.test(Ce);ta&&function(){var e=Ce.match(/Android (\d+)(?:\.(\d+))?(?:\.(\d+))*/i);if(!e)return null;var t=e[1]&&parseFloat(e[1]),n=e[2]&&parseFloat(e[2]);t&&n&&parseFloat(e[1]+"."+e[2])}(),ta&&/webkit/i.test(Ce);var Vn=/Firefox/i.test(Ce),CS=Vn&&function(){var e=Ce.match(/Firefox\/(\d+)/);return e&&e[1]?parseFloat(e[1]):null}(),$u=/Edge\//i.test(Ce),l4=$u&&function(){var e=Ce.match(/Edge\/(\d+)/i);if(e&&e[1])return e[1]}(),Zu=/Edg\//i.test(Ce),ES=Zu&&function(){var e=Ce.match(/Edg\/(\d+)/);return e&&e[1]?parseFloat(e[1]):null}(),sp=/SogouMobileBrowser\//i.test(Ce),d4=sp&&function(){var e=Ce.match(/SogouMobileBrowser\/(\d+)/);return e&&e[1]?parseFloat(e[1]):null}(),cp=/MetaSr\s/i.test(Ce),h4=cp&&function(){var e=Ce.match(/MetaSr(\s\d+(\.\d+)+)/);return e&&e[1]?parseFloat(e[1]):null}(),Nr=/TBS\/\d+/i.test(Ce),f4=Nr&&function(){var e=Ce.match(/TBS\/(\d+)/i);if(e&&e[1])return e[1]}(),up=/XWEB\/\d+/i.test(Ce),p4=up&&function(){var e=Ce.match(/XWEB\/(\d+)/i);if(e&&e[1])return e[1]}();/MSIE\s8\.0/.test(Ce),/MSIE\/\d+/i.test(Ce)&&function(){var e=/MSIE\s(\d+)\.\d/.exec(Ce),t=e&&parseFloat(e[1]);!t&&/Trident\/7.0/i.test(Ce)&&/rv:11.0/.test(Ce)&&(t=11)}();var lp=/(micromessenger|webbrowser)/i.test(Ce),m4=lp&&function(){var e=Ce.match(/MicroMessenger\/(\d+)/i);if(e&&e[1])return e[1]}(),dp=!Nr&&/MQQBrowser\/\d+/i.test(Ce)&&/COVC\/\d+/i.test(Ce),hp=!Nr&&/MQQBrowser\/\d+/i.test(Ce)&&!/COVC\/\d+/i.test(Ce),RS=(hp||dp)&&function(){var e=Ce.match(/ MQQBrowser\/([\d.]+)/);return e&&e[1]?e[1]:null}(),fp=!Nr&&/ QQBrowser\/\d+/i.test(Ce),v4=fp&&function(){var e=Ce.match(/ QQBrowser\/([\d.]+)/);return e&&e[1]?e[1]:null}(),pp=!Nr&&/QQBrowserLite\/\d+/i.test(Ce),g4=pp&&function(){var e=Ce.match(/QQBrowserLite\/([\d.]+)/);return e&&e[1]?e[1]:null}(),mp=!Nr&&/MQBHD\/\d+/i.test(Ce),_4=mp&&function(){var e=Ce.match(/MQBHD\/([\d.]+)/);return e&&e[1]?e[1]:null}(),AS=/Windows/i.test(Ce),ec=!gi&&/MAC OS X/i.test(Ce),PS=!ta&&/Linux/i.test(Ce);/MicroMessenger/i.test(Ce);var y4=/UCBrowser/i.test(Ce);/Electron/i.test(Ce);var DS,el,vp=/MiuiBrowser/i.test(Ce),b4=vp&&function(){var e=Ce.match(/MiuiBrowser\/([\d.]+)/);return e&&e[1]?e[1]:null}(),gp=/HuaweiBrowser/i.test(Ce),_p=/Huawei/i.test(Ce),S4=gp&&function(){var e=Ce.match(/HuaweiBrowser\/([\d.]+)/);return e&&e[1]?e[1]:null}(),yp=/SamsungBrowser/i.test(Ce),k4=yp&&function(){var e=Ce.match(/SamsungBrowser\/([\d.]+)/);return e&&e[1]?e[1]:null}(),tl=/HeyTapBrowser/i.test(Ce),T4=tl&&function(){var e=Ce.match(/HeyTapBrowser\/([\d.]+)/);return e&&e[1]?e[1]:null}(),nl=/VivoBrowser/i.test(Ce),x4=nl&&function(){var e=Ce.match(/VivoBrowser\/([\d.]+)/);return e&&e[1]?e[1]:null}(),lo=function(){var e=Ce.match(/Chrome\/(\d+)/);return e&&e[1]?Number(e[1]):null},I4=/Chrome/i.test(Ce),rl=!$u&&!cp&&!sp&&!Nr&&!up&&!Zu&&!fp&&!vp&&!gp&&!yp&&!tl&&!nl&&/Chrome/i.test(Ce),bp=rl&&lo(),w4=rl&&function(){var e=Ce.match(/Chrome\/([\d.]+)/);return e&&e[1]?e[1]:null}(),na=!I4&&!hp&&!dp&&!pp&&!mp&&/Safari/i.test(Ce),Sp=function(){if(na){var e=Ce.match(/Version\/([\d.]+)/);if(e&&e[1])return e[1]}return""}(),C4=/Android.*(wv|.0.0.0)/.test(Ce),_i=function(){if(wS)return Sp;if(gi){var e=Ce.match(/OS (\d+)_(\d+)/i);if(e&&e[1]){var t=e[1];return e[2]&&(t+=".".concat(e[2])),t}}return""}(),OS=Number(_i.split(".")[0]),il=Sp==="15.1",al=_i==="15.1",E4=(DS=Number(_i.split(".")[0]))===14||DS===13,ra=location.protocol==="file:"||location.hostname==="localhost"||location.hostname==="127.0.0.1",ia=function(){if(ge(el))try{el=window.localStorage}catch(e){_e.warn(e),el=!1}return el},kp=new Map([[Vn,["Firefox",CS]],[Zu,["Edg",ES]],[rl,["Chrome",w4]],[na,["Safari",Sp]],[Nr,["TBS",f4]],[up,["XWEB",p4]],[lp&&op,["WeChat",m4]],[fp,["QQ(Win)",v4]],[hp,["QQ(Mobile)",RS]],[dp,["QQ(Mobile X5)",RS]],[pp,["QQ(Mac)",g4]],[mp,["QQ(iPad)",_4]],[vp,["MI",b4]],[gp,["HW",S4]],[yp,["Samsung",k4]],[tl,["OPPO",T4]],[nl,["VIVO",x4]],[$u,["EDGE",l4]],[sp,["SogouMobile",d4]],[cp,["Sogou",h4]]]);function aa(){var e="unknown",t="unknown";return kp.get(!0)&&(e=kp.get(!0)[0],t=kp.get(!0)[1]),{name:e,version:t}}var LS=function(e,t){return t?co+"/"+e+"/"+t:co+"/"+e+"/index.html"},R4=function(){if(!ia())return!1;var e=localStorage.getItem($f);e&&!function(t){var n=t.saveTime&&new Date().getTime()-t.saveTime>=Kb,i=!t.saveVersion||t.saveVersion!==Gi;return n||i}(JSON.parse(e))||(_e.info("init debug info"),function(){var t=new XMLHttpRequest;if(t.open("GET","https://web.sdk.qcloud.com/trtc/webrtc/download/error-message/0.0.3/script.js",!1),t.send(null),t.readyState===4&&t.status===200){var n=document.createElement("script");n.type="text/javascript",n.text=t.responseText,document.body.appendChild(n),localStorage.setItem($f,JSON.stringify({message:t.responseText,saveTime:new Date().getTime(),saveVersion:Gi})),document.body.removeChild(n)}}())};function ae(e){var t=e.key,n=e.data,i=e.link,r=e.addDocLink,o=r===void 0||r,c="",a="",s="";ln(vi[t])?c=vi[t](n):Bt(vi[t])&&(c=vi[t]);var l=function(){if(window.TRTC_ERROR_INFO&&window.TRTC_ERROR_LINK)return{TRTC_ERROR_INFO:window.TRTC_ERROR_INFO,TRTC_ERROR_LINK:window.TRTC_ERROR_LINK};var x=localStorage.getItem($f);if(x){x=JSON.parse(x);var E=document.createElement("script");E.type="text/javascript",E.text=x.message,document.body.appendChild(E);var I=window.TRTC_ERROR_INFO,m=window.TRTC_ERROR_LINK;return document.body.removeChild(E),{TRTC_ERROR_INFO:I,TRTC_ERROR_LINK:m}}return{}}(),u=l.TRTC_ERROR_INFO,f=l.TRTC_ERROR_LINK;i?s="".concat(i.className,".html#").concat(i.fnName):f&&f[t]&&(ln(f[t])?s=f[t](n):Bt(f[t])&&(s=f[t]));var S=c;return oa()&&(u&&u[t]&&(ln(u[t])?a=u[t](n):Bt(u[t])&&(a=u[t])),a&&(S=o?a+`
|
|
45
|
+
\u8BF7\u67E5\u770B\u6587\u6863: `+LS("zh-cn",s)+`
|
|
46
46
|
|
|
47
47
|
`:a+`
|
|
48
48
|
|
|
49
|
-
`,
|
|
50
|
-
Refer to: `+
|
|
51
|
-
`),
|
|
49
|
+
`,S+=c)),o&&(S+=`
|
|
50
|
+
Refer to: `+LS("en",s)+`
|
|
51
|
+
`),S}var MS=function(){return function(e){var t=window.location.search.match(new RegExp("(\\?|&)"+e+"=([^&]*)(&|$)"));return t?decodeURIComponent(t[2]):""}("trtc_env")},NS=function(e){return(e=Number(e))>0&&e<14e8},ol=function(e,t){var n;n=Ks?Ks.includes("http")?Ks:"https://"+Ks:NS(e)?"https://apisgp.my-imcloud.com":"https://yun.tim.qq.com";var i=Math.floor(Math.random()*Math.pow(2,31));return"".concat(n,"/v5/AVQualityReportSvc/C2S?random=").concat(i,"&sdkappid=").concat(e,"&cmdtype=").concat(t)};function Tp(){var e=navigator.userAgent,t=navigator.connection,n=e.match(/NetType\/\w+/)?e.match(/NetType\/\w+/)[0]:"";(n=n.toLowerCase().replace("nettype/",""))==="3gnet"&&(n="3g");var i=t&&t.type&&t.type.toLowerCase(),r=t&&t.effectiveType&&t.effectiveType.toLowerCase();r==="slow-2"&&(r="2g");var o=n||"unknown";if(i)switch(i){case"cellular":case"wimax":o=r||"unknown";break;case"wifi":o="wifi";break;case"ethernet":o="wired";break;case"none":case"other":case"unknown":o="unknown"}return o}var yi=function(e){if(!e||G(e)!=="object"||Object.prototype.toString.call(e)!="[object Object]")return!1;var t=Object.getPrototypeOf(e);if(t===null)return!0;var n=Object.prototype.hasOwnProperty.call(t,"constructor")&&t.constructor;return typeof n=="function"&&n instanceof n&&Function.prototype.toString.call(n)===Function.prototype.toString.call(Object)};function sl(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:1,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:1;return e<=1?n:sl(e-1,n,t+n)}function xp(e){var t=Math.round(e/2)+1;return t>6?13e3:1e3*sl(t)}var ln=function(e){return typeof e=="function"},ge=function(e){return e===void 0},Bt=function(e){return typeof e=="string"},tr=function(e){return typeof e=="number"},nr=function(e){return typeof e=="boolean"},US=function(e){return bi(e)==="object"},ho=function(e){return bi(e)==="array"},VS=function(e){return bi(e)==="MediaStreamTrack".toLowerCase()};function bi(e){return Reflect.apply(Object.prototype.toString,e,[]).replace(/^\[object\s(\w+)\]$/,"$1").toLowerCase()}function jS(e){var t={};return t.urls="turn:".concat(e.url),ge(e.username)||ge(e.credential)||(t.username=e.username,t.credential=e.credential,t.credentialType="password",ge(e.credentialType)||(t.credentialType=e.credentialType)),t}function Ct(){return performance&&performance.now?Math.floor(performance.now()):Date.now()}function Ip(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"big";if(!Bt(e))return 0;var n=e.split(".");return t==="big"?(Number(n[0])<<24|Number(n[1])<<16|Number(n[2])<<8|Number(n[3]))>>>0:(Number(n[3])<<24|Number(n[2])<<16|Number(n[1])<<8|Number(n[0]))>>>0}var wp,Cp,oa=function(){var e=navigator.language||navigator.userLanguage;return(e=e.substr(0,2))==="zh"},BS=(wp=!1,Cp=document.visibilityState,function(){document.visibilityState!==Cp&&_e.info("visibility change: ".concat(document.visibilityState)),wp||(document.addEventListener("visibilitychange",function(){_e.info("visibility change: "+document.visibilityState),Cp=document.visibilityState}),wp=!0)});window.AudioContext=window.AudioContext||window.webkitAudioContext||window.mozAudioContext;var FS=function(){return new window.AudioContext},HS=function(){var e;return function(){return e||(e=new window.AudioContext,e.onstatechange=function(){_e.info("gain context state: ".concat(e.state)),e.state==="suspended"?(e.resume(),document.addEventListener("click",e.resume)):e.state==="interrupted"?e.resume():document.removeEventListener("click",e.resume)},e)}}(),A4=!!window.AudioWorkletNode,GS=function(e,t){var n=e.emit;return e.emit=function(){for(var i=arguments.length,r=new Array(i),o=0;o<i;o++)r[o]=arguments[o];try{n.apply(e,r)}catch(a){var c=ae({key:q3,data:{name:t,event:r[0]},addDocLink:!1});_e.warn(c+`
|
|
52
52
|
|
|
53
|
-
`+a.stack)}},e},
|
|
54
|
-
`)}),p);case 12:k.forEach(function(I){return I.uploaded=!0});case 13:s++,E.next=8;break;case 16:E.next=20;break;case 18:E.prev=18,E.t0=E.catch(5);case 20:x=c.filter(function(I){return!I.uploaded}),x.length>0&&(this.queue_=x.concat(this.queue_));case 22:case"end":return E.stop()}},i,this,[[5,18]])})),function(){return t.apply(this,arguments)})},{key:"uploadLogWithRetry",value:function(i,r){return rc({retryFunction:function(){return sl({url:al(r,_b),body:i,timeout:5e3})},settings:{retries:3,timeout:1e3},onError:function(o,c){c()}})()}},{key:"getPrefix",value:function(i){var r=new Date;return r.setTime(rn()),String.prototype.padStart?"[".concat(r.toTimeString().replace(/.*(\d{2}:\d{2}:\d{2}).*/,"$1"),":").concat(r.getMilliseconds().toString().padStart(3,"0"),"] <").concat($i[i],">"):"[".concat(r.toTimeString().replace(/.*(\d{2}:\d{2}:\d{2}).*/,"$1"),":").concat(r.getMilliseconds(),"] <").concat($i[i],">")}},{key:"getLogLevel",value:function(){return this.logLevel_}},{key:"setLogLevel",value:function(i){ge($i[i])||(this.logLevel_!==i&&this.info("setLogLevel ".concat(i)),this.logLevel_=i)}},{key:"enableUploadLog",value:function(){this.enableUploadLog_=!0}},{key:"disableUploadLog",value:function(){this.enableUploadLog_=!1}},{key:"log",value:function(i){var r=i.log,o=i.level,c=i.forAllJoinedClients,a=c===void 0||c,s=i.userId,l=i.sdkAppId;if(r="".concat(this.getPrefix(o)," ").concat(r),this.enableUploadLog_&&o>=this.logLevelToUpload_&&this.queue_.push(new L4({log:r,level:o,userId:s,sdkAppId:l,forAllJoinedClients:a})),!(o<this.logLevel_)){var u=$i[o]?$i[o].toLowerCase():"info";M4?console[u]("%cTRTC%c%s","padding: 1px 4px;border-radius: 3px;color: #fff;background: #1E88E5;","display: inline",r):console[u](r)}}},{key:"debug",value:function(i){this.log({log:i,level:Nn.DEBUG})}},{key:"info",value:function(i){this.log({log:i,level:Nn.INFO})}},{key:"warn",value:function(i){this.log({log:i,level:Nn.WARN})}},{key:"error",value:function(i){this.log({log:i,level:Nn.ERROR})}},{key:"createLogger",value:function(i){return new O4(i)}},{key:"checkURLParam",value:function(){var i=new URLSearchParams(location.search).get("logLevelToUpload");$i[i]&&(this.logLevelToUpload_=i)}}]),e}(),_e=new N4,JS=!0,U4=at,V4=Math.floor,KS=Number.isInteger||function(e){return!U4(e)&&isFinite(e)&&V4(e)===e};Oe({target:"Number",stat:!0},{isInteger:KS});var $p,j4=Oe,YS=pe,B4=be.f,F4=_r,XS=zt,H4=f0,G4=ht,z4=p0,QS=YS("".startsWith),W4=YS("".slice),q4=Math.min,$S=z4("startsWith");j4({target:"String",proto:!0,forced:!!($S||($p=B4(String.prototype,"startsWith"),!$p||$p.writable))&&!$S},{startsWith:function(e){var t=XS(G4(this));H4(e);var n=F4(q4(arguments.length>1?arguments[1]:void 0,t.length)),i=XS(e);return QS?QS(t,i,n):W4(t,n,n+i.length)===i}});var ZS=ye,J4=pe,K4=Ke,Y4=ue,Zp=au,X4=zd,Q4=qt,$4=Mt,Z4=_n,po=Object.assign,ek=Object.defineProperty,eU=J4([].concat),tk=!po||Y4(function(){if(ZS&&po({b:1},po(ek({},"a",{enumerable:!0,get:function(){ek(this,"b",{value:3,enumerable:!1})}}),{b:2})).b!==1)return!0;var e={},t={},n=Symbol(),i="abcdefghijklmnopqrst";return e[n]=7,i.split("").forEach(function(r){t[r]=r}),po({},e)[n]!=7||Zp(po({},t)).join("")!=i})?function(e,t){for(var n=$4(e),i=arguments.length,r=1,o=X4.f,c=Q4.f;i>r;)for(var a,s=Z4(arguments[r++]),l=o?eU(Zp(s),o(s)):Zp(s),u=l.length,p=0;u>p;)a=l[p++],ZS&&!K4(c,s,a)||(n[a]=s[a]);return n}:po,nk=tk;Oe({target:"Object",stat:!0,arity:2,forced:Object.assign!==nk},{assign:nk});var rk=pe,tU=Vt,nU=at,rU=kt,ik=Ba,iU=Me,ak=Function,aU=rk([].concat),oU=rk([].join),em={},sU=function(e,t,n){if(!rU(em,t)){for(var i=[],r=0;r<t;r++)i[r]="a["+r+"]";em[t]=ak("C,a","return new C("+oU(i,",")+")")}return em[t](e,n)},cU=iU?ak.bind:function(e){var t=tU(this),n=t.prototype,i=ik(arguments,1),r=function(){var o=aU(i,ik(arguments));return this instanceof r?sU(t,o.length,o):t.apply(e,o)};return nU(n)&&(r.prototype=n),r},ok=cU;Oe({target:"Function",proto:!0,forced:Function.bind!==ok},{bind:ok});var uU=Oe,lU=nn.findIndex,dU=cu,sk="findIndex",ck=!0;sk in[]&&Array(1).findIndex(function(){ck=!1}),uU({target:"Array",proto:!0,forced:ck},{findIndex:function(e){return lU(this,e,arguments.length>1?arguments[1]:void 0)}}),dU(sk);var hU=ye,uk=pe,fU=au,pU=yn,mU=uk(qt.f),vU=uk([].push),lk=function(e){return function(t){for(var n,i=pU(t),r=fU(i),o=r.length,c=0,a=[];o>c;)n=r[c++],hU&&!mU(i,n)||vU(a,e?[n,i[n]]:i[n]);return a}},gU={entries:lk(!0),values:lk(!1)}.values;Oe({target:"Object",stat:!0},{values:function(e){return gU(e)}});var dk=1,hk=5,tm=2,ic=3,nm=4,hl="DISCONNECTED",fk="CONNECTING",rm="RECONNECTING",ac="CONNECTED",jr={CLIENT_BANNED:9,CHANNEL_SETUP_RESULT:19,CHANNEL_RECONNECT_RESULT:514,JOIN_ROOM_RESULT:20,PEER_JOIN:4134,PEER_LEAVE:4135,STREAM_ADDED:16,STREAM_REMOVED:18,UPLINK_NETWORK_STATS:22,UPDATE_REMOTE_MUTE_STAT:23,PUBLISH_RESULT:4098,PUBLISH_STATE_CHANGE_RESULT:4112,UNPUBLISH_RESULT:4100,SUBSCRIBE_RESULT:4102,UNSUBSCRIBE_RESULT:4104,SUBSCRIBE_CHANGE_RESULT:4106,MUTE_RESULT:4108,UPDATE_OFFER_RESULT:4128,START_PUBLISH_TENCENT_CDN_RES:1286,STOP_PUBLISH_TENCENT_CDN_RES:1288,START_PUBLISH_GIVEN_CDN_RES:777,STOP_PUBLISH_GIVEN_CDN_RES:779,START_MIX_TRANSCODE_RES:781,STOP_MIX_TRANSCODE_RES:783,USER_LIST_RES:4137,SWITCH_ROLE_RES:4110,UPDATE_CONSTRAINT_CONFIG_RES:772},_U=[jr.UPDATE_REMOTE_MUTE_STAT,jr.UPLINK_NETWORK_STATS,jr.USER_LIST_RES,jr.MUTE_RESULT],mt={CLIENT_BANNED:"client-banned",CHANNEL_SETUP_RESULT:"channel-setup-result",CHANNEL_RECONNECT_RESULT:"channel-reconnect-result",JOIN_ROOM_RESULT:"join-room-result",PEER_JOIN:"peer-join",PEER_LEAVE:"peer-leave",STREAM_ADDED:"stream-added",STREAM_REMOVED:"stream-removed",UPLINK_NETWORK_STATS:"uplink-network-stats",UPDATE_REMOTE_MUTE_STAT:"update-remote-mute-stat",PUBLISH_RESULT:"publish-result",PUBLISH_STATE_CHANGE_RESULT:"publish-state-change-result",UNPUBLISH_RESULT:"unpublish-result",SUBSCRIBE_RESULT:"subscribe-result",SUBSCRIBE_CHANGE_RESULT:"subscribe-change-result",UNSUBSCRIBE_RESULT:"unsubscribe-result",UPDATE_OFFER_RESULT:"update-offer-result",START_PUBLISH_TENCENT_CDN_RES:"start-publish-tencent-cdn-res",STOP_PUBLISH_TENCENT_CDN_RES:"stop-publish-tencent-cdn-res",START_PUBLISH_GIVEN_CDN_RES:"start-publish-given-cdn-res",STOP_PUBLISH_GIVEN_CDN_RES:"stop-publish-given-cdn-res",START_MIX_TRANSCODE_RES:"start-mix-transcode-res",STOP_MIX_TRANSCODE_RES:"stop-mix-transcode-res",USER_LIST_RES:"user-list-res",SWITCH_ROLE_RES:"switch_role_res",MUTE_RESULT:"mute-result",UPDATE_CONSTRAINT_CONFIG_RES:"update-contraint-config-res"},yU="publish_change",bU="publish_state_change",SU="join",kU="leave",TU="quality_report",xU="mute_uplink",IU="publish",pk="unpublish",wU="subscribe",CU="unsubscribe",EU="subscribe_change",RU="start_publishing",AU="stop_publishing",PU="start_push_user_cdn",DU="stop_push_user_cdn",LU="start_mcu_mix",OU="stop_mcu_mix",MU="get_user_list",NU="change_role",UU="update_constraint_config",ee={INVALID_PARAMETER:4096,INVALID_OPERATION:4097,NOT_SUPPORTED:4098,DEVICE_NOT_FOUND:4099,INITIALIZE_FAILED:4100,SIGNAL_CHANNEL_SETUP_FAILED:16385,SIGNAL_CHANNEL_ERROR:16386,ICE_TRANSPORT_ERROR:16387,JOIN_ROOM_FAILED:16388,CREATE_OFFER_FAILED:16389,SIGNAL_CHANNEL_RECONNECTION_FAILED:16390,UPLINK_RECONNECTION_FAILED:16391,DOWNLINK_RECONNECTION_FAILED:16392,REMOTE_STREAM_NOT_EXIST:16400,CLIENT_BANNED:16448,SERVER_TIMEOUT:16449,SUBSCRIPTION_TIMEOUT:16450,PLAY_NOT_ALLOWED:16451,DEVICE_AUTO_RECOVER_FAILED:16452,START_PUBLISH_CDN_FAILED:16453,STOP_PUBLISH_CDN_FAILED:16454,START_MIX_TRANSCODE_FAILED:16455,STOP_MIX_TRANSCODE_FAILED:16456,NOT_SUPPORTED_H264:16457,SWITCH_ROLE_FAILED:16458,API_CALL_TIMEOUT:16459,SCHEDULE_FAILED:16460,API_CALL_ABORTED:16461,UNKNOWN:65535},ne=function(e){Et(n,e);var t=Rr(n);function n(i){var r,o=i.name,c=o===void 0?"RtcError":o,a=i.message,s=i.code,l=s===void 0?ee.UNKNOWN:s,u=i.extraCode,p=u===void 0?0:u,k=i.constraint;X(this,n);var x="<".concat(function(E){for(var I in ee)if(ee[I]===E)return I;return"UNKNOWN"}(l)," 0x").concat(l.toString(16),">");return(r=t.call(this,a+"".concat(k?" constraint: ".concat(k):"")+"".concat(a!=null&&a.includes(x)?"":" "+x))).code_=l,r.extraCode_=p,r.name=c,r.message_=a,k&&(r.constraint=k),r}return Ie(n,[{key:"getCode",value:function(){return this.code_}},{key:"getExtraCode",value:function(){return this.extraCode_}}]),n}(zo(Error)),mk=32768,vk=32769,gk=32770,_k=32771,VU=32772,jU=32773,BU=32774,FU=32775,yk=32777,HU=32778,im=32779,GU=32780,zU=32781,WU=32782,qU=32783,JU=32784,KU=32785,YU=32786,XU=32787,QU=32788,$U=32789,ZU=32790,eV=32791,tV=32792,nV=32793,rV=32794,iV=32795,aV=32796,oV=32797,sV=32798,cV=32799,uV=32800,lV=32801,dV=32802,hV=32803,fV=32804,oc=new Map,mn=function(e,t){var n=oc.get(e);n||(oc.set(e,[]),n=oc.get(e)),n.push(t)},pV=function(e){var t=oc.get(e),n=[];return t?(oc.delete(e),n=t.map(function(i){return{uint32_event_id:i.eventId,uint64_date:i.timestamp,str_userid:i.remoteUserId,str_event_json:i.eventDesc}})):n=[],n},mV=Object.prototype.hasOwnProperty;function Si(e){if(e==null)return!0;if(typeof e=="boolean")return!1;if(typeof e=="number")return e===0;if(typeof e=="string"||typeof e=="function"||Array.isArray(e))return e.length===0;if(e instanceof Error)return e.message==="";if(_i(e))switch(Object.prototype.toString.call(e)){case"[object File]":case"[object Map]":case"[object Set]":return e.size===0;case"[object Object]":for(var t in e)if(mV.call(e,t))return!1;return!0}return!1}var vV=function(){function e(){X(this,e);var t=ra(),n=t.name,i=t.version;this.roomIdMap_=new Map,this.configs_={sdkAppId:"",userId:"",version:Fi,env:Hu,browserVersion:n+i,ua:navigator.userAgent}}return Ie(e,[{key:"setConfig",value:function(t){var n=t.sdkAppId,i=t.env,r=t.userId,o=t.roomId;n!==this.configs_.sdkAppId&&(this.configs_.sdkAppId=String(n)),this.configs_.env=i,this.configs_.userId=r,this.roomIdMap_.set(r,String(o))}},{key:"logEvent",value:function(t){if(!ta){var n=q(q(q({},t),this.configs_),{},{userId:t.userId||this.configs_.userId});ge(n.code)&&(n.code=n.result==="failed"?ee.UNKNOWN:0),this.sendRequest(al(this.configs_.sdkAppId,BM),n)}}},{key:"logSuccessEvent",value:function(t){ta||(this.logEvent(q(q({},t),{},{result:"success",roomId:this.roomIdMap_.get(t.userId)})),this.configs_.env===Hu&&this.uploadEventToKibana(q(q({},t),{},{result:"success"})))}},{key:"logFailedEvent",value:function(t){if(!ta){var n=t.eventType,i=t.code,r=t.error,o=t.userId,c={roomId:this.roomIdMap_.get(o),userId:o,eventType:n,result:"failed",code:i||(r instanceof ne?r.getExtraCode()||r.getCode():ee.UNKNOWN)};this.logEvent(c),this.configs_.env===Hu&&this.uploadEventToKibana(q(q({},c),{},{error:r}))}}},{key:"uploadEventToKibana",value:function(t){var n="stat-".concat(t.eventType,"-").concat(t.result);t.eventType!=="delta-join"&&t.eventType!=="delta-leave"&&t.eventType!=="delta-publish"||(n="".concat(t.eventType,":").concat(t.delta)),this.uploadEvent({log:n,userId:t.userId}),t.result==="failed"&&(n="stat-".concat(t.eventType,"-").concat(t.result,"-").concat(t.code),this.uploadEvent({log:n,userId:t.userId,error:t.error}))}},{key:"uploadEvent",value:function(t){var n=t.log,i=t.userId,r=t.error,o={timestamp:qy(),sdkAppId:this.configs_.sdkAppId,userId:i||this.configs_.userId,version:this.configs_.version,log:n};r&&(o.errorInfo=r.message),this.sendRequest(al(this.configs_.sdkAppId,_b),o)}},{key:"sendRequest",value:function(t,n){var i=this;_e.getIsAbleToUpload()?sl({url:t,body:JSON.stringify(n)}).catch(function(){}):setTimeout(function(){i.sendRequest(t,n)},1e3)}}]),e}(),ke=new vV,gV=function(){function e(t){X(this,e),this.client_=t.client,this.sdkAppId_=t.sdkAppId,this.userId_=t.userId,this.userSig_=t.userSig,this.url_=t.url,this.backupUrl_=t.backupUrl;var n="?sdkAppId=".concat(encodeURIComponent(this.sdkAppId_),"&userId=").concat(encodeURIComponent(this.userId_),"&userSig=").concat(encodeURIComponent(this.userSig_),"&roomId=").concat(encodeURIComponent(t.roomId)),i=this.client_.getSystemResult();if(i&&i.detail){var r=i.detail,o=r.isH264EncodeSupported,c=r.isVp8EncodeSupported,a=r.isH264DecodeSupported,s=r.isVp8DecodeSupported;n+="&enc264=".concat(Number(o),"&dec264=").concat(Number(a),"&encVp8=").concat(Number(c),"&decVp8=").concat(Number(s))}t.signalDomainWhenUnifiedProxy&&(n+="&signalDomain=".concat(encodeURIComponent(t.signalDomainWhenUnifiedProxy))),this.urlWithParam_="".concat(this.url_).concat(n),this.backupUrlWithParam_="".concat(this.backupUrl_).concat(n),this.isConnected_=!1,this.isConnecting_=!1,this.socketInUse_=null,this.socket_=null,this.backupSocket_=null,this.backupTimer_=-1,this.signalInfo_={},this.currentState_=hl,this.reconnectionCount_=0,this.reconnectionTimer_=-1,this.lastMessageTime_=-1,this.seq_=0,this.log_=_e.createLogger({id:"ws|"+this.userId_,userId:this.userId_,sdkAppId:this.sdkAppId_}),this.emitter_=new bi}return Ie(e,[{key:"isOnline",get:function(){return this.currentState_===ac&&Date.now()-this.lastMessageTime_<12e3}},{key:"connect",value:function(){var t=this;return new Promise(function(n,i){t.log_.info("connect to url: ".concat(t.urlWithParam_)),t.emitConnectionStateChanged(fk),t.socket_=new WebSocket(t.urlWithParam_),t.bindSocket(t.socket_),t.backupTimer_=setTimeout(function(){t.isConnected_||(t.log_.info("trying to connect to backupUrl"),t.tryConnectBackup())},5e3);var r=setTimeout(function(){t.close(),i(new ne({code:ee.JOIN_ROOM_FAILED,message:"join room timeout"}))},1e4);t.once(ic,function(){clearTimeout(r),n()}),t.once(nm,function(o){clearTimeout(r),i(o)})})}},{key:"tryConnectBackup",value:function(){this.backupSocket_||(this.unbindAndCloseSocket(Xe),this.log_.debug("try to connect to url: ".concat(this.backupUrlWithParam_)),this.backupSocket_=new WebSocket(this.backupUrlWithParam_),this.bindSocket(this.backupSocket_))}},{key:"bindSocket",value:function(t){t.onopen=this.onopen.bind(this),t.onclose=this.onclose.bind(this),t.onerror=this.onerror.bind(this),t.onmessage=this.onmessage.bind(this)}},{key:"unbindSocket",value:function(t){t.onopen=function(){},t.onclose=function(){},t.onerror=function(){},t.onmessage=function(){}}},{key:"unbindAndCloseSocket",value:function(t){if(t===Xe){if(this.socket_){this.unbindSocket(this.socket_);try{this.socket_.close(1e3)}catch(n){}this.socket_=null}}else if(this.backupSocket_){this.unbindSocket(this.backupSocket_);try{this.backupSocket_.close(1e3)}catch(n){}this.backupSocket_=null}}},{key:"clearBackupTimer",value:function(){this.backupTimer_!==-1&&(clearTimeout(this.backupTimer_),this.backupTimer_=-1)}},{key:"clearReconnectionTimer",value:function(){this.reconnectionTimer_!==-1&&(clearTimeout(this.reconnectionTimer_),this.reconnectionTimer_=-1)}},{key:"onopen",value:function(t){if(!this.isConnected_){this.isConnected_=!0,this.isConnecting_=!1,this.isReconnecting_&&Si(this.signalInfo_)&&this.stopReconnection(),this.clearBackupTimer(),t.target===this.socket_?(this.unbindAndCloseSocket(Zn),this.socketInUse_=this.socket_):(this.unbindAndCloseSocket(Xe),this.socketInUse_=this.backupSocket_);var n=t.target.url;this.log_.info("websocket[".concat(n,"] is connected")),this.currentState_===fk?this.addSignalEvent(eV,"signal channel is connected"):this.currentState_===rm&&this.addSignalEvent(iV,"signal channel reconnect success"),this.emitConnectionStateChanged(ac),this.emitter_.emit(ic)}}},{key:"onclose",value:function(t){var n=t.target.url,i=t.target===this.socketInUse_;if(this.log_.info("websocket[".concat(n," InUse: ").concat(i,"] is closed with code: ").concat(t.code)),i&&(this.isConnected_=!1,this.emitConnectionStateChanged(hl),this.addSignalEvent(ZU,"signal channel is disconnected"),!t.wasClean||t.code!==1e3)){this.log_.warn("onclose code:".concat(t.code," reason:").concat(t.reason)),this.log_.warn("close current websocket and schedule a reconnect timeout"),this.socketInUse_.onclose=function(){},this.socketInUse_.close(4011);var r=this.socketInUse_===this.socket_;this.socket_=this.backupSocket_=this.socketInUse_=null,this.reconnect(r?Zn:Xe)}}},{key:"onerror",value:function(t){var n=t.target.url;if(this.log_.error("websocket[".concat(n,"] error observed")),this.isConnected_){if(t.target===this.socketInUse_){this.isConnected_=!1,this.unbindAndCloseSocket(Xe),this.unbindAndCloseSocket(Zn);var i=this.socketInUse_===this.socket_;this.socketInUse_=null,this.reconnect(i?Zn:Xe)}}else this.isReconnecting_||ke.logFailedEvent({userId:this.client_.getUserId(),eventType:Bf,code:ee.UNKNOWN}),t.target==this.socket_?(this.unbindAndCloseSocket(Xe),this.reconnect(Zn)):(this.unbindAndCloseSocket(Zn),this.reconnect(Xe));this.isConnecting_=!1,this.isConnected_=!1}},{key:"onmessage",value:function(t){if(this.isConnected_){this.lastMessageTime_=Date.now();var n=JSON.parse(t.data),i=n.cmd,r=n.data,o=Object.values(jr),c=Object.keys(jr)[o.indexOf(i)],a=mt[c];switch(_U.includes(i)||(this.log_.debug("received msg: ".concat(t.data)),this.log_.info("Received event: [ ".concat(a||"unknown cmd: "+i," ]"))),i){case jr.CHANNEL_SETUP_RESULT:if(n.code===0)this.signalInfo_.clientIp=r.clientIp,this.signalInfo_.signalIp=r.signalInnerIp,this.signalInfo_.tinyId=n.tinyId,r.svrTime&&function(l){Zh=l-new Date().getTime();var u=new Date;u.setTime(l),_e.info("baseTime from server: "+u+" offset: "+Zh)}(r.svrTime),this.log_.info("ChannelSetup Success"),ke.logSuccessEvent({userId:this.userId_,eventType:Bf}),this.emitter_.emit(dk,{signalInfo:this.signalInfo_});else{var s=new ne({code:ee.SIGNAL_CHANNEL_SETUP_FAILED,extraCode:n.code,message:ie({key:SN,data:{errorCode:n.code,errorMsg:n.message}})});this.log_.error("".concat(n.code,", ").concat(n.message)),this.close(),ke.logFailedEvent({userId:this.userId_,eventType:Bf,error:s}),this.emitter_.emit(hk,s)}break;case jr.JOIN_ROOM_RESULT:n.code===0&&(this.signalInfo_.relayIp=r.relayOuterIp,this.signalInfo_.relayInnerIp=r.relayInnerIp,this.signalInfo_.relayPort=r.relayPort,this.log_.info("signalIp:".concat(this.signalInfo_.signalIp," clientIp:").concat(this.signalInfo_.clientIp," relayIp: ").concat(this.signalInfo_.relayIp))),this.emitter_.emit(a,{data:n});break;case jr.CHANNEL_RECONNECT_RESULT:n.code===0?(this.log_.warn("reconnect success"),this.stopReconnection(),ke.logSuccessEvent({userId:this.userId_,eventType:Ob}),this.client_.syncUserList(),this.client_.checkConnectionsToReconnect()):(this.log_.warn("reconnect failed, ".concat(n.code," ").concat(n.message)),this.client_.reJoin());break;default:this.emitter_.emit(a,{data:n})}}}},{key:"addSignalEvent",value:function(t,n){mn(this.userId_,{eventId:t,eventDesc:n,timestamp:rn(),userId:this.userId_,tinyId:this.signalInfo_.tinyId})}},{key:"reconnect",value:function(){var t=this,n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:Xe;if(this.isConnecting_||this.reconnectionTimer_!==-1)this.log_.info("signal channel is reconnecting, ignoring current reconnection");else{if(Q.emit(WS,this.client_),this.reconnectionCount_>=jf){this.log_.warn("SDK has tried reconnect signal channel for ".concat(jf," times, but all failed. please check your network"));var i=new ne({code:ee.SIGNAL_CHANNEL_RECONNECTION_FAILED,message:ie({key:bN})});return ke.logFailedEvent({userId:this.client_.getUserId(),eventType:Ob,error:i}),this.addSignalEvent(aV,"signal channel reconnect fail"),void this.emitter_.emit(nm,i)}this.isConnecting_=!0,this.reconnectionCount_++,this.currentState_!==rm&&(this.emitConnectionStateChanged(rm),this.addSignalEvent(rV,"signal channel is reconnecting")),this.log_.warn("reconnecting to ".concat(n," signal channel [").concat(this.reconnectionCount_,"/").concat(jf,"]"));var r=this.getReconnectionUrl(n);n===Xe?(this.socket_=new WebSocket(r),this.bindSocket(this.socket_)):(this.backupSocket_=new WebSocket(r),this.bindSocket(this.backupSocket_));var o=kp(this.reconnectionCount_);this.reconnectionTimer_=setTimeout(function(){t.log_.warn("reconnect ".concat(n," signal channel timeout(").concat(o/1e3,"s), close and try again")),t.isConnecting_=!1,t.clearReconnectionTimer(),t.unbindAndCloseSocket(n),t.reconnect(n===Xe?Zn:Xe)},o)}}},{key:"isConnected",value:function(){return this.isConnected_}},{key:"isReconnecting_",get:function(){return this.reconnectionTimer_!==-1}},{key:"getReconnectionUrl",value:function(t){var n=t===Xe?this.urlWithParam_:this.backupUrlWithParam_;if(!Si(this.signalInfo_)&&n.indexOf("&rc=1")===-1){var i=this.client_.getRoomId(),r=this.client_.getUseStringRoomId();n+="&rc=1&relayInnerIp=".concat(this.signalInfo_.relayInnerIp,"&relayOuterIp=").concat(this.signalInfo_.relayIp,"&relayPort=").concat(this.signalInfo_.relayPort,"&roomId=").concat(i,"&useStringRoomId=").concat(r)}return n}},{key:"send",value:function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(this.isConnected_){var i={cmd:t,data:n,userId:this.userId_,tinyId:this.signalInfo_.tinyId,seq:++this.seq_};return this.socketInUse_.send(JSON.stringify(i)),i.seq}}},{key:"sendWaitForResponse",value:function(t){var n=this,i=t.command,r=t.data,o=t.timeout,c=o===void 0?5e3:o,a=t.responseCommand,s=t.commandDesc,l=t.enableLog,u=l===void 0||l;return new Promise(function(p,k){var x=setTimeout(function(){n.off(a,E);var m=new ne({code:ee.API_CALL_TIMEOUT,message:ie({key:yN,data:{commandDesc:s,command:i}})});u&&n.log_.warn(m),k(m)},c),E=function m(T){T.data.seq===I&&(clearTimeout(x),n.off(a,m),p(T))};n.on(a,E);var I=n.send(i,r)})}},{key:"sendWaitForResponseWithRetry",value:function(){var t=this,n=arguments.length<=0?void 0:arguments[0],i=n.commandDesc,r=n.command,o=n.retries,c=o===void 0?0:o,a=n.retryTimeout,s=a===void 0?0:a;return rc({retryFunction:this.sendWaitForResponse,onRetrying:function(l){t.log_.warn("".concat(i||r," timeout observed, retrying [").concat(l,"/").concat(c,"]"))},settings:{retries:c,timeout:s},context:this}).apply(void 0,arguments)}},{key:"getCurrentState",value:function(){return this.currentState_}},{key:"getSignalInfo",value:function(){return this.signalInfo_}},{key:"stopReconnection",value:function(){this.isReconnecting_&&(this.reconnectionCount_=0,this.clearReconnectionTimer())}},{key:"close",value:function(){this.log_.info("close SignalChannel"),this.clearBackupTimer(),this.stopReconnection(),this.signalInfo_={},this.isConnecting_=!1,this.isConnected_=!1,this.socketInUse_=null,this.unbindAndCloseSocket(Xe),this.unbindAndCloseSocket(Zn),this.emitConnectionStateChanged(hl)}},{key:"on",value:function(t,n,i){this.emitter_.on(t,n,i)}},{key:"removeListener",value:function(t,n,i){this.emitter_.removeListener(t,n,i)}},{key:"once",value:function(t,n,i){this.emitter_.once(t,n,i)}},{key:"off",value:function(t,n,i){this.emitter_.off(t,n,i)}},{key:"emitConnectionStateChanged",value:function(t){t!==this.currentState_&&(this.emitter_.emit(tm,{prevState:this.currentState_,state:t}),this.currentState_=t)}}]),e}(),_V=Oe,yV=nn.find,bV=cu,bk="find",Sk=!0;bk in[]&&Array(1).find(function(){Sk=!1}),_V({target:"Array",proto:!0,forced:Sk},{find:function(e){return yV(this,e,arguments.length>1?arguments[1]:void 0)}}),bV(bk);var nr={},kk={},am={exports:{}},Tk=am.exports={v:[{name:"version",reg:/^(\d*)$/}],o:[{name:"origin",reg:/^(\S*) (\d*) (\d*) (\S*) IP(\d) (\S*)/,names:["username","sessionId","sessionVersion","netType","ipVer","address"],format:"%s %s %d %s IP%d %s"}],s:[{name:"name"}],i:[{name:"description"}],u:[{name:"uri"}],e:[{name:"email"}],p:[{name:"phone"}],z:[{name:"timezones"}],r:[{name:"repeats"}],t:[{name:"timing",reg:/^(\d*) (\d*)/,names:["start","stop"],format:"%d %d"}],c:[{name:"connection",reg:/^IN IP(\d) (\S*)/,names:["version","ip"],format:"IN IP%d %s"}],b:[{push:"bandwidth",reg:/^(TIAS|AS|CT|RR|RS):(\d*)/,names:["type","limit"],format:"%s:%s"}],m:[{reg:/^(\w*) (\d*) ([\w/]*)(?: (.*))?/,names:["type","port","protocol","payloads"],format:"%s %d %s %s"}],a:[{push:"rtp",reg:/^rtpmap:(\d*) ([\w\-.]*)(?:\s*\/(\d*)(?:\s*\/(\S*))?)?/,names:["payload","codec","rate","encoding"],format:function(e){return e.encoding?"rtpmap:%d %s/%s/%s":e.rate?"rtpmap:%d %s/%s":"rtpmap:%d %s"}},{push:"fmtp",reg:/^fmtp:(\d*) ([\S| ]*)/,names:["payload","config"],format:"fmtp:%d %s"},{name:"control",reg:/^control:(.*)/,format:"control:%s"},{name:"rtcp",reg:/^rtcp:(\d*)(?: (\S*) IP(\d) (\S*))?/,names:["port","netType","ipVer","address"],format:function(e){return e.address!=null?"rtcp:%d %s IP%d %s":"rtcp:%d"}},{push:"rtcpFbTrrInt",reg:/^rtcp-fb:(\*|\d*) trr-int (\d*)/,names:["payload","value"],format:"rtcp-fb:%s trr-int %d"},{push:"rtcpFb",reg:/^rtcp-fb:(\*|\d*) ([\w-_]*)(?: ([\w-_]*))?/,names:["payload","type","subtype"],format:function(e){return e.subtype!=null?"rtcp-fb:%s %s %s":"rtcp-fb:%s %s"}},{push:"ext",reg:/^extmap:(\d+)(?:\/(\w+))?(?: (urn:ietf:params:rtp-hdrext:encrypt))? (\S*)(?: (\S*))?/,names:["value","direction","encrypt-uri","uri","config"],format:function(e){return"extmap:%d"+(e.direction?"/%s":"%v")+(e["encrypt-uri"]?" %s":"%v")+" %s"+(e.config?" %s":"")}},{name:"extmapAllowMixed",reg:/^(extmap-allow-mixed)/},{push:"crypto",reg:/^crypto:(\d*) ([\w_]*) (\S*)(?: (\S*))?/,names:["id","suite","config","sessionConfig"],format:function(e){return e.sessionConfig!=null?"crypto:%d %s %s %s":"crypto:%d %s %s"}},{name:"setup",reg:/^setup:(\w*)/,format:"setup:%s"},{name:"connectionType",reg:/^connection:(new|existing)/,format:"connection:%s"},{name:"mid",reg:/^mid:([^\s]*)/,format:"mid:%s"},{name:"msid",reg:/^msid:(.*)/,format:"msid:%s"},{name:"ptime",reg:/^ptime:(\d*(?:\.\d*)*)/,format:"ptime:%d"},{name:"maxptime",reg:/^maxptime:(\d*(?:\.\d*)*)/,format:"maxptime:%d"},{name:"direction",reg:/^(sendrecv|recvonly|sendonly|inactive)/},{name:"icelite",reg:/^(ice-lite)/},{name:"iceUfrag",reg:/^ice-ufrag:(\S*)/,format:"ice-ufrag:%s"},{name:"icePwd",reg:/^ice-pwd:(\S*)/,format:"ice-pwd:%s"},{name:"fingerprint",reg:/^fingerprint:(\S*) (\S*)/,names:["type","hash"],format:"fingerprint:%s %s"},{push:"candidates",reg:/^candidate:(\S*) (\d*) (\S*) (\d*) (\S*) (\d*) typ (\S*)(?: raddr (\S*) rport (\d*))?(?: tcptype (\S*))?(?: generation (\d*))?(?: network-id (\d*))?(?: network-cost (\d*))?/,names:["foundation","component","transport","priority","ip","port","type","raddr","rport","tcptype","generation","network-id","network-cost"],format:function(e){var t="candidate:%s %d %s %d %s %d typ %s";return t+=e.raddr!=null?" raddr %s rport %d":"%v%v",t+=e.tcptype!=null?" tcptype %s":"%v",e.generation!=null&&(t+=" generation %d"),t+=e["network-id"]!=null?" network-id %d":"%v",t+=e["network-cost"]!=null?" network-cost %d":"%v"}},{name:"endOfCandidates",reg:/^(end-of-candidates)/},{name:"remoteCandidates",reg:/^remote-candidates:(.*)/,format:"remote-candidates:%s"},{name:"iceOptions",reg:/^ice-options:(\S*)/,format:"ice-options:%s"},{push:"ssrcs",reg:/^ssrc:(\d*) ([\w_-]*)(?::(.*))?/,names:["id","attribute","value"],format:function(e){var t="ssrc:%d";return e.attribute!=null&&(t+=" %s",e.value!=null&&(t+=":%s")),t}},{push:"ssrcGroups",reg:/^ssrc-group:([\x21\x23\x24\x25\x26\x27\x2A\x2B\x2D\x2E\w]*) (.*)/,names:["semantics","ssrcs"],format:"ssrc-group:%s %s"},{name:"msidSemantic",reg:/^msid-semantic:\s?(\w*) (\S*)/,names:["semantic","token"],format:"msid-semantic: %s %s"},{push:"groups",reg:/^group:(\w*) (.*)/,names:["type","mids"],format:"group:%s %s"},{name:"rtcpMux",reg:/^(rtcp-mux)/},{name:"rtcpRsize",reg:/^(rtcp-rsize)/},{name:"sctpmap",reg:/^sctpmap:([\w_/]*) (\S*)(?: (\S*))?/,names:["sctpmapNumber","app","maxMessageSize"],format:function(e){return e.maxMessageSize!=null?"sctpmap:%s %s %s":"sctpmap:%s %s"}},{name:"xGoogleFlag",reg:/^x-google-flag:([^\s]*)/,format:"x-google-flag:%s"},{push:"rids",reg:/^rid:([\d\w]+) (\w+)(?: ([\S| ]*))?/,names:["id","direction","params"],format:function(e){return e.params?"rid:%s %s %s":"rid:%s %s"}},{push:"imageattrs",reg:new RegExp("^imageattr:(\\d+|\\*)[\\s\\t]+(send|recv)[\\s\\t]+(\\*|\\[\\S+\\](?:[\\s\\t]+\\[\\S+\\])*)(?:[\\s\\t]+(recv|send)[\\s\\t]+(\\*|\\[\\S+\\](?:[\\s\\t]+\\[\\S+\\])*))?"),names:["pt","dir1","attrs1","dir2","attrs2"],format:function(e){return"imageattr:%s %s %s"+(e.dir2?" %s %s":"")}},{name:"simulcast",reg:new RegExp("^simulcast:(send|recv) ([a-zA-Z0-9\\-_~;,]+)(?:\\s?(send|recv) ([a-zA-Z0-9\\-_~;,]+))?$"),names:["dir1","list1","dir2","list2"],format:function(e){return"simulcast:%s %s"+(e.dir2?" %s %s":"")}},{name:"simulcast_03",reg:/^simulcast:[\s\t]+([\S+\s\t]+)$/,names:["value"],format:"simulcast: %s"},{name:"framerate",reg:/^framerate:(\d+(?:$|\.\d+))/,format:"framerate:%s"},{name:"sourceFilter",reg:/^source-filter: *(excl|incl) (\S*) (IP4|IP6|\*) (\S*) (.*)/,names:["filterMode","netType","addressTypes","destAddress","srcList"],format:"source-filter: %s %s %s %s %s"},{name:"bundleOnly",reg:/^(bundle-only)/},{name:"label",reg:/^label:(.+)/,format:"label:%s"},{name:"sctpPort",reg:/^sctp-port:(\d+)$/,format:"sctp-port:%s"},{name:"maxMessageSize",reg:/^max-message-size:(\d+)$/,format:"max-message-size:%s"},{push:"tsRefClocks",reg:/^ts-refclk:([^\s=]*)(?:=(\S*))?/,names:["clksrc","clksrcExt"],format:function(e){return"ts-refclk:%s"+(e.clksrcExt!=null?"=%s":"")}},{name:"mediaClk",reg:/^mediaclk:(?:id=(\S*))? *([^\s=]*)(?:=(\S*))?(?: *rate=(\d+)\/(\d+))?/,names:["id","mediaClockName","mediaClockValue","rateNumerator","rateDenominator"],format:function(e){var t="mediaclk:";return t+=e.id!=null?"id=%s %s":"%v%s",t+=e.mediaClockValue!=null?"=%s":"",t+=e.rateNumerator!=null?" rate=%s":"",t+=e.rateDenominator!=null?"/%s":""}},{name:"keywords",reg:/^keywds:(.+)$/,format:"keywds:%s"},{name:"content",reg:/^content:(.+)/,format:"content:%s"},{name:"bfcpFloorCtrl",reg:/^floorctrl:(c-only|s-only|c-s)/,format:"floorctrl:%s"},{name:"bfcpConfId",reg:/^confid:(\d+)/,format:"confid:%s"},{name:"bfcpUserId",reg:/^userid:(\d+)/,format:"userid:%s"},{name:"bfcpFloorId",reg:/^floorid:(.+) (?:m-stream|mstrm):(.+)/,names:["id","mStream"],format:"floorid:%s mstrm:%s"},{push:"invalid",names:["value"]}]};Object.keys(Tk).forEach(function(e){Tk[e].forEach(function(t){t.reg||(t.reg=/(.*)/),t.format||(t.format="%s")})}),function(e){var t=function(c){return String(Number(c))===c?Number(c):c},n=function(c,a,s){var l=c.name&&c.names;c.push&&!a[c.push]?a[c.push]=[]:l&&!a[c.name]&&(a[c.name]={});var u=c.push?{}:l?a[c.name]:a;(function(p,k,x,E){if(E&&!x)k[E]=t(p[1]);else for(var I=0;I<x.length;I+=1)p[I+1]!=null&&(k[x[I]]=t(p[I+1]))})(s.match(c.reg),u,c.names,c.name),c.push&&a[c.push].push(u)},i=am.exports,r=RegExp.prototype.test.bind(/^([a-z])=(.*)/);e.parse=function(c){var a={},s=[],l=a;return c.split(/(\r\n|\r|\n)/).filter(r).forEach(function(u){var p=u[0],k=u.slice(2);p==="m"&&(s.push({rtp:[],fmtp:[]}),l=s[s.length-1]);for(var x=0;x<(i[p]||[]).length;x+=1){var E=i[p][x];if(E.reg.test(k))return n(E,l,k)}}),a.media=s,a};var o=function(c,a){var s=a.split(/=(.+)/,2);return s.length===2?c[s[0]]=t(s[1]):s.length===1&&a.length>1&&(c[s[0]]=void 0),c};e.parseParams=function(c){return c.split(/;\s?/).reduce(o,{})},e.parseFmtpConfig=e.parseParams,e.parsePayloads=function(c){return c.toString().split(" ").map(Number)},e.parseRemoteCandidates=function(c){for(var a=[],s=c.split(" ").map(t),l=0;l<s.length;l+=3)a.push({component:s[l],ip:s[l+1],port:s[l+2]});return a},e.parseImageAttributes=function(c){return c.split(" ").map(function(a){return a.substring(1,a.length-1).split(",").reduce(o,{})})},e.parseSimulcastStreamList=function(c){return c.split(";").map(function(a){return a.split(",").map(function(s){var l,u=!1;return s[0]!=="~"?l=t(s):(l=t(s.substring(1,s.length)),u=!0),{scid:l,paused:u}})})}}(kk);var om=am.exports,SV=/%[sdv%]/g,kV=function(e){var t=1,n=arguments,i=n.length;return e.replace(SV,function(r){if(t>=i)return r;var o=n[t];switch(t+=1,r){case"%%":return"%";case"%s":return String(o);case"%d":return Number(o);case"%v":return""}})},sc=function(e,t,n){var i=[e+"="+(t.format instanceof Function?t.format(t.push?n:n[t.name]):t.format)];if(t.names)for(var r=0;r<t.names.length;r+=1){var o=t.names[r];t.name?i.push(n[t.name][o]):i.push(n[t.names[r]])}else i.push(n[t.name]);return kV.apply(null,i)},TV=["v","o","s","i","u","e","p","c","b","t","r","z","a"],xV=["i","c","b","a"],sa=kk,IV=function(e,t){t=t||{},e.version==null&&(e.version=0),e.name==null&&(e.name=" "),e.media.forEach(function(o){o.payloads==null&&(o.payloads="")});var n=t.outerOrder||TV,i=t.innerOrder||xV,r=[];return n.forEach(function(o){om[o].forEach(function(c){c.name in e&&e[c.name]!=null?r.push(sc(o,c,e)):c.push in e&&e[c.push]!=null&&e[c.push].forEach(function(a){r.push(sc(o,c,a))})})}),e.media.forEach(function(o){r.push(sc("m",om.m[0],o)),i.forEach(function(c){om[c].forEach(function(a){a.name in o&&o[a.name]!=null?r.push(sc(c,a,o)):a.push in o&&o[a.push]!=null&&o[a.push].forEach(function(s){r.push(sc(c,a,s))})})})}),r.join(`\r
|
|
53
|
+
`+a.stack)}},e},zS=function(e){return+e<10?"0".concat(e):e},P4=function(e){var t=e.match(/^\d+\.\d+\.\d+/)[0];if(!t)return e;var n=t.split("."),i=zS(n[1])+zS(n[2]);return n[1]-15>0&&(n[1]="15"),n[2]-15>0&&(n[2]="15"),n.join(".")+"."+i};function fo(e,t){try{if(ho(e))return"[".concat(e.map(function(r){return fo(r,t)}).join(","),"]");if(!yi(e)||!ho(t))return JSON.stringify(e);var n={},i=new Set(t);return Object.keys(e).forEach(function(r){i.has(r)&&(n[r]=e[r])}),JSON.stringify(n)}catch(r){return"{}"}}function cl(e){var t=e.url,n=e.body,i=e.method,r=e.timeout,o=new XMLHttpRequest;return new Promise(function(c,a){o.onload=function(l){if(o.status>=200&&o.status<300&&o.responseText.length>0)try{var u=JSON.parse(o.response);c({data:u})}catch(f){c({data:o.response})}else o.status>0&&a({code:o.status,message:"request failed, readyState:".concat(o.readyState," status:").concat(o.status," loaded size:").concat(l.loaded)})};var s=function(l){a({code:o.readyState,message:"request ".concat(l.type,", readyState:").concat(o.readyState," status:").concat(o.status," loaded size:").concat(l.loaded)})};o.onerror=s,o.onabort=s,o.ontimeout=s,o.timeout=r||5e3,o.open(i||"POST",t,!0),o.send(n)})}var WS={exports:{}};(function(e){var t=Object.prototype.hasOwnProperty,n="~";function i(){}function r(s,l,u){this.fn=s,this.context=l,this.once=u||!1}function o(s,l,u,f,S){if(typeof u!="function")throw new TypeError("The listener must be a function");var x=new r(u,f||s,S),E=n?n+l:l;return s._events[E]?s._events[E].fn?s._events[E]=[s._events[E],x]:s._events[E].push(x):(s._events[E]=x,s._eventsCount++),s}function c(s,l){--s._eventsCount==0?s._events=new i:delete s._events[l]}function a(){this._events=new i,this._eventsCount=0}Object.create&&(i.prototype=Object.create(null),new i().__proto__||(n=!1)),a.prototype.eventNames=function(){var s,l,u=[];if(this._eventsCount===0)return u;for(l in s=this._events)t.call(s,l)&&u.push(n?l.slice(1):l);return Object.getOwnPropertySymbols?u.concat(Object.getOwnPropertySymbols(s)):u},a.prototype.listeners=function(s){var l=n?n+s:s,u=this._events[l];if(!u)return[];if(u.fn)return[u.fn];for(var f=0,S=u.length,x=new Array(S);f<S;f++)x[f]=u[f].fn;return x},a.prototype.listenerCount=function(s){var l=n?n+s:s,u=this._events[l];return u?u.fn?1:u.length:0},a.prototype.emit=function(s,l,u,f,S,x){var E=n?n+s:s;if(!this._events[E])return!1;var I,m,T=this._events[E],v=arguments.length;if(T.fn){switch(T.once&&this.removeListener(s,T.fn,void 0,!0),v){case 1:return T.fn.call(T.context),!0;case 2:return T.fn.call(T.context,l),!0;case 3:return T.fn.call(T.context,l,u),!0;case 4:return T.fn.call(T.context,l,u,f),!0;case 5:return T.fn.call(T.context,l,u,f,S),!0;case 6:return T.fn.call(T.context,l,u,f,S,x),!0}for(m=1,I=new Array(v-1);m<v;m++)I[m-1]=arguments[m];T.fn.apply(T.context,I)}else{var w,L=T.length;for(m=0;m<L;m++)switch(T[m].once&&this.removeListener(s,T[m].fn,void 0,!0),v){case 1:T[m].fn.call(T[m].context);break;case 2:T[m].fn.call(T[m].context,l);break;case 3:T[m].fn.call(T[m].context,l,u);break;case 4:T[m].fn.call(T[m].context,l,u,f);break;default:if(!I)for(w=1,I=new Array(v-1);w<v;w++)I[w-1]=arguments[w];T[m].fn.apply(T[m].context,I)}}return!0},a.prototype.on=function(s,l,u){return o(this,s,l,u,!1)},a.prototype.once=function(s,l,u){return o(this,s,l,u,!0)},a.prototype.removeListener=function(s,l,u,f){var S=n?n+s:s;if(!this._events[S])return this;if(!l)return c(this,S),this;var x=this._events[S];if(x.fn)x.fn!==l||f&&!x.once||u&&x.context!==u||c(this,S);else{for(var E=0,I=[],m=x.length;E<m;E++)(x[E].fn!==l||f&&!x[E].once||u&&x[E].context!==u)&&I.push(x[E]);I.length?this._events[S]=I.length===1?I[0]:I:c(this,S)}return this},a.prototype.removeAllListeners=function(s){var l;return s?(l=n?n+s:s,this._events[l]&&c(this,l)):(this._events=new i,this._eventsCount=0),this},a.prototype.off=a.prototype.removeListener,a.prototype.addListener=a.prototype.on,a.prefixed=n,a.EventEmitter=a,e.exports=a})(WS);var Si=WS.exports,Y=new Si,ul=1,Ep=2,Rp=3,po=4,sa=5,Ap=20,Pp=21,mo=22,Dp=23,Op=24,Lp=27,Mp=28,ll=29,JS=30,qS=31,Np=32,Up=33,KS=40,D4=41,O4=52,L4=100,XS=101,tc=102,Vp=103,jn=110,dl=111,jp=112,Ur=113,Vr=114,M4=115,ca=116,N4=120,Bp=121,Fp=122,Hp=123,nc=130,Gp=131,zp=132,Wp=133,Jp=134,qp=135,Kp=136,Xp=137,hl=200,Qp=201,Yp=300,rc=301,$p=302,Zp=303;function ic(e){var t=e.retryFunction,n=e.settings,i=e.onError,r=e.onRetrying,o=e.onRetryFailed,c=e.onRetrySuccess,a=e.context;return function(){for(var s=this,l=arguments.length,u=new Array(l),f=0;f<l;f++)u[f]=arguments[f];var S=n.retries||5,x=0,E=-1,I=0,m=function(){var T=H(p().mark(function v(w,L){var N,V,_,b;return p().wrap(function(R){for(;;)switch(R.prev=R.next){case 0:return N=a||s,R.prev=1,R.next=4,t.apply(N,u);case 4:V=R.sent,x!==0&&ln(c)&&c.call(N,x),x=0,w(V),R.next=15;break;case 10:R.prev=10,R.t0=R.catch(1),_=function(){clearTimeout(E),x=0,I=2,L(R.t0)},b=function(){I!==2&&x<S?(x++,I=1,ln(r)&&r.call(N,x,_),E=setTimeout(function(){E=-1,m(w,L)},ge(n.timeout)?1e3:n.timeout)):(_(),ln(o)&&o.call(N,R.t0))},ln(i)?i.call(N,R.t0,b,L,u,x):b();case 15:case"end":return R.stop()}},v,null,[[1,10]])}));return function(v,w){return T.apply(this,arguments)}}();return new Promise(m)}}var U4=Ie(function e(t){Q(this,e),this.log=t.log,this.level=t.level,this.userId=t.userId,this.sdkAppId=t.sdkAppId,this.forAllJoinedClients=t.forAllJoinedClients,this.uploaded=!1}),V4=function(){function e(t){Q(this,e),this.id_=t.id,this.userId_=t.userId,this.sdkAppId_=t.sdkAppId,this.type_=t.type,this.isLocal_=!nr(t.isLocal)||t.isLocal}return Ie(e,[{key:"setUserId",value:function(t){this.userId_=t}},{key:"setSdkAppId",value:function(t){this.sdkAppId_=t}},{key:"log",value:function(t,n){_e.log({log:"[".concat(this.isLocal_?"\u2191":"\u2193").concat(this.id_,"] ").concat(this.type_?this.type_+" ":"").concat(n),level:t,forAllJoinedClients:ge(this.userId_),userId:this.userId_,sdkAppId:this.sdkAppId_})}},{key:"info",value:function(t){this.log(Un.INFO,t)}},{key:"debug",value:function(t){this.log(Un.DEBUG,t)}},{key:"warn",value:function(t){this.log(Un.WARN,t)}},{key:"error",value:function(t){this.log(Un.ERROR,t)}}]),e}(),j4=!(gi||ta),B4=function(){function e(){var i=this;Q(this,e),this.clients_=new Set,this.queue_=[],this.timeoutId_=-1,this.logLevel_=Un.DEBUG,this.logLevelToUpload_=Un.INFO,this.enableUploadLog_=!0,this.isAbleToUpload_=!1,this.checkURLParam(),Y.on(JS,function(r){var o=r.client;i.timeoutId_===-1&&i.startUpload(),i.clients_.add(o)}),Y.on(Up,function(r){var o=r.client;return i.clients_.delete(o)}),Y.on(qS,function(r){r&&yi(r.config)&&ea[r.config.logLevelToUpload]&&(i.logLevelToUpload_=r.config.logLevelToUpload)}),Y.on(po,this.setIsAbleToUpload,this),Y.on(sa,this.setIsAbleToUpload,this)}var t,n;return Ie(e,[{key:"getIsAbleToUpload",value:function(){return this.isAbleToUpload_}},{key:"setIsAbleToUpload",value:function(){this.isAbleToUpload_=!0,Y.off(po,this.setIsAbleToUpload,this),Y.off(sa,this.setIsAbleToUpload,this)}},{key:"startUpload",value:(n=H(p().mark(function i(){var r=this;return p().wrap(function(o){for(;;)switch(o.prev=o.next){case 0:return o.prev=0,o.next=3,this.upload();case 3:o.next=7;break;case 5:o.prev=5,o.t0=o.catch(0);case 7:this.timeoutId_=setTimeout(function(){return r.startUpload()},2e3);case 8:case"end":return o.stop()}},i,this,[[0,5]])})),function(){return n.apply(this,arguments)})},{key:"getLogsToUpload",value:function(){var i=this,r={map:new Map,splicedQueue:[]};if(this.queue_[0].forAllJoinedClients&&this.clients_.size===0)return r;for(var o=0,c=function(){if(o===50)return"break";var a=i.queue_[o];if(a.forAllJoinedClients){var s=new Set;i.clients_.forEach(function(l){if(l.getIsJoined()){var u=l.getUserId(),f=l.getSDKAppId();s.has("".concat(u,"-").concat(f))||(s.add("".concat(u,"-").concat(f)),r.map.has(u)?r.map.get(u).logs.push(a):r.map.set(u,{userId:u,sdkAppId:f,logs:[a]}))}})}else r.map.has(a.userId)?r.map.get(a.userId).logs.push(a):r.map.set(a.userId,{userId:a.userId,sdkAppId:a.sdkAppId,logs:[a]})};o<this.queue_.length&&c()!=="break";o++);return r.map.size>0&&(r.splicedQueue=this.queue_.splice(0,o)),r}},{key:"upload",value:(t=H(p().mark(function i(){var r,o,c,a,s,l,u,f,S,x;return p().wrap(function(E){for(;;)switch(E.prev=E.next){case 0:if(this.queue_.length!==0&&this.isAbleToUpload_){E.next=2;break}return E.abrupt("return");case 2:if(r=this.getLogsToUpload(),o=r.map,c=r.splicedQueue,o.size!==0){E.next=5;break}return E.abrupt("return");case 5:E.prev=5,a=Se(o.values()),s=0;case 8:if(!(s<a.length)){E.next=16;break}return l=a[s],u=l.userId,f=l.sdkAppId,S=l.logs,E.next=12,this.uploadLogWithRetry(JSON.stringify({timestamp:qy(),sdkAppId:String(f),userId:u,version:Gi,log:S.map(function(I){return I.log}).join(`
|
|
54
|
+
`)}),f);case 12:S.forEach(function(I){return I.uploaded=!0});case 13:s++,E.next=8;break;case 16:E.next=20;break;case 18:E.prev=18,E.t0=E.catch(5);case 20:x=c.filter(function(I){return!I.uploaded}),x.length>0&&(this.queue_=x.concat(this.queue_));case 22:case"end":return E.stop()}},i,this,[[5,18]])})),function(){return t.apply(this,arguments)})},{key:"uploadLogWithRetry",value:function(i,r){return ic({retryFunction:function(){return cl({url:ol(r,yb),body:i,timeout:5e3})},settings:{retries:3,timeout:1e3},onError:function(o,c){c()}})()}},{key:"getPrefix",value:function(i){var r=new Date;return r.setTime(an()),String.prototype.padStart?"[".concat(r.toTimeString().replace(/.*(\d{2}:\d{2}:\d{2}).*/,"$1"),":").concat(r.getMilliseconds().toString().padStart(3,"0"),"] <").concat(ea[i],">"):"[".concat(r.toTimeString().replace(/.*(\d{2}:\d{2}:\d{2}).*/,"$1"),":").concat(r.getMilliseconds(),"] <").concat(ea[i],">")}},{key:"getLogLevel",value:function(){return this.logLevel_}},{key:"setLogLevel",value:function(i){ge(ea[i])||(this.logLevel_!==i&&this.info("setLogLevel ".concat(i)),this.logLevel_=i)}},{key:"enableUploadLog",value:function(){this.enableUploadLog_=!0}},{key:"disableUploadLog",value:function(){this.enableUploadLog_=!1}},{key:"log",value:function(i){var r=i.log,o=i.level,c=i.forAllJoinedClients,a=c===void 0||c,s=i.userId,l=i.sdkAppId;if(r="".concat(this.getPrefix(o)," ").concat(r),this.enableUploadLog_&&o>=this.logLevelToUpload_&&this.queue_.push(new U4({log:r,level:o,userId:s,sdkAppId:l,forAllJoinedClients:a})),!(o<this.logLevel_)){var u=ea[o]?ea[o].toLowerCase():"info";j4?console[u]("%cTRTC%c%s","padding: 1px 4px;border-radius: 3px;color: #fff;background: #1E88E5;","display: inline",r):console[u](r)}}},{key:"debug",value:function(i){this.log({log:i,level:Un.DEBUG})}},{key:"info",value:function(i){this.log({log:i,level:Un.INFO})}},{key:"warn",value:function(i){this.log({log:i,level:Un.WARN})}},{key:"error",value:function(i){this.log({log:i,level:Un.ERROR})}},{key:"createLogger",value:function(i){return new V4(i)}},{key:"checkURLParam",value:function(){var i=new URLSearchParams(location.search).get("logLevelToUpload");ea[i]&&(this.logLevelToUpload_=i)}}]),e}(),_e=new B4,QS=!0,F4=at,H4=Math.floor,YS=Number.isInteger||function(e){return!F4(e)&&isFinite(e)&&H4(e)===e};Le({target:"Number",stat:!0},{isInteger:YS});var em,G4=Le,$S=pe,z4=be.f,W4=yr,ZS=zt,J4=p0,q4=pt,K4=m0,ek=$S("".startsWith),X4=$S("".slice),Q4=Math.min,tk=K4("startsWith");G4({target:"String",proto:!0,forced:!!(tk||(em=z4(String.prototype,"startsWith"),!em||em.writable))&&!tk},{startsWith:function(e){var t=ZS(q4(this));J4(e);var n=W4(Q4(arguments.length>1?arguments[1]:void 0,t.length)),i=ZS(e);return ek?ek(t,i,n):X4(t,n,n+i.length)===i}});var nk=ye,Y4=pe,$4=Ke,Z4=ue,tm=ou,eU=Jd,tU=qt,nU=Mt,rU=yn,vo=Object.assign,rk=Object.defineProperty,iU=Y4([].concat),ik=!vo||Z4(function(){if(nk&&vo({b:1},vo(rk({},"a",{enumerable:!0,get:function(){rk(this,"b",{value:3,enumerable:!1})}}),{b:2})).b!==1)return!0;var e={},t={},n=Symbol(),i="abcdefghijklmnopqrst";return e[n]=7,i.split("").forEach(function(r){t[r]=r}),vo({},e)[n]!=7||tm(vo({},t)).join("")!=i})?function(e,t){for(var n=nU(e),i=arguments.length,r=1,o=eU.f,c=tU.f;i>r;)for(var a,s=rU(arguments[r++]),l=o?iU(tm(s),o(s)):tm(s),u=l.length,f=0;u>f;)a=l[f++],nk&&!$4(c,s,a)||(n[a]=s[a]);return n}:vo,ak=ik;Le({target:"Object",stat:!0,arity:2,forced:Object.assign!==ak},{assign:ak});var ok=pe,aU=Vt,oU=at,sU=kt,sk=Ha,cU=Me,ck=Function,uU=ok([].concat),lU=ok([].join),nm={},dU=function(e,t,n){if(!sU(nm,t)){for(var i=[],r=0;r<t;r++)i[r]="a["+r+"]";nm[t]=ck("C,a","return new C("+lU(i,",")+")")}return nm[t](e,n)},hU=cU?ck.bind:function(e){var t=aU(this),n=t.prototype,i=sk(arguments,1),r=function(){var o=uU(i,sk(arguments));return this instanceof r?dU(t,o.length,o):t.apply(e,o)};return oU(n)&&(r.prototype=n),r},uk=hU;Le({target:"Function",proto:!0,forced:Function.bind!==uk},{bind:uk});var fU=Le,pU=rn.findIndex,mU=uu,lk="findIndex",dk=!0;lk in[]&&Array(1).findIndex(function(){dk=!1}),fU({target:"Array",proto:!0,forced:dk},{findIndex:function(e){return pU(this,e,arguments.length>1?arguments[1]:void 0)}}),mU(lk);var vU=ye,hk=pe,gU=ou,_U=bn,yU=hk(qt.f),bU=hk([].push),fk=function(e){return function(t){for(var n,i=_U(t),r=gU(i),o=r.length,c=0,a=[];o>c;)n=r[c++],vU&&!yU(i,n)||bU(a,e?[n,i[n]]:i[n]);return a}},SU={entries:fk(!0),values:fk(!1)}.values;Le({target:"Object",stat:!0},{values:function(e){return SU(e)}});var pk=1,mk=5,rm=2,ac=3,im=4,fl="DISCONNECTED",vk="CONNECTING",am="RECONNECTING",oc="CONNECTED",jr={CLIENT_BANNED:9,CHANNEL_SETUP_RESULT:19,CHANNEL_RECONNECT_RESULT:514,JOIN_ROOM_RESULT:20,PEER_JOIN:4134,PEER_LEAVE:4135,STREAM_ADDED:16,STREAM_REMOVED:18,UPLINK_NETWORK_STATS:22,UPDATE_REMOTE_MUTE_STAT:23,PUBLISH_RESULT:4098,PUBLISH_STATE_CHANGE_RESULT:4112,UNPUBLISH_RESULT:4100,SUBSCRIBE_RESULT:4102,UNSUBSCRIBE_RESULT:4104,SUBSCRIBE_CHANGE_RESULT:4106,MUTE_RESULT:4108,UPDATE_OFFER_RESULT:4128,START_PUBLISH_TENCENT_CDN_RES:1286,STOP_PUBLISH_TENCENT_CDN_RES:1288,START_PUBLISH_GIVEN_CDN_RES:777,STOP_PUBLISH_GIVEN_CDN_RES:779,START_MIX_TRANSCODE_RES:781,STOP_MIX_TRANSCODE_RES:783,USER_LIST_RES:4137,SWITCH_ROLE_RES:4110,UPDATE_CONSTRAINT_CONFIG_RES:772,CONNECT_OTHER_ROOM_RES:8209,DISCONNECT_OTHER_ROOM_RES:8211,UPDATE_OTHER_ROOM_FORWARD_MODE_RES:8213},kU=[jr.UPDATE_REMOTE_MUTE_STAT,jr.UPLINK_NETWORK_STATS,jr.USER_LIST_RES,jr.MUTE_RESULT],st={CLIENT_BANNED:"client-banned",CHANNEL_SETUP_RESULT:"channel-setup-result",CHANNEL_RECONNECT_RESULT:"channel-reconnect-result",JOIN_ROOM_RESULT:"join-room-result",PEER_JOIN:"peer-join",PEER_LEAVE:"peer-leave",STREAM_ADDED:"stream-added",STREAM_REMOVED:"stream-removed",UPLINK_NETWORK_STATS:"uplink-network-stats",UPDATE_REMOTE_MUTE_STAT:"update-remote-mute-stat",PUBLISH_RESULT:"publish-result",PUBLISH_STATE_CHANGE_RESULT:"publish-state-change-result",UNPUBLISH_RESULT:"unpublish-result",SUBSCRIBE_RESULT:"subscribe-result",SUBSCRIBE_CHANGE_RESULT:"subscribe-change-result",UNSUBSCRIBE_RESULT:"unsubscribe-result",UPDATE_OFFER_RESULT:"update-offer-result",START_PUBLISH_TENCENT_CDN_RES:"start-publish-tencent-cdn-res",STOP_PUBLISH_TENCENT_CDN_RES:"stop-publish-tencent-cdn-res",START_PUBLISH_GIVEN_CDN_RES:"start-publish-given-cdn-res",STOP_PUBLISH_GIVEN_CDN_RES:"stop-publish-given-cdn-res",START_MIX_TRANSCODE_RES:"start-mix-transcode-res",STOP_MIX_TRANSCODE_RES:"stop-mix-transcode-res",USER_LIST_RES:"user-list-res",SWITCH_ROLE_RES:"switch_role_res",MUTE_RESULT:"mute-result",UPDATE_CONSTRAINT_CONFIG_RES:"update-contraint-config-res",CONNECT_OTHER_ROOM_RES:"connect_other_room_res",UPDATE_OTHER_ROOM_FORWARD_MODE_RES:"update_other_room_forward_mode_res",DISCONNECT_OTHER_ROOM_RES:"disconnect_other_room_res"},TU="publish_change",xU="publish_state_change",IU="join",wU="leave",CU="quality_report",EU="mute_uplink",RU="publish",gk="unpublish",AU="subscribe",PU="unsubscribe",DU="subscribe_change",OU="start_publishing",LU="stop_publishing",MU="start_push_user_cdn",NU="stop_push_user_cdn",UU="start_mcu_mix",VU="stop_mcu_mix",jU="get_user_list",BU="change_role",FU="update_constraint_config",HU="connect_other_room",GU="update_other_room_forward_mode",zU="disconnect_other_room",Z={INVALID_PARAMETER:4096,INVALID_OPERATION:4097,NOT_SUPPORTED:4098,DEVICE_NOT_FOUND:4099,INITIALIZE_FAILED:4100,SIGNAL_CHANNEL_SETUP_FAILED:16385,SIGNAL_CHANNEL_ERROR:16386,ICE_TRANSPORT_ERROR:16387,JOIN_ROOM_FAILED:16388,CREATE_OFFER_FAILED:16389,SIGNAL_CHANNEL_RECONNECTION_FAILED:16390,UPLINK_RECONNECTION_FAILED:16391,DOWNLINK_RECONNECTION_FAILED:16392,REMOTE_STREAM_NOT_EXIST:16400,CLIENT_BANNED:16448,SERVER_TIMEOUT:16449,SUBSCRIPTION_TIMEOUT:16450,PLAY_NOT_ALLOWED:16451,DEVICE_AUTO_RECOVER_FAILED:16452,START_PUBLISH_CDN_FAILED:16453,STOP_PUBLISH_CDN_FAILED:16454,START_MIX_TRANSCODE_FAILED:16455,STOP_MIX_TRANSCODE_FAILED:16456,NOT_SUPPORTED_H264:16457,SWITCH_ROLE_FAILED:16458,API_CALL_TIMEOUT:16459,SCHEDULE_FAILED:16460,API_CALL_ABORTED:16461,UNKNOWN:65535},te=function(e){Et(n,e);var t=Rr(n);function n(i){var r,o=i.name,c=o===void 0?"RtcError":o,a=i.message,s=i.code,l=s===void 0?Z.UNKNOWN:s,u=i.extraCode,f=u===void 0?0:u,S=i.constraint;Q(this,n);var x="<".concat(function(E){for(var I in Z)if(Z[I]===E)return I;return"UNKNOWN"}(l)," 0x").concat(l.toString(16),">");return(r=t.call(this,a+"".concat(S?" constraint: ".concat(S):"")+"".concat(a!=null&&a.includes(x)?"":" "+x))).code_=l,r.extraCode_=f,r.name=c,r.message_=a,S&&(r.constraint=S),r}return Ie(n,[{key:"getCode",value:function(){return this.code_}},{key:"getExtraCode",value:function(){return this.extraCode_}}]),n}(Wo(Error)),_k=32768,yk=32769,bk=32770,Sk=32771,WU=32772,JU=32773,qU=32774,KU=32775,kk=32777,XU=32778,om=32779,QU=32780,YU=32781,$U=32782,ZU=32783,eV=32784,tV=32785,nV=32786,rV=32787,iV=32788,aV=32789,oV=32790,sV=32791,cV=32792,uV=32793,lV=32794,dV=32795,hV=32796,fV=32797,pV=32798,mV=32799,vV=32800,gV=32801,_V=32802,yV=32803,bV=32804,sc=new Map,vn=function(e,t){var n=sc.get(e);n||(sc.set(e,[]),n=sc.get(e)),n.push(t)},SV=function(e){var t=sc.get(e),n=[];return t?(sc.delete(e),n=t.map(function(i){return{uint32_event_id:i.eventId,uint64_date:i.timestamp,str_userid:i.remoteUserId,str_event_json:i.eventDesc}})):n=[],n},kV=Object.prototype.hasOwnProperty;function Br(e){if(e==null)return!0;if(typeof e=="boolean")return!1;if(typeof e=="number")return e===0;if(typeof e=="string"||typeof e=="function"||Array.isArray(e))return e.length===0;if(e instanceof Error)return e.message==="";if(yi(e))switch(Object.prototype.toString.call(e)){case"[object File]":case"[object Map]":case"[object Set]":return e.size===0;case"[object Object]":for(var t in e)if(kV.call(e,t))return!1;return!0}return!1}var TV=function(){function e(){Q(this,e);var t=aa(),n=t.name,i=t.version;this.roomIdMap_=new Map,this.configs_={sdkAppId:"",userId:"",version:Gi,env:Gu,browserVersion:n+i,ua:navigator.userAgent}}return Ie(e,[{key:"setConfig",value:function(t){var n=t.sdkAppId,i=t.env,r=t.userId,o=t.roomId;n!==this.configs_.sdkAppId&&(this.configs_.sdkAppId=String(n)),this.configs_.env=i,this.configs_.userId=r,this.roomIdMap_.set(r,String(o))}},{key:"logEvent",value:function(t){if(!ra){var n=q(q(q({},t),this.configs_),{},{userId:t.userId||this.configs_.userId});ge(n.code)&&(n.code=n.result==="failed"?Z.UNKNOWN:0),this.sendRequest(ol(this.configs_.sdkAppId,JM),n)}}},{key:"logSuccessEvent",value:function(t){ra||(this.logEvent(q(q({},t),{},{result:"success",roomId:this.roomIdMap_.get(t.userId)})),this.configs_.env===Gu&&this.uploadEventToKibana(q(q({},t),{},{result:"success"})))}},{key:"logFailedEvent",value:function(t){if(!ra){var n=t.eventType,i=t.code,r=t.error,o=t.userId,c={roomId:this.roomIdMap_.get(o),userId:o,eventType:n,result:"failed",code:i||(r instanceof te?r.getExtraCode()||r.getCode():Z.UNKNOWN)};this.logEvent(c),this.configs_.env===Gu&&this.uploadEventToKibana(q(q({},c),{},{error:r}))}}},{key:"uploadEventToKibana",value:function(t){var n="stat-".concat(t.eventType,"-").concat(t.result);t.eventType!=="delta-join"&&t.eventType!=="delta-leave"&&t.eventType!=="delta-publish"||(n="".concat(t.eventType,":").concat(t.delta)),this.uploadEvent({log:n,userId:t.userId}),t.result==="failed"&&(n="stat-".concat(t.eventType,"-").concat(t.result,"-").concat(t.code),this.uploadEvent({log:n,userId:t.userId,error:t.error}))}},{key:"uploadEvent",value:function(t){var n=t.log,i=t.userId,r=t.error,o={timestamp:qy(),sdkAppId:this.configs_.sdkAppId,userId:i||this.configs_.userId,version:this.configs_.version,log:n};r&&(o.errorInfo=r.message),this.sendRequest(ol(this.configs_.sdkAppId,yb),o)}},{key:"sendRequest",value:function(t,n){var i=this;_e.getIsAbleToUpload()?cl({url:t,body:JSON.stringify(n)}).catch(function(){}):setTimeout(function(){i.sendRequest(t,n)},1e3)}}]),e}(),ke=new TV,xV=Mt,IV=Vi;Le({target:"Date",proto:!0,arity:1,forced:ue(function(){return new Date(NaN).toJSON()!==null||Date.prototype.toJSON.call({toISOString:function(){return 1}})!==1})},{toJSON:function(e){var t=xV(this),n=IV(t,"number");return typeof n!="number"||isFinite(n)?t.toISOString():null}});var wV=Ke;Le({target:"URL",proto:!0,enumerable:!0},{toJSON:function(){return wV(URL.prototype.toString,this)}});var CV=Le,sm=pe,EV=$n,RV=o0,AV=ey,Tk=ue,PV=RangeError,xk=String,Ik=Math.floor,cm=sm(AV),wk=sm("".slice),cc=sm(1 .toFixed),go=function(e,t,n){return t===0?n:t%2==1?go(e,t-1,n*e):go(e*e,t/2,n)},_o=function(e,t,n){for(var i=-1,r=n;++i<6;)r+=t*e[i],e[i]=r%1e7,r=Ik(r/1e7)},um=function(e,t){for(var n=6,i=0;--n>=0;)i+=e[n],e[n]=Ik(i/t),i=i%t*1e7},Ck=function(e){for(var t=6,n="";--t>=0;)if(n!==""||t===0||e[t]!==0){var i=xk(e[t]);n=n===""?i:n+cm("0",7-i.length)+i}return n};CV({target:"Number",proto:!0,forced:Tk(function(){return cc(8e-5,3)!=="0.000"||cc(.9,0)!=="1"||cc(1.255,2)!=="1.25"||cc(0xde0b6b3a7640080,0)!=="1000000000000000128"})||!Tk(function(){cc({})})},{toFixed:function(e){var t,n,i,r,o=RV(this),c=EV(e),a=[0,0,0,0,0,0],s="",l="0";if(c<0||c>20)throw PV("Incorrect fraction digits");if(o!=o)return"NaN";if(o<=-1e21||o>=1e21)return xk(o);if(o<0&&(s="-",o=-o),o>1e-21)if(n=(t=function(u){for(var f=0,S=u;S>=4096;)f+=12,S/=4096;for(;S>=2;)f+=1,S/=2;return f}(o*go(2,69,1))-69)<0?o*go(2,-t,1):o/go(2,t,1),n*=4503599627370496,(t=52-t)>0){for(_o(a,0,n),i=c;i>=7;)_o(a,1e7,0),i-=7;for(_o(a,go(10,i,1),0),i=t-1;i>=23;)um(a,1<<23),i-=23;um(a,1<<i),_o(a,1,1),um(a,2),l=Ck(a)}else _o(a,0,n),_o(a,1<<-t,0),l=Ck(a)+cm("0",c);return l=c>0?s+((r=l.length)<=c?"0."+cm("0",c-r)+l:wk(l,0,r-c)+"."+wk(l,r-c)):s+l}});var lm=null,dm=!0;function ki(e){nr(e)&&e!==dm&&(dm=e,_e.info("setIsNeedToSchedule "+e))}function DV(e,t){try{if(PerformanceObserver){var n=Ct(),i=pl(e,Qe),r=pl(e,er),o=new PerformanceObserver(function(c){c.getEntries().forEach(function(a){if(a.startTime>=n&&(a.name===i||a.name===r)){var s=a.name===i?Qe:er;if(a.code&&a.code!==200)return void _e.warn("".concat(s," schedule with code ").concat(a.code,", ").concat(JSON.stringify(a.toJSON())));var l=a.responseEnd-a.startTime,u=[a.domainLookupStart-a.startTime,a.domainLookupEnd-a.domainLookupStart,a.requestStart-a.secureConnectionStart,a.secureConnectionStart-a.connectStart,a.responseStart-a.requestStart,a.responseEnd-a.responseStart].map(function(f){return f.toFixed(1)});o.disconnect(),ke.uploadEvent({log:"stat-schedule-net:".concat(l.toFixed(1),"(").concat(u.join("->"),") ").concat(s),userId:t})}})});o.observe({type:"resource",buffered:!0})}}catch(c){}}function OV(e){return hm.apply(this,arguments)}function hm(){return hm=H(p().mark(function e(t){var n,i,r,o,c,a,s,l,u,f,S,x,E;return p().wrap(function(I){for(;;)switch(I.prev=I.next){case 0:if(n=t.userId,i=t.sdkAppId,r=t.useStringRoomId,o=t.roomId,c=t.userSig,dm||!lm){I.next=3;break}return I.abrupt("return",{isCached:!0,result:lm});case 3:return a={delta:0,count:[1,1],msg:[]},I.prev=4,(s=new FormData).append("userId",String(n)),s.append("sdkAppId",String(i)),s.append("isStrGroupId",r),s.append("groupId",String(o)),s.append("sdkVersion",Gi),s.append("userSig",String(c)),Kf&&s.append("oversea",!0),DV(i,n),l=Ct(),I.next=17,MV(s,a,i);case 17:return(u=I.sent).config&&(u.config.loggerDomain&&Uf(u.config.loggerDomain),nr(u.config.scheduleCache)&&ki(!u.config.scheduleCache)),a.delta=Ct()-l,Ek({stat:a,userId:n}),lm=u,I.abrupt("return",{isCached:!1,result:u});case 25:throw I.prev=25,I.t0=I.catch(4),f=ho(I.t0)?I.t0[0]:I.t0,S=tr(f.code)?f.code:0,x="schedule failed".concat(f.message?": ".concat(f.message):""),E=new te({code:Z.SCHEDULE_FAILED,extraCode:S,message:ae({key:uS,data:{error:x,code:S}})}),_e.error(E),Ek({stat:a,userId:n,roomId:o,error:E}),E;case 34:case"end":return I.stop()}},e,null,[[4,25]])})),hm.apply(this,arguments)}function Ek(e){var t=e.stat,n=e.userId,i=e.error;i?ke.logFailedEvent({eventType:Fb,error:i,userId:n}):ke.logSuccessEvent({eventType:Fb,delta:t.delta,userId:n}),ke.uploadEvent({log:"stat-schedule:"+JSON.stringify(t),userId:n})}function pl(e){var t,n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Qe;return t=Kf||(NS(e)?n===Qe?sN:cN:n===Qe?aN:oN),"https://".concat(t,"/api/v1/config")}function LV(e,t,n){return new Promise(function(i,r){cl({url:e,body:t,timeout:n.timeout}).then(function(o){o.data.code===0?i(o.data.data):r({code:o.data.code,message:o.data.msg})}).catch(r)})}Y.on(sa,function(){return ki(!0)}),Y.on(D4,function(){return ki(!0)}),Y.on(O4,function(){return ki(!0)}),Y.on(KS,function(){return ki(!0)}),Y.on(hl,function(e){e.state===jf&&ki(!0)});var Rk=function(e,t){return ic({retryFunction:LV,settings:{retries:3,timeout:0},onError:t,onRetrying:e})};function MV(e,t,n){return new Promise(function(i,r){var o,c=null;(o=[Rk(function(a){return t.count[0]=a+1},function(a,s){t.msg[0]=a.message,c||s()})(pl(n,Qe),e,{get timeout(){return 1e3*sl(2+t.count[0])}}),Rk(function(a){return t.count[1]=a+1},function(a,s){t.msg[1]=a.message,c||s()})(pl(n,er),e,{get timeout(){return 1e3*sl(2+t.count[1])}})],new Promise(function(a,s){var l=[];o.forEach(function(u){u.then(a).catch(function(f){l.push(f),l.length===o.length&&s(l)})})})).then(function(a){i(c=a)}).catch(r)})}var NV=function(){function e(i){Q(this,e),this.client_=i.client,this.sdkAppId_=i.sdkAppId,this.userId_=i.userId,this.userSig_=i.userSig,this.url_=i.url,this.backupUrl_=i.backupUrl;var r="?sdkAppId=".concat(encodeURIComponent(this.sdkAppId_),"&userId=").concat(encodeURIComponent(this.userId_),"&userSig=").concat(encodeURIComponent(this.userSig_),"&roomId=").concat(encodeURIComponent(i.roomId)),o=this.client_.getSystemResult();if(o&&o.detail){var c=o.detail,a=c.isH264EncodeSupported,s=c.isVp8EncodeSupported,l=c.isH264DecodeSupported,u=c.isVp8DecodeSupported;r+="&enc264=".concat(Number(a),"&dec264=").concat(Number(l),"&encVp8=").concat(Number(s),"&decVp8=").concat(Number(u))}i.signalDomainWhenUnifiedProxy&&(r+="&signalDomain=".concat(encodeURIComponent(i.signalDomainWhenUnifiedProxy))),this.urlParams=r,this.isConnected_=!1,this.isConnecting_=!1,this.socketInUse_=null,this.socket_=null,this.backupSocket_=null,this.backupTimer_=-1,this.signalInfo_={},this.currentState_=fl,this.reconnectionCount_=0,this.reconnectionTimer_=-1,this.lastMessageTime_=-1,this.seq_=0,this.log_=_e.createLogger({id:"ws|"+this.userId_,userId:this.userId_,sdkAppId:this.sdkAppId_}),this.emitter_=new Si}var t,n;return Ie(e,[{key:"urlWithParam_",get:function(){return"".concat(this.url_).concat(this.urlParams)}},{key:"backupUrlWithParam_",get:function(){return"".concat(this.backupUrl_).concat(this.urlParams)}},{key:"isOnline",get:function(){return this.currentState_===oc&&Date.now()-this.lastMessageTime_<12e3}},{key:"connect",value:function(){var i=this;return new Promise(function(r,o){i.log_.info("connect to url: ".concat(i.urlWithParam_)),i.emitConnectionStateChanged(vk),i.socket_=new WebSocket(i.urlWithParam_),i.bindSocket(i.socket_),i.backupTimer_=setTimeout(function(){i.isConnected_||(i.log_.info("trying to connect to backupUrl"),i.tryConnectBackup())},5e3);var c=setTimeout(function(){i.close(),o(new te({code:Z.JOIN_ROOM_FAILED,message:"join room timeout"}))},1e4);i.once(ac,function(){clearTimeout(c),r()}),i.once(im,function(a){clearTimeout(c),o(a)})})}},{key:"tryConnectBackup",value:function(){this.backupSocket_||(this.unbindAndCloseSocket(Qe),this.log_.debug("try to connect to url: ".concat(this.backupUrlWithParam_)),this.backupSocket_=new WebSocket(this.backupUrlWithParam_),this.bindSocket(this.backupSocket_))}},{key:"bindSocket",value:function(i){i.onopen=this.onopen.bind(this),i.onclose=this.onclose.bind(this),i.onerror=this.onerror.bind(this),i.onmessage=this.onmessage.bind(this)}},{key:"unbindSocket",value:function(i){i.onopen=function(){},i.onclose=function(){},i.onerror=function(){},i.onmessage=function(){}}},{key:"unbindAndCloseSocket",value:function(i){if(i===Qe){if(this.socket_){this.unbindSocket(this.socket_);try{this.socket_.close(1e3)}catch(r){}this.socket_=null}}else if(this.backupSocket_){this.unbindSocket(this.backupSocket_);try{this.backupSocket_.close(1e3)}catch(r){}this.backupSocket_=null}}},{key:"clearBackupTimer",value:function(){this.backupTimer_!==-1&&(clearTimeout(this.backupTimer_),this.backupTimer_=-1)}},{key:"clearReconnectionTimer",value:function(){this.reconnectionTimer_!==-1&&(clearTimeout(this.reconnectionTimer_),this.reconnectionTimer_=-1)}},{key:"onopen",value:function(i){if(!this.isConnected_){this.isConnected_=!0,this.isConnecting_=!1,this.isReconnecting_&&Br(this.signalInfo_)&&this.stopReconnection(),this.clearBackupTimer(),i.target===this.socket_?(this.unbindAndCloseSocket(er),this.socketInUse_=this.socket_):(this.unbindAndCloseSocket(Qe),this.socketInUse_=this.backupSocket_);var r=i.target.url;this.log_.info("websocket[".concat(r,"] is connected")),this.currentState_===vk?this.addSignalEvent(sV,"signal channel is connected"):this.currentState_===am&&this.addSignalEvent(dV,"signal channel reconnect success"),this.emitConnectionStateChanged(oc),this.emitter_.emit(ac)}}},{key:"onclose",value:function(i){var r=i.target.url,o=i.target===this.socketInUse_;if(this.log_.info("websocket[".concat(r," InUse: ").concat(o,"] is closed with code: ").concat(i.code)),o&&(this.isConnected_=!1,this.emitConnectionStateChanged(fl),this.addSignalEvent(oV,"signal channel is disconnected"),!i.wasClean||i.code!==1e3)){this.log_.warn("onclose code:".concat(i.code," reason:").concat(i.reason)),this.log_.warn("close current websocket and schedule a reconnect timeout"),this.socketInUse_.onclose=function(){},this.socketInUse_.close(4011);var c=this.socketInUse_===this.socket_;this.socket_=this.backupSocket_=this.socketInUse_=null,this.reconnect(c?er:Qe)}}},{key:"onerror",value:function(i){var r=i.target.url;if(this.log_.error("websocket[".concat(r,"] error observed")),this.isConnected_){if(i.target===this.socketInUse_){this.isConnected_=!1,this.unbindAndCloseSocket(Qe),this.unbindAndCloseSocket(er);var o=this.socketInUse_===this.socket_;this.socketInUse_=null,this.reconnect(o?er:Qe)}}else this.isReconnecting_||ke.logFailedEvent({userId:this.client_.getUserId(),eventType:Hf,code:Z.UNKNOWN}),i.target==this.socket_?(this.unbindAndCloseSocket(Qe),this.reconnect(er)):(this.unbindAndCloseSocket(er),this.reconnect(Qe));this.isConnecting_=!1,this.isConnected_=!1}},{key:"onmessage",value:function(i){if(this.isConnected_){this.lastMessageTime_=Date.now();var r=JSON.parse(i.data),o=r.cmd,c=r.data,a=Object.values(jr),s=Object.keys(jr)[a.indexOf(o)],l=st[s];switch(kU.includes(o)||(this.log_.debug("received msg: ".concat(i.data)),this.log_.info("Received event: [ ".concat(l||"unknown cmd: "+o," ]"))),o){case jr.CHANNEL_SETUP_RESULT:if(r.code===0)this.signalInfo_.clientIp=c.clientIp,this.signalInfo_.signalIp=c.signalInnerIp,this.signalInfo_.tinyId=r.tinyId,c.svrTime&&function(f){tf=f-new Date().getTime();var S=new Date;S.setTime(f),_e.info("baseTime from server: "+S+" offset: "+tf)}(c.svrTime),this.log_.info("ChannelSetup Success"),ke.logSuccessEvent({userId:this.userId_,eventType:Hf}),this.emitter_.emit(pk,{signalInfo:this.signalInfo_});else{var u=new te({code:Z.SIGNAL_CHANNEL_SETUP_FAILED,extraCode:r.code,message:ae({key:wN,data:{errorCode:r.code,errorMsg:r.message}})});this.log_.error("".concat(r.code,", ").concat(r.message)),this.close(),ke.logFailedEvent({userId:this.userId_,eventType:Hf,error:u}),this.emitter_.emit(mk,u)}break;case jr.JOIN_ROOM_RESULT:r.code===0&&(this.signalInfo_.relayIp=c.relayOuterIp,this.signalInfo_.relayInnerIp=c.relayInnerIp,this.signalInfo_.relayPort=c.relayPort,this.log_.info("signalIp:".concat(this.signalInfo_.signalIp," clientIp:").concat(this.signalInfo_.clientIp," relayIp: ").concat(this.signalInfo_.relayIp))),this.emitter_.emit(l,{data:r});break;case jr.CHANNEL_RECONNECT_RESULT:r.code===0?(this.log_.warn("reconnect success"),this.stopReconnection(),ke.logSuccessEvent({userId:this.userId_,eventType:Mb}),this.client_.syncUserList(),this.client_.checkConnectionsToReconnect()):(this.log_.warn("reconnect failed, ".concat(r.code," ").concat(r.message)),this.client_.reJoin());break;default:this.emitter_.emit(l,{data:r})}}}},{key:"addSignalEvent",value:function(i,r){vn(this.userId_,{eventId:i,eventDesc:r,timestamp:an(),userId:this.userId_,tinyId:this.signalInfo_.tinyId})}},{key:"reconnect",value:(n=H(p().mark(function i(){var r,o,c,a,s=this,l=arguments;return p().wrap(function(u){for(;;)switch(u.prev=u.next){case 0:if(r=l.length>0&&l[0]!==void 0?l[0]:Qe,!this.isConnecting_&&this.reconnectionTimer_===-1){u.next=4;break}return this.log_.info("signal channel is reconnecting, ignoring current reconnection"),u.abrupt("return");case 4:if(Y.emit(KS,this.client_),!(this.reconnectionCount_>=Ff)){u.next=12;break}return this.log_.warn("SDK has tried reconnect signal channel for ".concat(Ff," times, but all failed. please check your network")),o=new te({code:Z.SIGNAL_CHANNEL_RECONNECTION_FAILED,message:ae({key:IN})}),ke.logFailedEvent({userId:this.client_.getUserId(),eventType:Mb,error:o}),this.addSignalEvent(hV,"signal channel reconnect fail"),this.emitter_.emit(im,o),u.abrupt("return");case 12:if(this.isConnecting_=!0,this.reconnectionCount_++,this.currentState_!==am&&(this.emitConnectionStateChanged(am),this.addSignalEvent(lV,"signal channel is reconnecting")),this.log_.warn("reconnecting to ".concat(r," signal channel [").concat(this.reconnectionCount_,"/").concat(Ff,"]")),!(this.reconnectionCount_>=3&&this.reconnectionCount_%3==0)){u.next=20;break}return this.log_.warn("re-schedule to get new ws url"),u.next=20,this.reGetSignalChannelUrl();case 20:c=this.getReconnectionUrl(r),r===Qe?(this.socket_=new WebSocket(c),this.bindSocket(this.socket_)):(this.backupSocket_=new WebSocket(c),this.bindSocket(this.backupSocket_)),a=xp(this.reconnectionCount_),this.reconnectionTimer_=setTimeout(function(){s.log_.warn("reconnect ".concat(r," signal channel timeout(").concat(a/1e3,"s), close and try again")),s.isConnecting_=!1,s.clearReconnectionTimer(),s.unbindAndCloseSocket(r),s.reconnect(r===Qe?er:Qe)},a);case 24:case"end":return u.stop()}},i,this)})),function(){return n.apply(this,arguments)})},{key:"reGetSignalChannelUrl",value:(t=H(p().mark(function i(){var r,o,c,a;return p().wrap(function(s){for(;;)switch(s.prev=s.next){case 0:if(s.prev=0,!this.client_.getWSProxy()&&!this.client_.getUnifiedProxy()){s.next=3;break}return s.abrupt("return");case 3:return ki(!0),s.next=6,this.client_.schedule(this.client_.getRoomId());case 6:r=this.client_.getSignalChannelUrl(),o=r.mainUrl,c=r.backupUrl,this.url_=o,this.backupUrl_=c,(a=new URLSearchParams(this.urlParams)).has("signalDomain")&&(a.set("signalDomain",o),this.urlParams=a.toString()),s.next=15;break;case 13:s.prev=13,s.t0=s.catch(0);case 15:case"end":return s.stop()}},i,this,[[0,13]])})),function(){return t.apply(this,arguments)})},{key:"isConnected",value:function(){return this.isConnected_}},{key:"isReconnecting_",get:function(){return this.reconnectionTimer_!==-1}},{key:"getReconnectionUrl",value:function(i){var r=i===Qe?this.urlWithParam_:this.backupUrlWithParam_;if(!Br(this.signalInfo_)&&r.indexOf("&rc=1")===-1){var o=this.client_.getRoomId(),c=this.client_.getUseStringRoomId();r+="&rc=1&relayInnerIp=".concat(this.signalInfo_.relayInnerIp,"&relayOuterIp=").concat(this.signalInfo_.relayIp,"&relayPort=").concat(this.signalInfo_.relayPort,"&roomId=").concat(o,"&useStringRoomId=").concat(c)}return r}},{key:"send",value:function(i){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(this.isConnected_){var o={cmd:i,data:r,userId:this.userId_,tinyId:this.signalInfo_.tinyId,seq:++this.seq_};return this.socketInUse_.send(JSON.stringify(o)),o.seq}}},{key:"sendWaitForResponse",value:function(i){var r=this,o=i.command,c=i.data,a=i.timeout,s=a===void 0?5e3:a,l=i.responseCommand,u=i.commandDesc,f=i.enableLog,S=f===void 0||f;return new Promise(function(x,E){var I=setTimeout(function(){r.off(l,m);var v=new te({code:Z.API_CALL_TIMEOUT,message:ae({key:xN,data:{commandDesc:u,command:o}})});S&&r.log_.warn(v),E(v)},s),m=function v(w){w.data.seq===T&&(clearTimeout(I),r.off(l,v),x(w))};r.on(l,m);var T=r.send(o,c)})}},{key:"sendWaitForResponseWithRetry",value:function(){var i=this,r=arguments.length<=0?void 0:arguments[0],o=r.commandDesc,c=r.command,a=r.retries,s=a===void 0?0:a,l=r.retryTimeout,u=l===void 0?0:l;return ic({retryFunction:this.sendWaitForResponse,onRetrying:function(f){i.log_.warn("".concat(o||c," timeout observed, retrying [").concat(f,"/").concat(s,"]"))},settings:{retries:s,timeout:u},context:this}).apply(void 0,arguments)}},{key:"getCurrentState",value:function(){return this.currentState_}},{key:"getSignalInfo",value:function(){return this.signalInfo_}},{key:"stopReconnection",value:function(){this.isReconnecting_&&(this.reconnectionCount_=0,this.clearReconnectionTimer())}},{key:"close",value:function(){this.log_.info("close SignalChannel"),this.clearBackupTimer(),this.stopReconnection(),this.signalInfo_={},this.isConnecting_=!1,this.isConnected_=!1,this.socketInUse_=null,this.unbindAndCloseSocket(Qe),this.unbindAndCloseSocket(er),this.emitConnectionStateChanged(fl)}},{key:"on",value:function(i,r,o){this.emitter_.on(i,r,o)}},{key:"removeListener",value:function(i,r,o){this.emitter_.removeListener(i,r,o)}},{key:"once",value:function(i,r,o){this.emitter_.once(i,r,o)}},{key:"off",value:function(i,r,o){this.emitter_.off(i,r,o)}},{key:"emitConnectionStateChanged",value:function(i){i!==this.currentState_&&(this.emitter_.emit(rm,{prevState:this.currentState_,state:i}),this.currentState_=i)}}]),e}(),UV=Le,VV=rn.find,jV=uu,Ak="find",Pk=!0;Ak in[]&&Array(1).find(function(){Pk=!1}),UV({target:"Array",proto:!0,forced:Pk},{find:function(e){return VV(this,e,arguments.length>1?arguments[1]:void 0)}}),jV(Ak);var rr={},Dk={},fm={exports:{}},Ok=fm.exports={v:[{name:"version",reg:/^(\d*)$/}],o:[{name:"origin",reg:/^(\S*) (\d*) (\d*) (\S*) IP(\d) (\S*)/,names:["username","sessionId","sessionVersion","netType","ipVer","address"],format:"%s %s %d %s IP%d %s"}],s:[{name:"name"}],i:[{name:"description"}],u:[{name:"uri"}],e:[{name:"email"}],p:[{name:"phone"}],z:[{name:"timezones"}],r:[{name:"repeats"}],t:[{name:"timing",reg:/^(\d*) (\d*)/,names:["start","stop"],format:"%d %d"}],c:[{name:"connection",reg:/^IN IP(\d) (\S*)/,names:["version","ip"],format:"IN IP%d %s"}],b:[{push:"bandwidth",reg:/^(TIAS|AS|CT|RR|RS):(\d*)/,names:["type","limit"],format:"%s:%s"}],m:[{reg:/^(\w*) (\d*) ([\w/]*)(?: (.*))?/,names:["type","port","protocol","payloads"],format:"%s %d %s %s"}],a:[{push:"rtp",reg:/^rtpmap:(\d*) ([\w\-.]*)(?:\s*\/(\d*)(?:\s*\/(\S*))?)?/,names:["payload","codec","rate","encoding"],format:function(e){return e.encoding?"rtpmap:%d %s/%s/%s":e.rate?"rtpmap:%d %s/%s":"rtpmap:%d %s"}},{push:"fmtp",reg:/^fmtp:(\d*) ([\S| ]*)/,names:["payload","config"],format:"fmtp:%d %s"},{name:"control",reg:/^control:(.*)/,format:"control:%s"},{name:"rtcp",reg:/^rtcp:(\d*)(?: (\S*) IP(\d) (\S*))?/,names:["port","netType","ipVer","address"],format:function(e){return e.address!=null?"rtcp:%d %s IP%d %s":"rtcp:%d"}},{push:"rtcpFbTrrInt",reg:/^rtcp-fb:(\*|\d*) trr-int (\d*)/,names:["payload","value"],format:"rtcp-fb:%s trr-int %d"},{push:"rtcpFb",reg:/^rtcp-fb:(\*|\d*) ([\w-_]*)(?: ([\w-_]*))?/,names:["payload","type","subtype"],format:function(e){return e.subtype!=null?"rtcp-fb:%s %s %s":"rtcp-fb:%s %s"}},{push:"ext",reg:/^extmap:(\d+)(?:\/(\w+))?(?: (urn:ietf:params:rtp-hdrext:encrypt))? (\S*)(?: (\S*))?/,names:["value","direction","encrypt-uri","uri","config"],format:function(e){return"extmap:%d"+(e.direction?"/%s":"%v")+(e["encrypt-uri"]?" %s":"%v")+" %s"+(e.config?" %s":"")}},{name:"extmapAllowMixed",reg:/^(extmap-allow-mixed)/},{push:"crypto",reg:/^crypto:(\d*) ([\w_]*) (\S*)(?: (\S*))?/,names:["id","suite","config","sessionConfig"],format:function(e){return e.sessionConfig!=null?"crypto:%d %s %s %s":"crypto:%d %s %s"}},{name:"setup",reg:/^setup:(\w*)/,format:"setup:%s"},{name:"connectionType",reg:/^connection:(new|existing)/,format:"connection:%s"},{name:"mid",reg:/^mid:([^\s]*)/,format:"mid:%s"},{name:"msid",reg:/^msid:(.*)/,format:"msid:%s"},{name:"ptime",reg:/^ptime:(\d*(?:\.\d*)*)/,format:"ptime:%d"},{name:"maxptime",reg:/^maxptime:(\d*(?:\.\d*)*)/,format:"maxptime:%d"},{name:"direction",reg:/^(sendrecv|recvonly|sendonly|inactive)/},{name:"icelite",reg:/^(ice-lite)/},{name:"iceUfrag",reg:/^ice-ufrag:(\S*)/,format:"ice-ufrag:%s"},{name:"icePwd",reg:/^ice-pwd:(\S*)/,format:"ice-pwd:%s"},{name:"fingerprint",reg:/^fingerprint:(\S*) (\S*)/,names:["type","hash"],format:"fingerprint:%s %s"},{push:"candidates",reg:/^candidate:(\S*) (\d*) (\S*) (\d*) (\S*) (\d*) typ (\S*)(?: raddr (\S*) rport (\d*))?(?: tcptype (\S*))?(?: generation (\d*))?(?: network-id (\d*))?(?: network-cost (\d*))?/,names:["foundation","component","transport","priority","ip","port","type","raddr","rport","tcptype","generation","network-id","network-cost"],format:function(e){var t="candidate:%s %d %s %d %s %d typ %s";return t+=e.raddr!=null?" raddr %s rport %d":"%v%v",t+=e.tcptype!=null?" tcptype %s":"%v",e.generation!=null&&(t+=" generation %d"),t+=e["network-id"]!=null?" network-id %d":"%v",t+=e["network-cost"]!=null?" network-cost %d":"%v"}},{name:"endOfCandidates",reg:/^(end-of-candidates)/},{name:"remoteCandidates",reg:/^remote-candidates:(.*)/,format:"remote-candidates:%s"},{name:"iceOptions",reg:/^ice-options:(\S*)/,format:"ice-options:%s"},{push:"ssrcs",reg:/^ssrc:(\d*) ([\w_-]*)(?::(.*))?/,names:["id","attribute","value"],format:function(e){var t="ssrc:%d";return e.attribute!=null&&(t+=" %s",e.value!=null&&(t+=":%s")),t}},{push:"ssrcGroups",reg:/^ssrc-group:([\x21\x23\x24\x25\x26\x27\x2A\x2B\x2D\x2E\w]*) (.*)/,names:["semantics","ssrcs"],format:"ssrc-group:%s %s"},{name:"msidSemantic",reg:/^msid-semantic:\s?(\w*) (\S*)/,names:["semantic","token"],format:"msid-semantic: %s %s"},{push:"groups",reg:/^group:(\w*) (.*)/,names:["type","mids"],format:"group:%s %s"},{name:"rtcpMux",reg:/^(rtcp-mux)/},{name:"rtcpRsize",reg:/^(rtcp-rsize)/},{name:"sctpmap",reg:/^sctpmap:([\w_/]*) (\S*)(?: (\S*))?/,names:["sctpmapNumber","app","maxMessageSize"],format:function(e){return e.maxMessageSize!=null?"sctpmap:%s %s %s":"sctpmap:%s %s"}},{name:"xGoogleFlag",reg:/^x-google-flag:([^\s]*)/,format:"x-google-flag:%s"},{push:"rids",reg:/^rid:([\d\w]+) (\w+)(?: ([\S| ]*))?/,names:["id","direction","params"],format:function(e){return e.params?"rid:%s %s %s":"rid:%s %s"}},{push:"imageattrs",reg:new RegExp("^imageattr:(\\d+|\\*)[\\s\\t]+(send|recv)[\\s\\t]+(\\*|\\[\\S+\\](?:[\\s\\t]+\\[\\S+\\])*)(?:[\\s\\t]+(recv|send)[\\s\\t]+(\\*|\\[\\S+\\](?:[\\s\\t]+\\[\\S+\\])*))?"),names:["pt","dir1","attrs1","dir2","attrs2"],format:function(e){return"imageattr:%s %s %s"+(e.dir2?" %s %s":"")}},{name:"simulcast",reg:new RegExp("^simulcast:(send|recv) ([a-zA-Z0-9\\-_~;,]+)(?:\\s?(send|recv) ([a-zA-Z0-9\\-_~;,]+))?$"),names:["dir1","list1","dir2","list2"],format:function(e){return"simulcast:%s %s"+(e.dir2?" %s %s":"")}},{name:"simulcast_03",reg:/^simulcast:[\s\t]+([\S+\s\t]+)$/,names:["value"],format:"simulcast: %s"},{name:"framerate",reg:/^framerate:(\d+(?:$|\.\d+))/,format:"framerate:%s"},{name:"sourceFilter",reg:/^source-filter: *(excl|incl) (\S*) (IP4|IP6|\*) (\S*) (.*)/,names:["filterMode","netType","addressTypes","destAddress","srcList"],format:"source-filter: %s %s %s %s %s"},{name:"bundleOnly",reg:/^(bundle-only)/},{name:"label",reg:/^label:(.+)/,format:"label:%s"},{name:"sctpPort",reg:/^sctp-port:(\d+)$/,format:"sctp-port:%s"},{name:"maxMessageSize",reg:/^max-message-size:(\d+)$/,format:"max-message-size:%s"},{push:"tsRefClocks",reg:/^ts-refclk:([^\s=]*)(?:=(\S*))?/,names:["clksrc","clksrcExt"],format:function(e){return"ts-refclk:%s"+(e.clksrcExt!=null?"=%s":"")}},{name:"mediaClk",reg:/^mediaclk:(?:id=(\S*))? *([^\s=]*)(?:=(\S*))?(?: *rate=(\d+)\/(\d+))?/,names:["id","mediaClockName","mediaClockValue","rateNumerator","rateDenominator"],format:function(e){var t="mediaclk:";return t+=e.id!=null?"id=%s %s":"%v%s",t+=e.mediaClockValue!=null?"=%s":"",t+=e.rateNumerator!=null?" rate=%s":"",t+=e.rateDenominator!=null?"/%s":""}},{name:"keywords",reg:/^keywds:(.+)$/,format:"keywds:%s"},{name:"content",reg:/^content:(.+)/,format:"content:%s"},{name:"bfcpFloorCtrl",reg:/^floorctrl:(c-only|s-only|c-s)/,format:"floorctrl:%s"},{name:"bfcpConfId",reg:/^confid:(\d+)/,format:"confid:%s"},{name:"bfcpUserId",reg:/^userid:(\d+)/,format:"userid:%s"},{name:"bfcpFloorId",reg:/^floorid:(.+) (?:m-stream|mstrm):(.+)/,names:["id","mStream"],format:"floorid:%s mstrm:%s"},{push:"invalid",names:["value"]}]};Object.keys(Ok).forEach(function(e){Ok[e].forEach(function(t){t.reg||(t.reg=/(.*)/),t.format||(t.format="%s")})}),function(e){var t=function(c){return String(Number(c))===c?Number(c):c},n=function(c,a,s){var l=c.name&&c.names;c.push&&!a[c.push]?a[c.push]=[]:l&&!a[c.name]&&(a[c.name]={});var u=c.push?{}:l?a[c.name]:a;(function(f,S,x,E){if(E&&!x)S[E]=t(f[1]);else for(var I=0;I<x.length;I+=1)f[I+1]!=null&&(S[x[I]]=t(f[I+1]))})(s.match(c.reg),u,c.names,c.name),c.push&&a[c.push].push(u)},i=fm.exports,r=RegExp.prototype.test.bind(/^([a-z])=(.*)/);e.parse=function(c){var a={},s=[],l=a;return c.split(/(\r\n|\r|\n)/).filter(r).forEach(function(u){var f=u[0],S=u.slice(2);f==="m"&&(s.push({rtp:[],fmtp:[]}),l=s[s.length-1]);for(var x=0;x<(i[f]||[]).length;x+=1){var E=i[f][x];if(E.reg.test(S))return n(E,l,S)}}),a.media=s,a};var o=function(c,a){var s=a.split(/=(.+)/,2);return s.length===2?c[s[0]]=t(s[1]):s.length===1&&a.length>1&&(c[s[0]]=void 0),c};e.parseParams=function(c){return c.split(/;\s?/).reduce(o,{})},e.parseFmtpConfig=e.parseParams,e.parsePayloads=function(c){return c.toString().split(" ").map(Number)},e.parseRemoteCandidates=function(c){for(var a=[],s=c.split(" ").map(t),l=0;l<s.length;l+=3)a.push({component:s[l],ip:s[l+1],port:s[l+2]});return a},e.parseImageAttributes=function(c){return c.split(" ").map(function(a){return a.substring(1,a.length-1).split(",").reduce(o,{})})},e.parseSimulcastStreamList=function(c){return c.split(";").map(function(a){return a.split(",").map(function(s){var l,u=!1;return s[0]!=="~"?l=t(s):(l=t(s.substring(1,s.length)),u=!0),{scid:l,paused:u}})})}}(Dk);var pm=fm.exports,BV=/%[sdv%]/g,FV=function(e){var t=1,n=arguments,i=n.length;return e.replace(BV,function(r){if(t>=i)return r;var o=n[t];switch(t+=1,r){case"%%":return"%";case"%s":return String(o);case"%d":return Number(o);case"%v":return""}})},uc=function(e,t,n){var i=[e+"="+(t.format instanceof Function?t.format(t.push?n:n[t.name]):t.format)];if(t.names)for(var r=0;r<t.names.length;r+=1){var o=t.names[r];t.name?i.push(n[t.name][o]):i.push(n[t.names[r]])}else i.push(n[t.name]);return FV.apply(null,i)},HV=["v","o","s","i","u","e","p","c","b","t","r","z","a"],GV=["i","c","b","a"],ua=Dk,zV=function(e,t){t=t||{},e.version==null&&(e.version=0),e.name==null&&(e.name=" "),e.media.forEach(function(o){o.payloads==null&&(o.payloads="")});var n=t.outerOrder||HV,i=t.innerOrder||GV,r=[];return n.forEach(function(o){pm[o].forEach(function(c){c.name in e&&e[c.name]!=null?r.push(uc(o,c,e)):c.push in e&&e[c.push]!=null&&e[c.push].forEach(function(a){r.push(uc(o,c,a))})})}),e.media.forEach(function(o){r.push(uc("m",pm.m[0],o)),i.forEach(function(c){pm[c].forEach(function(a){a.name in o&&o[a.name]!=null?r.push(uc(c,a,o)):a.push in o&&o[a.push]!=null&&o[a.push].forEach(function(s){r.push(uc(c,a,s))})})})}),r.join(`\r
|
|
55
55
|
`)+`\r
|
|
56
|
-
`};nr.write=IV,nr.parse=sa.parse,nr.parseParams=sa.parseParams,nr.parseFmtpConfig=sa.parseFmtpConfig,nr.parsePayloads=sa.parsePayloads,nr.parseRemoteCandidates=sa.parseRemoteCandidates,nr.parseImageAttributes=sa.parseImageAttributes,nr.parseSimulcastStreamList=sa.parseSimulcastStreamList;var Br=function(e){return nr.parse(e)},mo=function(e){return nr.write(e)},wV=function(e){var t=Br(e);return t.media.forEach(function(n){n.type===Ee&&n.fmtp.forEach(function(i){i.config+=";sprop-stereo=1;stereo=1"})}),mo(t)},sm,cm,um,lm,CV=Oe,dm=pe,EV=Qn,RV=a0,AV=Z_,xk=ue,PV=RangeError,Ik=String,wk=Math.floor,hm=dm(AV),Ck=dm("".slice),cc=dm(1 .toFixed),vo=function(e,t,n){return t===0?n:t%2==1?vo(e,t-1,n*e):vo(e*e,t/2,n)},go=function(e,t,n){for(var i=-1,r=n;++i<6;)r+=t*e[i],e[i]=r%1e7,r=wk(r/1e7)},fm=function(e,t){for(var n=6,i=0;--n>=0;)i+=e[n],e[n]=wk(i/t),i=i%t*1e7},Ek=function(e){for(var t=6,n="";--t>=0;)if(n!==""||t===0||e[t]!==0){var i=Ik(e[t]);n=n===""?i:n+hm("0",7-i.length)+i}return n};CV({target:"Number",proto:!0,forced:xk(function(){return cc(8e-5,3)!=="0.000"||cc(.9,0)!=="1"||cc(1.255,2)!=="1.25"||cc(0xde0b6b3a7640080,0)!=="1000000000000000128"})||!xk(function(){cc({})})},{toFixed:function(e){var t,n,i,r,o=RV(this),c=EV(e),a=[0,0,0,0,0,0],s="",l="0";if(c<0||c>20)throw PV("Incorrect fraction digits");if(o!=o)return"NaN";if(o<=-1e21||o>=1e21)return Ik(o);if(o<0&&(s="-",o=-o),o>1e-21)if(n=(t=function(u){for(var p=0,k=u;k>=4096;)p+=12,k/=4096;for(;k>=2;)p+=1,k/=2;return p}(o*vo(2,69,1))-69)<0?o*vo(2,-t,1):o/vo(2,t,1),n*=4503599627370496,(t=52-t)>0){for(go(a,0,n),i=c;i>=7;)go(a,1e7,0),i-=7;for(go(a,vo(10,i,1),0),i=t-1;i>=23;)fm(a,1<<23),i-=23;fm(a,1<<i),go(a,1,1),fm(a,2),l=Ek(a)}else go(a,0,n),go(a,1<<-t,0),l=Ek(a)+hm("0",c);return l=c>0?s+((r=l.length)<=c?"0."+hm("0",c-r)+l:Ck(l,0,r-c)+"."+Ck(l,r-c)):s+l}});var Rk=((sm=window)===null||sm===void 0?void 0:sm.requestIdleCallback)||function(e){var t=Date.now();return setTimeout(function(){e({didTimeout:!1,timeRemaining:function(){return Math.max(0,50-(Date.now()-t))}})},1e3)},DV=((cm=window)===null||cm===void 0?void 0:cm.cancelIdleCallback)||function(e){clearTimeout(e)},LV=((um=window)===null||um===void 0?void 0:um.cancelAnimationFrame)||((lm=window)===null||lm===void 0?void 0:lm.mozCancelAnimationFrame),_t=function(){function e(){X(this,e)}return Ie(e,null,[{key:"generateTaskID",value:function(){return this.currentTaskID++}},{key:"run",value:function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:eS,n=arguments.length>1?arguments[1]:void 0,i=arguments.length>2?arguments[2]:void 0;i=q(q({},t===cN?{delay:2e3,count:0,backgroundTask:!0}:t===so?{delay:1e4,count:0}:t===Yu?{fps:60,delay:16.6,count:0,backgroundTask:!0}:{delay:2e3,count:0,backgroundTask:!0}),i),OS(n)&&(i=q(q({},i),n)),un(t)&&(n=t,t=eS);var r=q({taskID:this.generateTaskID(),loopCount:0,intervalID:null,timeoutID:null,rafID:null,ricID:null,taskName:t,callback:n},i);return this.taskMap.set(r.taskID,r),this[t](r),r.taskID}},{key:"interval",value:function(t){var n=this;return t.intervalID=setInterval(function(){t.callback(),t.loopCount+=1,n.isBreakLoop(t)},t.delay)}},{key:"timeout",value:function(t){var n=this;return t.timeoutID=setTimeout(function i(){if(t.callback(),t.loopCount+=1,!n.isBreakLoop(t))return t.timeoutID=setTimeout(i,t.delay)},t.delay)}},{key:"ric",value:function(t){var n,i=this,r=Ct();return t.ricID=Rk(function o(){if((n=Ct()-r)>=t.delay&&(r=Ct()-Math.floor(n%t.delay),t.callback(),t.loopCount+=1),!i.isBreakLoop(t))return t.ricID=Rk(o,{timeout:t.delay})},{timeout:t.delay})}},{key:"raf",value:function(t){var n=this;t.delay=(1e3/t.fps).toFixed(2);var i,r=Ct(),o=function a(){if(document.hidden&&t.backgroundTask)return i=Ct()-r,r=Ct(),t.callback(),t.loopCount+=1,n.isBreakLoop(t)?void 0:t.timeoutID=setTimeout(a,t.delay-Math.floor(i%t.delay));if((i=Ct()-r)>=t.delay&&(r=Ct()-Math.floor(i%t.delay),t.callback(),t.loopCount+=1),!n.isBreakLoop(t))return t.rafID=requestAnimationFrame(a)};if(t.rafID=requestAnimationFrame(o),t.backgroundTask){var c=function(){if(document.hidden){var a=Ct()-r;a>=t.delay?o():t.timeoutID=setTimeout(o,t.delay-a)}};document.addEventListener("visibilitychange",c),t.onVisibilitychange=c,document.hidden&&c()}return t.taskID}},{key:"hasTask",value:function(t){return this.taskMap.has(t)}},{key:"clearTask",value:function(t){if(!this.taskMap.has(t))return!0;var n=this.taskMap.get(t),i=n.intervalID,r=n.timeoutID,o=n.rafID,c=n.ricID,a=n.onVisibilitychange;return i&&clearInterval(i),r&&clearTimeout(r),o&&LV(o),c&&DV(c),a&&document.removeEventListener("visibilitychange",a),this.taskMap.delete(t),!0}},{key:"isBreakLoop",value:function(t){return!this.taskMap.has(t.taskID)||t.count!==0&&t.loopCount>=t.count&&(this.clearTask(t.taskID),!0)}}]),e}();$e(_t,"taskMap",new Map),$e(_t,"currentTaskID",1);var OV=function(){function e(){X(this,e),this.prefix_="TRTC",this.queue_=new Map,this.checkStorage()}return Ie(e,[{key:"getRealKey",value:function(t){return"".concat(this.prefix_,"_").concat(t)}},{key:"checkStorage",value:function(){var t=this;if(na()){var n=Object.keys(localStorage).filter(function(i){if(i.startsWith(t.prefix_)){var r=JSON.parse(localStorage.getItem(i));if(r&&r.expiresIn<Date.now())return!0}return!1});n.forEach(function(i){return localStorage.removeItem(i)})}}},{key:"doFlush",value:function(){if(na())try{var t,n=oe(this.queue_);try{for(n.s();!(t=n.n()).done;){var i=Te(t.value,2),r=i[0],o=i[1];localStorage.setItem(r,JSON.stringify(o))}}catch(c){n.e(c)}finally{n.f()}}catch(c){_e.warn(c)}}},{key:"getItem",value:function(t){if(!na())return null;try{var n=JSON.parse(localStorage.getItem(this.getRealKey(t)));return n&&n.expiresIn>=Date.now()?n.value:null}catch(i){_e.warn(i)}}},{key:"setItem",value:function(t,n){var i=arguments.length>2&&arguments[2]!==void 0&&arguments[2];if(na())try{var r={expiresIn:Date.now()+qb,value:n};i?localStorage.setItem(this.getRealKey(t),JSON.stringify(r)):(this.queue_.set(this.getRealKey(t),r),_t.hasTask(this.intervalId_)||(this.intervalId_=_t.run(so,this.doFlush.bind(this),{count:1})))}catch(o){_e.warn(o)}}},{key:"deleteItem",value:function(t){if(!na())return!1;try{return t=this.getRealKey(t),this.queue_.delete(t),localStorage.removeItem(t),!0}catch(n){return _e.warn(n),!1}}},{key:"clear",value:function(){if(na())try{localStorage.clear()}catch(t){_e.warn(t)}}}]),e}(),_o=new OV,vt={result:!1,detail:{isBrowserSupported:!1,isWebRTCSupported:!1,isMediaDevicesSupported:!1,isH264EncodeSupported:!1,isVp8EncodeSupported:!1,isH264DecodeSupported:!1,isVp8DecodeSupported:!1}},Ak="checkResult",Pk=function(){return!p4&&!Qu&&!($u&&wS<80)&&!(Un&&IS<56)},pm=function(){return["RTCPeerConnection","webkitRTCPeerConnection","RTCIceGatherer"].filter(function(e){return e in window}).length>0},MV=function(){if(!navigator.mediaDevices)return!1;var e=["getUserMedia","enumerateDevices"];return e.filter(function(t){return t in navigator.mediaDevices}).length===e.length},Dk=function(){var e=H(f().mark(function t(){var n,i,r,o,c,a;return f().wrap(function(s){for(;;)switch(s.prev=s.next){case 0:if(!vt.detail.isH264EncodeSupported||!vt.detail.isVp8EncodeSupported){s.next=2;break}return s.abrupt("return",{isH264EncodeSupported:vt.detail.isH264EncodeSupported,isVp8EncodeSupported:vt.detail.isVp8EncodeSupported});case 2:return n="",i=!1,r=!1,s.prev=5,o=new RTCPeerConnection,(c=document.createElement(db)).getContext("2d"),a=c.captureStream(0),o.addTrack(a.getVideoTracks()[0],a),s.next=13,o.createOffer();case 13:return(n=s.sent).sdp.toLowerCase().indexOf("h264")!==-1&&(i=!0),n.sdp.toLowerCase().indexOf("vp8")!==-1&&(r=!0),o.close(),vt.detail.isH264EncodeSupported=i,vt.detail.isVp8EncodeSupported=r,s.abrupt("return",{isH264EncodeSupported:vt.detail.isH264EncodeSupported,isVp8EncodeSupported:vt.detail.isVp8EncodeSupported});case 22:return s.prev=22,s.t0=s.catch(5),s.abrupt("return",{isH264EncodeSupported:!1,isVp8EncodeSupported:!1});case 25:case"end":return s.stop()}},t,null,[[5,22]])}));return function(){return e.apply(this,arguments)}}();function NV(){return mm.apply(this,arguments)}function mm(){return mm=H(f().mark(function e(){return f().wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return t.abrupt("return",new Promise(function(){var n=H(f().mark(function i(r){var o,c,a,s,l,u,p,k,x,E,I,m,T,v;return f().wrap(function(C){for(;;)switch(C.prev=C.next){case 0:return o={encode:!1,decode:!1},c=null,C.prev=2,a=document.createElement("canvas"),s=a.getContext("2d"),a.width=640,a.height=480,l=setInterval(function(){s.fillText("test",Math.floor(640*Math.random()),Math.floor(480*Math.random()))},33),u=-1,p=-1,c=function(){clearInterval(u),clearInterval(l),clearTimeout(p),x.close(),E.close(),k.getTracks().forEach(function(O){return O.stop()})},p=setTimeout(function(){c(),r(o)},3e3),k=a.captureStream(),x=new RTCPeerConnection({}),E=new RTCPeerConnection({offerToReceiveAudio:!0,offerToReceiveVideo:!0}),x.addEventListener("icecandidate",function(O){return E.addIceCandidate(O.candidate)}),E.addEventListener("icecandidate",function(O){return x.addIceCandidate(O.candidate)}),x.addTrack(k.getVideoTracks()[0],k),C.next=20,x.createOffer();case 20:return I=C.sent,C.next=23,x.setLocalDescription(I);case 23:return C.next=25,E.setRemoteDescription(I);case 25:return C.next=27,E.createAnswer();case 27:return m=C.sent,T=Br(m.sdp),v=T.media[0].rtp.findIndex(function(O){return O.codec==="H264"}),T.media[0].rtp=[T.media[0].rtp[v]],T.media[0].fmtp=T.media[0].fmtp.filter(function(O){return O.payload===T.media[0].rtp[0].payload}),T.media[0].rtcpFb=T.media[0].rtcpFb.filter(function(O){return O.payload===T.media[0].rtp[0].payload}),m.sdp=mo(T),C.next=36,E.setLocalDescription(m);case 36:return C.next=38,x.setRemoteDescription(m);case 38:u=setInterval(H(f().mark(function O(){var N,j;return f().wrap(function(_){for(;;)switch(_.prev=_.next){case 0:return o.encode&&o.decode&&(c(),r(o)),_.next=3,x.getStats();case 3:return N=_.sent,_.next=6,E.getStats();case 6:j=_.sent,o.encode||N.forEach(function(b){b.type==="outbound-rtp"&&b.mediaType===xe&&b.framesEncoded>0&&(o.encode=!0)}),o.decode||j.forEach(function(b){b.type==="inbound-rtp"&&b.mediaType===xe&&b.framesDecoded>0&&(o.decode=!0)});case 9:case"end":return _.stop()}},O)})),500),C.next=46;break;case 41:C.prev=41,C.t0=C.catch(2),c(),_e.warn(C.t0),r(o);case 46:case"end":return C.stop()}},i,null,[[2,41]])}));return function(i){return n.apply(this,arguments)}}()));case 1:case"end":return t.stop()}},e)})),mm.apply(this,arguments)}var Lk=function(){var e=H(f().mark(function t(){var n,i,r,o;return f().wrap(function(c){for(;;)switch(c.prev=c.next){case 0:if(!vt.detail.isH264DecodeSupported||!vt.detail.isVp8DecodeSupported){c.next=2;break}return c.abrupt("return",{isH264DecodeSupported:vt.detail.isH264DecodeSupported,isVp8DecodeSupported:vt.detail.isVp8DecodeSupported});case 2:return n="",i=!1,r=!1,c.prev=5,o=new RTCPeerConnection,c.next=9,o.createOffer({offerToReceiveAudio:1,offerToReceiveVideo:1});case 9:return(n=c.sent).sdp.toLowerCase().indexOf("h264")!==-1&&(i=!0),n.sdp.toLowerCase().indexOf("vp8")!==-1&&(r=!0),o.close(),c.abrupt("return",{isH264DecodeSupported:i,isVp8DecodeSupported:r});case 16:return c.prev=16,c.t0=c.catch(5),c.abrupt("return",{isH264DecodeSupported:!1,isVp8DecodeSupported:!1});case 19:case"end":return c.stop()}},t,null,[[5,16]])}));return function(){return e.apply(this,arguments)}}(),UV=function(){var e=H(f().mark(function t(){var n,i,r,o,c,a,s,l,u,p,k,x,E;return f().wrap(function(I){for(;;)switch(I.prev=I.next){case 0:if(Ok()){I.next=2;break}return I.abrupt("return",vt);case 2:return n=Pk(),i=pm(),r=MV(),I.next=7,Dk();case 7:return o=I.sent,c=o.isH264EncodeSupported,a=o.isVp8EncodeSupported,I.next=12,Lk();case 12:if(s=I.sent,l=s.isH264DecodeSupported,u=s.isVp8DecodeSupported,c&&a){I.next=21;break}return I.next=18,Dk();case 18:p=I.sent,c=p.isH264EncodeSupported,a=p.isVp8EncodeSupported;case 21:if(!(c&&l&&(el||tl||k4)&&!Nr&&co()<79)){I.next=29;break}return I.next=24,NV();case 24:k=I.sent,x=k.encode,E=k.decode,c=x,l=E;case 29:return vt.result=n&&i&&r&&(c||a)&&(l||u),vt.detail.isBrowserSupported=n,vt.detail.isWebRTCSupported=i,vt.detail.isMediaDevicesSupported=r,vt.detail.isH264EncodeSupported=c,vt.detail.isVp8EncodeSupported=a,vt.detail.isH264DecodeSupported=l,vt.detail.isVp8DecodeSupported=u,VV(),_o.setItem(Ak,{ua:navigator.userAgent,checkResult:vt},!0),I.abrupt("return",vt);case 40:case"end":return I.stop()}},t)}));return function(){return e.apply(this,arguments)}}(),vm=function(e,t){var n=null;return function(){if(n)return n;for(var i=arguments.length,r=new Array(i),o=0;o<i;o++)r[o]=arguments[o];return(n=e.apply(t||this,r)).then(function(c){return n=null,c}).catch(function(c){throw n=null,c}),n}}(UV);function Ok(){return Object.keys(vt.detail).findIndex(function(e){return!vt.detail[e]})>=0}function VV(){Ok()&&(_e.warn(ie({key:pS})),_e.info("".concat(navigator.userAgent," ").concat(JSON.stringify(vt.detail))))}function Mk(){return!(!navigator.mediaDevices||!navigator.mediaDevices.getDisplayMedia)}function Nk(){return"RTCPeerConnection"in window&&"getReceivers"in window.RTCPeerConnection.prototype}function fl(){return"RTCPeerConnection"in window&&"getSenders"in window.RTCPeerConnection.prototype}function ki(){return"RTCPeerConnection"in window&&"getTransceivers"in window.RTCPeerConnection.prototype}function gm(){return"RTCPeerConnection"in window&&"addTransceiver"in window.RTCPeerConnection.prototype}function _m(){return"RTCRtpSender"in window&&"replaceTrack"in window.RTCRtpSender.prototype}function Uk(){return"RTCRtpSender"in window&&"setParameters"in window.RTCRtpSender.prototype&&fl()}function pl(){return!!ge(navigator.mediaDevices)&&(_e.error(mi.NOT_SUPPORTED_MEDIA),!0)}function ml(){return location.protocol==="http:"&&!ta&&(_e.warn(ie({key:fS})),!0)}var ym="RTCRtpSender"in window&&"createEncodedStreams"in window.RTCRtpSender.prototype&&co()>=86;function bm(e){return!(e.type!=="candidate-pair"||!e.nominated||e.state!=="in-progress"&&e.state!=="succeeded")&&!(tr(e.selected)&&!e.selected)}var Vk=new Map([[Zi,"Android"],[vi,"iOS"],[ES,"Windows"],[Zs,"MacOS"],[RS,"Linux"]]);function Sm(){var e="unknown";return Vk.get(!0)&&(e=Vk.get(!0)),e}function jV(){var e="";return screen.width&&(e+=(screen.width?screen.width*window.devicePixelRatio:"")+" * "+(screen.height?screen.height*window.devicePixelRatio:"")),e}function BV(){var e=!1;return(navigator.getUserMedia||navigator.mediaDevices&&navigator.mediaDevices.getUserMedia)&&(e=!0),e}function FV(){for(var e={isSupported:!1},t=["AudioContext","webkitAudioContext","mozAudioContext","msAudioContext"],n=0;n<t.length;n++)if(t[n]in window){e.isSupported=!0;break}return e.isSupported}function jk(){return!(cp&&co()<86)&&!(vi&&er(gi)&&gi<15)&&!(_p&&_p<63)&&!(!Pk()||!("captureStream"in HTMLCanvasElement.prototype))}var yo=window.MediaStreamTrack&&"getSettings"in MediaStreamTrack.prototype,HV=window.MediaStreamTrack&&"getCapabilities"in MediaStreamTrack.prototype,GV=function(){var e,t,n;return((e=window)===null||e===void 0?void 0:e.OffscreenCanvas)&&((t=window)===null||t===void 0?void 0:t.MediaStreamTrackProcessor)&&((n=window)===null||n===void 0?void 0:n.MediaStreamTrackGenerator)};(function(){ml();var e=_o.getItem(Ak);e&&e.ua===navigator.userAgent&&(vt=e.checkResult),vm()})();var et={STREAM_ADDED:"stream-added",STREAM_REMOVED:"stream-removed",STREAM_UPDATED:"stream-updated",STREAM_PUBLISHED:"stream-published",STREAM_SUBSCRIBED:"stream-subscribed",STREAM_UNSUBSCRIBED:"stream-unsubscribed",STATE_CHANGED:"state-changed",ERROR:"error",CONNECTION_STATE_CHANGED:"connection-state-changed",SEI_MESSAGE:mb},st={STREAM_ADDED:"stream-added",STREAM_REMOVED:"stream-removed",STREAM_UPDATED:"stream-updated",STREAM_SUBSCRIBED:"stream-subscribed",CONNECTION_STATE_CHANGED:"connection-state-changed",PEER_JOIN:"peer-join",PEER_LEAVE:"peer-leave",MUTE_AUDIO:"mute-audio",MUTE_VIDEO:"mute-video",UNMUTE_AUDIO:"unmute-audio",UNMUTE_VIDEO:"unmute-video",CLIENT_BANNED:"client-banned",NETWORK_QUALITY:"network-quality",AUDIO_VOLUME:"audio-volume",SEI_MESSAGE:mb,ERROR:"error"},Bk="player-state-changed",zV="screen-sharing-stopped",WV="connection-state-changed",qV="device-auto-recovered",km="error",vn="player-state-changed",JV=rS;Oe({target:"String",proto:!0,forced:iS("small")},{small:function(){return JV(this,"small","","")}});var KV=function(){function e(o){X(this,e);var c=o.getUserId();this.log_=_e.createLogger({id:c,userId:c,sdkAppId:o.getSDKAppId()}),this.prevReportTime_=0,this.prevReport_={},this.prevEncoderImplementation_="",this.prevQualityLimitationReason_="",this.prevDecoderImplementationMap_=new Map}var t,n,i,r;return Ie(e,[{key:"statInterval",get:function(){return this.prevReportTime_===0?2:(Date.now()-this.prevReportTime_)/1e3}},{key:"getSenderStats",value:(r=H(f().mark(function o(c){var a,s,l,u,p=this;return f().wrap(function(k){for(;;)switch(k.prev=k.next){case 0:if(a={audio:{bytesSent:0,packetsSent:0,audioLevel:0,totalAudioEnergy:0},video:{bytesSent:0,packetsSent:0,framesEncoded:0,frameWidth:0,frameHeight:0,framesSent:0,fpsCapture:0},small:{bytesSent:0,packetsSent:0,framesEncoded:0,frameWidth:0,frameHeight:0,framesSent:0,fpsCapture:0},auxiliary:{bytesSent:0,packetsSent:0,framesEncoded:0,frameWidth:0,frameHeight:0,framesSent:0,fpsCapture:0},rtt:0},s=c.getPeerConnection(),l=c.getSSRC(),!s){k.next=15;break}return k.prev=4,k.next=7,s.getStats();case 7:k.sent.forEach(function(x){if(x.type==="outbound-rtp")if(x.mediaType===xe){if(!Un&&x.bytesSent===0)return;x.ssrc!==l.video||ge(x.encoderImplementation)||p.prevEncoderImplementation_===x.encoderImplementation||(p.log_.info("encoderImplementation change to ".concat(x.encoderImplementation)),p.prevEncoderImplementation_=x.encoderImplementation),x.ssrc!==l.video||ge(x.qualityLimitationReason)||p.prevQualityLimitationReason_===x.qualityLimitationReason||(p.log_.info("qualityLimitationReason change to ".concat(x.qualityLimitationReason)),p.prevQualityLimitationReason_=x.qualityLimitationReason);var E=xe;x.ssrc===l.small?E=Mr:x.ssrc===l.auxiliary&&(E=pt),a[E].bytesSent=x.bytesSent,a[E].packetsSent=x.packetsSent,a[E].framesEncoded=x.framesEncoded}else x.mediaType===Ee&&(a.audio.bytesSent=x.bytesSent,a.audio.packetsSent=x.packetsSent);else x.type==="candidate-pair"?bm(x)&&er(x.currentRoundTripTime)&&(a.rtt=Math.floor(1e3*x.currentRoundTripTime)):x.type==="media-source"&&(x.kind===Ee?(a.audio.audioLevel=x.audioLevel||0,a.audio.totalAudioEnergy=x.totalAudioEnergy||0):x.kind===xe&&(x.trackIdentifier===c.getVideoTrackId(xe)?a.video.fpsCapture=x.framesPerSecond:x.trackIdentifier===c.getVideoTrackId(pt)?a.auxiliary.fpsCapture=x.framesPerSecond:a.small.fpsCapture=x.framesPerSecond));var I;ge(x.audioLevel)||(a.audio.audioLevel=x.audioLevel||0,a.audio.totalAudioEnergy=x.totalAudioEnergy||0),ge(x.frameWidth)||(x.trackIdentifier===c.getVideoTrackId(xe)||x.ssrc===l.video?I=xe:x.trackIdentifier===c.getVideoTrackId(pt)||x.ssrc===l.auxiliary?I=pt:x.trackIdentifier!==c.getVideoTrackId(Mr)&&x.ssrc!==l.small||(I=Mr),I&&(a[I].frameWidth=x.frameWidth,a[I].frameHeight=x.frameHeight,a[I].framesSent=x.framesSent))}),a.audio.audioLevel===0&&(a.audio.audioLevel=((u=c.getLocalStream())===null||u===void 0?void 0:u.getInternalAudioLevel())||0),k.next=15;break;case 12:k.prev=12,k.t0=k.catch(4),this.log_.warn("failed to getStats on sender connection "+k.t0);case 15:return k.abrupt("return",a);case 16:case"end":return k.stop()}},o,this,[[4,12]])})),function(o){return r.apply(this,arguments)})},{key:"getReceiverStats",value:(i=H(f().mark(function o(c){var a,s,l,u,p,k=this;return f().wrap(function(x){for(;;)switch(x.prev=x.next){case 0:if(a={tinyId:c.getTinyId(),userId:c.getUserId(),rtt:0,hasAudio:!1,hasVideo:!1,hasAuxiliary:!1,audio:{bytesReceived:0,packetsReceived:0,packetsLost:0,jitter:0,audioLevel:0,totalAudioEnergy:0},video:{bytesReceived:0,packetsReceived:0,packetsLost:0,framesReceived:0,framesDecoded:0,frameWidth:0,frameHeight:0},auxiliary:{bytesReceived:0,packetsReceived:0,packetsLost:0,framesReceived:0,framesDecoded:0,frameWidth:0,frameHeight:0}},!(s=c.getPeerConnection())){x.next=16;break}return x.prev=3,l=c.getSSRC(),u=c.getTrackState(),x.next=8,s.getStats();case 8:x.sent.forEach(function(E){if(E.type==="inbound-rtp"){if(E.mediaType===Ee&&E.ssrc===l.audio&&u.audio)a.audio.packetsReceived=E.packetsReceived,a.audio.bytesReceived=E.bytesReceived,a.audio.packetsLost=E.packetsLost,a.audio.jitter=E.jitter,a.hasAudio=!0;else if(E.mediaType===xe){if(Un&&E.bytesReceived===0)return;E.ssrc===l.video&&u.video&&(a.video.packetsReceived=E.packetsReceived,a.video.bytesReceived=E.bytesReceived,a.video.packetsLost=E.packetsLost,a.video.framesReceived=E.framesReceived,a.video.framesDecoded=E.framesDecoded,a.video.fpsDecoded=E.framesPerSecond,a.hasVideo=!0,!E.decoderImplementation||k.prevDecoderImplementationMap_.has(a.userId)&&k.prevDecoderImplementationMap_.get(a.userId)===E.decoderImplementation||(k.log_.info("".concat(a.userId," decoderImplementation change to ").concat(E.decoderImplementation)),k.prevDecoderImplementationMap_.set(a.userId,E.decoderImplementation))),E.ssrc===l.auxiliary&&u.auxiliary&&(a.auxiliary.packetsReceived=E.packetsReceived,a.auxiliary.bytesReceived=E.bytesReceived,a.auxiliary.packetsLost=E.packetsLost,a.auxiliary.framesReceived=E.framesReceived,a.auxiliary.framesDecoded=E.framesDecoded,a.auxiliary.fpsDecoded=E.framesPerSecond,a.hasAuxiliary=!0)}}else E.type==="candidate-pair"&&bm(E)&&er(E.currentRoundTripTime)&&(a.rtt=Math.floor(1e3*E.currentRoundTripTime));ge(E.frameWidth)||(E.trackIdentifier!==c.getMainStreamVideoTrackId()&&E.ssrc!==l.video||(a.video.frameWidth=E.frameWidth,a.video.frameHeight=E.frameHeight),E.trackIdentifier!==c.getAuxStreamVideoTrackId()&&E.ssrc!==l.auxiliary||(a.auxiliary.frameWidth=E.frameWidth,a.auxiliary.frameHeight=E.frameHeight)),ge(E.audioLevel)||(a.audio.audioLevel=E.audioLevel||0,a.audio.totalAudioEnergy=E.totalAudioEnergy||0)}),a.audio.audioLevel===0&&(a.audio.audioLevel=((p=c.getMainStream())===null||p===void 0?void 0:p.getInternalAudioLevel())||0),x.next=16;break;case 13:x.prev=13,x.t0=x.catch(3),this.log_.warn("failed to getStats on receiver connection "+x.t0);case 16:return x.abrupt("return",a);case 17:case"end":return x.stop()}},o,this,[[3,13]])})),function(o){return i.apply(this,arguments)})},{key:"getStats",value:(n=H(f().mark(function o(c,a){var s,l,u,p,k,x,E;return f().wrap(function(I){for(;;)switch(I.prev=I.next){case 0:if(s={},!c){I.next=5;break}return I.next=4,this.getSenderStats(c);case 4:s=I.sent;case 5:l=[],u=oe(a),I.prev=7,u.s();case 9:if((p=u.n()).done){I.next=17;break}return(k=Te(p.value,2))[0],x=k[1],I.next=13,this.getReceiverStats(x);case 13:E=I.sent,l.push(E);case 15:I.next=9;break;case 17:I.next=22;break;case 19:I.prev=19,I.t0=I.catch(7),u.e(I.t0);case 22:return I.prev=22,u.f(),I.finish(22);case 25:return I.abrupt("return",{senderStats:s,receiverStats:l});case 26:case"end":return I.stop()}},o,this,[[7,19,22,25]])})),function(o,c){return n.apply(this,arguments)})},{key:"getDifferenceValue",value:function(o,c){if(Si(o))return c;var a=c-o;return a<0?0:a}},{key:"prepareReport",value:function(o){var c=this,a=o.stats,s=o.report,l=o.freezeMap;if(!Si(a.senderStats)){var u;u={uint32_audio_level:1e8*a.senderStats.audio.audioLevel,uint32_audio_energy:1e6*a.senderStats.audio.totalAudioEnergy,uint32_audio_codec_bitrate:a.senderStats.audio.bytesSent,audioLevel:a.senderStats.audio.audioLevel};var p=[],k={uint32_video_stream_type:2,uint32_video_codec_fps:a.senderStats.video.framesSent,uint32_video_capture_fps:a.senderStats.video.fpsCapture,uint32_video_width:a.senderStats.video.frameWidth,uint32_video_height:a.senderStats.video.frameHeight,uint32_video_codec_bitrate:a.senderStats.video.bytesSent,uint32_video_enc_fps:a.senderStats.video.framesEncoded};if(p.push(k),a.senderStats.small.bytesSent){var x={uint32_video_stream_type:3,uint32_video_codec_fps:a.senderStats.small.framesSent||0,uint32_video_capture_fps:a.senderStats.small.fpsCapture||0,uint32_video_width:a.senderStats.small.frameWidth||0,uint32_video_height:a.senderStats.small.frameHeight||0,uint32_video_codec_bitrate:a.senderStats.small.bytesSent,uint32_video_enc_fps:a.senderStats.small.framesEncoded||0};p.push(x)}if(a.senderStats.auxiliary.bytesSent){var E={uint32_video_stream_type:7,uint32_video_codec_fps:a.senderStats.auxiliary.framesSent||0,uint32_video_capture_fps:a.senderStats.auxiliary.fpsCapture||0,uint32_video_width:a.senderStats.auxiliary.frameWidth||0,uint32_video_height:a.senderStats.auxiliary.frameHeight||0,uint32_video_codec_bitrate:a.senderStats.auxiliary.bytesSent,uint32_video_enc_fps:a.senderStats.auxiliary.framesEncoded||0};p.push(E)}var I={uint32_bitrate:0,uint32_rtt:a.senderStats.rtt};s.msg_up_stream_info={msg_audio_status:u,msg_video_status:p,msg_network_status:I}}var m=this.statInterval;s.msg_down_stream_info=[],a.receiverStats.forEach(function(b){var R={};if(R.msg_user_info={str_identifier:b.userId,uint64_tinyid:b.tinyId},R.msg_network_status={uint32_rtt:b.rtt},R.msg_video_status={},b.hasAudio){var P={uint32_audio_codec_bitrate:b.audio.bytesReceived,uint32_audio_total_bitrate:b.audio.bytesReceived,uint32_audio_level:1e8*b.audio.audioLevel,uint32_audio_energy:1e6*b.audio.totalAudioEnergy,uint32_audio_receive:b.audio.packetsReceived,uint32_audio_origin_lost:b.audio.packetsLost,audioLevel:b.audio.audioLevel};R.msg_audio_status=P}if(R.msg_video_status=[],b.hasVideo){var V=l.get(b.userId+"_"+gt),S=V?V.duration:0,h={uint32_video_stream_type:2,uint32_video_receive_fps:b.video.framesReceived,uint32_video_width:b.video.frameWidth,uint32_video_height:b.video.frameHeight,uint32_video_codec_bitrate:b.video.bytesReceived,uint32_video_receive:b.video.packetsReceived,uint32_video_origin_lost:b.video.packetsLost,uint32_video_block_time:S,uint32_video_dec_fps:b.video.framesDecoded};R.msg_video_status.push(h)}if(b.hasAuxiliary){var y=l.get(b.userId+"_"+Dt),A=y?y.duration:0,D={uint32_video_stream_type:7,uint32_video_receive_fps:b.auxiliary.framesReceived,uint32_video_width:b.auxiliary.frameWidth,uint32_video_height:b.auxiliary.frameHeight,uint32_video_codec_bitrate:b.auxiliary.bytesReceived,uint32_video_receive:b.auxiliary.packetsReceived+b.auxiliary.packetsLost,uint32_video_origin_lost:b.auxiliary.packetsLost,uint32_video_block_time:A,uint32_video_dec_fps:b.auxiliary.framesDecoded};R.msg_video_status.push(D)}s.msg_down_stream_info.push(R)});var T=this.prevReport_;if(this.prevReport_=JSON.parse(JSON.stringify(s)),s.msg_up_stream_info.msg_audio_status&&T.msg_up_stream_info.msg_audio_status){var v=T.msg_up_stream_info.msg_audio_status,C=s.msg_up_stream_info.msg_audio_status,O=this.getDifferenceValue(v.uint32_audio_codec_bitrate,C.uint32_audio_codec_bitrate);C.uint32_audio_codec_bitrate=Math.round(8*O/m),s.msg_up_stream_info.msg_network_status.uint32_bitrate+=C.uint32_audio_codec_bitrate}var N=T.msg_up_stream_info.msg_video_status;s.msg_up_stream_info.msg_video_status.forEach(function(b){var R=N.find(function(y){return y.uint32_video_stream_type===b.uint32_video_stream_type});if(!R||R.uint32_video_codec_bitrate===0)return b.uint32_video_codec_bitrate=0,b.uint32_video_enc_fps=0,void(b.uint32_video_codec_fps=0);var P=R.uint32_video_codec_bitrate,V=R.uint32_video_enc_fps,S=R.uint32_video_codec_fps,h=c.getDifferenceValue(P,b.uint32_video_codec_bitrate);b.uint32_video_codec_bitrate=Math.round(8*h/m),s.msg_up_stream_info.msg_network_status.uint32_bitrate+=b.uint32_video_codec_bitrate,b.uint32_video_enc_fps=Math.round(c.getDifferenceValue(V,b.uint32_video_enc_fps)/m),b.uint32_video_codec_fps=Math.round(c.getDifferenceValue(S,b.uint32_video_codec_fps)/m)});var j=s.msg_down_stream_info,_=T.msg_down_stream_info;return j.forEach(function(b){var R=_.find(function(A){return A.msg_user_info.uint64_tinyid===b.msg_user_info.uint64_tinyid});if(R){if(b.msg_audio_status&&R.msg_audio_status){var P=b.msg_audio_status,V=R.msg_audio_status;P.uint32_audio_origin_lost=c.getDifferenceValue(V.uint32_audio_origin_lost,P.uint32_audio_origin_lost),P.uint32_audio_receive=c.getDifferenceValue(V.uint32_audio_receive,P.uint32_audio_receive),P.uint32_audio_receive+=P.uint32_audio_origin_lost;var S=c.getDifferenceValue(V.uint32_audio_codec_bitrate,P.uint32_audio_codec_bitrate);P.uint32_audio_codec_bitrate=Math.round(8*S/m),P.uint32_audio_total_bitrate=Math.round(8*S/m)}if(b.msg_video_status&&R.msg_video_status){var h=b.msg_video_status,y=R.msg_video_status;h.forEach(function(A){var D=y.find(function(Fe){return Fe.uint32_video_stream_type===A.uint32_video_stream_type});if(!D)return A.uint32_video_receive=0,A.uint32_video_origin_lost=0,A.uint32_video_codec_bitrate=0,A.uint32_video_receive_fps=0,void(A.uint32_video_dec_fps=0);var U=D.uint32_video_receive,K=D.uint32_video_origin_lost,J=D.uint32_video_codec_bitrate,ce=D.uint32_video_receive_fps,ae=D.uint32_video_dec_fps;A.uint32_video_origin_lost=c.getDifferenceValue(K,A.uint32_video_origin_lost),A.uint32_video_receive=c.getDifferenceValue(U,A.uint32_video_receive)+A.uint32_video_origin_lost;var qe=c.getDifferenceValue(J,A.uint32_video_codec_bitrate);A.uint32_video_codec_bitrate=Math.round(8*qe/m);var Ue=c.getDifferenceValue(ce,A.uint32_video_receive_fps);A.uint32_video_receive_fps=Math.round(Ue/m),A.uint32_video_dec_fps=Math.round(c.getDifferenceValue(ae,A.uint32_video_dec_fps)/m)})}}}),s}},{key:"getStatsReport",value:(t=H(f().mark(function o(c){var a,s,l,u,p;return f().wrap(function(k){for(;;)switch(k.prev=k.next){case 0:return a=c.uplinkConnection,s=c.downlinkConnections,l=c.freezeMap,u={msg_up_stream_info:{msg_audio_status:{uint32_audio_format:0,uint32_audio_sample_rate:0,uint32_audio_codec_bitrate:0,uint32_audio_receive:0,uint32_audio_origin_lost:0,uint32_audio_level:0,uint32_audio_energy:0,audioLevel:0},msg_video_status:[{uint32_video_stream_type:0,uint32_video_codec_fps:0,uint32_video_capture_fps:0,uint32_video_width:0,uint32_video_height:0,uint32_video_codec_bitrate:0,uint32_video_receive:0,uint32_video_origin_lost:0,uint32_video_final_lost:0,uint32_video_enc_fps:0}],msg_network_status:{uint32_bitrate:0,uint32_rtt:0,uint32_lost:0}},msg_down_stream_info:[{msg_user_info:{str_identifier:"",uint64_tinyid:""},msg_audio_status:{uint32_audio_format:0,uint32_audio_sample_rate:0,uint32_audio_codec_bitrate:0,uint32_audio_total_bitrate:0,uint32_audio_level:0,uint32_audio_energy:0,uint32_audio_receive:0,uint32_audio_origin_lost:0,uint32_audio_final_lost:0,audioLevel:0},msg_video_status:[{uint32_video_stream_type:0,uint32_video_receive_fps:0,uint32_video_width:0,uint32_video_height:0,uint32_video_codec_bitrate:0,uint32_video_receive:0,uint32_video_origin_lost:0,uint32_video_block_time:0,uint32_video_dec_fps:0}],msg_network_status:{uint32_bitrate:0,uint32_rtt:0,uint32_lost:0,uint32_jitter:0}}]},k.next=4,this.getStats(a,s);case 4:return p=k.sent,JSON.stringify(this.prevReport_)==="{}"&&(this.prevReport_=JSON.parse(JSON.stringify(u))),this.prepareReport({stats:p,report:u,freezeMap:l,uplinkConnection:a,downlinkConnections:s}),this.prevReportTime_=Date.now(),k.abrupt("return",u);case 9:case"end":return k.stop()}},o,this)})),function(o){return t.apply(this,arguments)})},{key:"reset",value:function(){this.prevReportTime_=0,this.prevReport_={},this.prevEncoderImplementation_="",this.prevQualityLimitationReason_="",this.prevDecoderImplementationMap_=new Map}}]),e}(),YV=function(){function e(i){var r=i.signalChannel,o=i.connections,c=i.client;X(this,e),this.client_=c,this.signalChannel_=r,this.connections_=o,this.client_=c,this.log_=_e.createLogger({id:"q|"+this.client_.getUserId(),userId:this.client_.getUserId(),sdkAppId:this.client_.getSDKAppId()}),this.uplinkConnection_=null,this.uplinkNetworkQuality_=0,this.uplinkRTT_=0,this.uplinkLoss_=0,this.downlinkNetworkQuality_=0,this.downlinkRTT_=0,this.downlinkLoss_=0,this.downlinkPrevStatMap_=new Map,this.downlinkLossAndRTTMap_=new Map,this.interval_=-1,this.emitter_=new bi,this.initialize()}var t,n;return Ie(e,[{key:"uplinkNetworkQuality",get:function(){return this.uplinkNetworkQuality_},set:function(i){i!==this.uplinkNetworkQuality_&&this.log_.info("uplink network quality change ".concat(this.uplinkNetworkQuality," -> ").concat(i,", rtt: ").concat(this.uplinkRTT_,", loss: ").concat(this.uplinkLoss_)),this.uplinkNetworkQuality_=i}},{key:"downlinkNetworkQuality",get:function(){return this.downlinkNetworkQuality_},set:function(i){if(i!==this.downlinkNetworkQuality_){var r=this.getAverageLossAndRTT(Se(this.downlinkLossAndRTTMap_.values())),o=r.rtt,c=r.loss;this.log_.info("downlink network quality change ".concat(this.downlinkNetworkQuality," -> ").concat(i,", rtt: ").concat(o,", loss: ").concat(c))}this.downlinkNetworkQuality_=i}},{key:"initialize",value:function(){var i=this;this.signalChannel_.on(mt.UPLINK_NETWORK_STATS,function(r){i.handleUplinkNetworkQuality(r)}),this.signalChannel_.on(tm,this.handleSignalConnectionStateChange.bind(this)),this.start()}},{key:"handleUplinkNetworkQuality",value:function(i){if(!this.uplinkConnection_)return this.uplinkNetworkQuality=0,this.uplinkLoss_=0,void(this.uplinkRTT_=0);var r=this.uplinkConnection_.getPeerConnection();if(r&&this.isPeerConnectionDisconnected(r))return this.uplinkNetworkQuality=6,this.uplinkLoss_=0,void(this.uplinkRTT_=0);if(i.data.code===0){var o=i.data.data,c=o.expectAudPkg+o.expectVidPkg,a=o.recvAudPkg+o.recvVidPkg,s=c-a,l=o.delay;if(l&&this.updateDelay(l),c===0&&a===0)return;this.uplinkLoss_=s<=0?0:Math.round(s/c*100),this.uplinkRTT_=o.rtt,this.uplinkNetworkQuality=this.getNetworkQuality(this.uplinkLoss_,this.uplinkRTT_)}}},{key:"handleDownlinkNetworkQuality",value:(n=H(f().mark(function i(){var r,o,c,a,s,l,u,p,k,x,E,I,m,T,v,C=this;return f().wrap(function(O){for(;;)switch(O.prev=O.next){case 0:if(this.connections_&&this.connections_.size!==0){O.next=3;break}return this.downlinkNetworkQuality=0,O.abrupt("return");case 3:if(r=Se(this.connections_.values()),o=r.filter(function(N){return N.getPeerConnection()&&N.getPeerConnection().connectionState===Sb}),r.filter(function(N){return N.getPeerConnection()&&C.isPeerConnectionDisconnected(N.getPeerConnection())}).length!==r.length){O.next=9;break}return this.downlinkNetworkQuality=6,O.abrupt("return");case 9:c=0;case 10:if(!(c<o.length)){O.next=31;break}return a=o[c].getPeerConnection(),O.next=14,this.getStat(a);case 14:if(s=O.sent,l=s.rtt,u=s.totalPacketsLost,p=s.totalPacketsReceived,this.downlinkPrevStatMap_.has(a)){O.next=21;break}return this.downlinkPrevStatMap_.set(a,{totalPacketsLost:u,totalPacketsReceived:p}),O.abrupt("continue",28);case 21:k=0,x=this.downlinkPrevStatMap_.get(a),E=u-x.totalPacketsLost,I=p-x.totalPacketsReceived,k=E<=0||I<0?0:Math.round(E/(E+I)*100),this.downlinkPrevStatMap_.set(a,{totalPacketsLost:u,totalPacketsReceived:p}),this.downlinkLossAndRTTMap_.set(a,{rtt:l,loss:k,userId:o[c].getUserId()});case 28:c++,O.next=10;break;case 31:if(Se(this.downlinkPrevStatMap_.keys()).forEach(function(N){C.isPeerConnectionDisconnected(N)&&(C.downlinkPrevStatMap_.delete(N),C.downlinkLossAndRTTMap_.delete(N))}),this.downlinkLossAndRTTMap_.size!==0){O.next=34;break}return O.abrupt("return");case 34:m=this.getAverageLossAndRTT(Se(this.downlinkLossAndRTTMap_.values())),T=m.rtt,v=m.loss,this.downlinkRTT_=T,this.downlinkLoss_=v,this.downlinkNetworkQuality=this.getNetworkQuality(v,T);case 38:case"end":return O.stop()}},i,this)})),function(){return n.apply(this,arguments)})},{key:"getStat",value:(t=H(f().mark(function i(r){var o,c,a,s;return f().wrap(function(l){for(;;)switch(l.prev=l.next){case 0:if(o={rtt:0,totalPacketsLost:0,totalPacketsReceived:0},r&&Nk()){l.next=3;break}return l.abrupt("return",o);case 3:c=r.getReceivers(),l.prev=4,a=0;case 6:if(!(a<c.length)){l.next=15;break}return s=c[a],l.next=10,s.getStats();case 10:l.sent.forEach(function(u){u.type==="candidate-pair"&&er(u.currentRoundTripTime)&&(o.rtt=Math.round(1e3*u.currentRoundTripTime)),u.type!=="inbound-rtp"||u.mediaType!==Ee&&u.mediaType!==xe||(o.totalPacketsLost+=u.packetsLost,o.totalPacketsReceived+=u.packetsReceived)});case 12:a++,l.next=6;break;case 15:return l.abrupt("return",o);case 18:return l.prev=18,l.t0=l.catch(4),l.abrupt("return",o);case 21:case"end":return l.stop()}},i,null,[[4,18]])})),function(i){return t.apply(this,arguments)})},{key:"getAverageLossAndRTT",value:function(i){var r={rtt:0,loss:0};return Array.isArray(i)&&i.length>0&&(i.forEach(function(o){r.rtt+=o.rtt,r.loss+=o.loss}),Object.keys(r).forEach(function(o){r[o]=Math.round(r[o]/i.length)})),r}},{key:"getNetworkQuality",value:function(i,r){return i>50||r>500?5:i>30||r>350?4:i>20||r>200?3:i>10||r>100?2:i>=0||r>=0?1:0}},{key:"handleSignalConnectionStateChange",value:function(i){i.state===hl?(this.uplinkRTT_=0,this.uplinkLoss_=0,this.uplinkNetworkQuality=6):i.state===ac&&this.uplinkNetworkQuality===6&&(this.uplinkNetworkQuality=5)}},{key:"handleUplinkConnectionStateChange",value:function(i){var r=i.state;r===an?(this.uplinkLoss_=0,this.uplinkRTT_=0,this.uplinkNetworkQuality=6):r===pn&&this.uplinkNetworkQuality===6&&(this.uplinkNetworkQuality=5)}},{key:"isPeerConnectionDisconnected",value:function(i){return!(!i||i.connectionState!==qM&&i.connectionState!==bb&&i.connectionState!==Vf)}},{key:"setUplinkConnection",value:function(i){this.uplinkConnection_=i,this.uplinkConnection_?this.uplinkConnection_.on(et.CONNECTION_STATE_CHANGED,this.handleUplinkConnectionStateChange.bind(this)):(this.uplinkNetworkQuality=0,this.uplinkRTT_=0,this.uplinkLoss_=0)}},{key:"start",value:function(){var i=this;this.interval_===-1?(this.log_.info("start network quality calculating"),this.interval_=_t.run(so,function(){i.handleDownlinkNetworkQuality(),Q.emit(Yp,{client:i.client_,uplinkNetworkQuality:i.uplinkNetworkQuality,downlinkNetworkQuality:i.downlinkNetworkQuality,uplinkRTT:i.uplinkRTT_,uplinkLoss:i.uplinkLoss_,downlinkRTT:i.downlinkRTT_,downlinkLoss:i.downlinkLoss_,downlinkLossAndRTTMap:i.downlinkLossAndRTTMap_}),i.emitter_.emit(st.NETWORK_QUALITY,{uplinkNetworkQuality:i.uplinkNetworkQuality,downlinkNetworkQuality:i.downlinkNetworkQuality,uplinkRTT:i.uplinkRTT_,uplinkLoss:i.uplinkLoss_,downlinkRTT:i.downlinkRTT_,downlinkLoss:i.downlinkLoss_})},{delay:2e3})):this.log_.info("network quality calculating is already started")}},{key:"stop",value:function(){this.log_.info("stop network quality calculating"),this.interval_!==-1&&(_t.clearTask(this.interval_),this.interval_=-1),this.downlinkLossAndRTTMap_.clear(),this.downlinkPrevStatMap_.clear()}},{key:"on",value:function(i,r){this.emitter_.on(i,r)}},{key:"updateDelay",value:function(i){var r=this;i.forEach(function(o){var c=o.srcTinyId,a=o.videoDelay,s=o.audioDelay,l=r.connections_.get(c);l&&l.setDelay({videoDelay:a,audioDelay:s})})}}]),e}(),XV=function(){function e(i){X(this,e),this.log_=_e.createLogger({id:i.client.getUserId(),userId:i.client.getUserId(),sdkAppId:i.client.getSDKAppId()}),this.localStream_=null,this.prevDevices_=[],this.initialize()}var t,n;return Ie(e,[{key:"initialize",value:function(){navigator.mediaDevices&&navigator.mediaDevices.addEventListener&&(this.onDeviceChange=this.onDeviceChange.bind(this),navigator.mediaDevices.addEventListener("devicechange",this.onDeviceChange))}},{key:"destroy",value:function(){navigator.mediaDevices&&navigator.mediaDevices.removeEventListener&&navigator.mediaDevices.removeEventListener("devicechange",this.onDeviceChange)}},{key:"onDeviceChange",value:(n=H(f().mark(function i(){var r,o,c,a=this;return f().wrap(function(s){for(;;)switch(s.prev=s.next){case 0:if(this.localStream_&&this.localStream_.getMediaStream()&&!this.localStream_.getScreen()){s.next=2;break}return s.abrupt("return");case 2:return s.next=4,xm();case 4:r=s.sent,o=r.filter(function(l){return a.prevDevices_.findIndex(function(u){var p=u.deviceId;return l.deviceId===p})<0}),c=this.prevDevices_.filter(function(l){return r.findIndex(function(u){var p=u.deviceId;return l.deviceId===p})<0}),o.length>0&&this.handleDeviceAdded(this.prevDevices_,o),c.length>0&&this.handleDeviceRemoved(r,c),this.prevDevices_=r;case 10:case"end":return s.stop()}},i,this)})),function(){return n.apply(this,arguments)})},{key:"setLocalStream",value:(t=H(f().mark(function i(r){return f().wrap(function(o){for(;;)switch(o.prev=o.next){case 0:if(!r){o.next=4;break}return o.next=3,xm();case 3:this.prevDevices_=o.sent;case 4:this.localStream_=r;case 5:case"end":return o.stop()}},i,this)})),function(i){return t.apply(this,arguments)})},{key:"handleDeviceAdded",value:function(i,r){var o,c;if(this.localStream_){this.log_.warn("devicesAdded: ".concat(JSON.stringify(r))),this.localStream_.updateDeviceIdInUse();var a=r.filter(function(x){return x.kind===Fu}),s=r.filter(function(x){return x.kind===qs}),l=i.filter(function(x){return x.kind===Fu}),u=i.filter(function(x){return x.kind===qs}),p=a.length>0&&l.length===0&&((o=this.localStream_.getVideoTrack())===null||o===void 0?void 0:o.readyState)!=="live",k=s.length>0&&u.length===0&&((c=this.localStream_.getAudioTrack())===null||c===void 0?void 0:c.readyState)!=="live";if(k&&p)return this.log_.info("new microphone and camera detected, but there was no device before."),void this.localStream_.recoverCapture({audio:!0,video:!0,cameraId:a[0].deviceId,microphoneId:s[0].deviceId});p&&(this.log_.info("new camera detected, but there was no camera before."),this.localStream_.recoverCapture({audio:!1,video:!0,cameraId:a[0].deviceId})),k&&(this.log_.info("new microphone detected, but there was no microphone before."),this.localStream_.recoverCapture({audio:!0,video:!1,microphoneId:s[0].deviceId}))}}},{key:"handleDeviceRemoved",value:function(i,r){if(this.localStream_){this.log_.warn("devicesRemoved: ".concat(JSON.stringify(r))),this.localStream_.updateDeviceIdInUse();var o=!1,c=!1,a=this.localStream_.getCameraId(),s=this.localStream_.getMicrophoneId();if(s===Ju){var l=this.localStream_.getMicrophoneGroupId(),u=i.filter(function(p){return p.deviceId===Ju&&p.kind===qs})[0];u&&u.groupId!==l&&(c=!0)}if(r.forEach(function(p){var k=p.deviceId;a.length>0&&k===a?o=!0:s.length>0&&k===s&&(c=!0)}),o&&c)return this.log_.warn("current camera and microphone in use is lost, cameraId: ".concat(a,", microphoneId: ").concat(s)),void((this.localStream_.getAudio()||this.localStream_.getVideo())&&this.localStream_.recoverCapture({video:!0,audio:!0}));o&&(this.log_.warn("current camera in use is lost, deviceId: ".concat(a)),this.localStream_.getVideo()&&this.localStream_.recoverCapture({video:!0,audio:!1})),c&&(this.log_.warn("current microphone in use is lost, deviceId: ".concat(s)),this.localStream_.getAudio()&&this.localStream_.recoverCapture({video:!1,audio:!0}))}}}]),e}();function Tm(){return Tm=H(f().mark(function e(){var t;return f().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(!ml()&&!pl()){n.next=2;break}return n.abrupt("return",[]);case 2:return n.next=4,vl();case 4:return t=n.sent,n.abrupt("return",t.filter(function(i){return i.kind===Fu}).map(function(i,r){var o=i.label;i.label||(o="camera_"+r);var c={label:o,deviceId:i.deviceId,kind:i.kind};return i.groupId&&(c.groupId=i.groupId),i.getCapabilities&&(c.getCapabilities=function(){return i.getCapabilities()}),c}));case 6:case"end":return n.stop()}},e)})),Tm.apply(this,arguments)}var Fk=new Set;function vl(){return Hk.apply(this,arguments)}function Hk(){return(Hk=H(f().mark(function e(){var t;return f().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(!ml()&&!pl()){n.next=2;break}return n.abrupt("return",[]);case 2:return n.next=4,navigator.mediaDevices.enumerateDevices();case 4:return(t=n.sent).forEach(function(i){Fk.add("".concat(i.deviceId,"_").concat(i.kind))}),n.abrupt("return",t);case 7:case"end":return n.stop()}},e)}))).apply(this,arguments)}function xm(){return Im.apply(this,arguments)}function Im(){return Im=H(f().mark(function e(){var t;return f().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return n.next=2,vl();case 2:return t=n.sent,n.abrupt("return",t.filter(function(i){return i.kind!==qs||i.deviceId!=Qb}).map(function(i,r){var o=i.label;i.label||(o=i.kind+"_"+r);var c={label:o,deviceId:i.deviceId,kind:i.kind};return i.groupId&&(c.groupId=i.groupId),i.getCapabilities&&(c.getCapabilities=function(){return i.getCapabilities()}),c}));case 4:case"end":return n.stop()}},e)})),Im.apply(this,arguments)}function Gk(){return wm.apply(this,arguments)}function wm(){return wm=H(f().mark(function e(){var t;return f().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return n.next=2,vl();case 2:return t=n.sent,n.abrupt("return",t.filter(function(i){return i.kind===qs&&i.deviceId!==Qb}).map(function(i,r){var o=i.label;i.label||(o="microphone_"+r);var c={label:o,deviceId:i.deviceId,kind:i.kind};return i.groupId&&(c.groupId=i.groupId),i.getCapabilities&&(c.getCapabilities=function(){return i.getCapabilities()}),c}));case 4:case"end":return n.stop()}},e)})),wm.apply(this,arguments)}function zk(){return Cm.apply(this,arguments)}function Cm(){return Cm=H(f().mark(function e(){var t;return f().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return n.next=2,vl();case 2:return t=n.sent,n.abrupt("return",t.filter(function(i){return i.kind==="audiooutput"}).map(function(i,r){var o=i.label;i.label||(o="speaker_"+r);var c={label:o,deviceId:i.deviceId,kind:i.kind};return i.groupId&&(c.groupId=i.groupId),c}));case 4:case"end":return n.stop()}},e)})),Cm.apply(this,arguments)}function QV(e){var t;if(e instanceof CanvasCaptureMediaStreamTrack||!(e instanceof window.MediaStreamTrack))return!1;var n=e.label.toLocaleLowerCase();if(n.includes("camera")||n.includes("webcam"))return!0;var i="".concat((t=e.getSettings())===null||t===void 0?void 0:t.deviceId,"_").concat(Fu);return!!Fk.has(i)}function $V(e,t){return Wk.apply(this,arguments)}function Wk(){return(Wk=H(f().mark(function e(t,n){var i,r;return f().wrap(function(o){for(;;)switch(o.prev=o.next){case 0:return o.next=2,Gk();case 2:if(i=o.sent,((r=i.find(function(c){return c.deviceId===Ju}))==null?void 0:r.groupId)!==t||r.label!==n){o.next=6;break}return o.abrupt("return",!0);case 6:return o.abrupt("return",!1);case 7:case"end":return o.stop()}},e)}))).apply(this,arguments)}var jn,qk=ji.exports,ZV=Pt,e6=Tt,t6=e_,n6=Or,r6=Ke,i6=Mt,a6=function(e,t,n,i){try{return i?t(e6(n)[0],n[1]):t(n)}catch(r){t6(e,"throw",r)}},o6=ch,s6=_u,c6=tn,Jk=ws,u6=fu,l6=Cs,Kk=Array,Yk=function(e){var t=i6(e),n=s6(this),i=arguments.length,r=i>1?arguments[1]:void 0,o=r!==void 0;o&&(r=n6(r,i>2?arguments[2]:void 0));var c,a,s,l,u,p,k=l6(t),x=0;if(!k||this===Kk&&o6(k))for(c=c6(t),a=n?new this(c):Kk(c);c>x;x++)p=o?r(t[x],x):t[x],Jk(a,x,p);else for(u=(l=u6(t,k)).next,a=n?new this:[];!(s=r6(u,l)).done;x++)p=o?a6(l,r,[s.value,x],!0):s.value,Jk(a,x,p);return a.length=x,a},ca=pe,Em=2147483647,d6=/[^\0-\u007E]/,Xk=/[.\u3002\uFF0E\uFF61]/g,Qk="Overflow: input needs wider integers to process",$k=RangeError,h6=ca(Xk.exec),bo=Math.floor,Rm=String.fromCharCode,Zk=ca("".charCodeAt),eT=ca([].join),Ti=ca([].push),f6=ca("".replace),p6=ca("".split),m6=ca("".toLowerCase),tT=function(e){return e+22+75*(e<26)},v6=function(e,t,n){var i=0;for(e=n?bo(e/700):e>>1,e+=bo(e/t);e>455;)e=bo(e/35),i+=36;return bo(i+36*e/(e+38))},g6=function(e){var t=[];e=function(T){for(var v=[],C=0,O=T.length;C<O;){var N=Zk(T,C++);if(N>=55296&&N<=56319&&C<O){var j=Zk(T,C++);(64512&j)==56320?Ti(v,((1023&N)<<10)+(1023&j)+65536):(Ti(v,N),C--)}else Ti(v,N)}return v}(e);var n,i,r=e.length,o=128,c=0,a=72;for(n=0;n<e.length;n++)(i=e[n])<128&&Ti(t,Rm(i));var s=t.length,l=s;for(s&&Ti(t,"-");l<r;){var u=Em;for(n=0;n<e.length;n++)(i=e[n])>=o&&i<u&&(u=i);var p=l+1;if(u-o>bo((Em-c)/p))throw $k(Qk);for(c+=(u-o)*p,o=u,n=0;n<e.length;n++){if((i=e[n])<o&&++c>Em)throw $k(Qk);if(i==o){for(var k=c,x=36;;){var E=x<=a?1:x>=a+26?26:x-a;if(k<E)break;var I=k-E,m=36-E;Ti(t,Rm(tT(E+I%m))),k=bo(I/m),x+=36}Ti(t,Rm(tT(k))),a=v6(c,p,l==s),c=0,l++}}c++,o++}return eT(t,"")},_6=Oe,Am=ye,y6=Ty,Pm=re,nT=Or,Bn=pe,gl=Yt,Fn=function(e,t,n){return n.get&&qk(n.get,t,{getter:!0}),n.set&&qk(n.set,t,{setter:!0}),ZV.f(e,t,n)},b6=ai,Dm=kt,Lm=tk,So=Yk,rr=du,S6=ph.codeAt,k6=function(e){var t,n,i=[],r=p6(f6(m6(e),Xk,"."),".");for(t=0;t<r.length;t++)n=r[t],Ti(i,h6(d6,n)?"xn--"+g6(n):n);return eT(i,".")},Fr=zt,T6=Gi,x6=gu,rT=xD,iT=Ye,I6=iT.set,_l=iT.getterFor("URL"),w6=rT.URLSearchParams,C6=rT.getState,uc=Pm.URL,Om=Pm.TypeError,yl=Pm.parseInt,E6=Math.floor,aT=Math.pow,Hn=Bn("".charAt),ir=Bn(/./.exec),lc=Bn([].join),R6=Bn(1 .toString),A6=Bn([].pop),ko=Bn([].push),oT=Bn("".replace),P6=Bn([].shift),D6=Bn("".split),dc=Bn("".slice),bl=Bn("".toLowerCase),L6=Bn([].unshift),Mm="Invalid scheme",ua="Invalid host",sT="Invalid port",cT=/[a-z]/i,O6=/[\d+-.a-z]/i,Nm=/\d/,M6=/^0x/i,N6=/^[0-7]+$/,U6=/^\d+$/,uT=/^[\da-f]+$/i,V6=/[\0\t\n\r #%/:<>?@[\\\]^|]/,j6=/[\0\t\n\r #/:<>?@[\\\]^|]/,B6=/^[\u0000-\u0020]+|[\u0000-\u0020]+$/g,F6=/[\t\n\r]/g,hc=function(e){var t,n,i,r;if(typeof e=="number"){for(t=[],n=0;n<4;n++)L6(t,e%256),e=E6(e/256);return lc(t,".")}if(typeof e=="object"){for(t="",i=function(o){for(var c=null,a=1,s=null,l=0,u=0;u<8;u++)o[u]!==0?(l>a&&(c=s,a=l),s=null,l=0):(s===null&&(s=u),++l);return l>a&&(c=s,a=l),c}(e),n=0;n<8;n++)r&&e[n]===0||(r&&(r=!1),i===n?(t+=n?":":"::",r=!0):(t+=R6(e[n],16),n<7&&(t+=":")));return"["+t+"]"}return e},Sl={},lT=Lm({},Sl,{" ":1,'"':1,"<":1,">":1,"`":1}),dT=Lm({},lT,{"#":1,"?":1,"{":1,"}":1}),Um=Lm({},dT,{"/":1,":":1,";":1,"=":1,"@":1,"[":1,"\\":1,"]":1,"^":1,"|":1}),xi=function(e,t){var n=S6(e,0);return n>32&&n<127&&!Dm(t,e)?e:encodeURIComponent(e)},kl={ftp:21,file:null,http:80,https:443,ws:80,wss:443},fc=function(e,t){var n;return e.length==2&&ir(cT,Hn(e,0))&&((n=Hn(e,1))==":"||!t&&n=="|")},hT=function(e){var t;return e.length>1&&fc(dc(e,0,2))&&(e.length==2||(t=Hn(e,2))==="/"||t==="\\"||t==="?"||t==="#")},H6=function(e){return e==="."||bl(e)==="%2e"},Vm={},fT={},jm={},pT={},mT={},Bm={},vT={},gT={},Tl={},xl={},Fm={},Hm={},Gm={},zm={},_T={},Wm={},To={},Ir={},yT={},la={},Hr={},qm=function(e,t,n){var i,r,o,c=Fr(e);if(t){if(r=this.parse(c))throw Om(r);this.searchParams=null}else{if(n!==void 0&&(i=new qm(n,!0)),r=this.parse(c,null,i))throw Om(r);(o=C6(new w6)).bindURL(this),this.searchParams=o}};qm.prototype={type:"URL",parse:function(e,t,n){var i,r,o,c,a,s=this,l=t||Vm,u=0,p="",k=!1,x=!1,E=!1;for(e=Fr(e),t||(s.scheme="",s.username="",s.password="",s.host=null,s.port=null,s.path=[],s.query=null,s.fragment=null,s.cannotBeABaseURL=!1,e=oT(e,B6,"")),e=oT(e,F6,""),i=So(e);u<=i.length;){switch(r=i[u],l){case Vm:if(!r||!ir(cT,r)){if(t)return Mm;l=jm;continue}p+=bl(r),l=fT;break;case fT:if(r&&(ir(O6,r)||r=="+"||r=="-"||r=="."))p+=bl(r);else{if(r!=":"){if(t)return Mm;p="",l=jm,u=0;continue}if(t&&(s.isSpecial()!=Dm(kl,p)||p=="file"&&(s.includesCredentials()||s.port!==null)||s.scheme=="file"&&!s.host))return;if(s.scheme=p,t)return void(s.isSpecial()&&kl[s.scheme]==s.port&&(s.port=null));p="",s.scheme=="file"?l=zm:s.isSpecial()&&n&&n.scheme==s.scheme?l=pT:s.isSpecial()?l=gT:i[u+1]=="/"?(l=mT,u++):(s.cannotBeABaseURL=!0,ko(s.path,""),l=yT)}break;case jm:if(!n||n.cannotBeABaseURL&&r!="#")return Mm;if(n.cannotBeABaseURL&&r=="#"){s.scheme=n.scheme,s.path=rr(n.path),s.query=n.query,s.fragment="",s.cannotBeABaseURL=!0,l=Hr;break}l=n.scheme=="file"?zm:Bm;continue;case pT:if(r!="/"||i[u+1]!="/"){l=Bm;continue}l=Tl,u++;break;case mT:if(r=="/"){l=xl;break}l=Ir;continue;case Bm:if(s.scheme=n.scheme,r==jn)s.username=n.username,s.password=n.password,s.host=n.host,s.port=n.port,s.path=rr(n.path),s.query=n.query;else if(r=="/"||r=="\\"&&s.isSpecial())l=vT;else if(r=="?")s.username=n.username,s.password=n.password,s.host=n.host,s.port=n.port,s.path=rr(n.path),s.query="",l=la;else{if(r!="#"){s.username=n.username,s.password=n.password,s.host=n.host,s.port=n.port,s.path=rr(n.path),s.path.length--,l=Ir;continue}s.username=n.username,s.password=n.password,s.host=n.host,s.port=n.port,s.path=rr(n.path),s.query=n.query,s.fragment="",l=Hr}break;case vT:if(!s.isSpecial()||r!="/"&&r!="\\"){if(r!="/"){s.username=n.username,s.password=n.password,s.host=n.host,s.port=n.port,l=Ir;continue}l=xl}else l=Tl;break;case gT:if(l=Tl,r!="/"||Hn(p,u+1)!="/")continue;u++;break;case Tl:if(r!="/"&&r!="\\"){l=xl;continue}break;case xl:if(r=="@"){k&&(p="%40"+p),k=!0,o=So(p);for(var I=0;I<o.length;I++){var m=o[I];if(m!=":"||E){var T=xi(m,Um);E?s.password+=T:s.username+=T}else E=!0}p=""}else if(r==jn||r=="/"||r=="?"||r=="#"||r=="\\"&&s.isSpecial()){if(k&&p=="")return"Invalid authority";u-=So(p).length+1,p="",l=Fm}else p+=r;break;case Fm:case Hm:if(t&&s.scheme=="file"){l=Wm;continue}if(r!=":"||x){if(r==jn||r=="/"||r=="?"||r=="#"||r=="\\"&&s.isSpecial()){if(s.isSpecial()&&p=="")return ua;if(t&&p==""&&(s.includesCredentials()||s.port!==null))return;if(c=s.parseHost(p))return c;if(p="",l=To,t)return;continue}r=="["?x=!0:r=="]"&&(x=!1),p+=r}else{if(p=="")return ua;if(c=s.parseHost(p))return c;if(p="",l=Gm,t==Hm)return}break;case Gm:if(!ir(Nm,r)){if(r==jn||r=="/"||r=="?"||r=="#"||r=="\\"&&s.isSpecial()||t){if(p!=""){var v=yl(p,10);if(v>65535)return sT;s.port=s.isSpecial()&&v===kl[s.scheme]?null:v,p=""}if(t)return;l=To;continue}return sT}p+=r;break;case zm:if(s.scheme="file",r=="/"||r=="\\")l=_T;else{if(!n||n.scheme!="file"){l=Ir;continue}if(r==jn)s.host=n.host,s.path=rr(n.path),s.query=n.query;else if(r=="?")s.host=n.host,s.path=rr(n.path),s.query="",l=la;else{if(r!="#"){hT(lc(rr(i,u),""))||(s.host=n.host,s.path=rr(n.path),s.shortenPath()),l=Ir;continue}s.host=n.host,s.path=rr(n.path),s.query=n.query,s.fragment="",l=Hr}}break;case _T:if(r=="/"||r=="\\"){l=Wm;break}n&&n.scheme=="file"&&!hT(lc(rr(i,u),""))&&(fc(n.path[0],!0)?ko(s.path,n.path[0]):s.host=n.host),l=Ir;continue;case Wm:if(r==jn||r=="/"||r=="\\"||r=="?"||r=="#"){if(!t&&fc(p))l=Ir;else if(p==""){if(s.host="",t)return;l=To}else{if(c=s.parseHost(p))return c;if(s.host=="localhost"&&(s.host=""),t)return;p="",l=To}continue}p+=r;break;case To:if(s.isSpecial()){if(l=Ir,r!="/"&&r!="\\")continue}else if(t||r!="?")if(t||r!="#"){if(r!=jn&&(l=Ir,r!="/"))continue}else s.fragment="",l=Hr;else s.query="",l=la;break;case Ir:if(r==jn||r=="/"||r=="\\"&&s.isSpecial()||!t&&(r=="?"||r=="#")){if((a=bl(a=p))===".."||a==="%2e."||a===".%2e"||a==="%2e%2e"?(s.shortenPath(),r=="/"||r=="\\"&&s.isSpecial()||ko(s.path,"")):H6(p)?r=="/"||r=="\\"&&s.isSpecial()||ko(s.path,""):(s.scheme=="file"&&!s.path.length&&fc(p)&&(s.host&&(s.host=""),p=Hn(p,0)+":"),ko(s.path,p)),p="",s.scheme=="file"&&(r==jn||r=="?"||r=="#"))for(;s.path.length>1&&s.path[0]==="";)P6(s.path);r=="?"?(s.query="",l=la):r=="#"&&(s.fragment="",l=Hr)}else p+=xi(r,dT);break;case yT:r=="?"?(s.query="",l=la):r=="#"?(s.fragment="",l=Hr):r!=jn&&(s.path[0]+=xi(r,Sl));break;case la:t||r!="#"?r!=jn&&(r=="'"&&s.isSpecial()?s.query+="%27":s.query+=r=="#"?"%23":xi(r,Sl)):(s.fragment="",l=Hr);break;case Hr:r!=jn&&(s.fragment+=xi(r,lT))}u++}},parseHost:function(e){var t,n,i;if(Hn(e,0)=="["){if(Hn(e,e.length-1)!="]"||(t=function(r){var o,c,a,s,l,u,p,k=[0,0,0,0,0,0,0,0],x=0,E=null,I=0,m=function(){return Hn(r,I)};if(m()==":"){if(Hn(r,1)!=":")return;I+=2,E=++x}for(;m();){if(x==8)return;if(m()!=":"){for(o=c=0;c<4&&ir(uT,m());)o=16*o+yl(m(),16),I++,c++;if(m()=="."){if(c==0||(I-=c,x>6))return;for(a=0;m();){if(s=null,a>0){if(!(m()=="."&&a<4))return;I++}if(!ir(Nm,m()))return;for(;ir(Nm,m());){if(l=yl(m(),10),s===null)s=l;else{if(s==0)return;s=10*s+l}if(s>255)return;I++}k[x]=256*k[x]+s,++a!=2&&a!=4||x++}if(a!=4)return;break}if(m()==":"){if(I++,!m())return}else if(m())return;k[x++]=o}else{if(E!==null)return;I++,E=++x}}if(E!==null)for(u=x-E,x=7;x!=0&&u>0;)p=k[x],k[x--]=k[E+u-1],k[E+--u]=p;else if(x!=8)return;return k}(dc(e,1,-1)),!t))return ua;this.host=t}else if(this.isSpecial()){if(e=k6(e),ir(V6,e)||(t=function(r){var o,c,a,s,l,u,p,k=D6(r,".");if(k.length&&k[k.length-1]==""&&k.length--,(o=k.length)>4)return r;for(c=[],a=0;a<o;a++){if((s=k[a])=="")return r;if(l=10,s.length>1&&Hn(s,0)=="0"&&(l=ir(M6,s)?16:8,s=dc(s,l==8?1:2)),s==="")u=0;else{if(!ir(l==10?U6:l==8?N6:uT,s))return r;u=yl(s,l)}ko(c,u)}for(a=0;a<o;a++)if(u=c[a],a==o-1){if(u>=aT(256,5-o))return null}else if(u>255)return null;for(p=A6(c),a=0;a<c.length;a++)p+=c[a]*aT(256,3-a);return p}(e),t===null))return ua;this.host=t}else{if(ir(j6,e))return ua;for(t="",n=So(e),i=0;i<n.length;i++)t+=xi(n[i],Sl);this.host=t}},cannotHaveUsernamePasswordPort:function(){return!this.host||this.cannotBeABaseURL||this.scheme=="file"},includesCredentials:function(){return this.username!=""||this.password!=""},isSpecial:function(){return Dm(kl,this.scheme)},shortenPath:function(){var e=this.path,t=e.length;!t||this.scheme=="file"&&t==1&&fc(e[0],!0)||e.length--},serialize:function(){var e=this,t=e.scheme,n=e.username,i=e.password,r=e.host,o=e.port,c=e.path,a=e.query,s=e.fragment,l=t+":";return r!==null?(l+="//",e.includesCredentials()&&(l+=n+(i?":"+i:"")+"@"),l+=hc(r),o!==null&&(l+=":"+o)):t=="file"&&(l+="//"),l+=e.cannotBeABaseURL?c[0]:c.length?"/"+lc(c,"/"):"",a!==null&&(l+="?"+a),s!==null&&(l+="#"+s),l},setHref:function(e){var t=this.parse(e);if(t)throw Om(t);this.searchParams.update()},getOrigin:function(){var e=this.scheme,t=this.port;if(e=="blob")try{return new xo(e.path[0]).origin}catch(n){return"null"}return e!="file"&&this.isSpecial()?e+"://"+hc(this.host)+(t!==null?":"+t:""):"null"},getProtocol:function(){return this.scheme+":"},setProtocol:function(e){this.parse(Fr(e)+":",Vm)},getUsername:function(){return this.username},setUsername:function(e){var t=So(Fr(e));if(!this.cannotHaveUsernamePasswordPort()){this.username="";for(var n=0;n<t.length;n++)this.username+=xi(t[n],Um)}},getPassword:function(){return this.password},setPassword:function(e){var t=So(Fr(e));if(!this.cannotHaveUsernamePasswordPort()){this.password="";for(var n=0;n<t.length;n++)this.password+=xi(t[n],Um)}},getHost:function(){var e=this.host,t=this.port;return e===null?"":t===null?hc(e):hc(e)+":"+t},setHost:function(e){this.cannotBeABaseURL||this.parse(e,Fm)},getHostname:function(){var e=this.host;return e===null?"":hc(e)},setHostname:function(e){this.cannotBeABaseURL||this.parse(e,Hm)},getPort:function(){var e=this.port;return e===null?"":Fr(e)},setPort:function(e){this.cannotHaveUsernamePasswordPort()||((e=Fr(e))==""?this.port=null:this.parse(e,Gm))},getPathname:function(){var e=this.path;return this.cannotBeABaseURL?e[0]:e.length?"/"+lc(e,"/"):""},setPathname:function(e){this.cannotBeABaseURL||(this.path=[],this.parse(e,To))},getSearch:function(){var e=this.query;return e?"?"+e:""},setSearch:function(e){(e=Fr(e))==""?this.query=null:(Hn(e,0)=="?"&&(e=dc(e,1)),this.query="",this.parse(e,la)),this.searchParams.update()},getSearchParams:function(){return this.searchParams.facade},getHash:function(){var e=this.fragment;return e?"#"+e:""},setHash:function(e){(e=Fr(e))!=""?(Hn(e,0)=="#"&&(e=dc(e,1)),this.fragment="",this.parse(e,Hr)):this.fragment=null},update:function(){this.query=this.searchParams.serialize()||null}};var xo=function(e){var t=b6(this,ln),n=x6(arguments.length,1)>1?arguments[1]:void 0,i=I6(t,new qm(e,!1,n));Am||(t.href=i.serialize(),t.origin=i.getOrigin(),t.protocol=i.getProtocol(),t.username=i.getUsername(),t.password=i.getPassword(),t.host=i.getHost(),t.hostname=i.getHostname(),t.port=i.getPort(),t.pathname=i.getPathname(),t.search=i.getSearch(),t.searchParams=i.getSearchParams(),t.hash=i.getHash())},ln=xo.prototype,Gn=function(e,t){return{get:function(){return _l(this)[e]()},set:t&&function(n){return _l(this)[t](n)},configurable:!0,enumerable:!0}};if(Am&&(Fn(ln,"href",Gn("serialize","setHref")),Fn(ln,"origin",Gn("getOrigin")),Fn(ln,"protocol",Gn("getProtocol","setProtocol")),Fn(ln,"username",Gn("getUsername","setUsername")),Fn(ln,"password",Gn("getPassword","setPassword")),Fn(ln,"host",Gn("getHost","setHost")),Fn(ln,"hostname",Gn("getHostname","setHostname")),Fn(ln,"port",Gn("getPort","setPort")),Fn(ln,"pathname",Gn("getPathname","setPathname")),Fn(ln,"search",Gn("getSearch","setSearch")),Fn(ln,"searchParams",Gn("getSearchParams")),Fn(ln,"hash",Gn("getHash","setHash"))),gl(ln,"toJSON",function(){return _l(this).serialize()},{enumerable:!0}),gl(ln,"toString",function(){return _l(this).serialize()},{enumerable:!0}),uc){var bT=uc.createObjectURL,ST=uc.revokeObjectURL;bT&&gl(xo,"createObjectURL",nT(bT,uc)),ST&&gl(xo,"revokeObjectURL",nT(ST,uc))}T6(xo,"URL"),_6({global:!0,constructor:!0,forced:!y6,sham:!Am},{URL:xo});var da,Il,G6=new Blob(["class VolumeMeter extends AudioWorkletProcessor{constructor(){super();this.volume=0;this.intervalTime=200;this.tick=this.intervalTime;this.isStop=false;this.port.onmessage=event=>{const{data}=event;switch(data.name){case'setIntervalTime':this.intervalTime=data.intervalTime;break;case'stop':this.isStop=true;break}}}process(inputs){const input=inputs[0];if(this.isStop){return false}if(input.length>0){const firstChannel=input[0];let sum=0;let rms;for(let i=0;i<firstChannel.length;++i){sum+=firstChannel[i]*firstChannel[i]}rms=Math.sqrt(sum/firstChannel.length);this.volume=Math.max(rms,this.volume*0.95);this.tick-=firstChannel.length;if(this.tick<0){this.tick+=(this.intervalTime/1000)*sampleRate;this.port.postMessage({volume:this.volume})}}return true}}registerProcessor('volume-meter',VolumeMeter);"],{type:"application/javascript"}),kT=!1,z6=function(){function e(n){X(this,e),this.context_=n.context,this.addModuleToContext()}var t;return Ie(e,[{key:"addModuleToContext",value:(t=H(f().mark(function n(){return f().wrap(function(i){for(;;)switch(i.prev=i.next){case 0:return i.prev=0,i.next=3,this.context_.audioWorklet.addModule(URL.createObjectURL(G6));case 3:_e.info("worklet addModule success"),Q.emit(Xp),kT=!0,i.next=12;break;case 8:i.prev=8,i.t0=i.catch(0),_e.info("worklet addModule catch error. ".concat(i.t0.message)),Q.emit(Qp);case 12:case"end":return i.stop()}},n,this,[[0,8]])})),function(){return t.apply(this,arguments)})},{key:"initWorkletSuccess",get:function(){return kT}}]),e}(),pc=0,W6=function(){function e(t){X(this,e);var n=t.track,i=t.log,r=t.stream;this.volume_=0,this.log_=i,this.track_=n,this.stream_=r,pc+=1,da||(da=VS()),this.audioCtx_=da,this.destination_=this.audioCtx_.destination;var o=new MediaStream;o.addTrack(this.track_),this.streamSource_=this.audioCtx_.createMediaStreamSource(o),this.audioWorkletNode_=null,this.scriptProcessorNode_=null,this.interval_=200,Q.on(nc,this.resume,this),Q.on(Op,this.handleAudioLevelInterval,this),w4?(Q.on(Xp,this.initAudioWorklet,this),Q.on(Qp,this.initScriptProcessor,this),this.preload()):this.initScriptProcessor()}return Ie(e,[{key:"preload",value:function(){Il?Il.initWorkletSuccess&&this.initAudioWorklet():Il=new z6({context:da})}},{key:"initAudioWorklet",value:function(){var t=this;if(!this.audioWorkletNode_)try{this.audioWorkletNode_=new AudioWorkletNode(this.audioCtx_,"volume-meter"),this.audioWorkletNode_.port.onmessage=function(n){t.volume_=n.data.volume||0},this.streamSource_.connect(this.audioWorkletNode_).connect(this.destination_),this.handleAudioLevelInterval({interval:this.interval_})}catch(n){this.log_.warn("load volume meter failed, load again. error: "+n),this.initScriptProcessor()}}},{key:"initScriptProcessor",value:function(){var t=this;if(!this.scriptProcessorNode_)try{this.scriptProcessorNode_=this.audioCtx_.createScriptProcessor(2048,1,1),this.scriptProcessorNode_.onaudioprocess=function(n){for(var i=n.inputBuffer.getChannelData(0),r=0,o=0;o<i.length;++o)r+=i[o]*i[o];t.volume_=Math.sqrt(r/i.length)||0},this.streamSource_.connect(this.scriptProcessorNode_),this.scriptProcessorNode_.connect(this.destination_)}catch(n){this.log_.error("volumeMeter init script processor error: "+n),pc-=1}}},{key:"destroy",value:function(){var t;this.streamSource_&&this.streamSource_.disconnect(),this.scriptProcessorNode_&&(this.scriptProcessorNode_.onaudioprocess=null,this.scriptProcessorNode_.disconnect()),this.audioWorkletNode_&&(this.audioWorkletNode_.port.postMessage({name:"stop"}),this.audioWorkletNode_.port.onmessage=null,this.audioWorkletNode_.disconnect()),this.audioWorkletNode_=null,this.scriptProcessorNode_=null,this.audioCtx_=null,Q.off(nc,this.resume,this),Q.off(Op,this.handleAudioLevelInterval,this),Q.off(Xp,this.initAudioWorklet,this),Q.off(Qp,this.initScriptProcessor,this),pc>0&&(pc-=1),pc===0&&((t=da)===null||t===void 0||t.close(),da=null,Il=null)}},{key:"resume",value:function(){var t;(t=da)===null||t===void 0||t.resume()}},{key:"getInternalAudioLevel",value:function(){return this.volume_}},{key:"getCalculatedVolume",value:function(){return this.volume_.toFixed(2)}},{key:"handleAudioLevelInterval",value:function(t){var n,i=t.interval;this.interval_=i,(n=this.audioWorkletNode_)===null||n===void 0||n.port.postMessage({name:"setIntervalTime",intervalTime:i})}}]),e}(),q6=function(){function e(o){X(this,e),this.stream_=o.stream,this.userId_=o.stream.getUserId(),this.log_=this.stream_.getLogger(),this.track_=o.track,o.gainedTrack&&(this.gainedTrack_=o.gainedTrack),this.div_=o.div,this.muted_=o.muted,this.outputDeviceId_=o.outputDeviceId,this.volume_=o.volume,this.pausedRetryCount_=5,this.emitter_=new bi,this.initializeElement(),this.state_="NONE",this.volumeMeter_=new W6({stream:this.stream_,track:this.gainedTrack_||this.track_,log:this.log_})}var t,n,i,r;return Ie(e,[{key:"isPlaying",get:function(){return this.state_===ro}},{key:"initializeElement",value:function(){if(this.isAudioElementInit()){var o=new MediaStream;o.addTrack(this.gainedTrack_||this.track_);var c=document.createElement(Ee);c.srcObject=o,c.muted=this.muted_,c.setAttribute("id","audio_".concat(this.stream_.getId())),c.setAttribute("autoplay","autoplay"),c.setAttribute("playsinline","playsinline"),this.div_.appendChild(c),this.element_=c}this.handleEvents()}},{key:"setMuted",value:function(o){this.element_&&(this.element_.muted=o,this.muted_=o)}},{key:"play",value:(r=H(f().mark(function o(){var c;return f().wrap(function(a){for(;;)switch(a.prev=a.next){case 0:if(!this.outputDeviceId_||!this.element_){a.next=3;break}return a.next=3,this.element_.setSinkId(this.outputDeviceId_);case 3:if(this.setVolume(this.volume_),a.prev=4,!this.element_){a.next=8;break}return a.next=8,this.element_.play();case 8:a.next=16;break;case 10:if(a.prev=10,a.t0=a.catch(4),c=ie({key:ep,data:{media:"Audio",error:a.t0}}),this.log_.warn(c),!c.includes("NotAllowedError")){a.next=16;break}throw new ne({code:ee.PLAY_NOT_ALLOWED,message:c});case 16:case"end":return a.stop()}},o,this,[[4,10]])})),function(){return r.apply(this,arguments)})},{key:"handleEvents",value:function(){this.handleElementEvent=this.handleElementEvent.bind(this),this.handleTrackEvent=this.handleTrackEvent.bind(this),this.element_&&(this.element_.addEventListener(li,this.handleElementEvent),this.element_.addEventListener(Nt,this.handleElementEvent),this.element_.addEventListener(di,this.handleElementEvent),this.element_.addEventListener(no,this.handleElementEvent)),this.track_.addEventListener(Nt,this.handleTrackEvent),this.track_.addEventListener(en,this.handleTrackEvent),this.track_.addEventListener(br,this.handleTrackEvent),this.track_.readyState===Nt&&this.handleTrackEvent({type:Nt}),this.track_.muted&&this.handleTrackEvent({type:en})}},{key:"handleElementEvent",value:(i=H(f().mark(function o(c){var a,s,l,u,p,k,x,E=this;return f().wrap(function(I){for(;;)switch(I.prev=I.next){case 0:a=c.type,I.t0=a,I.next=I.t0===li?4:I.t0===Nt?9:I.t0===di?12:I.t0===no?21:32;break;case 4:return this.log_.info("audio player is playing"),this.state_=ro,Q.emit(Np,{stream:this.stream_}),this.emitter_.emit(vn,{state:this.state_,reason:li}),I.abrupt("break",32);case 9:return this.log_.info("audio player is ended"),this.state_!==hi&&(this.state_=hi,this.emitter_.emit(vn,{state:this.state_,reason:Nt})),I.abrupt("break",32);case 12:return this.log_.info("audio player is paused"),this.state_=Sr,this.emitter_.emit(vn,{state:this.state_,reason:di}),(s=this.div_&&document.getElementById(this.div_.id))||this.log_.warn("audio player has been remove, element ID: ".concat(this.div_.id)),l=co(),this.pausedRetryCount_>0&&(er(l)&&l<=70||!s)&&(this.resume(),this.pausedRetryCount_--),vi&&(this.interval_=_t.run(function(){E.element_&&E.state_===Sr&&E.resume()},{delay:3e3})),I.abrupt("break",32);case 21:if(!this.element_||!this.element_.error){I.next=31;break}return u="".concat(Sm(),"/").concat(ra().name,"/").concat(ra().version),I.next=25,xt.getSpeakers();case 25:p=I.sent,k=p[0].label,(x=p.find(function(m){return m.deviceId===E.outputDeviceId_}))&&(k=x.label),this.log_.error("audio player error observed. code: ".concat(this.element_.error.code," message: ").concat(this.element_.error.message," deviceInfo: ").concat(u," speaker: ").concat(k)),ke.uploadEvent({log:"stat-".concat(this.stream_.getType(),"-audio-").concat(jb,"-").concat(this.element_.error.code,"-").concat(u,"-").concat(k),userId:this.userId_,error:this.element_.error});case 31:return I.abrupt("break",32);case 32:case"end":return I.stop()}},o,this)})),function(o){return i.apply(this,arguments)})},{key:"handleTrackEvent",value:function(o){var c=o.type;switch(c){case Nt:this.log_.info("audio track is ended"),this.state_!==hi&&(this.state_=hi,this.emitter_.emit(vn,{state:this.state_,reason:Nt})),Q.emit(Jp,{stream:this.stream_,type:c});break;case en:this.log_.info("audio track is unable to provide media output"),this.stream_.isRemote()||US(),this.state_!==Sr&&(this.state_=Sr,this.emitter_.emit(vn,{state:this.state_,reason:en})),Q.emit(qp,{stream:this.stream_,type:c});break;case br:this.log_.info("audio track is able to provide media output"),this.state_===Sr&&(this.state_=ro,this.emitter_.emit(vn,{state:this.state_,reason:br}))}}},{key:"unbindEvents",value:function(){this.element_&&(this.element_.removeEventListener(li,this.handleElementEvent),this.element_.removeEventListener(Nt,this.handleElementEvent),this.element_.removeEventListener(di,this.handleElementEvent),this.element_.removeEventListener(no,this.handleElementEvent)),this.track_&&(this.track_.removeEventListener(Nt,this.handleTrackEvent),this.track_.removeEventListener(en,this.handleTrackEvent),this.track_.removeEventListener(br,this.handleTrackEvent))}},{key:"setSinkId",value:(n=H(f().mark(function o(c){return f().wrap(function(a){for(;;)switch(a.prev=a.next){case 0:if(this.outputDeviceId_===c){a.next=5;break}if(!this.element_){a.next=4;break}return a.next=4,this.element_.setSinkId(c);case 4:this.outputDeviceId_=c;case 5:case"end":return a.stop()}},o,this)})),function(o){return n.apply(this,arguments)})},{key:"setVolume",value:function(o){this.element_&&(this.log_.info("audioElement setVolume to : ".concat(o)),this.element_.volume=o)}},{key:"getAudioLevel",value:function(){return this.volumeMeter_.getCalculatedVolume()}},{key:"getInternalAudioLevel",value:function(){return this.volumeMeter_.getInternalAudioLevel()}},{key:"stop",value:function(){this.unbindEvents(),this.element_&&(this.div_.removeChild(this.element_),this.element_.srcObject=null,this.element_=null),this.volumeMeter_&&(this.volumeMeter_.destroy(),this.volumeMeter_=null),this.interval_>0&&_t.clearTask(this.interval_)}},{key:"resume",value:(t=H(f().mark(function o(){var c;return f().wrap(function(a){for(;;)switch(a.prev=a.next){case 0:if(a.prev=0,this.volumeMeter_&&this.volumeMeter_.resume(),!this.element_){a.next=5;break}return a.next=5,this.element_.play();case 5:a.next=13;break;case 7:if(a.prev=7,a.t0=a.catch(0),c=ie({key:ep,data:{media:"Audio",error:a.t0}}),this.log_.warn(c),!c.includes("NotAllowedError")){a.next=13;break}throw new ne({code:ee.PLAY_NOT_ALLOWED,message:c});case 13:case"end":return a.stop()}},o,this,[[0,7]])})),function(){return t.apply(this,arguments)})},{key:"on",value:function(o,c){this.emitter_.on(o,c)}},{key:"isAudioElementInit",value:function(){return!(gi==="15.2"||gi==="15.3"||gi==="15.4")||this.stream_.getType()!=="local"||!this.muted_||(this.log_.info("audioElement is muted."),!1)}}]),e}(),J6=Xn.PROPER,K6=ue,TT=o0,Y6=Ru.trim;Oe({target:"String",proto:!0,forced:function(e){return K6(function(){return!!TT[e]()||"\u200B\x85\u180E"[e]()!=="\u200B\x85\u180E"||J6&&TT[e].name!==e})}("trim")},{trim:function(){return Y6(this)}});var Gr="trtc_autoplay",Jm="".concat(Gr,"_mask"),Io="".concat(Gr,"_wrapper"),xT="".concat(Gr,"_header"),Km="".concat(Gr,"_content"),wl="".concat(Gr,"_action_wrapper"),Ym="".concat(Gr,"_question"),Xm="".concat(Gr,"_collapse"),Cl="".concat(Gr,"_action_confirm"),IT="".concat(Gr,"_detail"),wT="#2473E8",Qm="dialog",X6="".concat(Qm,"-show"),Q6="".concat(Qm,"-1"),$6="".concat(Qm,"-2"),CT=!1,ET=function(){return!!document.querySelector(".".concat(Io))},RT="".concat(oo,"/").concat(ia()?"zh-cn":"en","/tutorial-21-advanced-auto-play-policy.html"),AT="<br><a href='".concat(RT,"' target='_blank'>").concat(ia()?"\u5176\u4ED6\u65B9\u6848\uFF1F":"Any other solution?","</a>"),Z6="".concat(ia()?"\u6D4F\u89C8\u5668\u81EA\u52A8\u64AD\u653E\u7B56\u7565\uFF1A\u5728\u7528\u6237\u4E0E\u9875\u9762\u4EA7\u751F\u4EA4\u4E92\uFF08\u70B9\u51FB\u3001\u89E6\u6478\uFF09\u4E4B\u524D\uFF0C\u6D4F\u89C8\u5668\u7981\u6B62\u64AD\u653E\u6709\u58F0\u5A92\u4F53\u3002\u8BE5\u5F39\u7A97\u7528\u4E8E\u5E2E\u52A9\u7528\u6237\u6062\u590D\u97F3\u89C6\u9891\u64AD\u653E\u3002".concat(AT):"Autoplay Policy: Before user interacts with the web page (clicking, touching), page will not be allowed to play media with sound. This Dialog is used to help users resume playback. ".concat(AT)),PT=function(){function e(){if(X(this,e),this.dialogNode_=null,this.bodyPosition_="",this.content="\u97F3\u89C6\u9891\u64AD\u653E\u88AB\u6D4F\u89C8\u5668\u62E6\u622A\uFF0C\u8BF7\u70B9\u51FB\u201C\u6062\u590D\u64AD\u653E\u201D\u3002",ia()||(this.content='Media playback failed. Click the "Resume" to resume playback.'),!CT){var t=document.createElement("style");t.innerHTML=".".concat(Jm,"{position:fixed;top:0;left:0;right:0;bottom:0;width:100vw;height:100vh;display:flex;justify-content:center;align-items:center;background:rgba(0,0,0,0.5);z-index:1500;}.").concat(Jm," div:not(.").concat(wl,"){display:block !important;}.").concat(Io,"{padding:14px;background:#fff;border-radius:3px;box-shadow:0px 3px 15px #434343;border:1px solid #d1cfcf;max-width:500px;}.").concat(Io," a{color:").concat(wT,";}.").concat(xT,"{overflow:hidden;text-overflow:ellipsis;font-size:16px;font-weight:600;}.").concat(Km,"{margin:8px 0;}.").concat(wl,"{width:100%;display:flex !important;align-items:center;justify-content:right;float:right;}.").concat(Xm,"{margin-right:auto;cursor:pointer}.").concat(Ym,"{height:100%;line-height:16px;cursor:pointer;}.").concat(Cl,"{margin-left:8px;color:#fff;background:").concat(wT,";padding:4px 12px;outline:none;border:1px solid;border-radius:3px;font-weight:bold;}.").concat(Cl,":hover{opacity:0.9;}.").concat(Xm,",.").concat(Cl,",.").concat(Km,",.").concat(Ym,"{font-size:14px;}@media screen and (max-width:750px){.").concat(Io,"{width:80vw;}}"),document.head.appendChild(t),CT=!0}this.showDetail_=!1,this.isCollapseClicked_=!1,this.isQuestionClicked_=!1,this.addDiaLog()}return Ie(e,[{key:"createDiaLog",value:function(){var t=document.createElement("template");t.innerHTML='<div class="'.concat(Jm,`"><div class='`).concat(Io,"'><div class='").concat(xT,"'>").concat(location.host,"</div><div class='").concat(Km,"'>").concat(this.content,"</div><div class='").concat(IT,`' style="visibility:hidden;width:100%;height:0;font-size:12px;color:gray;">`).concat(Z6,"</div><div class='").concat(wl,"'></div></div></div>").trim();var n=document.createElement("button");n.className=Cl,n.innerText=ia()?"\u6062\u590D\u64AD\u653E":"Resume",n.onclick=this.onConfirm.bind(this);var i=document.createElement("div");i.className=Ym,i.innerHTML=`<?xml version="1.0" encoding="UTF-8"?>
|
|
56
|
+
`};rr.write=zV,rr.parse=ua.parse,rr.parseParams=ua.parseParams,rr.parseFmtpConfig=ua.parseFmtpConfig,rr.parsePayloads=ua.parsePayloads,rr.parseRemoteCandidates=ua.parseRemoteCandidates,rr.parseImageAttributes=ua.parseImageAttributes,rr.parseSimulcastStreamList=ua.parseSimulcastStreamList;var mm,vm,gm,_m,Fr=function(e){return rr.parse(e)},yo=function(e){return rr.write(e)},WV=function(e){var t=Fr(e);return t.media.forEach(function(n){n.type===Ee&&n.fmtp.forEach(function(i){i.config+=";sprop-stereo=1;stereo=1"})}),yo(t)},Lk=((mm=window)===null||mm===void 0?void 0:mm.requestIdleCallback)||function(e){var t=Date.now();return setTimeout(function(){e({didTimeout:!1,timeRemaining:function(){return Math.max(0,50-(Date.now()-t))}})},1e3)},JV=((vm=window)===null||vm===void 0?void 0:vm.cancelIdleCallback)||function(e){clearTimeout(e)},qV=((gm=window)===null||gm===void 0?void 0:gm.cancelAnimationFrame)||((_m=window)===null||_m===void 0?void 0:_m.mozCancelAnimationFrame),mt=function(){function e(){Q(this,e)}return Ie(e,null,[{key:"generateTaskID",value:function(){return this.currentTaskID++}},{key:"run",value:function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:nS,n=arguments.length>1?arguments[1]:void 0,i=arguments.length>2?arguments[2]:void 0;i=q(q({},t===fN?{delay:2e3,count:0,backgroundTask:!0}:t===uo?{delay:1e4,count:0}:t===Qu?{fps:60,delay:16.6,count:0,backgroundTask:!0}:{delay:2e3,count:0,backgroundTask:!0}),i),US(n)&&(i=q(q({},i),n)),ln(t)&&(n=t,t=nS);var r=q({taskID:this.generateTaskID(),loopCount:0,intervalID:null,timeoutID:null,rafID:null,ricID:null,taskName:t,callback:n},i);return this.taskMap.set(r.taskID,r),this[t](r),r.taskID}},{key:"interval",value:function(t){var n=this;return t.intervalID=setInterval(function(){t.callback(),t.loopCount+=1,n.isBreakLoop(t)},t.delay)}},{key:"timeout",value:function(t){var n=this;return t.timeoutID=setTimeout(function i(){if(t.callback(),t.loopCount+=1,!n.isBreakLoop(t))return t.timeoutID=setTimeout(i,t.delay)},t.delay)}},{key:"ric",value:function(t){var n,i=this,r=Ct();return t.ricID=Lk(function o(){if((n=Ct()-r)>=t.delay&&(r=Ct()-Math.floor(n%t.delay),t.callback(),t.loopCount+=1),!i.isBreakLoop(t))return t.ricID=Lk(o,{timeout:t.delay})},{timeout:t.delay})}},{key:"raf",value:function(t){var n=this;t.delay=(1e3/t.fps).toFixed(2);var i,r=Ct(),o=function a(){if(document.hidden&&t.backgroundTask)return i=Ct()-r,r=Ct(),t.callback(),t.loopCount+=1,n.isBreakLoop(t)?void 0:t.timeoutID=setTimeout(a,t.delay-Math.floor(i%t.delay));if((i=Ct()-r)>=t.delay&&(r=Ct()-Math.floor(i%t.delay),t.callback(),t.loopCount+=1),!n.isBreakLoop(t))return t.rafID=requestAnimationFrame(a)};if(t.rafID=requestAnimationFrame(o),t.backgroundTask){var c=function(){if(document.hidden){var a=Ct()-r;a>=t.delay?o():t.timeoutID=setTimeout(o,t.delay-a)}};document.addEventListener("visibilitychange",c),t.onVisibilitychange=c,document.hidden&&c()}return t.taskID}},{key:"hasTask",value:function(t){return this.taskMap.has(t)}},{key:"clearTask",value:function(t){if(!this.taskMap.has(t))return!0;var n=this.taskMap.get(t),i=n.intervalID,r=n.timeoutID,o=n.rafID,c=n.ricID,a=n.onVisibilitychange;return i&&clearInterval(i),r&&clearTimeout(r),o&&qV(o),c&&JV(c),a&&document.removeEventListener("visibilitychange",a),this.taskMap.delete(t),!0}},{key:"isBreakLoop",value:function(t){return!this.taskMap.has(t.taskID)||t.count!==0&&t.loopCount>=t.count&&(this.clearTask(t.taskID),!0)}}]),e}();$e(mt,"taskMap",new Map),$e(mt,"currentTaskID",1);var KV=function(){function e(){Q(this,e),this.prefix_="TRTC",this.queue_=new Map,this.checkStorage()}return Ie(e,[{key:"getRealKey",value:function(t){return"".concat(this.prefix_,"_").concat(t)}},{key:"checkStorage",value:function(){var t=this;if(ia()){var n=Object.keys(localStorage).filter(function(i){if(i.startsWith(t.prefix_)){var r=JSON.parse(localStorage.getItem(i));if(r&&r.expiresIn<Date.now())return!0}return!1});n.forEach(function(i){return localStorage.removeItem(i)})}}},{key:"doFlush",value:function(){if(ia())try{var t,n=oe(this.queue_);try{for(n.s();!(t=n.n()).done;){var i=Te(t.value,2),r=i[0],o=i[1];localStorage.setItem(r,JSON.stringify(o))}}catch(c){n.e(c)}finally{n.f()}}catch(c){_e.warn(c)}}},{key:"getItem",value:function(t){if(!ia())return null;try{var n=JSON.parse(localStorage.getItem(this.getRealKey(t)));return n&&n.expiresIn>=Date.now()?n.value:null}catch(i){_e.warn(i)}}},{key:"setItem",value:function(t,n){var i=arguments.length>2&&arguments[2]!==void 0&&arguments[2];if(ia())try{var r={expiresIn:Date.now()+Kb,value:n};i?localStorage.setItem(this.getRealKey(t),JSON.stringify(r)):(this.queue_.set(this.getRealKey(t),r),mt.hasTask(this.intervalId_)||(this.intervalId_=mt.run(uo,this.doFlush.bind(this),{count:1})))}catch(o){_e.warn(o)}}},{key:"deleteItem",value:function(t){if(!ia())return!1;try{return t=this.getRealKey(t),this.queue_.delete(t),localStorage.removeItem(t),!0}catch(n){return _e.warn(n),!1}}},{key:"clear",value:function(){if(ia())try{localStorage.clear()}catch(t){_e.warn(t)}}}]),e}(),bo=new KV,_t={result:!1,detail:{isBrowserSupported:!1,isWebRTCSupported:!1,isMediaDevicesSupported:!1,isH264EncodeSupported:!1,isVp8EncodeSupported:!1,isH264DecodeSupported:!1,isVp8DecodeSupported:!1}},Mk="checkResult",Nk=function(){return!y4&&!$u&&!(Zu&&ES<80)&&!(Vn&&CS<56)},ym=function(){return["RTCPeerConnection","webkitRTCPeerConnection","RTCIceGatherer"].filter(function(e){return e in window}).length>0},XV=function(){if(!navigator.mediaDevices)return!1;var e=["getUserMedia","enumerateDevices"];return e.filter(function(t){return t in navigator.mediaDevices}).length===e.length},Uk=function(){var e=H(p().mark(function t(){var n,i,r,o,c,a;return p().wrap(function(s){for(;;)switch(s.prev=s.next){case 0:if(!_t.detail.isH264EncodeSupported||!_t.detail.isVp8EncodeSupported){s.next=2;break}return s.abrupt("return",{isH264EncodeSupported:_t.detail.isH264EncodeSupported,isVp8EncodeSupported:_t.detail.isVp8EncodeSupported});case 2:return n="",i=!1,r=!1,s.prev=5,o=new RTCPeerConnection,(c=document.createElement(hb)).getContext("2d"),a=c.captureStream(0),o.addTrack(a.getVideoTracks()[0],a),s.next=13,o.createOffer();case 13:return(n=s.sent).sdp.toLowerCase().indexOf("h264")!==-1&&(i=!0),n.sdp.toLowerCase().indexOf("vp8")!==-1&&(r=!0),o.close(),_t.detail.isH264EncodeSupported=i,_t.detail.isVp8EncodeSupported=r,s.abrupt("return",{isH264EncodeSupported:_t.detail.isH264EncodeSupported,isVp8EncodeSupported:_t.detail.isVp8EncodeSupported});case 22:return s.prev=22,s.t0=s.catch(5),s.abrupt("return",{isH264EncodeSupported:!1,isVp8EncodeSupported:!1});case 25:case"end":return s.stop()}},t,null,[[5,22]])}));return function(){return e.apply(this,arguments)}}();function QV(){return bm.apply(this,arguments)}function bm(){return bm=H(p().mark(function e(){return p().wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return t.abrupt("return",new Promise(function(){var n=H(p().mark(function i(r){var o,c,a,s,l,u,f,S,x,E,I,m,T,v;return p().wrap(function(w){for(;;)switch(w.prev=w.next){case 0:return o={encode:!1,decode:!1},c=null,w.prev=2,a=document.createElement("canvas"),s=a.getContext("2d"),a.width=640,a.height=480,l=setInterval(function(){s.fillText("test",Math.floor(640*Math.random()),Math.floor(480*Math.random()))},33),u=-1,f=-1,c=function(){clearInterval(u),clearInterval(l),clearTimeout(f),x.close(),E.close(),S.getTracks().forEach(function(L){return L.stop()})},f=setTimeout(function(){c(),r(o)},3e3),S=a.captureStream(),x=new RTCPeerConnection({}),E=new RTCPeerConnection({offerToReceiveAudio:!0,offerToReceiveVideo:!0}),x.addEventListener("icecandidate",function(L){return E.addIceCandidate(L.candidate)}),E.addEventListener("icecandidate",function(L){return x.addIceCandidate(L.candidate)}),x.addTrack(S.getVideoTracks()[0],S),w.next=20,x.createOffer();case 20:return I=w.sent,w.next=23,x.setLocalDescription(I);case 23:return w.next=25,E.setRemoteDescription(I);case 25:return w.next=27,E.createAnswer();case 27:return m=w.sent,T=Fr(m.sdp),v=T.media[0].rtp.findIndex(function(L){return L.codec==="H264"}),T.media[0].rtp=[T.media[0].rtp[v]],T.media[0].fmtp=T.media[0].fmtp.filter(function(L){return L.payload===T.media[0].rtp[0].payload}),T.media[0].rtcpFb=T.media[0].rtcpFb.filter(function(L){return L.payload===T.media[0].rtp[0].payload}),m.sdp=yo(T),w.next=36,E.setLocalDescription(m);case 36:return w.next=38,x.setRemoteDescription(m);case 38:u=setInterval(H(p().mark(function L(){var N,V;return p().wrap(function(_){for(;;)switch(_.prev=_.next){case 0:return o.encode&&o.decode&&(c(),r(o)),_.next=3,x.getStats();case 3:return N=_.sent,_.next=6,E.getStats();case 6:V=_.sent,o.encode||N.forEach(function(b){b.type==="outbound-rtp"&&b.mediaType===xe&&b.framesEncoded>0&&(o.encode=!0)}),o.decode||V.forEach(function(b){b.type==="inbound-rtp"&&b.mediaType===xe&&b.framesDecoded>0&&(o.decode=!0)});case 9:case"end":return _.stop()}},L)})),500),w.next=46;break;case 41:w.prev=41,w.t0=w.catch(2),c(),_e.warn(w.t0),r(o);case 46:case"end":return w.stop()}},i,null,[[2,41]])}));return function(i){return n.apply(this,arguments)}}()));case 1:case"end":return t.stop()}},e)})),bm.apply(this,arguments)}var Vk=function(){var e=H(p().mark(function t(){var n,i,r,o;return p().wrap(function(c){for(;;)switch(c.prev=c.next){case 0:if(!_t.detail.isH264DecodeSupported||!_t.detail.isVp8DecodeSupported){c.next=2;break}return c.abrupt("return",{isH264DecodeSupported:_t.detail.isH264DecodeSupported,isVp8DecodeSupported:_t.detail.isVp8DecodeSupported});case 2:return n="",i=!1,r=!1,c.prev=5,o=new RTCPeerConnection,c.next=9,o.createOffer({offerToReceiveAudio:1,offerToReceiveVideo:1});case 9:return(n=c.sent).sdp.toLowerCase().indexOf("h264")!==-1&&(i=!0),n.sdp.toLowerCase().indexOf("vp8")!==-1&&(r=!0),o.close(),c.abrupt("return",{isH264DecodeSupported:i,isVp8DecodeSupported:r});case 16:return c.prev=16,c.t0=c.catch(5),c.abrupt("return",{isH264DecodeSupported:!1,isVp8DecodeSupported:!1});case 19:case"end":return c.stop()}},t,null,[[5,16]])}));return function(){return e.apply(this,arguments)}}(),YV=function(){var e=H(p().mark(function t(){var n,i,r,o,c,a,s,l,u,f,S,x,E;return p().wrap(function(I){for(;;)switch(I.prev=I.next){case 0:if(jk()){I.next=2;break}return I.abrupt("return",_t);case 2:return n=Nk(),i=ym(),r=XV(),I.next=7,Uk();case 7:return o=I.sent,c=o.isH264EncodeSupported,a=o.isVp8EncodeSupported,I.next=12,Vk();case 12:if(s=I.sent,l=s.isH264DecodeSupported,u=s.isVp8DecodeSupported,c&&a){I.next=21;break}return I.next=18,Uk();case 18:f=I.sent,c=f.isH264EncodeSupported,a=f.isVp8EncodeSupported;case 21:if(!(c&&l&&(tl||nl||C4)&&!Nr&&lo()<79)){I.next=29;break}return I.next=24,QV();case 24:S=I.sent,x=S.encode,E=S.decode,c=x,l=E;case 29:return _t.result=n&&i&&r&&(c||a)&&(l||u),_t.detail.isBrowserSupported=n,_t.detail.isWebRTCSupported=i,_t.detail.isMediaDevicesSupported=r,_t.detail.isH264EncodeSupported=c,_t.detail.isVp8EncodeSupported=a,_t.detail.isH264DecodeSupported=l,_t.detail.isVp8DecodeSupported=u,$V(),bo.setItem(Mk,{ua:navigator.userAgent,checkResult:_t},!0),I.abrupt("return",_t);case 40:case"end":return I.stop()}},t)}));return function(){return e.apply(this,arguments)}}(),Sm=function(e,t){var n=null;return function(){if(n)return n;for(var i=arguments.length,r=new Array(i),o=0;o<i;o++)r[o]=arguments[o];return(n=e.apply(t||this,r)).then(function(c){return n=null,c}).catch(function(c){throw n=null,c}),n}}(YV);function jk(){return Object.keys(_t.detail).findIndex(function(e){return!_t.detail[e]})>=0}function $V(){jk()&&(_e.warn(ae({key:vS})),_e.info("".concat(navigator.userAgent," ").concat(JSON.stringify(_t.detail))))}function Bk(){return!(!navigator.mediaDevices||!navigator.mediaDevices.getDisplayMedia)}function Fk(){return"RTCPeerConnection"in window&&"getReceivers"in window.RTCPeerConnection.prototype}function ml(){return"RTCPeerConnection"in window&&"getSenders"in window.RTCPeerConnection.prototype}function Ti(){return"RTCPeerConnection"in window&&"getTransceivers"in window.RTCPeerConnection.prototype}function vl(){return"RTCPeerConnection"in window&&"addTransceiver"in window.RTCPeerConnection.prototype}function km(){return"RTCRtpSender"in window&&"replaceTrack"in window.RTCRtpSender.prototype}function Hk(){return"RTCRtpSender"in window&&"setParameters"in window.RTCRtpSender.prototype&&ml()}function gl(){return!!ge(navigator.mediaDevices)&&(_e.error(vi.NOT_SUPPORTED_MEDIA),!0)}function _l(){return location.protocol==="http:"&&!ra&&(_e.warn(ae({key:mS})),!0)}var Tm="RTCRtpSender"in window&&"createEncodedStreams"in window.RTCRtpSender.prototype&&lo()>=86;function xm(e){return!(e.type!=="candidate-pair"||!e.nominated||e.state!=="in-progress"&&e.state!=="succeeded")&&!(nr(e.selected)&&!e.selected)}var Gk=new Map([[ta,"Android"],[gi,"iOS"],[AS,"Windows"],[ec,"MacOS"],[PS,"Linux"]]);function Im(){var e="unknown";return Gk.get(!0)&&(e=Gk.get(!0)),e}function ZV(){var e="";return screen.width&&(e+=(screen.width?screen.width*window.devicePixelRatio:"")+" * "+(screen.height?screen.height*window.devicePixelRatio:"")),e}function e6(){var e=!1;return(navigator.getUserMedia||navigator.mediaDevices&&navigator.mediaDevices.getUserMedia)&&(e=!0),e}function t6(){for(var e={isSupported:!1},t=["AudioContext","webkitAudioContext","mozAudioContext","msAudioContext"],n=0;n<t.length;n++)if(t[n]in window){e.isSupported=!0;break}return e.isSupported}function zk(){return!(lp&&lo()<86)&&!(gi&&tr(_i)&&_i<15)&&!(bp&&bp<63)&&!(!Nk()||!("captureStream"in HTMLCanvasElement.prototype))}var la=window.MediaStreamTrack&&"getSettings"in MediaStreamTrack.prototype,n6=window.MediaStreamTrack&&"getCapabilities"in MediaStreamTrack.prototype,r6=function(){var e,t,n;return((e=window)===null||e===void 0?void 0:e.OffscreenCanvas)&&((t=window)===null||t===void 0?void 0:t.MediaStreamTrackProcessor)&&((n=window)===null||n===void 0?void 0:n.MediaStreamTrackGenerator)};(function(){_l();var e=bo.getItem(Mk);e&&e.ua===navigator.userAgent&&(_t=e.checkResult),Sm()})();var et={STREAM_ADDED:"stream-added",STREAM_REMOVED:"stream-removed",STREAM_UPDATED:"stream-updated",STREAM_PUBLISHED:"stream-published",STREAM_SUBSCRIBED:"stream-subscribed",STREAM_UNSUBSCRIBED:"stream-unsubscribed",STATE_CHANGED:"state-changed",ERROR:"error",CONNECTION_STATE_CHANGED:"connection-state-changed",SEI_MESSAGE:vb},ct={STREAM_ADDED:"stream-added",STREAM_REMOVED:"stream-removed",STREAM_UPDATED:"stream-updated",STREAM_SUBSCRIBED:"stream-subscribed",CONNECTION_STATE_CHANGED:"connection-state-changed",PEER_JOIN:"peer-join",PEER_LEAVE:"peer-leave",MUTE_AUDIO:"mute-audio",MUTE_VIDEO:"mute-video",UNMUTE_AUDIO:"unmute-audio",UNMUTE_VIDEO:"unmute-video",CLIENT_BANNED:"client-banned",NETWORK_QUALITY:"network-quality",AUDIO_VOLUME:"audio-volume",SEI_MESSAGE:vb,ERROR:"error"},Wk="player-state-changed",i6="screen-sharing-stopped",a6="connection-state-changed",o6="device-auto-recovered",wm="error",gn="player-state-changed",Jk="error",s6=aS;Le({target:"String",proto:!0,forced:oS("small")},{small:function(){return s6(this,"small","","")}});var c6=function(){function e(o){Q(this,e);var c=o.getUserId();this.log_=_e.createLogger({id:c,userId:c,sdkAppId:o.getSDKAppId()}),this.prevReportTime_=0,this.prevReport_={},this.prevEncoderImplementation_="",this.prevQualityLimitationReason_="",this.prevDecoderImplementationMap_=new Map}var t,n,i,r;return Ie(e,[{key:"statInterval",get:function(){return this.prevReportTime_===0?2:(Date.now()-this.prevReportTime_)/1e3}},{key:"getSenderStats",value:(r=H(p().mark(function o(c){var a,s,l,u,f=this;return p().wrap(function(S){for(;;)switch(S.prev=S.next){case 0:if(a={audio:{bytesSent:0,packetsSent:0,audioLevel:0,totalAudioEnergy:0},video:{bytesSent:0,packetsSent:0,framesEncoded:0,frameWidth:0,frameHeight:0,framesSent:0,fpsCapture:0},small:{bytesSent:0,packetsSent:0,framesEncoded:0,frameWidth:0,frameHeight:0,framesSent:0,fpsCapture:0},auxiliary:{bytesSent:0,packetsSent:0,framesEncoded:0,frameWidth:0,frameHeight:0,framesSent:0,fpsCapture:0},rtt:0},s=c.getPeerConnection(),l=c.getSSRC(),!s){S.next=15;break}return S.prev=4,S.next=7,s.getStats();case 7:S.sent.forEach(function(x){var E;if(x.type==="outbound-rtp")if((x.mediaType||x.kind)===xe){if(!Vn&&x.bytesSent===0)return;x.ssrc!==l.video||ge(x.encoderImplementation)||f.prevEncoderImplementation_===x.encoderImplementation||(f.log_.info("encoderImplementation change to ".concat(x.encoderImplementation)),f.prevEncoderImplementation_=x.encoderImplementation),x.ssrc!==l.video||ge(x.qualityLimitationReason)||f.prevQualityLimitationReason_===x.qualityLimitationReason||(f.log_.info("qualityLimitationReason change to ".concat(x.qualityLimitationReason)),f.prevQualityLimitationReason_=x.qualityLimitationReason);var I=xe;x.ssrc===l.small?I=Mr:x.ssrc===l.auxiliary&&(I=gt),a[I].bytesSent=x.bytesSent,a[I].packetsSent=x.packetsSent,a[I].framesEncoded=x.framesEncoded}else a.audio.bytesSent=x.bytesSent,a.audio.packetsSent=x.packetsSent;else x.type==="candidate-pair"?xm(x)&&tr(x.currentRoundTripTime)&&(a.rtt=Math.floor(1e3*x.currentRoundTripTime)):x.type==="media-source"&&(x.kind===Ee?(a.audio.audioLevel=x.audioLevel||0,a.audio.totalAudioEnergy=x.totalAudioEnergy||0):x.kind===xe&&(x.trackIdentifier===c.getVideoTrackId(xe)?a.video.fpsCapture=x.framesPerSecond:x.trackIdentifier===c.getVideoTrackId(gt)?a.auxiliary.fpsCapture=x.framesPerSecond:a.small.fpsCapture=x.framesPerSecond));ge(x.audioLevel)||(a.audio.audioLevel=x.audioLevel||0,a.audio.totalAudioEnergy=x.totalAudioEnergy||0),ge(x.frameWidth)||(x.trackIdentifier===c.getVideoTrackId(xe)||x.ssrc===l.video?E=xe:x.trackIdentifier===c.getVideoTrackId(gt)||x.ssrc===l.auxiliary?E=gt:x.trackIdentifier!==c.getVideoTrackId(Mr)&&x.ssrc!==l.small||(E=Mr),E&&(a[E].frameWidth=x.frameWidth,a[E].frameHeight=x.frameHeight,a[E].framesSent=x.framesSent))}),a.audio.audioLevel===0&&(a.audio.audioLevel=((u=c.getLocalStream())===null||u===void 0?void 0:u.getInternalAudioLevel())||0),S.next=15;break;case 12:S.prev=12,S.t0=S.catch(4),this.log_.warn("failed to getStats on sender connection "+S.t0);case 15:return S.abrupt("return",a);case 16:case"end":return S.stop()}},o,this,[[4,12]])})),function(o){return r.apply(this,arguments)})},{key:"getReceiverStats",value:(i=H(p().mark(function o(c){var a,s,l,u,f,S=this;return p().wrap(function(x){for(;;)switch(x.prev=x.next){case 0:if(a={tinyId:c.getTinyId(),userId:c.getUserId(),rtt:0,hasAudio:!1,hasVideo:!1,hasAuxiliary:!1,audio:{bytesReceived:0,packetsReceived:0,packetsLost:0,jitter:0,audioLevel:0,totalAudioEnergy:0},video:{bytesReceived:0,packetsReceived:0,packetsLost:0,framesReceived:0,framesDecoded:0,frameWidth:0,frameHeight:0},auxiliary:{bytesReceived:0,packetsReceived:0,packetsLost:0,framesReceived:0,framesDecoded:0,frameWidth:0,frameHeight:0}},!(s=c.getPeerConnection())){x.next=16;break}return x.prev=3,l=c.getSSRC(),u=c.getTrackState(),x.next=8,s.getStats();case 8:x.sent.forEach(function(E){if(E.type==="inbound-rtp")if((E.mediaType||E.kind)===Ee){if(E.ssrc!==l.audio||!u.audio)return;a.audio.packetsReceived=E.packetsReceived,a.audio.bytesReceived=E.bytesReceived,a.audio.packetsLost=E.packetsLost,a.audio.jitter=E.jitter,a.hasAudio=!0}else{if(Vn&&E.bytesReceived===0)return;E.ssrc===l.video&&u.video&&(a.video.packetsReceived=E.packetsReceived,a.video.bytesReceived=E.bytesReceived,a.video.packetsLost=E.packetsLost,a.video.framesReceived=E.framesReceived,a.video.framesDecoded=E.framesDecoded,a.video.fpsDecoded=E.framesPerSecond,a.hasVideo=!0,!E.decoderImplementation||S.prevDecoderImplementationMap_.has(a.userId)&&S.prevDecoderImplementationMap_.get(a.userId)===E.decoderImplementation||(S.log_.info("".concat(a.userId," decoderImplementation change to ").concat(E.decoderImplementation)),S.prevDecoderImplementationMap_.set(a.userId,E.decoderImplementation))),E.ssrc===l.auxiliary&&u.auxiliary&&(a.auxiliary.packetsReceived=E.packetsReceived,a.auxiliary.bytesReceived=E.bytesReceived,a.auxiliary.packetsLost=E.packetsLost,a.auxiliary.framesReceived=E.framesReceived,a.auxiliary.framesDecoded=E.framesDecoded,a.auxiliary.fpsDecoded=E.framesPerSecond,a.hasAuxiliary=!0)}else E.type==="candidate-pair"&&xm(E)&&tr(E.currentRoundTripTime)&&(a.rtt=Math.floor(1e3*E.currentRoundTripTime));ge(E.frameWidth)||(E.trackIdentifier!==c.getMainStreamVideoTrackId()&&E.ssrc!==l.video||(a.video.frameWidth=E.frameWidth,a.video.frameHeight=E.frameHeight),E.trackIdentifier!==c.getAuxStreamVideoTrackId()&&E.ssrc!==l.auxiliary||(a.auxiliary.frameWidth=E.frameWidth,a.auxiliary.frameHeight=E.frameHeight)),ge(E.audioLevel)||(a.audio.audioLevel=E.audioLevel||0,a.audio.totalAudioEnergy=E.totalAudioEnergy||0)}),a.audio.audioLevel===0&&(a.audio.audioLevel=((f=c.getMainStream())===null||f===void 0?void 0:f.getInternalAudioLevel())||0),x.next=16;break;case 13:x.prev=13,x.t0=x.catch(3),this.log_.warn("failed to getStats on receiver connection "+x.t0);case 16:return x.abrupt("return",a);case 17:case"end":return x.stop()}},o,this,[[3,13]])})),function(o){return i.apply(this,arguments)})},{key:"getStats",value:(n=H(p().mark(function o(c,a){var s,l,u,f,S,x,E;return p().wrap(function(I){for(;;)switch(I.prev=I.next){case 0:if(s={},!c){I.next=5;break}return I.next=4,this.getSenderStats(c);case 4:s=I.sent;case 5:l=[],u=oe(a),I.prev=7,u.s();case 9:if((f=u.n()).done){I.next=17;break}return(S=Te(f.value,2))[0],x=S[1],I.next=13,this.getReceiverStats(x);case 13:E=I.sent,l.push(E);case 15:I.next=9;break;case 17:I.next=22;break;case 19:I.prev=19,I.t0=I.catch(7),u.e(I.t0);case 22:return I.prev=22,u.f(),I.finish(22);case 25:return I.abrupt("return",{senderStats:s,receiverStats:l});case 26:case"end":return I.stop()}},o,this,[[7,19,22,25]])})),function(o,c){return n.apply(this,arguments)})},{key:"getDifferenceValue",value:function(o,c){if(Br(o))return c;var a=c-o;return a<0?0:a}},{key:"prepareReport",value:function(o){var c=this,a=o.stats,s=o.report,l=o.freezeMap;if(!Br(a.senderStats)){var u;u={uint32_audio_level:1e8*a.senderStats.audio.audioLevel,uint32_audio_energy:1e6*a.senderStats.audio.totalAudioEnergy,uint32_audio_codec_bitrate:a.senderStats.audio.bytesSent,audioLevel:a.senderStats.audio.audioLevel};var f=[],S={uint32_video_stream_type:2,uint32_video_codec_fps:a.senderStats.video.framesSent,uint32_video_capture_fps:a.senderStats.video.fpsCapture,uint32_video_width:a.senderStats.video.frameWidth,uint32_video_height:a.senderStats.video.frameHeight,uint32_video_codec_bitrate:a.senderStats.video.bytesSent,uint32_video_enc_fps:a.senderStats.video.framesEncoded};if(f.push(S),a.senderStats.small.bytesSent){var x={uint32_video_stream_type:3,uint32_video_codec_fps:a.senderStats.small.framesSent||0,uint32_video_capture_fps:a.senderStats.small.fpsCapture||0,uint32_video_width:a.senderStats.small.frameWidth||0,uint32_video_height:a.senderStats.small.frameHeight||0,uint32_video_codec_bitrate:a.senderStats.small.bytesSent,uint32_video_enc_fps:a.senderStats.small.framesEncoded||0};f.push(x)}if(a.senderStats.auxiliary.bytesSent){var E={uint32_video_stream_type:7,uint32_video_codec_fps:a.senderStats.auxiliary.framesSent||0,uint32_video_capture_fps:a.senderStats.auxiliary.fpsCapture||0,uint32_video_width:a.senderStats.auxiliary.frameWidth||0,uint32_video_height:a.senderStats.auxiliary.frameHeight||0,uint32_video_codec_bitrate:a.senderStats.auxiliary.bytesSent,uint32_video_enc_fps:a.senderStats.auxiliary.framesEncoded||0};f.push(E)}var I={uint32_bitrate:0,uint32_rtt:a.senderStats.rtt};s.msg_up_stream_info={msg_audio_status:u,msg_video_status:f,msg_network_status:I}}var m=this.statInterval;s.msg_down_stream_info=[],a.receiverStats.forEach(function(b){var R={};if(R.msg_user_info={str_identifier:b.userId,uint64_tinyid:b.tinyId},R.msg_network_status={uint32_rtt:b.rtt},R.msg_video_status={},b.hasAudio){var P={uint32_audio_codec_bitrate:b.audio.bytesReceived,uint32_audio_total_bitrate:b.audio.bytesReceived,uint32_audio_level:1e8*b.audio.audioLevel,uint32_audio_energy:1e6*b.audio.totalAudioEnergy,uint32_audio_receive:b.audio.packetsReceived,uint32_audio_origin_lost:b.audio.packetsLost,audioLevel:b.audio.audioLevel};R.msg_audio_status=P}if(R.msg_video_status=[],b.hasVideo){var U=l.get(b.userId+"_"+yt),k=U?U.duration:0,h={uint32_video_stream_type:2,uint32_video_receive_fps:b.video.framesReceived,uint32_video_width:b.video.frameWidth,uint32_video_height:b.video.frameHeight,uint32_video_codec_bitrate:b.video.bytesReceived,uint32_video_receive:b.video.packetsReceived,uint32_video_origin_lost:b.video.packetsLost,uint32_video_block_time:k,uint32_video_dec_fps:b.video.framesDecoded};R.msg_video_status.push(h)}if(b.hasAuxiliary){var y=l.get(b.userId+"_"+Dt),A=y?y.duration:0,D={uint32_video_stream_type:7,uint32_video_receive_fps:b.auxiliary.framesReceived,uint32_video_width:b.auxiliary.frameWidth,uint32_video_height:b.auxiliary.frameHeight,uint32_video_codec_bitrate:b.auxiliary.bytesReceived,uint32_video_receive:b.auxiliary.packetsReceived+b.auxiliary.packetsLost,uint32_video_origin_lost:b.auxiliary.packetsLost,uint32_video_block_time:A,uint32_video_dec_fps:b.auxiliary.framesDecoded};R.msg_video_status.push(D)}s.msg_down_stream_info.push(R)});var T=this.prevReport_;if(this.prevReport_=JSON.parse(JSON.stringify(s)),s.msg_up_stream_info.msg_audio_status&&T.msg_up_stream_info.msg_audio_status){var v=T.msg_up_stream_info.msg_audio_status,w=s.msg_up_stream_info.msg_audio_status,L=this.getDifferenceValue(v.uint32_audio_codec_bitrate,w.uint32_audio_codec_bitrate);w.uint32_audio_codec_bitrate=Math.round(8*L/m),s.msg_up_stream_info.msg_network_status.uint32_bitrate+=w.uint32_audio_codec_bitrate}var N=T.msg_up_stream_info.msg_video_status;s.msg_up_stream_info.msg_video_status.forEach(function(b){var R=N.find(function(y){return y.uint32_video_stream_type===b.uint32_video_stream_type});if(!R||R.uint32_video_codec_bitrate===0)return b.uint32_video_codec_bitrate=0,b.uint32_video_enc_fps=0,void(b.uint32_video_codec_fps=0);var P=R.uint32_video_codec_bitrate,U=R.uint32_video_enc_fps,k=R.uint32_video_codec_fps,h=c.getDifferenceValue(P,b.uint32_video_codec_bitrate);b.uint32_video_codec_bitrate=Math.round(8*h/m),s.msg_up_stream_info.msg_network_status.uint32_bitrate+=b.uint32_video_codec_bitrate,b.uint32_video_enc_fps=Math.round(c.getDifferenceValue(U,b.uint32_video_enc_fps)/m),b.uint32_video_codec_fps=Math.round(c.getDifferenceValue(k,b.uint32_video_codec_fps)/m)});var V=s.msg_down_stream_info,_=T.msg_down_stream_info;return V.forEach(function(b){var R=_.find(function(A){return A.msg_user_info.uint64_tinyid===b.msg_user_info.uint64_tinyid});if(R){if(b.msg_audio_status&&R.msg_audio_status){var P=b.msg_audio_status,U=R.msg_audio_status;P.uint32_audio_origin_lost=c.getDifferenceValue(U.uint32_audio_origin_lost,P.uint32_audio_origin_lost),P.uint32_audio_receive=c.getDifferenceValue(U.uint32_audio_receive,P.uint32_audio_receive),P.uint32_audio_receive+=P.uint32_audio_origin_lost;var k=c.getDifferenceValue(U.uint32_audio_codec_bitrate,P.uint32_audio_codec_bitrate);P.uint32_audio_codec_bitrate=Math.round(8*k/m),P.uint32_audio_total_bitrate=Math.round(8*k/m)}if(b.msg_video_status&&R.msg_video_status){var h=b.msg_video_status,y=R.msg_video_status;h.forEach(function(A){var D=y.find(function(Fe){return Fe.uint32_video_stream_type===A.uint32_video_stream_type});if(!D)return A.uint32_video_receive=0,A.uint32_video_origin_lost=0,A.uint32_video_codec_bitrate=0,A.uint32_video_receive_fps=0,void(A.uint32_video_dec_fps=0);var j=D.uint32_video_receive,K=D.uint32_video_origin_lost,J=D.uint32_video_codec_bitrate,se=D.uint32_video_receive_fps,ie=D.uint32_video_dec_fps;A.uint32_video_origin_lost=c.getDifferenceValue(K,A.uint32_video_origin_lost),A.uint32_video_receive=c.getDifferenceValue(j,A.uint32_video_receive)+A.uint32_video_origin_lost;var Je=c.getDifferenceValue(J,A.uint32_video_codec_bitrate);A.uint32_video_codec_bitrate=Math.round(8*Je/m);var Ue=c.getDifferenceValue(se,A.uint32_video_receive_fps);A.uint32_video_receive_fps=Math.round(Ue/m),A.uint32_video_dec_fps=Math.round(c.getDifferenceValue(ie,A.uint32_video_dec_fps)/m)})}}}),s}},{key:"getStatsReport",value:(t=H(p().mark(function o(c){var a,s,l,u,f;return p().wrap(function(S){for(;;)switch(S.prev=S.next){case 0:return a=c.uplinkConnection,s=c.downlinkConnections,l=c.freezeMap,u={msg_up_stream_info:{msg_audio_status:{uint32_audio_format:0,uint32_audio_sample_rate:0,uint32_audio_codec_bitrate:0,uint32_audio_receive:0,uint32_audio_origin_lost:0,uint32_audio_level:0,uint32_audio_energy:0,audioLevel:0},msg_video_status:[{uint32_video_stream_type:0,uint32_video_codec_fps:0,uint32_video_capture_fps:0,uint32_video_width:0,uint32_video_height:0,uint32_video_codec_bitrate:0,uint32_video_receive:0,uint32_video_origin_lost:0,uint32_video_final_lost:0,uint32_video_enc_fps:0}],msg_network_status:{uint32_bitrate:0,uint32_rtt:0,uint32_lost:0}},msg_down_stream_info:[{msg_user_info:{str_identifier:"",uint64_tinyid:""},msg_audio_status:{uint32_audio_format:0,uint32_audio_sample_rate:0,uint32_audio_codec_bitrate:0,uint32_audio_total_bitrate:0,uint32_audio_level:0,uint32_audio_energy:0,uint32_audio_receive:0,uint32_audio_origin_lost:0,uint32_audio_final_lost:0,audioLevel:0},msg_video_status:[{uint32_video_stream_type:0,uint32_video_receive_fps:0,uint32_video_width:0,uint32_video_height:0,uint32_video_codec_bitrate:0,uint32_video_receive:0,uint32_video_origin_lost:0,uint32_video_block_time:0,uint32_video_dec_fps:0}],msg_network_status:{uint32_bitrate:0,uint32_rtt:0,uint32_lost:0,uint32_jitter:0}}]},S.next=4,this.getStats(a,s);case 4:return f=S.sent,JSON.stringify(this.prevReport_)==="{}"&&(this.prevReport_=JSON.parse(JSON.stringify(u))),this.prepareReport({stats:f,report:u,freezeMap:l,uplinkConnection:a,downlinkConnections:s}),this.prevReportTime_=Date.now(),S.abrupt("return",u);case 9:case"end":return S.stop()}},o,this)})),function(o){return t.apply(this,arguments)})},{key:"reset",value:function(){this.prevReportTime_=0,this.prevReport_={},this.prevEncoderImplementation_="",this.prevQualityLimitationReason_="",this.prevDecoderImplementationMap_=new Map}}]),e}(),u6=function(){function e(i){var r=i.signalChannel,o=i.connections,c=i.client;Q(this,e),this.client_=c,this.signalChannel_=r,this.connections_=o,this.client_=c,this.log_=_e.createLogger({id:"q|"+this.client_.getUserId(),userId:this.client_.getUserId(),sdkAppId:this.client_.getSDKAppId()}),this.uplinkConnection_=null,this.uplinkNetworkQuality_=0,this.uplinkRTT_=0,this.uplinkLoss_=0,this.downlinkNetworkQuality_=0,this.downlinkRTT_=0,this.downlinkLoss_=0,this.downlinkPrevStatMap_=new Map,this.downlinkLossAndRTTMap_=new Map,this.interval_=-1,this.emitter_=new Si,this.initialize()}var t,n;return Ie(e,[{key:"uplinkNetworkQuality",get:function(){return this.uplinkNetworkQuality_},set:function(i){i!==this.uplinkNetworkQuality_&&this.log_.info("uplink network quality change ".concat(this.uplinkNetworkQuality," -> ").concat(i,", rtt: ").concat(this.uplinkRTT_,", loss: ").concat(this.uplinkLoss_)),this.uplinkNetworkQuality_=i}},{key:"downlinkNetworkQuality",get:function(){return this.downlinkNetworkQuality_},set:function(i){if(i!==this.downlinkNetworkQuality_){var r=this.getAverageLossAndRTT(Se(this.downlinkLossAndRTTMap_.values())),o=r.rtt,c=r.loss;this.log_.info("downlink network quality change ".concat(this.downlinkNetworkQuality," -> ").concat(i,", rtt: ").concat(o,", loss: ").concat(c))}this.downlinkNetworkQuality_=i}},{key:"initialize",value:function(){var i=this;this.signalChannel_.on(st.UPLINK_NETWORK_STATS,function(r){i.handleUplinkNetworkQuality(r)}),this.signalChannel_.on(rm,this.handleSignalConnectionStateChange.bind(this)),this.start()}},{key:"handleUplinkNetworkQuality",value:function(i){if(!this.uplinkConnection_)return this.uplinkNetworkQuality=0,this.uplinkLoss_=0,void(this.uplinkRTT_=0);var r=this.uplinkConnection_.getPeerConnection();if(r&&this.isPeerConnectionDisconnected(r))return this.uplinkNetworkQuality=6,this.uplinkLoss_=0,void(this.uplinkRTT_=0);if(i.data.code===0){var o=i.data.data,c=o.expectAudPkg+o.expectVidPkg,a=o.recvAudPkg+o.recvVidPkg,s=c-a,l=o.delay;if(l&&this.updateDelay(l),c===0&&a===0)return;this.uplinkLoss_=s<=0?0:Math.round(s/c*100),this.uplinkRTT_=o.rtt,this.uplinkNetworkQuality=this.getNetworkQuality(this.uplinkLoss_,this.uplinkRTT_)}}},{key:"handleDownlinkNetworkQuality",value:(n=H(p().mark(function i(){var r,o,c,a,s,l,u,f,S,x,E,I,m,T,v,w=this;return p().wrap(function(L){for(;;)switch(L.prev=L.next){case 0:if(this.connections_&&this.connections_.size!==0){L.next=3;break}return this.downlinkNetworkQuality=0,L.abrupt("return");case 3:if(r=Se(this.connections_.values()),o=r.filter(function(N){return N.getPeerConnection()&&N.getPeerConnection().connectionState===kb}),r.filter(function(N){return N.getPeerConnection()&&w.isPeerConnectionDisconnected(N.getPeerConnection())}).length!==r.length){L.next=9;break}return this.downlinkNetworkQuality=6,L.abrupt("return");case 9:c=0;case 10:if(!(c<o.length)){L.next=31;break}return a=o[c].getPeerConnection(),L.next=14,this.getStat(a);case 14:if(s=L.sent,l=s.rtt,u=s.totalPacketsLost,f=s.totalPacketsReceived,this.downlinkPrevStatMap_.has(a)){L.next=21;break}return this.downlinkPrevStatMap_.set(a,{totalPacketsLost:u,totalPacketsReceived:f}),L.abrupt("continue",28);case 21:S=0,x=this.downlinkPrevStatMap_.get(a),E=u-x.totalPacketsLost,I=f-x.totalPacketsReceived,S=E<=0||I<0?0:Math.round(E/(E+I)*100),this.downlinkPrevStatMap_.set(a,{totalPacketsLost:u,totalPacketsReceived:f}),this.downlinkLossAndRTTMap_.set(a,{rtt:l,loss:S,userId:o[c].getUserId()});case 28:c++,L.next=10;break;case 31:if(Se(this.downlinkPrevStatMap_.keys()).forEach(function(N){w.isPeerConnectionDisconnected(N)&&(w.downlinkPrevStatMap_.delete(N),w.downlinkLossAndRTTMap_.delete(N))}),this.downlinkLossAndRTTMap_.size!==0){L.next=34;break}return L.abrupt("return");case 34:m=this.getAverageLossAndRTT(Se(this.downlinkLossAndRTTMap_.values())),T=m.rtt,v=m.loss,this.downlinkRTT_=T,this.downlinkLoss_=v,this.downlinkNetworkQuality=this.getNetworkQuality(v,T);case 38:case"end":return L.stop()}},i,this)})),function(){return n.apply(this,arguments)})},{key:"getStat",value:(t=H(p().mark(function i(r){var o,c,a,s;return p().wrap(function(l){for(;;)switch(l.prev=l.next){case 0:if(o={rtt:0,totalPacketsLost:0,totalPacketsReceived:0},r&&Fk()){l.next=3;break}return l.abrupt("return",o);case 3:c=r.getReceivers(),l.prev=4,a=0;case 6:if(!(a<c.length)){l.next=15;break}return s=c[a],l.next=10,s.getStats();case 10:l.sent.forEach(function(u){u.type==="candidate-pair"&&tr(u.currentRoundTripTime)&&(o.rtt=Math.round(1e3*u.currentRoundTripTime)),u.type!=="inbound-rtp"||u.mediaType!==Ee&&u.mediaType!==xe||(o.totalPacketsLost+=u.packetsLost,o.totalPacketsReceived+=u.packetsReceived)});case 12:a++,l.next=6;break;case 15:return l.abrupt("return",o);case 18:return l.prev=18,l.t0=l.catch(4),l.abrupt("return",o);case 21:case"end":return l.stop()}},i,null,[[4,18]])})),function(i){return t.apply(this,arguments)})},{key:"getAverageLossAndRTT",value:function(i){var r={rtt:0,loss:0};return Array.isArray(i)&&i.length>0&&(i.forEach(function(o){r.rtt+=o.rtt,r.loss+=o.loss}),Object.keys(r).forEach(function(o){r[o]=Math.round(r[o]/i.length)})),r}},{key:"getNetworkQuality",value:function(i,r){return i>50||r>500?5:i>30||r>350?4:i>20||r>200?3:i>10||r>100?2:i>=0||r>=0?1:0}},{key:"handleSignalConnectionStateChange",value:function(i){i.state===fl?(this.uplinkRTT_=0,this.uplinkLoss_=0,this.uplinkNetworkQuality=6):i.state===oc&&this.uplinkNetworkQuality===6&&(this.uplinkNetworkQuality=5)}},{key:"handleUplinkConnectionStateChange",value:function(i){var r=i.state;r===on?(this.uplinkLoss_=0,this.uplinkRTT_=0,this.uplinkNetworkQuality=6):r===sn&&this.uplinkNetworkQuality===6&&(this.uplinkNetworkQuality=5)}},{key:"isPeerConnectionDisconnected",value:function(i){return!(!i||i.connectionState!==$M&&i.connectionState!==Sb&&i.connectionState!==Bf)}},{key:"setUplinkConnection",value:function(i){this.uplinkConnection_=i,this.uplinkConnection_?this.uplinkConnection_.on(et.CONNECTION_STATE_CHANGED,this.handleUplinkConnectionStateChange.bind(this)):(this.uplinkNetworkQuality=0,this.uplinkRTT_=0,this.uplinkLoss_=0)}},{key:"start",value:function(){var i=this;this.interval_===-1?(this.log_.info("start network quality calculating"),this.interval_=mt.run(uo,function(){i.handleDownlinkNetworkQuality(),Y.emit(Yp,{client:i.client_,uplinkNetworkQuality:i.uplinkNetworkQuality,downlinkNetworkQuality:i.downlinkNetworkQuality,uplinkRTT:i.uplinkRTT_,uplinkLoss:i.uplinkLoss_,downlinkRTT:i.downlinkRTT_,downlinkLoss:i.downlinkLoss_,downlinkLossAndRTTMap:i.downlinkLossAndRTTMap_}),i.emitter_.emit(ct.NETWORK_QUALITY,{uplinkNetworkQuality:i.uplinkNetworkQuality,downlinkNetworkQuality:i.downlinkNetworkQuality,uplinkRTT:i.uplinkRTT_,uplinkLoss:i.uplinkLoss_,downlinkRTT:i.downlinkRTT_,downlinkLoss:i.downlinkLoss_})},{delay:2e3})):this.log_.info("network quality calculating is already started")}},{key:"stop",value:function(){this.log_.info("stop network quality calculating"),this.interval_!==-1&&(mt.clearTask(this.interval_),this.interval_=-1),this.downlinkLossAndRTTMap_.clear(),this.downlinkPrevStatMap_.clear()}},{key:"on",value:function(i,r){this.emitter_.on(i,r)}},{key:"updateDelay",value:function(i){var r=this;i.forEach(function(o){var c=o.srcTinyId,a=o.videoDelay,s=o.audioDelay,l=r.connections_.get(c);l&&l.setDelay({videoDelay:a,audioDelay:s})})}}]),e}(),l6=function(){function e(i){Q(this,e),this.log_=_e.createLogger({id:i.client.getUserId(),userId:i.client.getUserId(),sdkAppId:i.client.getSDKAppId()}),this.localStream_=null,this.prevDevices_=[],this.initialize()}var t,n;return Ie(e,[{key:"initialize",value:function(){navigator.mediaDevices&&navigator.mediaDevices.addEventListener&&(this.onDeviceChange=this.onDeviceChange.bind(this),navigator.mediaDevices.addEventListener("devicechange",this.onDeviceChange))}},{key:"destroy",value:function(){navigator.mediaDevices&&navigator.mediaDevices.removeEventListener&&navigator.mediaDevices.removeEventListener("devicechange",this.onDeviceChange)}},{key:"onDeviceChange",value:(n=H(p().mark(function i(){var r,o,c,a=this;return p().wrap(function(s){for(;;)switch(s.prev=s.next){case 0:if(this.localStream_&&this.localStream_.getMediaStream()&&!this.localStream_.getScreen()){s.next=2;break}return s.abrupt("return");case 2:return s.next=4,Em();case 4:r=s.sent,o=r.filter(function(l){return a.prevDevices_.findIndex(function(u){var f=u.deviceId;return l.deviceId===f})<0}),c=this.prevDevices_.filter(function(l){return r.findIndex(function(u){var f=u.deviceId;return l.deviceId===f})<0}),o.length>0&&this.handleDeviceAdded(this.prevDevices_,o),c.length>0&&this.handleDeviceRemoved(r,c),this.prevDevices_=r;case 10:case"end":return s.stop()}},i,this)})),function(){return n.apply(this,arguments)})},{key:"setLocalStream",value:(t=H(p().mark(function i(r){return p().wrap(function(o){for(;;)switch(o.prev=o.next){case 0:if(!r){o.next=4;break}return o.next=3,Em();case 3:this.prevDevices_=o.sent;case 4:this.localStream_=r;case 5:case"end":return o.stop()}},i,this)})),function(i){return t.apply(this,arguments)})},{key:"handleDeviceAdded",value:function(i,r){var o,c;if(this.localStream_){this.log_.warn("devicesAdded: ".concat(JSON.stringify(r))),this.localStream_.updateDeviceIdInUse();var a=r.filter(function(x){return x.kind===Hu}),s=r.filter(function(x){return x.kind===qs}),l=i.filter(function(x){return x.kind===Hu}),u=i.filter(function(x){return x.kind===qs}),f=a.length>0&&l.length===0&&((o=this.localStream_.getVideoTrack())===null||o===void 0?void 0:o.readyState)!=="live",S=s.length>0&&u.length===0&&((c=this.localStream_.getAudioTrack())===null||c===void 0?void 0:c.readyState)!=="live";if(S&&f)return this.log_.info("new microphone and camera detected, but there was no device before."),void this.localStream_.recoverCapture({audio:!0,video:!0,cameraId:a[0].deviceId,microphoneId:s[0].deviceId});f&&(this.log_.info("new camera detected, but there was no camera before."),this.localStream_.recoverCapture({audio:!1,video:!0,cameraId:a[0].deviceId})),S&&(this.log_.info("new microphone detected, but there was no microphone before."),this.localStream_.recoverCapture({audio:!0,video:!1,microphoneId:s[0].deviceId}))}}},{key:"handleDeviceRemoved",value:function(i,r){if(this.localStream_){this.log_.warn("devicesRemoved: ".concat(JSON.stringify(r))),this.localStream_.updateDeviceIdInUse();var o=!1,c=!1,a=this.localStream_.getCameraId(),s=this.localStream_.getMicrophoneId();if(s===Ku){var l=this.localStream_.getMicrophoneGroupId(),u=i.filter(function(f){return f.deviceId===Ku&&f.kind===qs})[0];u&&u.groupId!==l&&(c=!0)}if(r.forEach(function(f){var S=f.deviceId;a.length>0&&S===a?o=!0:s.length>0&&S===s&&(c=!0)}),o&&c)return this.log_.warn("current camera and microphone in use is lost, cameraId: ".concat(a,", microphoneId: ").concat(s)),void((this.localStream_.getAudio()||this.localStream_.getVideo())&&this.localStream_.recoverCapture({video:!0,audio:!0}));o&&(this.log_.warn("current camera in use is lost, deviceId: ".concat(a)),this.localStream_.getVideo()&&this.localStream_.recoverCapture({video:!0,audio:!1})),c&&(this.log_.warn("current microphone in use is lost, deviceId: ".concat(s)),this.localStream_.getAudio()&&this.localStream_.recoverCapture({video:!1,audio:!0}))}}}]),e}();function Cm(){return Cm=H(p().mark(function e(){var t;return p().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(!_l()&&!gl()){n.next=2;break}return n.abrupt("return",[]);case 2:return n.next=4,yl();case 4:return t=n.sent,n.abrupt("return",t.filter(function(i){return i.kind===Hu}).map(function(i,r){var o=i.label;i.label||(o="camera_"+r);var c={label:o,deviceId:i.deviceId,kind:i.kind};return i.groupId&&(c.groupId=i.groupId),i.getCapabilities&&(c.getCapabilities=function(){return i.getCapabilities()}),c}));case 6:case"end":return n.stop()}},e)})),Cm.apply(this,arguments)}var qk=new Set;function yl(){return Kk.apply(this,arguments)}function Kk(){return(Kk=H(p().mark(function e(){var t;return p().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(!_l()&&!gl()){n.next=2;break}return n.abrupt("return",[]);case 2:return n.next=4,navigator.mediaDevices.enumerateDevices();case 4:return(t=n.sent).forEach(function(i){qk.add("".concat(i.deviceId,"_").concat(i.kind))}),n.abrupt("return",t);case 7:case"end":return n.stop()}},e)}))).apply(this,arguments)}function Em(){return Rm.apply(this,arguments)}function Rm(){return Rm=H(p().mark(function e(){var t;return p().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return n.next=2,yl();case 2:return t=n.sent,n.abrupt("return",t.filter(function(i){return i.kind!==qs||i.deviceId!=Zb}).map(function(i,r){var o=i.label;i.label||(o=i.kind+"_"+r);var c={label:o,deviceId:i.deviceId,kind:i.kind};return i.groupId&&(c.groupId=i.groupId),i.getCapabilities&&(c.getCapabilities=function(){return i.getCapabilities()}),c}));case 4:case"end":return n.stop()}},e)})),Rm.apply(this,arguments)}function Xk(){return Am.apply(this,arguments)}function Am(){return Am=H(p().mark(function e(){var t;return p().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return n.next=2,yl();case 2:return t=n.sent,n.abrupt("return",t.filter(function(i){return i.kind===qs&&i.deviceId!==Zb}).map(function(i,r){var o=i.label;i.label||(o="microphone_"+r);var c={label:o,deviceId:i.deviceId,kind:i.kind};return i.groupId&&(c.groupId=i.groupId),i.getCapabilities&&(c.getCapabilities=function(){return i.getCapabilities()}),c}));case 4:case"end":return n.stop()}},e)})),Am.apply(this,arguments)}function Qk(){return Pm.apply(this,arguments)}function Pm(){return Pm=H(p().mark(function e(){var t;return p().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return n.next=2,yl();case 2:return t=n.sent,n.abrupt("return",t.filter(function(i){return i.kind==="audiooutput"}).map(function(i,r){var o=i.label;i.label||(o="speaker_"+r);var c={label:o,deviceId:i.deviceId,kind:i.kind};return i.groupId&&(c.groupId=i.groupId),c}));case 4:case"end":return n.stop()}},e)})),Pm.apply(this,arguments)}function d6(e){var t;if(e instanceof CanvasCaptureMediaStreamTrack||!(e instanceof window.MediaStreamTrack))return!1;var n=e.label.toLocaleLowerCase();if(n.includes("camera")||n.includes("webcam"))return!0;var i="".concat((t=e.getSettings())===null||t===void 0?void 0:t.deviceId,"_").concat(Hu);return!!qk.has(i)}function h6(e,t){return Yk.apply(this,arguments)}function Yk(){return(Yk=H(p().mark(function e(t,n){var i,r;return p().wrap(function(o){for(;;)switch(o.prev=o.next){case 0:return o.next=2,Xk();case 2:if(i=o.sent,((r=i.find(function(c){return c.deviceId===Ku}))==null?void 0:r.groupId)!==t||r.label!==n){o.next=6;break}return o.abrupt("return",!0);case 6:return o.abrupt("return",!1);case 7:case"end":return o.stop()}},e)}))).apply(this,arguments)}var Bn,$k=Fi.exports,f6=Pt,p6=Tt,m6=t_,v6=Lr,g6=Ke,_6=Mt,y6=function(e,t,n,i){try{return i?t(p6(n)[0],n[1]):t(n)}catch(r){m6(e,"throw",r)}},b6=lh,S6=yu,k6=nn,Zk=Cs,T6=pu,x6=Es,eT=Array,tT=function(e){var t=_6(e),n=S6(this),i=arguments.length,r=i>1?arguments[1]:void 0,o=r!==void 0;o&&(r=v6(r,i>2?arguments[2]:void 0));var c,a,s,l,u,f,S=x6(t),x=0;if(!S||this===eT&&b6(S))for(c=k6(t),a=n?new this(c):eT(c);c>x;x++)f=o?r(t[x],x):t[x],Zk(a,x,f);else for(u=(l=T6(t,S)).next,a=n?new this:[];!(s=g6(u,l)).done;x++)f=o?y6(l,r,[s.value,x],!0):s.value,Zk(a,x,f);return a.length=x,a},da=pe,Dm=2147483647,I6=/[^\0-\u007E]/,nT=/[.\u3002\uFF0E\uFF61]/g,rT="Overflow: input needs wider integers to process",iT=RangeError,w6=da(nT.exec),So=Math.floor,Om=String.fromCharCode,aT=da("".charCodeAt),oT=da([].join),xi=da([].push),C6=da("".replace),E6=da("".split),R6=da("".toLowerCase),sT=function(e){return e+22+75*(e<26)},A6=function(e,t,n){var i=0;for(e=n?So(e/700):e>>1,e+=So(e/t);e>455;)e=So(e/35),i+=36;return So(i+36*e/(e+38))},P6=function(e){var t=[];e=function(T){for(var v=[],w=0,L=T.length;w<L;){var N=aT(T,w++);if(N>=55296&&N<=56319&&w<L){var V=aT(T,w++);(64512&V)==56320?xi(v,((1023&N)<<10)+(1023&V)+65536):(xi(v,N),w--)}else xi(v,N)}return v}(e);var n,i,r=e.length,o=128,c=0,a=72;for(n=0;n<e.length;n++)(i=e[n])<128&&xi(t,Om(i));var s=t.length,l=s;for(s&&xi(t,"-");l<r;){var u=Dm;for(n=0;n<e.length;n++)(i=e[n])>=o&&i<u&&(u=i);var f=l+1;if(u-o>So((Dm-c)/f))throw iT(rT);for(c+=(u-o)*f,o=u,n=0;n<e.length;n++){if((i=e[n])<o&&++c>Dm)throw iT(rT);if(i==o){for(var S=c,x=36;;){var E=x<=a?1:x>=a+26?26:x-a;if(S<E)break;var I=S-E,m=36-E;xi(t,Om(sT(E+I%m))),S=So(I/m),x+=36}xi(t,Om(sT(S))),a=A6(c,f,l==s),c=0,l++}}c++,o++}return oT(t,"")},D6=Le,Lm=ye,O6=xy,Mm=re,cT=Lr,Fn=pe,bl=Qt,Hn=function(e,t,n){return n.get&&$k(n.get,t,{getter:!0}),n.set&&$k(n.set,t,{setter:!0}),f6.f(e,t,n)},L6=oi,Nm=kt,Um=ik,ko=tT,ir=hu,M6=vh.codeAt,N6=function(e){var t,n,i=[],r=E6(C6(R6(e),nT,"."),".");for(t=0;t<r.length;t++)n=r[t],xi(i,w6(I6,n)?"xn--"+P6(n):n);return oT(i,".")},Hr=zt,U6=Wi,V6=_u,uT=AD,lT=Xe,j6=lT.set,Sl=lT.getterFor("URL"),B6=uT.URLSearchParams,F6=uT.getState,lc=Mm.URL,Vm=Mm.TypeError,kl=Mm.parseInt,H6=Math.floor,dT=Math.pow,Gn=Fn("".charAt),ar=Fn(/./.exec),dc=Fn([].join),G6=Fn(1 .toString),z6=Fn([].pop),To=Fn([].push),hT=Fn("".replace),W6=Fn([].shift),J6=Fn("".split),hc=Fn("".slice),Tl=Fn("".toLowerCase),q6=Fn([].unshift),jm="Invalid scheme",ha="Invalid host",fT="Invalid port",pT=/[a-z]/i,K6=/[\d+-.a-z]/i,Bm=/\d/,X6=/^0x/i,Q6=/^[0-7]+$/,Y6=/^\d+$/,mT=/^[\da-f]+$/i,$6=/[\0\t\n\r #%/:<>?@[\\\]^|]/,Z6=/[\0\t\n\r #/:<>?@[\\\]^|]/,e5=/^[\u0000-\u0020]+|[\u0000-\u0020]+$/g,t5=/[\t\n\r]/g,fc=function(e){var t,n,i,r;if(typeof e=="number"){for(t=[],n=0;n<4;n++)q6(t,e%256),e=H6(e/256);return dc(t,".")}if(typeof e=="object"){for(t="",i=function(o){for(var c=null,a=1,s=null,l=0,u=0;u<8;u++)o[u]!==0?(l>a&&(c=s,a=l),s=null,l=0):(s===null&&(s=u),++l);return l>a&&(c=s,a=l),c}(e),n=0;n<8;n++)r&&e[n]===0||(r&&(r=!1),i===n?(t+=n?":":"::",r=!0):(t+=G6(e[n],16),n<7&&(t+=":")));return"["+t+"]"}return e},xl={},vT=Um({},xl,{" ":1,'"':1,"<":1,">":1,"`":1}),gT=Um({},vT,{"#":1,"?":1,"{":1,"}":1}),Fm=Um({},gT,{"/":1,":":1,";":1,"=":1,"@":1,"[":1,"\\":1,"]":1,"^":1,"|":1}),Ii=function(e,t){var n=M6(e,0);return n>32&&n<127&&!Nm(t,e)?e:encodeURIComponent(e)},Il={ftp:21,file:null,http:80,https:443,ws:80,wss:443},pc=function(e,t){var n;return e.length==2&&ar(pT,Gn(e,0))&&((n=Gn(e,1))==":"||!t&&n=="|")},_T=function(e){var t;return e.length>1&&pc(hc(e,0,2))&&(e.length==2||(t=Gn(e,2))==="/"||t==="\\"||t==="?"||t==="#")},n5=function(e){return e==="."||Tl(e)==="%2e"},Hm={},yT={},Gm={},bT={},ST={},zm={},kT={},TT={},wl={},Cl={},Wm={},Jm={},qm={},Km={},xT={},Xm={},xo={},Ir={},IT={},fa={},Gr={},Qm=function(e,t,n){var i,r,o,c=Hr(e);if(t){if(r=this.parse(c))throw Vm(r);this.searchParams=null}else{if(n!==void 0&&(i=new Qm(n,!0)),r=this.parse(c,null,i))throw Vm(r);(o=F6(new B6)).bindURL(this),this.searchParams=o}};Qm.prototype={type:"URL",parse:function(e,t,n){var i,r,o,c,a,s=this,l=t||Hm,u=0,f="",S=!1,x=!1,E=!1;for(e=Hr(e),t||(s.scheme="",s.username="",s.password="",s.host=null,s.port=null,s.path=[],s.query=null,s.fragment=null,s.cannotBeABaseURL=!1,e=hT(e,e5,"")),e=hT(e,t5,""),i=ko(e);u<=i.length;){switch(r=i[u],l){case Hm:if(!r||!ar(pT,r)){if(t)return jm;l=Gm;continue}f+=Tl(r),l=yT;break;case yT:if(r&&(ar(K6,r)||r=="+"||r=="-"||r=="."))f+=Tl(r);else{if(r!=":"){if(t)return jm;f="",l=Gm,u=0;continue}if(t&&(s.isSpecial()!=Nm(Il,f)||f=="file"&&(s.includesCredentials()||s.port!==null)||s.scheme=="file"&&!s.host))return;if(s.scheme=f,t)return void(s.isSpecial()&&Il[s.scheme]==s.port&&(s.port=null));f="",s.scheme=="file"?l=Km:s.isSpecial()&&n&&n.scheme==s.scheme?l=bT:s.isSpecial()?l=TT:i[u+1]=="/"?(l=ST,u++):(s.cannotBeABaseURL=!0,To(s.path,""),l=IT)}break;case Gm:if(!n||n.cannotBeABaseURL&&r!="#")return jm;if(n.cannotBeABaseURL&&r=="#"){s.scheme=n.scheme,s.path=ir(n.path),s.query=n.query,s.fragment="",s.cannotBeABaseURL=!0,l=Gr;break}l=n.scheme=="file"?Km:zm;continue;case bT:if(r!="/"||i[u+1]!="/"){l=zm;continue}l=wl,u++;break;case ST:if(r=="/"){l=Cl;break}l=Ir;continue;case zm:if(s.scheme=n.scheme,r==Bn)s.username=n.username,s.password=n.password,s.host=n.host,s.port=n.port,s.path=ir(n.path),s.query=n.query;else if(r=="/"||r=="\\"&&s.isSpecial())l=kT;else if(r=="?")s.username=n.username,s.password=n.password,s.host=n.host,s.port=n.port,s.path=ir(n.path),s.query="",l=fa;else{if(r!="#"){s.username=n.username,s.password=n.password,s.host=n.host,s.port=n.port,s.path=ir(n.path),s.path.length--,l=Ir;continue}s.username=n.username,s.password=n.password,s.host=n.host,s.port=n.port,s.path=ir(n.path),s.query=n.query,s.fragment="",l=Gr}break;case kT:if(!s.isSpecial()||r!="/"&&r!="\\"){if(r!="/"){s.username=n.username,s.password=n.password,s.host=n.host,s.port=n.port,l=Ir;continue}l=Cl}else l=wl;break;case TT:if(l=wl,r!="/"||Gn(f,u+1)!="/")continue;u++;break;case wl:if(r!="/"&&r!="\\"){l=Cl;continue}break;case Cl:if(r=="@"){S&&(f="%40"+f),S=!0,o=ko(f);for(var I=0;I<o.length;I++){var m=o[I];if(m!=":"||E){var T=Ii(m,Fm);E?s.password+=T:s.username+=T}else E=!0}f=""}else if(r==Bn||r=="/"||r=="?"||r=="#"||r=="\\"&&s.isSpecial()){if(S&&f=="")return"Invalid authority";u-=ko(f).length+1,f="",l=Wm}else f+=r;break;case Wm:case Jm:if(t&&s.scheme=="file"){l=Xm;continue}if(r!=":"||x){if(r==Bn||r=="/"||r=="?"||r=="#"||r=="\\"&&s.isSpecial()){if(s.isSpecial()&&f=="")return ha;if(t&&f==""&&(s.includesCredentials()||s.port!==null))return;if(c=s.parseHost(f))return c;if(f="",l=xo,t)return;continue}r=="["?x=!0:r=="]"&&(x=!1),f+=r}else{if(f=="")return ha;if(c=s.parseHost(f))return c;if(f="",l=qm,t==Jm)return}break;case qm:if(!ar(Bm,r)){if(r==Bn||r=="/"||r=="?"||r=="#"||r=="\\"&&s.isSpecial()||t){if(f!=""){var v=kl(f,10);if(v>65535)return fT;s.port=s.isSpecial()&&v===Il[s.scheme]?null:v,f=""}if(t)return;l=xo;continue}return fT}f+=r;break;case Km:if(s.scheme="file",r=="/"||r=="\\")l=xT;else{if(!n||n.scheme!="file"){l=Ir;continue}if(r==Bn)s.host=n.host,s.path=ir(n.path),s.query=n.query;else if(r=="?")s.host=n.host,s.path=ir(n.path),s.query="",l=fa;else{if(r!="#"){_T(dc(ir(i,u),""))||(s.host=n.host,s.path=ir(n.path),s.shortenPath()),l=Ir;continue}s.host=n.host,s.path=ir(n.path),s.query=n.query,s.fragment="",l=Gr}}break;case xT:if(r=="/"||r=="\\"){l=Xm;break}n&&n.scheme=="file"&&!_T(dc(ir(i,u),""))&&(pc(n.path[0],!0)?To(s.path,n.path[0]):s.host=n.host),l=Ir;continue;case Xm:if(r==Bn||r=="/"||r=="\\"||r=="?"||r=="#"){if(!t&&pc(f))l=Ir;else if(f==""){if(s.host="",t)return;l=xo}else{if(c=s.parseHost(f))return c;if(s.host=="localhost"&&(s.host=""),t)return;f="",l=xo}continue}f+=r;break;case xo:if(s.isSpecial()){if(l=Ir,r!="/"&&r!="\\")continue}else if(t||r!="?")if(t||r!="#"){if(r!=Bn&&(l=Ir,r!="/"))continue}else s.fragment="",l=Gr;else s.query="",l=fa;break;case Ir:if(r==Bn||r=="/"||r=="\\"&&s.isSpecial()||!t&&(r=="?"||r=="#")){if((a=Tl(a=f))===".."||a==="%2e."||a===".%2e"||a==="%2e%2e"?(s.shortenPath(),r=="/"||r=="\\"&&s.isSpecial()||To(s.path,"")):n5(f)?r=="/"||r=="\\"&&s.isSpecial()||To(s.path,""):(s.scheme=="file"&&!s.path.length&&pc(f)&&(s.host&&(s.host=""),f=Gn(f,0)+":"),To(s.path,f)),f="",s.scheme=="file"&&(r==Bn||r=="?"||r=="#"))for(;s.path.length>1&&s.path[0]==="";)W6(s.path);r=="?"?(s.query="",l=fa):r=="#"&&(s.fragment="",l=Gr)}else f+=Ii(r,gT);break;case IT:r=="?"?(s.query="",l=fa):r=="#"?(s.fragment="",l=Gr):r!=Bn&&(s.path[0]+=Ii(r,xl));break;case fa:t||r!="#"?r!=Bn&&(r=="'"&&s.isSpecial()?s.query+="%27":s.query+=r=="#"?"%23":Ii(r,xl)):(s.fragment="",l=Gr);break;case Gr:r!=Bn&&(s.fragment+=Ii(r,vT))}u++}},parseHost:function(e){var t,n,i;if(Gn(e,0)=="["){if(Gn(e,e.length-1)!="]"||(t=function(r){var o,c,a,s,l,u,f,S=[0,0,0,0,0,0,0,0],x=0,E=null,I=0,m=function(){return Gn(r,I)};if(m()==":"){if(Gn(r,1)!=":")return;I+=2,E=++x}for(;m();){if(x==8)return;if(m()!=":"){for(o=c=0;c<4&&ar(mT,m());)o=16*o+kl(m(),16),I++,c++;if(m()=="."){if(c==0||(I-=c,x>6))return;for(a=0;m();){if(s=null,a>0){if(!(m()=="."&&a<4))return;I++}if(!ar(Bm,m()))return;for(;ar(Bm,m());){if(l=kl(m(),10),s===null)s=l;else{if(s==0)return;s=10*s+l}if(s>255)return;I++}S[x]=256*S[x]+s,++a!=2&&a!=4||x++}if(a!=4)return;break}if(m()==":"){if(I++,!m())return}else if(m())return;S[x++]=o}else{if(E!==null)return;I++,E=++x}}if(E!==null)for(u=x-E,x=7;x!=0&&u>0;)f=S[x],S[x--]=S[E+u-1],S[E+--u]=f;else if(x!=8)return;return S}(hc(e,1,-1)),!t))return ha;this.host=t}else if(this.isSpecial()){if(e=N6(e),ar($6,e)||(t=function(r){var o,c,a,s,l,u,f,S=J6(r,".");if(S.length&&S[S.length-1]==""&&S.length--,(o=S.length)>4)return r;for(c=[],a=0;a<o;a++){if((s=S[a])=="")return r;if(l=10,s.length>1&&Gn(s,0)=="0"&&(l=ar(X6,s)?16:8,s=hc(s,l==8?1:2)),s==="")u=0;else{if(!ar(l==10?Y6:l==8?Q6:mT,s))return r;u=kl(s,l)}To(c,u)}for(a=0;a<o;a++)if(u=c[a],a==o-1){if(u>=dT(256,5-o))return null}else if(u>255)return null;for(f=z6(c),a=0;a<c.length;a++)f+=c[a]*dT(256,3-a);return f}(e),t===null))return ha;this.host=t}else{if(ar(Z6,e))return ha;for(t="",n=ko(e),i=0;i<n.length;i++)t+=Ii(n[i],xl);this.host=t}},cannotHaveUsernamePasswordPort:function(){return!this.host||this.cannotBeABaseURL||this.scheme=="file"},includesCredentials:function(){return this.username!=""||this.password!=""},isSpecial:function(){return Nm(Il,this.scheme)},shortenPath:function(){var e=this.path,t=e.length;!t||this.scheme=="file"&&t==1&&pc(e[0],!0)||e.length--},serialize:function(){var e=this,t=e.scheme,n=e.username,i=e.password,r=e.host,o=e.port,c=e.path,a=e.query,s=e.fragment,l=t+":";return r!==null?(l+="//",e.includesCredentials()&&(l+=n+(i?":"+i:"")+"@"),l+=fc(r),o!==null&&(l+=":"+o)):t=="file"&&(l+="//"),l+=e.cannotBeABaseURL?c[0]:c.length?"/"+dc(c,"/"):"",a!==null&&(l+="?"+a),s!==null&&(l+="#"+s),l},setHref:function(e){var t=this.parse(e);if(t)throw Vm(t);this.searchParams.update()},getOrigin:function(){var e=this.scheme,t=this.port;if(e=="blob")try{return new Io(e.path[0]).origin}catch(n){return"null"}return e!="file"&&this.isSpecial()?e+"://"+fc(this.host)+(t!==null?":"+t:""):"null"},getProtocol:function(){return this.scheme+":"},setProtocol:function(e){this.parse(Hr(e)+":",Hm)},getUsername:function(){return this.username},setUsername:function(e){var t=ko(Hr(e));if(!this.cannotHaveUsernamePasswordPort()){this.username="";for(var n=0;n<t.length;n++)this.username+=Ii(t[n],Fm)}},getPassword:function(){return this.password},setPassword:function(e){var t=ko(Hr(e));if(!this.cannotHaveUsernamePasswordPort()){this.password="";for(var n=0;n<t.length;n++)this.password+=Ii(t[n],Fm)}},getHost:function(){var e=this.host,t=this.port;return e===null?"":t===null?fc(e):fc(e)+":"+t},setHost:function(e){this.cannotBeABaseURL||this.parse(e,Wm)},getHostname:function(){var e=this.host;return e===null?"":fc(e)},setHostname:function(e){this.cannotBeABaseURL||this.parse(e,Jm)},getPort:function(){var e=this.port;return e===null?"":Hr(e)},setPort:function(e){this.cannotHaveUsernamePasswordPort()||((e=Hr(e))==""?this.port=null:this.parse(e,qm))},getPathname:function(){var e=this.path;return this.cannotBeABaseURL?e[0]:e.length?"/"+dc(e,"/"):""},setPathname:function(e){this.cannotBeABaseURL||(this.path=[],this.parse(e,xo))},getSearch:function(){var e=this.query;return e?"?"+e:""},setSearch:function(e){(e=Hr(e))==""?this.query=null:(Gn(e,0)=="?"&&(e=hc(e,1)),this.query="",this.parse(e,fa)),this.searchParams.update()},getSearchParams:function(){return this.searchParams.facade},getHash:function(){var e=this.fragment;return e?"#"+e:""},setHash:function(e){(e=Hr(e))!=""?(Gn(e,0)=="#"&&(e=hc(e,1)),this.fragment="",this.parse(e,Gr)):this.fragment=null},update:function(){this.query=this.searchParams.serialize()||null}};var Io=function(e){var t=L6(this,dn),n=V6(arguments.length,1)>1?arguments[1]:void 0,i=j6(t,new Qm(e,!1,n));Lm||(t.href=i.serialize(),t.origin=i.getOrigin(),t.protocol=i.getProtocol(),t.username=i.getUsername(),t.password=i.getPassword(),t.host=i.getHost(),t.hostname=i.getHostname(),t.port=i.getPort(),t.pathname=i.getPathname(),t.search=i.getSearch(),t.searchParams=i.getSearchParams(),t.hash=i.getHash())},dn=Io.prototype,zn=function(e,t){return{get:function(){return Sl(this)[e]()},set:t&&function(n){return Sl(this)[t](n)},configurable:!0,enumerable:!0}};if(Lm&&(Hn(dn,"href",zn("serialize","setHref")),Hn(dn,"origin",zn("getOrigin")),Hn(dn,"protocol",zn("getProtocol","setProtocol")),Hn(dn,"username",zn("getUsername","setUsername")),Hn(dn,"password",zn("getPassword","setPassword")),Hn(dn,"host",zn("getHost","setHost")),Hn(dn,"hostname",zn("getHostname","setHostname")),Hn(dn,"port",zn("getPort","setPort")),Hn(dn,"pathname",zn("getPathname","setPathname")),Hn(dn,"search",zn("getSearch","setSearch")),Hn(dn,"searchParams",zn("getSearchParams")),Hn(dn,"hash",zn("getHash","setHash"))),bl(dn,"toJSON",function(){return Sl(this).serialize()},{enumerable:!0}),bl(dn,"toString",function(){return Sl(this).serialize()},{enumerable:!0}),lc){var wT=lc.createObjectURL,CT=lc.revokeObjectURL;wT&&bl(Io,"createObjectURL",cT(wT,lc)),CT&&bl(Io,"revokeObjectURL",cT(CT,lc))}U6(Io,"URL"),D6({global:!0,constructor:!0,forced:!O6,sham:!Lm},{URL:Io});var pa,El,r5=new Blob(["class VolumeMeter extends AudioWorkletProcessor{constructor(){super();this.volume=0;this.intervalTime=200;this.tick=this.intervalTime;this.isStop=false;this.port.onmessage=event=>{const{data}=event;switch(data.name){case'setIntervalTime':this.intervalTime=data.intervalTime;break;case'stop':this.isStop=true;break}}}process(inputs){const input=inputs[0];if(this.isStop){return false}if(input.length>0){const firstChannel=input[0];let sum=0;let rms;for(let i=0;i<firstChannel.length;++i){sum+=firstChannel[i]*firstChannel[i]}rms=Math.sqrt(sum/firstChannel.length);this.volume=Math.max(rms,this.volume*0.95);this.tick-=firstChannel.length;if(this.tick<0){this.tick+=(this.intervalTime/1000)*sampleRate;this.port.postMessage({volume:this.volume})}}return true}}registerProcessor('volume-meter',VolumeMeter);"],{type:"application/javascript"}),ET=!1,i5=function(){function e(n){Q(this,e),this.context_=n.context,this.addModuleToContext()}var t;return Ie(e,[{key:"addModuleToContext",value:(t=H(p().mark(function n(){return p().wrap(function(i){for(;;)switch(i.prev=i.next){case 0:return i.prev=0,i.next=3,this.context_.audioWorklet.addModule(URL.createObjectURL(r5));case 3:_e.info("worklet addModule success"),Y.emit($p),ET=!0,i.next=12;break;case 8:i.prev=8,i.t0=i.catch(0),_e.info("worklet addModule catch error. ".concat(i.t0.message)),Y.emit(Zp);case 12:case"end":return i.stop()}},n,this,[[0,8]])})),function(){return t.apply(this,arguments)})},{key:"initWorkletSuccess",get:function(){return ET}}]),e}(),mc=0,a5=function(){function e(t){Q(this,e);var n=t.track,i=t.log,r=t.stream;this.volume_=0,this.log_=i,this.track_=n,this.stream_=r,mc+=1,pa||(pa=FS()),this.audioCtx_=pa,this.destination_=this.audioCtx_.destination;var o=new MediaStream;o.addTrack(this.track_),this.streamSource_=this.audioCtx_.createMediaStreamSource(o),this.audioWorkletNode_=null,this.scriptProcessorNode_=null,this.interval_=200,Y.on(rc,this.resume,this),Y.on(Np,this.handleAudioLevelInterval,this),A4?(Y.on($p,this.initAudioWorklet,this),Y.on(Zp,this.initScriptProcessor,this),this.preload()):this.initScriptProcessor()}return Ie(e,[{key:"preload",value:function(){El?El.initWorkletSuccess&&this.initAudioWorklet():El=new i5({context:pa})}},{key:"initAudioWorklet",value:function(){var t=this;if(!this.audioWorkletNode_)try{this.audioWorkletNode_=new AudioWorkletNode(this.audioCtx_,"volume-meter"),this.audioWorkletNode_.port.onmessage=function(n){t.volume_=n.data.volume||0},this.streamSource_.connect(this.audioWorkletNode_).connect(this.destination_),this.handleAudioLevelInterval({interval:this.interval_})}catch(n){this.log_.warn("load volume meter failed, load again. error: "+n),this.initScriptProcessor()}}},{key:"initScriptProcessor",value:function(){var t=this;if(!this.scriptProcessorNode_)try{this.scriptProcessorNode_=this.audioCtx_.createScriptProcessor(2048,1,1),this.scriptProcessorNode_.onaudioprocess=function(n){for(var i=n.inputBuffer.getChannelData(0),r=0,o=0;o<i.length;++o)r+=i[o]*i[o];t.volume_=Math.sqrt(r/i.length)||0},this.streamSource_.connect(this.scriptProcessorNode_),this.scriptProcessorNode_.connect(this.destination_)}catch(n){this.log_.error("volumeMeter init script processor error: "+n),mc-=1}}},{key:"destroy",value:function(){var t;this.streamSource_&&this.streamSource_.disconnect(),this.scriptProcessorNode_&&(this.scriptProcessorNode_.onaudioprocess=null,this.scriptProcessorNode_.disconnect()),this.audioWorkletNode_&&(this.audioWorkletNode_.port.postMessage({name:"stop"}),this.audioWorkletNode_.port.onmessage=null,this.audioWorkletNode_.disconnect()),this.audioWorkletNode_=null,this.scriptProcessorNode_=null,this.audioCtx_=null,Y.off(rc,this.resume,this),Y.off(Np,this.handleAudioLevelInterval,this),Y.off($p,this.initAudioWorklet,this),Y.off(Zp,this.initScriptProcessor,this),mc>0&&(mc-=1),mc===0&&((t=pa)===null||t===void 0||t.close(),pa=null,El=null)}},{key:"resume",value:function(){var t;(t=pa)===null||t===void 0||t.resume()}},{key:"getInternalAudioLevel",value:function(){return this.volume_}},{key:"getCalculatedVolume",value:function(){return this.volume_.toFixed(2)}},{key:"handleAudioLevelInterval",value:function(t){var n,i=t.interval;this.interval_=i,(n=this.audioWorkletNode_)===null||n===void 0||n.port.postMessage({name:"setIntervalTime",intervalTime:i})}}]),e}(),o5=function(){function e(o){Q(this,e),this.stream_=o.stream,this.userId_=o.stream.getUserId(),this.log_=this.stream_.getLogger(),this.track_=o.track,o.gainedTrack&&(this.gainedTrack_=o.gainedTrack),this.div_=o.div,this.muted_=o.muted,this.outputDeviceId_=o.outputDeviceId,this.volume_=o.volume,this.pausedRetryCount_=5,this.emitter_=new Si,this.initializeElement(),this.state_="NONE",this.volumeMeter_=new a5({stream:this.stream_,track:this.gainedTrack_||this.track_,log:this.log_})}var t,n,i,r;return Ie(e,[{key:"isPlaying",get:function(){return this.state_===ao}},{key:"initializeElement",value:function(){if(this.isAudioElementInit()){var o=new MediaStream;o.addTrack(this.gainedTrack_||this.track_);var c=document.createElement(Ee);c.srcObject=o,c.muted=this.muted_,c.setAttribute("id","audio_".concat(this.stream_.getId())),c.setAttribute("autoplay","autoplay"),c.setAttribute("playsinline","playsinline"),this.div_.appendChild(c),this.element_=c}this.handleEvents()}},{key:"setMuted",value:function(o){this.element_&&(this.element_.muted=o,this.muted_=o)}},{key:"play",value:(r=H(p().mark(function o(){var c;return p().wrap(function(a){for(;;)switch(a.prev=a.next){case 0:if(!this.outputDeviceId_||!this.element_){a.next=3;break}return a.next=3,this.element_.setSinkId(this.outputDeviceId_);case 3:if(this.setVolume(this.volume_),a.prev=4,!this.element_){a.next=8;break}return a.next=8,this.element_.play();case 8:a.next=16;break;case 10:if(a.prev=10,a.t0=a.catch(4),c=ae({key:np,data:{media:"Audio",error:a.t0}}),this.log_.warn(c),!c.includes("NotAllowedError")){a.next=16;break}throw new te({code:Z.PLAY_NOT_ALLOWED,message:c});case 16:case"end":return a.stop()}},o,this,[[4,10]])})),function(){return r.apply(this,arguments)})},{key:"handleEvents",value:function(){this.handleElementEvent=this.handleElementEvent.bind(this),this.handleTrackEvent=this.handleTrackEvent.bind(this),this.element_&&(this.element_.addEventListener(di,this.handleElementEvent),this.element_.addEventListener(Nt,this.handleElementEvent),this.element_.addEventListener(hi,this.handleElementEvent),this.element_.addEventListener(io,this.handleElementEvent)),this.track_.addEventListener(Nt,this.handleTrackEvent),this.track_.addEventListener(tn,this.handleTrackEvent),this.track_.addEventListener(Sr,this.handleTrackEvent),this.track_.readyState===Nt&&this.handleTrackEvent({type:Nt}),this.track_.muted&&this.handleTrackEvent({type:tn})}},{key:"handleElementEvent",value:(i=H(p().mark(function o(c){var a,s,l,u,f,S,x,E=this;return p().wrap(function(I){for(;;)switch(I.prev=I.next){case 0:a=c.type,I.t0=a,I.next=I.t0===di?4:I.t0===Nt?9:I.t0===hi?12:I.t0===io?21:33;break;case 4:return this.log_.info("audio player is playing"),this.state_=ao,Y.emit(Vp,{stream:this.stream_}),this.emitter_.emit(gn,{state:this.state_,reason:di}),I.abrupt("break",33);case 9:return this.log_.info("audio player is ended"),this.state_!==fi&&(this.state_=fi,this.emitter_.emit(gn,{state:this.state_,reason:Nt})),I.abrupt("break",33);case 12:return this.log_.info("audio player is paused"),this.state_=kr,this.emitter_.emit(gn,{state:this.state_,reason:hi}),(s=this.div_&&document.getElementById(this.div_.id))||this.log_.warn("audio player has been remove, element ID: ".concat(this.div_.id)),l=lo(),this.pausedRetryCount_>0&&(tr(l)&&l<=70||!s)&&(this.resume(),this.pausedRetryCount_--),gi&&(this.interval_=mt.run(function(){E.element_&&E.state_===kr&&E.resume()},{delay:3e3})),I.abrupt("break",33);case 21:if(!this.element_||!this.element_.error){I.next=32;break}return u="".concat(Im(),"/").concat(aa().name,"/").concat(aa().version),I.next=25,xt.getSpeakers();case 25:f=I.sent,S=f[0].label,(x=f.find(function(m){return m.deviceId===E.outputDeviceId_}))&&(S=x.label),this.log_.error("audio player error observed. code: ".concat(this.element_.error.code," message: ").concat(this.element_.error.message," deviceInfo: ").concat(u," speaker: ").concat(S)),ke.uploadEvent({log:"stat-".concat(this.stream_.getType(),"-audio-").concat(Bb,"-").concat(this.element_.error.code,"-").concat(u,"-").concat(S),userId:this.userId_,error:this.element_.error}),this.emitter_.emit(Jk,this.element_.error);case 32:return I.abrupt("break",33);case 33:case"end":return I.stop()}},o,this)})),function(o){return i.apply(this,arguments)})},{key:"handleTrackEvent",value:function(o){var c=o.type;switch(c){case Nt:this.log_.info("audio track is ended"),this.state_!==fi&&(this.state_=fi,this.emitter_.emit(gn,{state:this.state_,reason:Nt})),Y.emit(Xp,{stream:this.stream_,type:c});break;case tn:this.log_.info("audio track is unable to provide media output"),this.stream_.isRemote()||BS(),this.state_!==kr&&(this.state_=kr,this.emitter_.emit(gn,{state:this.state_,reason:tn})),Y.emit(Kp,{stream:this.stream_,type:c});break;case Sr:this.log_.info("audio track is able to provide media output"),this.state_===kr&&(this.state_=ao,this.emitter_.emit(gn,{state:this.state_,reason:Sr}))}}},{key:"unbindEvents",value:function(){this.element_&&(this.element_.removeEventListener(di,this.handleElementEvent),this.element_.removeEventListener(Nt,this.handleElementEvent),this.element_.removeEventListener(hi,this.handleElementEvent),this.element_.removeEventListener(io,this.handleElementEvent)),this.track_&&(this.track_.removeEventListener(Nt,this.handleTrackEvent),this.track_.removeEventListener(tn,this.handleTrackEvent),this.track_.removeEventListener(Sr,this.handleTrackEvent))}},{key:"setSinkId",value:(n=H(p().mark(function o(c){return p().wrap(function(a){for(;;)switch(a.prev=a.next){case 0:if(this.outputDeviceId_===c){a.next=5;break}if(!this.element_){a.next=4;break}return a.next=4,this.element_.setSinkId(c);case 4:this.outputDeviceId_=c;case 5:case"end":return a.stop()}},o,this)})),function(o){return n.apply(this,arguments)})},{key:"setVolume",value:function(o){this.element_&&(this.log_.info("audioElement setVolume to : ".concat(o)),this.element_.volume=o)}},{key:"getAudioLevel",value:function(){return this.volumeMeter_.getCalculatedVolume()}},{key:"getInternalAudioLevel",value:function(){return this.volumeMeter_.getInternalAudioLevel()}},{key:"stop",value:function(){this.unbindEvents(),this.element_&&(this.div_.removeChild(this.element_),this.element_.srcObject=null,this.element_=null),this.volumeMeter_&&(this.volumeMeter_.destroy(),this.volumeMeter_=null),this.interval_>0&&mt.clearTask(this.interval_)}},{key:"resume",value:(t=H(p().mark(function o(){var c;return p().wrap(function(a){for(;;)switch(a.prev=a.next){case 0:if(a.prev=0,this.volumeMeter_&&this.volumeMeter_.resume(),!this.element_){a.next=5;break}return a.next=5,this.element_.play();case 5:a.next=13;break;case 7:if(a.prev=7,a.t0=a.catch(0),c=ae({key:np,data:{media:"Audio",error:a.t0}}),this.log_.warn(c),!c.includes("NotAllowedError")){a.next=13;break}throw new te({code:Z.PLAY_NOT_ALLOWED,message:c});case 13:case"end":return a.stop()}},o,this,[[0,7]])})),function(){return t.apply(this,arguments)})},{key:"on",value:function(o,c){this.emitter_.on(o,c)}},{key:"isAudioElementInit",value:function(){return!(_i==="15.2"||_i==="15.3"||_i==="15.4")||this.stream_.getType()!=="local"||!this.muted_||(this.log_.info("audioElement is muted."),!1)}},{key:"getTrack",value:function(){return this.track_}}]),e}(),s5=Yn.PROPER,c5=ue,RT=s0,u5=Au.trim;Le({target:"String",proto:!0,forced:function(e){return c5(function(){return!!RT[e]()||"\u200B\x85\u180E"[e]()!=="\u200B\x85\u180E"||s5&&RT[e].name!==e})}("trim")},{trim:function(){return u5(this)}});var zr="trtc_autoplay",Ym="".concat(zr,"_mask"),wo="".concat(zr,"_wrapper"),AT="".concat(zr,"_header"),$m="".concat(zr,"_content"),Rl="".concat(zr,"_action_wrapper"),Zm="".concat(zr,"_question"),ev="".concat(zr,"_collapse"),Al="".concat(zr,"_action_confirm"),PT="".concat(zr,"_detail"),DT="#2473E8",tv="dialog",l5="".concat(tv,"-show"),d5="".concat(tv,"-1"),h5="".concat(tv,"-2"),OT=!1,LT=function(){return!!document.querySelector(".".concat(wo))},MT="".concat(co,"/").concat(oa()?"zh-cn":"en","/tutorial-21-advanced-auto-play-policy.html"),NT="<br><a href='".concat(MT,"' target='_blank'>").concat(oa()?"\u5176\u4ED6\u65B9\u6848\uFF1F":"Any other solution?","</a>"),f5="".concat(oa()?"\u6D4F\u89C8\u5668\u81EA\u52A8\u64AD\u653E\u7B56\u7565\uFF1A\u5728\u7528\u6237\u4E0E\u9875\u9762\u4EA7\u751F\u4EA4\u4E92\uFF08\u70B9\u51FB\u3001\u89E6\u6478\uFF09\u4E4B\u524D\uFF0C\u6D4F\u89C8\u5668\u7981\u6B62\u64AD\u653E\u6709\u58F0\u5A92\u4F53\u3002\u8BE5\u5F39\u7A97\u7528\u4E8E\u5E2E\u52A9\u7528\u6237\u6062\u590D\u97F3\u89C6\u9891\u64AD\u653E\u3002".concat(NT):"Autoplay Policy: Before user interacts with the web page (clicking, touching), page will not be allowed to play media with sound. This Dialog is used to help users resume playback. ".concat(NT)),UT=function(){function e(){if(Q(this,e),this.dialogNode_=null,this.bodyPosition_="",this.content="\u97F3\u89C6\u9891\u64AD\u653E\u88AB\u6D4F\u89C8\u5668\u62E6\u622A\uFF0C\u8BF7\u70B9\u51FB\u201C\u6062\u590D\u64AD\u653E\u201D\u3002",oa()||(this.content='Media playback failed. Click the "Resume" to resume playback.'),!OT){var t=document.createElement("style");t.innerHTML=".".concat(Ym,"{position:fixed;top:0;left:0;right:0;bottom:0;width:100vw;height:100vh;display:flex;justify-content:center;align-items:center;background:rgba(0,0,0,0.5);z-index:1500;}.").concat(Ym," div:not(.").concat(Rl,"){display:block !important;}.").concat(wo,"{padding:14px;background:#fff;border-radius:3px;box-shadow:0px 3px 15px #434343;border:1px solid #d1cfcf;max-width:500px;}.").concat(wo," a{color:").concat(DT,";}.").concat(AT,"{overflow:hidden;text-overflow:ellipsis;font-size:16px;font-weight:600;}.").concat($m,"{margin:8px 0;}.").concat(Rl,"{width:100%;display:flex !important;align-items:center;justify-content:right;float:right;}.").concat(ev,"{margin-right:auto;cursor:pointer}.").concat(Zm,"{height:100%;line-height:16px;cursor:pointer;}.").concat(Al,"{margin-left:8px;color:#fff;background:").concat(DT,";padding:4px 12px;outline:none;border:1px solid;border-radius:3px;font-weight:bold;}.").concat(Al,":hover{opacity:0.9;}.").concat(ev,",.").concat(Al,",.").concat($m,",.").concat(Zm,"{font-size:14px;}@media screen and (max-width:750px){.").concat(wo,"{width:80vw;}}"),document.head.appendChild(t),OT=!0}this.showDetail_=!1,this.isCollapseClicked_=!1,this.isQuestionClicked_=!1,this.addDiaLog()}return Ie(e,[{key:"createDiaLog",value:function(){var t=document.createElement("template");t.innerHTML='<div class="'.concat(Ym,`"><div class='`).concat(wo,"'><div class='").concat(AT,"'>").concat(location.host,"</div><div class='").concat($m,"'>").concat(this.content,"</div><div class='").concat(PT,`' style="visibility:hidden;width:100%;height:0;font-size:12px;color:gray;">`).concat(f5,"</div><div class='").concat(Rl,"'></div></div></div>").trim();var n=document.createElement("button");n.className=Al,n.innerText=oa()?"\u6062\u590D\u64AD\u653E":"Resume",n.onclick=this.onConfirm.bind(this);var i=document.createElement("div");i.className=Zm,i.innerHTML=`<?xml version="1.0" encoding="UTF-8"?>
|
|
57
57
|
<svg class="icon" width="18" height="18" p-id="2030" t="1639646523624" version="1.1" viewBox="0 0 1024 1024" xmlns="http://www.w3.org/2000/svg">
|
|
58
58
|
<path d="m464 784.35c0 26.51 21.49 48 48 48s48-21.49 48-48-21.49-48-48-48-48 21.49-48 48z" p-id="2031"/>
|
|
59
59
|
<path d="m512 960c-247.04 0-448-200.96-448-448s200.96-448 448-448 448 200.96 448 448-200.96 448-448 448zm0-831.71c-211.58 0-383.71 172.13-383.71 383.71 0 211.55 172.13 383.71 383.71 383.71 211.55 0 383.71-172.16 383.71-383.71 0-211.58-172.16-383.71-383.71-383.71z" p-id="2032"/>
|
|
60
60
|
<path d="m512 673.7c-17.665 0-32.001-14.336-32.001-31.999v-54.112c0-52.353 40-92.352 75.328-127.65 25.887-25.92 52.672-52.672 52.672-74.017 0-53.343-43.072-96.735-95.999-96.735-53.823 0-95.999 41.536-95.999 94.559 0 17.665-14.336 31.999-32.001 31.999s-32.001-14.336-32.001-31.999c0-87.424 71.775-158.56 160-158.56s160 72.095 160 160.74c0 47.904-36.32 84.192-71.424 119.3-27.84 27.776-56.576 56.512-56.576 82.336v54.112c0 17.665-14.336 32.032-32.001 32.032z" p-id="2033"/>
|
|
61
61
|
</svg>
|
|
62
|
-
`,i.onclick=this.onQuestionClick.bind(this);var r=document.createElement("div");r.className=Xm,r.innerText="".concat(ia()?"\u8BE6\u60C5 >":"Detail >"),r.onclick=this.onCollapseClick.bind(this);var o=t.content.firstChild,c=o.querySelector(".".concat(wl));return c.appendChild(r),c.appendChild(i),c.appendChild(n),o}},{key:"addDiaLog",value:function(){ET()||(this.dialogNode_=this.createDiaLog(),document.body.appendChild(this.dialogNode_),this.dialogNode_.onclick=this.onConfirm.bind(this),this.dialogNode_.querySelector(".".concat(Io)).onclick=function(t){return t.stopPropagation()},this.bodyPosition_=document.body.style.position,document.body.style.position="fixed",_e.info("show autoplay dialog"),ke.uploadEvent({log:X6}))}},{key:"deleteDiaLog",value:function(){this.dialogNode_&&(document.body.removeChild(this.dialogNode_),document.body.style.position=this.bodyPosition_,this.dialogNode_=null)}},{key:"onConfirm",value:function(){_e.warn("confirm clicked, try resume stream"),Q.emit(nc),this.deleteDiaLog()}},{key:"onCollapseClick",value:function(){var t=this.dialogNode_.querySelector(".".concat(IT));t.style.visibility="".concat(this.showDetail_?"hidden":"visible"),t.style.height="".concat(this.showDetail_?0:"fit-content"),this.showDetail_=!this.showDetail_,this.isCollapseClicked_||ke.uploadEvent({log:Q6}),this.isCollapseClicked_=!0}},{key:"onQuestionClick",value:function(){window.open(RT,"_blank"),this.isQuestionClicked_||ke.uploadEvent({log:$6}),this.isQuestionClicked_=!0}}]),e}(),DT=function(){function e(n){X(this,e),this.stream_=n.stream,this.userId_=n.stream.getUserId(),this.log_=this.stream_.getLogger(),this.track_=n.track,this.div_=n.div,this.muted_=n.muted,this.objectFit_=n.objectFit,this.mirror_=n.mirror,this.emitter_=new bi,this.initializeElement(),this.state_="NONE",this.pausedRetryCount_=5}var t;return Ie(e,[{key:"isPlaying",get:function(){return this.state_===ro}},{key:"initializeElement",value:function(){var n=new MediaStream;n.addTrack(this.track_);var i=document.createElement(xe);i.srcObject=n,i.muted=!0;var r="width: 100%; height: 100%; object-fit: ".concat(this.objectFit_,";");this.mirror_&&(r+="transform: scaleX(-1);"),i.setAttribute("id","video_".concat(this.stream_.getId())),i.setAttribute("style",r),i.setAttribute("autoplay","autoplay"),i.setAttribute("playsinline","playsinline"),this.div_&&this.div_.appendChild(i),this.element_=i,this.handleEvents()}},{key:"setRect",value:function(n){var i=n.width,r=n.height;this.element_&&(this.element_.style.width=i+"px",this.element_.style.height=r+"px")}},{key:"setMirror",value:function(n){this.element_&&(this.element_.style.transform=n?"scaleX(-1)":"",this.mirror_=n)}},{key:"setObjectFit",value:function(n){this.element_&&(this.element_.style.objectFit="".concat(n),this.objectFit_=n)}},{key:"play",value:(t=H(f().mark(function n(){var i;return f().wrap(function(r){for(;;)switch(r.prev=r.next){case 0:return r.prev=0,r.next=3,this.element_.play();case 3:r.next=11;break;case 5:if(r.prev=5,r.t0=r.catch(0),i=ie({key:ep,data:{media:"Video",error:r.t0}}),this.log_.warn(i),!i.includes("NotAllowedError")){r.next=11;break}throw new ne({code:ee.PLAY_NOT_ALLOWED,message:i});case 11:case"end":return r.stop()}},n,this,[[0,5]])})),function(){return t.apply(this,arguments)})},{key:"handleEvents",value:function(){this.handleElementEvent=this.handleElementEvent.bind(this),this.handleTrackEvent=this.handleTrackEvent.bind(this),this.element_.addEventListener(li,this.handleElementEvent),this.element_.addEventListener(Nt,this.handleElementEvent),this.element_.addEventListener(di,this.handleElementEvent),this.element_.addEventListener(no,this.handleElementEvent),this.element_.addEventListener(Df,this.handleElementEvent),this.track_.addEventListener(Nt,this.handleTrackEvent),this.track_.addEventListener(en,this.handleTrackEvent),this.track_.addEventListener(br,this.handleTrackEvent),this.track_.readyState===Nt&&this.handleTrackEvent({type:Nt}),this.track_.muted&&this.handleTrackEvent({type:en})}},{key:"handleElementEvent",value:function(n){var i=this;switch(n.type){case li:this.log_.info("video player is playing"),this.state_=ro,Q.emit(ec,{stream:this.stream_}),this.emitter_.emit(vn,{state:this.state_,reason:li}),this.interval_&&(_t.clearTask(this.interval_),this.interval_=null);break;case Nt:this.log_.info("video player is ended"),this.state_!==hi&&(this.state_=hi,this.emitter_.emit(vn,{state:this.state_,reason:Nt}));break;case di:this.log_.info("video player is paused"),this.div_&&!document.getElementById(this.div_.id)&&this.log_.warn("video player has been remove, element ID: ".concat(this.div_.id)),this.state_=Sr,this.emitter_.emit(vn,{state:this.state_,reason:di}),this.pausedRetryCount_>0&&!ET()&&(this.log_.info("video player auto resume when video paused"),this.resume(),this.pausedRetryCount_--),vi&&(this.interval_=_t.run(function(){i.element_&&i.state_===Sr&&i.resume()},{delay:3e3}));break;case no:if(this.element_&&this.element_.error){var r="".concat(Sm(),"/").concat(ra().name,"/").concat(ra().version);this.log_.error("video player error observed. code: ".concat(this.element_.error.code," message: ").concat(this.element_.error.message," deviceInfo: ").concat(r)),ke.uploadEvent({log:"stat-".concat(this.stream_.getType(),"-video-").concat(jb,"-").concat(this.element_.error.code,"-").concat(r),userId:this.userId_,error:this.element_.error})}break;case Df:Q.emit(Gp,{stream:this.stream_})}}},{key:"handleTrackEvent",value:function(n){var i=n.type;switch(i){case Nt:this.log_.info("video track is ended"),Q.emit(Wp,{stream:this.stream_,type:i}),this.state_!==hi&&(this.state_=hi,this.emitter_.emit(vn,{state:this.state_,reason:Nt}));break;case en:this.log_.info("video track is unable to provide media output"),this.stream_.isRemote()||US(),Q.emit(tc,{stream:this.stream_,type:i}),this.state_!==Sr&&(this.state_=Sr,this.emitter_.emit(vn,{state:this.state_,reason:en}));break;case br:this.log_.info("video track is able to provide media output"),Q.emit(Fp,{stream:this.stream_}),this.state_===Sr&&(this.state_=ro,this.emitter_.emit(vn,{state:this.state_,reason:br}))}}},{key:"unbindEvents",value:function(){this.element_&&(this.element_.removeEventListener(li,this.handleElementEvent),this.element_.removeEventListener(Nt,this.handleElementEvent),this.element_.removeEventListener(di,this.handleElementEvent),this.element_.removeEventListener(no,this.handleElementEvent),this.element_.removeEventListener(Df,this.handleElementEvent)),this.track_&&(this.track_.removeEventListener(Nt,this.handleTrackEvent),this.track_.removeEventListener(en,this.handleTrackEvent),this.track_.removeEventListener(br,this.handleTrackEvent))}},{key:"stop",value:function(){this.unbindEvents(),this.div_&&this.div_.removeChild(this.element_),this.element_.srcObject=null,this.element_=null,this.interval_&&_t.clearTask(this.interval_)}},{key:"resume",value:function(){return this.play()}},{key:"getVideoFrame",value:function(){var n=document.createElement("canvas");return n.width=this.element_.videoWidth,n.height=this.element_.videoHeight,n.getContext("2d").drawImage(this.element_,0,0),n.toDataURL("image/png")}},{key:"on",value:function(n,i){this.emitter_.on(n,i)}},{key:"getElement",value:function(){return this.element_?this.element_:null}}]),e}(),$m=typeof ArrayBuffer!="undefined"&&typeof DataView!="undefined",e5=Qn,t5=_r,n5=RangeError,LT=function(e){if(e===void 0)return 0;var t=e5(e),n=t5(t);if(t!==n)throw n5("Wrong length or index");return n},r5=Array,i5=Math.abs,zr=Math.pow,a5=Math.floor,o5=Math.log,s5=Math.LN2,c5={pack:function(e,t,n){var i,r,o,c=r5(n),a=8*n-t-1,s=(1<<a)-1,l=s>>1,u=t===23?zr(2,-24)-zr(2,-77):0,p=e<0||e===0&&1/e<0?1:0,k=0;for((e=i5(e))!=e||e===1/0?(r=e!=e?1:0,i=s):(i=a5(o5(e)/s5),e*(o=zr(2,-i))<1&&(i--,o*=2),(e+=i+l>=1?u/o:u*zr(2,1-l))*o>=2&&(i++,o/=2),i+l>=s?(r=0,i=s):i+l>=1?(r=(e*o-1)*zr(2,t),i+=l):(r=e*zr(2,l-1)*zr(2,t),i=0));t>=8;)c[k++]=255&r,r/=256,t-=8;for(i=i<<t|r,a+=t;a>0;)c[k++]=255&i,i/=256,a-=8;return c[--k]|=128*p,c},unpack:function(e,t){var n,i=e.length,r=8*i-t-1,o=(1<<r)-1,c=o>>1,a=r-7,s=i-1,l=e[s--],u=127&l;for(l>>=7;a>0;)u=256*u+e[s--],a-=8;for(n=u&(1<<-a)-1,u>>=-a,a+=t;a>0;)n=256*n+e[s--],a-=8;if(u===0)u=1-c;else{if(u===o)return n?NaN:l?-1/0:1/0;n+=zr(2,t),u-=c}return(l?-1:1)*n*zr(2,u-t)}},u5=Mt,OT=ii,l5=tn,MT=function(e){for(var t=u5(this),n=l5(t),i=arguments.length,r=OT(i>1?arguments[1]:void 0,n),o=i>2?arguments[2]:void 0,c=o===void 0?n:OT(o,n);c>r;)t[r++]=e;return t},El=re,Zm=pe,ev=ye,d5=$m,NT=Xn,UT=Ln,VT=Rs,tv=ue,Rl=ai,h5=Qn,f5=_r,Al=LT,jT=c5,p5=ks,BT=ja,m5=ri.f,v5=Pt.f,g5=MT,_5=du,FT=Gi,y5=NT.PROPER,HT=NT.CONFIGURABLE,wo=Ye.get,GT=Ye.set,nv="ArrayBuffer",b5="DataView",zT="Wrong index",zn=El.ArrayBuffer,ar=zn,Co=ar&&ar.prototype,wr=El.DataView,ha=wr&&wr.prototype,WT=Object.prototype,S5=El.Array,Pl=El.RangeError,k5=Zm(g5),T5=Zm([].reverse),qT=jT.pack,JT=jT.unpack,KT=function(e){return[255&e]},YT=function(e){return[255&e,e>>8&255]},XT=function(e){return[255&e,e>>8&255,e>>16&255,e>>24&255]},QT=function(e){return e[3]<<24|e[2]<<16|e[1]<<8|e[0]},x5=function(e){return qT(e,23,4)},I5=function(e){return qT(e,52,8)},Dl=function(e,t){v5(e.prototype,t,{get:function(){return wo(this)[t]}})},Ii=function(e,t,n,i){var r=Al(n),o=wo(e);if(r+t>o.byteLength)throw Pl(zT);var c=wo(o.buffer).bytes,a=r+o.byteOffset,s=_5(c,a,a+t);return i?s:T5(s)},wi=function(e,t,n,i,r,o){var c=Al(n),a=wo(e);if(c+t>a.byteLength)throw Pl(zT);for(var s=wo(a.buffer).bytes,l=c+a.byteOffset,u=i(+r),p=0;p<t;p++)s[l+p]=u[o?p:t-p-1]};if(d5){var $T=y5&&zn.name!==nv;if(tv(function(){zn(1)})&&tv(function(){new zn(-1)})&&!tv(function(){return new zn,new zn(1.5),new zn(NaN),zn.length!=1||$T&&!HT}))$T&&HT&&UT(zn,"name",nv);else{(ar=function(e){return Rl(this,Co),new zn(Al(e))}).prototype=Co;for(var rv,ZT=m5(zn),e1=0;ZT.length>e1;)(rv=ZT[e1++])in ar||UT(ar,rv,zn[rv]);Co.constructor=ar}BT&&p5(ha)!==WT&&BT(ha,WT);var Ll=new wr(new ar(2)),t1=Zm(ha.setInt8);Ll.setInt8(0,2147483648),Ll.setInt8(1,2147483649),!Ll.getInt8(0)&&Ll.getInt8(1)||VT(ha,{setInt8:function(e,t){t1(this,e,t<<24>>24)},setUint8:function(e,t){t1(this,e,t<<24>>24)}},{unsafe:!0})}else Co=(ar=function(e){Rl(this,Co);var t=Al(e);GT(this,{bytes:k5(S5(t),0),byteLength:t}),ev||(this.byteLength=t)}).prototype,wr=function(e,t,n){Rl(this,ha),Rl(e,Co);var i=wo(e).byteLength,r=h5(t);if(r<0||r>i)throw Pl("Wrong offset");if(r+(n=n===void 0?i-r:f5(n))>i)throw Pl("Wrong length");GT(this,{buffer:e,byteLength:n,byteOffset:r}),ev||(this.buffer=e,this.byteLength=n,this.byteOffset=r)},ha=wr.prototype,ev&&(Dl(ar,"byteLength"),Dl(wr,"buffer"),Dl(wr,"byteLength"),Dl(wr,"byteOffset")),VT(ha,{getInt8:function(e){return Ii(this,1,e)[0]<<24>>24},getUint8:function(e){return Ii(this,1,e)[0]},getInt16:function(e){var t=Ii(this,2,e,arguments.length>1?arguments[1]:void 0);return(t[1]<<8|t[0])<<16>>16},getUint16:function(e){var t=Ii(this,2,e,arguments.length>1?arguments[1]:void 0);return t[1]<<8|t[0]},getInt32:function(e){return QT(Ii(this,4,e,arguments.length>1?arguments[1]:void 0))},getUint32:function(e){return QT(Ii(this,4,e,arguments.length>1?arguments[1]:void 0))>>>0},getFloat32:function(e){return JT(Ii(this,4,e,arguments.length>1?arguments[1]:void 0),23)},getFloat64:function(e){return JT(Ii(this,8,e,arguments.length>1?arguments[1]:void 0),52)},setInt8:function(e,t){wi(this,1,e,KT,t)},setUint8:function(e,t){wi(this,1,e,KT,t)},setInt16:function(e,t){wi(this,2,e,YT,t,arguments.length>2?arguments[2]:void 0)},setUint16:function(e,t){wi(this,2,e,YT,t,arguments.length>2?arguments[2]:void 0)},setInt32:function(e,t){wi(this,4,e,XT,t,arguments.length>2?arguments[2]:void 0)},setUint32:function(e,t){wi(this,4,e,XT,t,arguments.length>2?arguments[2]:void 0)},setFloat32:function(e,t){wi(this,4,e,x5,t,arguments.length>2?arguments[2]:void 0)},setFloat64:function(e,t){wi(this,8,e,I5,t,arguments.length>2?arguments[2]:void 0)}});FT(ar,nv),FT(wr,b5);var mc={ArrayBuffer:ar,DataView:wr},w5=Oe,iv=pe,C5=ue,n1=Tt,r1=ii,E5=_r,R5=Du,av=mc.ArrayBuffer,ov=mc.DataView,i1=ov.prototype,a1=iv(av.prototype.slice),A5=iv(i1.getUint8),P5=iv(i1.setUint8);w5({target:"ArrayBuffer",proto:!0,unsafe:!0,forced:C5(function(){return!new av(2).slice(1,void 0).byteLength})},{slice:function(e,t){if(a1&&t===void 0)return a1(n1(this),e);for(var n=n1(this).byteLength,i=r1(e,n),r=r1(t===void 0?n:t,n),o=new(R5(this,av))(E5(r-i)),c=new ov(this),a=new ov(o),s=0;i<r;)P5(a,s++,A5(c,i++));return o}}),Oe({global:!0,constructor:!0,forced:!$m},{DataView:mc.DataView});var D5=Oe,L5=Fa,O5=pe([].reverse),o1=[1,2];D5({target:"Array",proto:!0,forced:String(o1)===String(o1.reverse())},{reverse:function(){return L5(this)&&(this.length=this.length),O5(this)}});var M5=Vt,N5=Mt,U5=_n,V5=tn,j5=TypeError,s1=function(e){return function(t,n,i,r){M5(n);var o=N5(t),c=U5(o),a=V5(o),s=e?a-1:0,l=e?-1:1;if(i<2)for(;;){if(s in c){r=c[s],s+=l;break}if(s+=l,e?s<0:a<=s)throw j5("Reduce of empty array with no initial value")}for(;e?s>=0:a>s;s+=l)s in c&&(r=n(r,c[s],s,o));return r}},sv={left:s1(!1),right:s1(!0)},B5=sv.left,c1=fr,F5=Bs;Oe({target:"Array",proto:!0,forced:!Ms("reduce")||!F5&&c1>79&&c1<83},{reduce:function(e){var t=arguments.length;return B5(this,e,t,t>1?arguments[1]:void 0)}});var H5=As,G5="ArrayBuffer",u1=mc.ArrayBuffer;Oe({global:!0,constructor:!0,forced:re.ArrayBuffer!==u1},{ArrayBuffer:u1}),H5(G5);var z5=Oe,l1=Fa,W5=_u,q5=at,d1=ii,J5=tn,K5=yn,Y5=ws,X5=tt,Q5=Ba,$5=Os("slice"),Z5=X5("species"),cv=Array,ej=Math.max;z5({target:"Array",proto:!0,forced:!$5},{slice:function(e,t){var n,i,r,o=K5(this),c=J5(o),a=d1(e,c),s=d1(t===void 0?c:t,c);if(l1(o)&&(n=o.constructor,(W5(n)&&(n===cv||l1(n.prototype))||q5(n)&&(n=n[Z5])===null)&&(n=void 0),n===cv||n===void 0))return Q5(o,a,s);for(i=new(n===void 0?cv:n)(ej(s-a,0)),r=0;a<s;a++,r++)a in o&&Y5(i,r,o[a]);return i.length=r,i}});var h1=re,tj=ue,nj=pe,rj=zt,ij=Ru.trim,f1=o0,vc=h1.parseInt,p1=h1.Symbol,m1=p1&&p1.iterator,v1=/^[+-]?0x/i,aj=nj(v1.exec),g1=vc(f1+"08")!==8||vc(f1+"0x16")!==22||m1&&!tj(function(){vc(Object(m1))})?function(e,t){var n=ij(rj(e));return vc(n,t>>>0||(aj(v1,n)?16:10))}:vc;Oe({global:!0,forced:parseInt!=g1},{parseInt:g1});var gn,Eo,Ol,uv={exports:{}},oj=$m,lv=ye,dn=re,_1=it,Ml=at,Ci=kt,dv=Dr,sj=Kn,cj=Ln,hv=Yt,uj=Pt.f,lj=bn,Nl=ks,Ro=ja,dj=tt,hj=Mi,y1=Ye.enforce,fj=Ye.get,Ul=dn.Int8Array,fv=Ul&&Ul.prototype,b1=dn.Uint8ClampedArray,S1=b1&&b1.prototype,Cr=Ul&&Nl(Ul),or=fv&&Nl(fv),pj=Object.prototype,pv=dn.TypeError,k1=dj("toStringTag"),mv=hj("TYPED_ARRAY_TAG"),mj="TypedArrayConstructor",Wr=oj&&!!Ro&&dv(dn.opera)!=="Opera",T1=!1,qr={Int8Array:1,Uint8Array:1,Uint8ClampedArray:1,Int16Array:2,Uint16Array:2,Int32Array:4,Uint32Array:4,Float32Array:4,Float64Array:8},vv={BigInt64Array:8,BigUint64Array:8},x1=function(e){var t=Nl(e);if(Ml(t)){var n=fj(t);return n&&Ci(n,mj)?n.TypedArrayConstructor:x1(t)}},I1=function(e){if(!Ml(e))return!1;var t=dv(e);return Ci(qr,t)||Ci(vv,t)};for(gn in qr)(Ol=(Eo=dn[gn])&&Eo.prototype)?y1(Ol).TypedArrayConstructor=Eo:Wr=!1;for(gn in vv)(Ol=(Eo=dn[gn])&&Eo.prototype)&&(y1(Ol).TypedArrayConstructor=Eo);if((!Wr||!_1(Cr)||Cr===Function.prototype)&&(Cr=function(){throw pv("Incorrect invocation")},Wr))for(gn in qr)dn[gn]&&Ro(dn[gn],Cr);if((!Wr||!or||or===pj)&&(or=Cr.prototype,Wr))for(gn in qr)dn[gn]&&Ro(dn[gn].prototype,or);if(Wr&&Nl(S1)!==or&&Ro(S1,or),lv&&!Ci(or,k1))for(gn in T1=!0,uj(or,k1,{get:function(){return Ml(this)?this[mv]:void 0}}),qr)dn[gn]&&cj(dn[gn],mv,gn);var Ge={NATIVE_ARRAY_BUFFER_VIEWS:Wr,TYPED_ARRAY_TAG:T1&&mv,aTypedArray:function(e){if(I1(e))return e;throw pv("Target is not a typed array")},aTypedArrayConstructor:function(e){if(_1(e)&&(!Ro||lj(Cr,e)))return e;throw pv(sj(e)+" is not a typed array constructor")},exportTypedArrayMethod:function(e,t,n,i){if(lv){if(n)for(var r in qr){var o=dn[r];if(o&&Ci(o.prototype,e))try{delete o.prototype[e]}catch(c){try{o.prototype[e]=t}catch(a){}}}or[e]&&!n||hv(or,e,n?t:Wr&&fv[e]||t,i)}},exportTypedArrayStaticMethod:function(e,t,n){var i,r;if(lv){if(Ro){if(n){for(i in qr)if((r=dn[i])&&Ci(r,e))try{delete r[e]}catch(o){}}if(Cr[e]&&!n)return;try{return hv(Cr,e,n?t:Wr&&Cr[e]||t)}catch(o){}}for(i in qr)!(r=dn[i])||r[e]&&!n||hv(r,e,t)}},getTypedArrayConstructor:x1,isView:function(e){if(!Ml(e))return!1;var t=dv(e);return t==="DataView"||Ci(qr,t)||Ci(vv,t)},isTypedArray:I1,TypedArray:Cr,TypedArrayPrototype:or},w1=re,gv=ue,vj=mu,gj=Ge.NATIVE_ARRAY_BUFFER_VIEWS,_j=w1.ArrayBuffer,fa=w1.Int8Array,yj=!gj||!gv(function(){fa(1)})||!gv(function(){new fa(-1)})||!vj(function(e){new fa,new fa(null),new fa(1.5),new fa(e)},!0)||gv(function(){return new fa(new _j(2),1,void 0).length!==1}),bj=Qn,Sj=RangeError,kj=function(e){var t=bj(e);if(t<0)throw Sj("The argument can't be less than 0");return t},Tj=RangeError,C1=function(e,t){var n=kj(e);if(n%t)throw Tj("Wrong offset");return n},xj=Dr,Ij=pe("".slice),wj=Ni,Cj=TypeError,E1=function(e){var t=wj(e,"number");if(typeof t=="number")throw Cj("Can't convert number to bigint");return BigInt(t)},Ej=Or,Rj=Ke,Aj=T0,Pj=Mt,Dj=tn,Lj=fu,Oj=Cs,Mj=ch,Nj=function(e){return Ij(xj(e),0,3)==="Big"},Uj=Ge.aTypedArrayConstructor,Vj=E1,R1=Oe,A1=re,P1=Ke,jj=ye,Bj=yj,Ao=Ge,D1=mc,L1=ai,Fj=Ze,gc=Ln,Hj=KS,Gj=_r,O1=LT,_v=C1,M1=Aa,_c=kt,zj=Dr,yv=at,Wj=Di,qj=Va,Jj=bn,Vl=ja,Kj=ri.f,N1=function(e){var t,n,i,r,o,c,a,s,l=Aj(this),u=Pj(e),p=arguments.length,k=p>1?arguments[1]:void 0,x=k!==void 0,E=Oj(u);if(E&&!Mj(E))for(s=(a=Lj(u,E)).next,u=[];!(c=Rj(s,a)).done;)u.push(c.value);for(x&&p>2&&(k=Ej(k,arguments[2])),n=Dj(u),i=new(Uj(l))(n),r=Nj(i),t=0;n>t;t++)o=x?k(u[t],t):u[t],i[t]=r?Vj(o):+o;return i},Yj=nn.forEach,Xj=As,U1=Pt,V1=be,Qj=vu,bv=Ye.get,$j=Ye.set,Zj=Ye.enforce,Sv=U1.f,e8=V1.f,t8=Math.round,kv=A1.RangeError,j1=D1.ArrayBuffer,n8=j1.prototype,r8=D1.DataView,jl=Ao.NATIVE_ARRAY_BUFFER_VIEWS,B1=Ao.TYPED_ARRAY_TAG,F1=Ao.TypedArray,yc=Ao.TypedArrayPrototype,i8=Ao.aTypedArrayConstructor,Tv=Ao.isTypedArray,Bl="BYTES_PER_ELEMENT",xv="Wrong length",H1=function(e,t){i8(e);for(var n=0,i=t.length,r=new e(i);i>n;)r[n]=t[n++];return r},Fl=function(e,t){Sv(e,t,{get:function(){return bv(this)[t]}})},G1=function(e){var t;return Jj(n8,e)||(t=zj(e))=="ArrayBuffer"||t=="SharedArrayBuffer"},z1=function(e,t){return Tv(e)&&!Wj(t)&&t in e&&Hj(+t)&&t>=0},W1=function(e,t){return t=M1(t),z1(e,t)?Fj(2,e[t]):e8(e,t)},q1=function(e,t,n){return t=M1(t),!(z1(e,t)&&yv(n)&&_c(n,"value"))||_c(n,"get")||_c(n,"set")||n.configurable||_c(n,"writable")&&!n.writable||_c(n,"enumerable")&&!n.enumerable?Sv(e,t,n):(e[t]=n.value,e)};jj?(jl||(V1.f=W1,U1.f=q1,Fl(yc,"buffer"),Fl(yc,"byteOffset"),Fl(yc,"byteLength"),Fl(yc,"length")),R1({target:"Object",stat:!0,forced:!jl},{getOwnPropertyDescriptor:W1,defineProperty:q1}),uv.exports=function(e,t,n){var i=e.match(/\d+$/)[0]/8,r=e+(n?"Clamped":"")+"Array",o="get"+e,c="set"+e,a=A1[r],s=a,l=s&&s.prototype,u={},p=function(x,E){Sv(x,E,{get:function(){return function(I,m){var T=bv(I);return T.view[o](m*i+T.byteOffset,!0)}(this,E)},set:function(I){return function(m,T,v){var C=bv(m);n&&(v=(v=t8(v))<0?0:v>255?255:255&v),C.view[c](T*i+C.byteOffset,v,!0)}(this,E,I)},enumerable:!0})};jl?Bj&&(s=t(function(x,E,I,m){return L1(x,l),Qj(yv(E)?G1(E)?m!==void 0?new a(E,_v(I,i),m):I!==void 0?new a(E,_v(I,i)):new a(E):Tv(E)?H1(s,E):P1(N1,s,E):new a(O1(E)),x,s)}),Vl&&Vl(s,F1),Yj(Kj(a),function(x){x in s||gc(s,x,a[x])}),s.prototype=l):(s=t(function(x,E,I,m){L1(x,l);var T,v,C,O=0,N=0;if(yv(E)){if(!G1(E))return Tv(E)?H1(s,E):P1(N1,s,E);T=E,N=_v(I,i);var j=E.byteLength;if(m===void 0){if(j%i||(v=j-N)<0)throw kv(xv)}else if((v=Gj(m)*i)+N>j)throw kv(xv);C=v/i}else C=O1(E),T=new j1(v=C*i);for($j(x,{buffer:T,byteOffset:N,byteLength:v,length:C,view:new r8(T)});O<C;)p(x,O++)}),Vl&&Vl(s,F1),l=s.prototype=qj(yc)),l.constructor!==s&&gc(l,"constructor",s),Zj(l).TypedArrayConstructor=s,B1&&gc(l,B1,r);var k=s!=a;u[r]=s,R1({global:!0,constructor:!0,forced:k,sham:!jl},u),Bl in s||gc(s,Bl,i),Bl in l||gc(l,Bl,i),Xj(r)}):uv.exports=function(){},(0,uv.exports)("Uint8",function(e){return function(t,n,i){return e(this,t,n,i)}});var a8=Mt,Iv=ii,o8=tn,s8=z_,c8=Math.min,u8=[].copyWithin||function(e,t){var n=a8(this),i=o8(n),r=Iv(e,i),o=Iv(t,i),c=arguments.length>2?arguments[2]:void 0,a=c8((c===void 0?i:Iv(c,i))-o,i-r),s=1;for(o<r&&r<o+a&&(s=-1,o+=a-1,r+=a-1);a-- >0;)o in n?n[r]=n[o]:s8(n,r),r+=s,o+=s;return n},J1=Ge,l8=pe(u8),d8=J1.aTypedArray;(0,J1.exportTypedArrayMethod)("copyWithin",function(e,t){return l8(d8(this),e,t,arguments.length>2?arguments[2]:void 0)});var h8=nn.every,f8=Ge.aTypedArray;(0,Ge.exportTypedArrayMethod)("every",function(e){return h8(f8(this),e,arguments.length>1?arguments[1]:void 0)});var p8=MT,m8=E1,v8=Dr,g8=Ke,_8=ue,y8=Ge.aTypedArray,b8=Ge.exportTypedArrayMethod,S8=pe("".slice);b8("fill",function(e){var t=arguments.length;y8(this);var n=S8(v8(this),0,3)==="Big"?m8(e):+e;return g8(p8,this,n,t>1?arguments[1]:void 0,t>2?arguments[2]:void 0)},_8(function(){var e=0;return new Int8Array(2).fill({valueOf:function(){return e++}}),e!==1}));var k8=tn,T8=Du,x8=Ge.aTypedArrayConstructor,I8=Ge.getTypedArrayConstructor,Hl=function(e){return x8(T8(e,I8(e)))},w8=function(e,t){for(var n=0,i=k8(t),r=new e(i);i>n;)r[n]=t[n++];return r},C8=Hl,E8=nn.filter,R8=function(e,t){return w8(C8(e),t)},A8=Ge.aTypedArray;(0,Ge.exportTypedArrayMethod)("filter",function(e){var t=E8(A8(this),e,arguments.length>1?arguments[1]:void 0);return R8(this,t)});var P8=nn.find,D8=Ge.aTypedArray;(0,Ge.exportTypedArrayMethod)("find",function(e){return P8(D8(this),e,arguments.length>1?arguments[1]:void 0)});var L8=nn.findIndex,O8=Ge.aTypedArray;(0,Ge.exportTypedArrayMethod)("findIndex",function(e){return L8(O8(this),e,arguments.length>1?arguments[1]:void 0)});var M8=nn.forEach,N8=Ge.aTypedArray;(0,Ge.exportTypedArrayMethod)("forEach",function(e){M8(N8(this),e,arguments.length>1?arguments[1]:void 0)});var U8=_s.includes,V8=Ge.aTypedArray;(0,Ge.exportTypedArrayMethod)("includes",function(e){return U8(V8(this),e,arguments.length>1?arguments[1]:void 0)});var j8=_s.indexOf,B8=Ge.aTypedArray;(0,Ge.exportTypedArrayMethod)("indexOf",function(e){return j8(B8(this),e,arguments.length>1?arguments[1]:void 0)});var F8=re,H8=ue,wv=pe,K1=Ge,Cv=Hg,Ev=tt("iterator"),Y1=F8.Uint8Array,G8=wv(Cv.values),z8=wv(Cv.keys),W8=wv(Cv.entries),Rv=K1.aTypedArray,Gl=K1.exportTypedArrayMethod,Po=Y1&&Y1.prototype,zl=!H8(function(){Po[Ev].call([1])}),X1=!!Po&&Po.values&&Po[Ev]===Po.values&&Po.values.name==="values",Q1=function(){return G8(Rv(this))};Gl("entries",function(){return W8(Rv(this))},zl),Gl("keys",function(){return z8(Rv(this))},zl),Gl("values",Q1,zl||!X1,{name:"values"}),Gl(Ev,Q1,zl||!X1,{name:"values"});var q8=Ge.aTypedArray,J8=Ge.exportTypedArrayMethod,K8=pe([].join);J8("join",function(e){return K8(q8(this),e)});var Y8=zi,X8=yn,Q8=Qn,$8=tn,Z8=Ms,eB=Math.min,Av=[].lastIndexOf,$1=!!Av&&1/[1].lastIndexOf(1,-0)<0,tB=Z8("lastIndexOf"),nB=$1||!tB?function(e){if($1)return Y8(Av,this,arguments)||0;var t=X8(this),n=$8(t),i=n-1;for(arguments.length>1&&(i=eB(i,Q8(arguments[1]))),i<0&&(i=n+i);i>=0;i--)if(i in t&&t[i]===e)return i||0;return-1}:Av,rB=zi,iB=nB,aB=Ge.aTypedArray;(0,Ge.exportTypedArrayMethod)("lastIndexOf",function(e){var t=arguments.length;return rB(iB,aB(this),t>1?[e,arguments[1]]:[e])});var oB=nn.map,sB=Hl,cB=Ge.aTypedArray;(0,Ge.exportTypedArrayMethod)("map",function(e){return oB(cB(this),e,arguments.length>1?arguments[1]:void 0,function(t,n){return new(sB(t))(n)})});var uB=sv.left,lB=Ge.aTypedArray;(0,Ge.exportTypedArrayMethod)("reduce",function(e){var t=arguments.length;return uB(lB(this),e,t,t>1?arguments[1]:void 0)});var dB=sv.right,hB=Ge.aTypedArray;(0,Ge.exportTypedArrayMethod)("reduceRight",function(e){var t=arguments.length;return dB(hB(this),e,t,t>1?arguments[1]:void 0)});var fB=Ge.aTypedArray,pB=Ge.exportTypedArrayMethod,mB=Math.floor;pB("reverse",function(){for(var e,t=this,n=fB(t).length,i=mB(n/2),r=0;r<i;)e=t[r],t[r++]=t[--n],t[n]=e;return t});var Z1=re,ex=Ke,Pv=Ge,vB=tn,gB=C1,_B=Mt,tx=ue,yB=Z1.RangeError,Dv=Z1.Int8Array,nx=Dv&&Dv.prototype,rx=nx&&nx.set,bB=Pv.aTypedArray,SB=Pv.exportTypedArrayMethod,Lv=!tx(function(){var e=new Uint8ClampedArray(2);return ex(rx,e,{length:1,0:3},1),e[1]!==3}),kB=Lv&&Pv.NATIVE_ARRAY_BUFFER_VIEWS&&tx(function(){var e=new Dv(2);return e.set(1),e.set("2",1),e[0]!==0||e[1]!==2});SB("set",function(e){bB(this);var t=gB(arguments.length>1?arguments[1]:void 0,1),n=_B(e);if(Lv)return ex(rx,this,n,t);var i=this.length,r=vB(n),o=0;if(r+t>i)throw yB("Wrong length");for(;o<r;)this[t+o]=n[o++]},!Lv||kB);var TB=Hl,xB=Ba,IB=Ge.aTypedArray;(0,Ge.exportTypedArrayMethod)("slice",function(e,t){for(var n=xB(IB(this),e,t),i=TB(this),r=0,o=n.length,c=new i(o);o>r;)c[r]=n[r++];return c},ue(function(){new Int8Array(1).slice()}));var wB=nn.some,CB=Ge.aTypedArray;(0,Ge.exportTypedArrayMethod)("some",function(e){return wB(CB(this),e,arguments.length>1?arguments[1]:void 0)});var ix=Jn.match(/firefox\/(\d+)/i),EB=!!ix&&+ix[1],RB=/MSIE|Trident/.test(Jn),ax=Jn.match(/AppleWebKit\/(\d+)\./),AB=!!ax&&+ax[1],PB=pe,Ov=ue,DB=Vt,LB=Iy,ox=EB,OB=RB,sx=fr,cx=AB,MB=Ge.aTypedArray,NB=Ge.exportTypedArrayMethod,bc=re.Uint16Array,Do=bc&&PB(bc.prototype.sort),UB=!(!Do||Ov(function(){Do(new bc(2),null)})&&Ov(function(){Do(new bc(2),{})})),ux=!!Do&&!Ov(function(){if(sx)return sx<74;if(ox)return ox<67;if(OB)return!0;if(cx)return cx<602;var e,t,n=new bc(516),i=Array(516);for(e=0;e<516;e++)t=e%4,n[e]=515-e,i[e]=e-2*t+3;for(Do(n,function(r,o){return(r/4|0)-(o/4|0)}),e=0;e<516;e++)if(n[e]!==i[e])return!0});NB("sort",function(e){return e!==void 0&&DB(e),ux?Do(this,e):LB(MB(this),function(t){return function(n,i){return t!==void 0?+t(n,i)||0:i!=i?-1:n!=n?1:n===0&&i===0?1/n>0&&1/i<0?1:-1:n>i}}(e))},!ux||UB);var VB=_r,lx=ii,jB=Hl,BB=Ge.aTypedArray;(0,Ge.exportTypedArrayMethod)("subarray",function(e,t){var n=BB(this),i=n.length,r=lx(e,i);return new(jB(n))(n.buffer,n.byteOffset+r*n.BYTES_PER_ELEMENT,VB((t===void 0?i:lx(t,i))-r))});var FB=zi,dx=Ge,Mv=ue,hx=Ba,Wl=re.Int8Array,fx=dx.aTypedArray,HB=dx.exportTypedArrayMethod,px=[].toLocaleString,GB=!!Wl&&Mv(function(){px.call(new Wl(1))});HB("toLocaleString",function(){return FB(px,GB?hx(fx(this)):fx(this),hx(arguments))},Mv(function(){return[1,2].toLocaleString()!=new Wl([1,2]).toLocaleString()})||!Mv(function(){Wl.prototype.toLocaleString.call([1,2])}));var zB=Ge.exportTypedArrayMethod,WB=ue,qB=pe,mx=re.Uint8Array,JB=mx&&mx.prototype||{},ql=[].toString,KB=qB([].join);WB(function(){ql.call({})})&&(ql=function(){return KB(this)});var YB=JB.toString!=ql;zB("toString",ql,YB);var XB=function(){function e(t,n,i){X(this,e),this.isUplink_=i,this.connection_=t,this.log_=n,this.seiMessageList_=[],this.smallVideoSeiMessageList_=[],this.seiPayloadType_=243,this.runningAbortMap_=new Map,this.abortMap_=new Map,this.onSEIMessage=null}return Ie(e,[{key:"isRunning",get:function(){return!!this.runningAbortMap_.size>0}},{key:"start",value:function(t){var n=this,i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.seiMessageList_,r=t.createEncodedStreams(),o=r.readable,c=r.writable,a=new TransformStream({transform:this.isUplink_?function(l,u){return n.encodeVideoFrame(l,u,i)}:function(l,u){var p,k;return n.decodeVideoFrame(l,u,t===((p=n.connection_)===null||p===void 0||(k=p.getPeerConnection())===null||k===void 0?void 0:k.getReceivers()[Zb]))}}),s=new AbortController;o.pipeThrough(a).pipeTo(c,{signal:s.signal}).catch(function(){}),this.runningAbortMap_.set(t,s)}},{key:"restart",value:function(t,n){this.stop(),this.start(t,n)}},{key:"stop",value:function(t){var n;(n=this.runningAbortMap_.get(t))===null||n===void 0||n.abort(),this.runningAbortMap_.delete(t)}},{key:"destroy",value:function(){this.stop(),this.runningAbortMap_.forEach(function(t){return t.abort()}),this.runningAbortMap_.clear(),this.abortMap_.forEach(function(t){return t.abort()}),this.abortMap_.clear(),this.log_=null,this.onSEIMessage=null,this.connection_=null}},{key:"handleEncodedStreams",value:function(){var t=this;try{var n=this.connection_.getPeerConnection();this.clearUnusedSenderOrReceiver(n),this.isUplink_?n.getSenders().forEach(function(i,r){if(!t.runningAbortMap_.has(i)&&!t.abortMap_.has(i))if(r===aN||r===$b){var o=r===$b?t.smallVideoSeiMessageList_:t.seiMessageList_;t.isRunning?t.restart(i,o):t.start(i,o)}else t.pipeSenderOrReceiver(i)}):n.getReceivers().forEach(function(i,r){var o;t.runningAbortMap_.has(i)||t.abortMap_.has(i)||(r!==oN&&r!==Zb||((o=i.track)===null||o===void 0?void 0:o.kind)!==xe?t.pipeSenderOrReceiver(i):t.isRunning?t.restart(i):t.start(i))})}catch(i){this.log_.warn(i)}}},{key:"pipeSenderOrReceiver",value:function(t){var n=t.createEncodedStreams(),i=n.readable,r=n.writable,o=new AbortController;this.abortMap_.set(t,o),i.pipeTo(r,{signal:o.signal}).catch(function(){})}},{key:"clearUnusedSenderOrReceiver",value:function(t){var n=this;this.abortMap_.forEach(function(i,r){(n.isUplink_?t.getSenders():t.getReceivers()).find(function(o){return o===r})||(i.abort(),n.abortMap_.delete(r))})}},{key:"push",value:function(t,n){n&&n.seiPayloadType&&(this.seiPayloadType_=n.seiPayloadType),this.seiMessageList_.push(t),this.smallVideoSeiMessageList_.push(t)}},{key:"hasSEI",value:function(t){var n=new DataView(t);return n.getInt32(0)===1&&n.getInt8(4)===6}},{key:"isEmptyFrame",value:function(t){return t.type==="empty"||t.data.byteLength===0}},{key:"getNaluCount",value:function(t){for(var n=0,i=0,r=new DataView(t),o=0;o<t.byteLength;o++)switch(r.getUint8(o)){case 0:n++;break;case 1:n!==2&&n!==3||i++,n=0;break;default:n=0}return i}},{key:"encodeVideoFrame",value:function(t,n,i){try{if(this.connection_.isH264&&i.length>0&&!this.isEmptyFrame(t)){var r=9-this.getNaluCount(t.data);if(r<=0)return;for(var o=i.splice(0,r).reverse().map(this.encodeSEINalu.bind(this)),c=o.reduce(function(E,I){return E+I.dataView.byteLength},0),a=new ArrayBuffer(c+t.data.byteLength),s=new DataView(a),l=new DataView(t.data),u=0,p=0;p<o.length;p++)for(var k=0;k<o[p].dataView.byteLength;k++)s.setInt8(u++,o[p].dataView.getInt8(k));for(var x=0;x<t.data.byteLength;x++)s.setInt8(u++,l.getInt8(x));t.data=a,this.log_.debug("".concat(o.length," sei sent"))}}catch(E){this.log_.warn(E)}n.enqueue(t)}},{key:"decodeVideoFrame",value:function(t,n){var i=this,r=arguments.length>2&&arguments[2]!==void 0&&arguments[2];try{if(this.connection_.isH264&&!this.isEmptyFrame(t)&&this.hasSEI(t.data)){for(var o=[],c=new DataView(t.data),a=0,s=-1,l=-1,u=0;u<t.data.byteLength;u++){var p=c.getUint8(u);if(p===0)a++;else if(p===1){if(a===2||a===3){var k=u-a;s===-1?s=k:l===-1&&(l=k,o.push(new vx(new DataView(c.buffer.slice(s,l)))),s=k,l=-1);var x=c.getUint8(u+1)===6;if(!x){t.data=new DataView(c.buffer.slice(k)).buffer;break}}a=0}else a=0}this.log_.debug("".concat(o.length," sei received")),un(this.onSEIMessage)&&o.reverse().forEach(function(E){i.onSEIMessage({seiPayloadType:E.seiPayloadType,data:E.seiPayload.buffer,isFromAuxiliary:r})})}}catch(E){this.log_.warn(E)}n.enqueue(t)}},{key:"encodeSEINalu",value:function(t){var n=t.byteLength,i=parseInt(n/255),r=n%255,o=[];o.push(0,0,0,1,6,this.seiPayloadType_);for(var c=0;c<i;c++)o.push(255);o.push(r);var a=new DataView(t);return o.push.apply(o,Se(new Uint8Array(a.buffer))),o.push(128),new vx(new DataView(new Uint8Array(o).buffer),!0)}}]),e}(),vx=function(){function e(t){var n=arguments.length>1&&arguments[1]!==void 0&&arguments[1];X(this,e),this.dataView=t,this.isSEI&&(n?this.addPreventionByte():this.removePreventionByte())}return Ie(e,[{key:"addPreventionByte",value:function(){for(var t=this.seiPayloadStartIndex,n=this.dataView.byteLength-2,i=[],r=0,o=t;o<=n;o++){var c=this.dataView.getInt8(o);switch(c){case 0:case 1:case 2:case 3:r===2&&(i.push(3),r=0),c==0?r++:r=0,i.push(c);break;default:r=0,i.push(c)}}i.push(this.dataView.getInt8(this.dataView.byteLength-1));var a=new DataView(new Uint8Array([].concat(Se(new Uint8Array(this.dataView.buffer).slice(0,t)),i)).buffer);this.dataView=a}},{key:"removePreventionByte",value:function(){for(var t=this.seiPayloadStartIndex,n=this.dataView.byteLength-1,i=[],r=0,o=t;o<=n;o++)switch(this.dataView.getInt8(o)){case 0:r++,i.push(this.dataView.getInt8(o));break;case 3:r!==2&&i.push(this.dataView.getInt8(o)),r=0;break;default:i.push(this.dataView.getInt8(o)),r=0}var c=new DataView(new Uint8Array([].concat(Se(new Uint8Array(this.dataView.buffer).slice(0,t)),i)).buffer);this.dataView=c}},{key:"isSEI",get:function(){return this.dataView.getUint8(4)===6}},{key:"seiPayloadStartIndex",get:function(){for(var t=6,n=6;n<this.dataView.buffer.byteLength&&(t++,this.dataView.getUint8(n)===255);n++);return t}},{key:"seiPayloadType",get:function(){return this.isSEI?this.dataView.getUint8(5):null}},{key:"seiPayload",get:function(){if(!this.isSEI)return null;for(var t=0,n=6,i=6;i<this.dataView.buffer.byteLength;i++){var r=this.dataView.getUint8(i);if(n++,r!==255){t+=r;break}t+=255}for(var o=new ArrayBuffer(t),c=new DataView(o),a=0;a<o.byteLength;a++,n++)c.setInt8(a,this.dataView.getInt8(n));return c}}]),e}(),Nv=function(){function e(n){X(this,e),this.userId_=n.userId,this.tinyId_=n.tinyId,this.client_=n.client,this.sdpSemantics_=n.client.getSdpSemantics(),this.isUplink_=n.isUplink,this.log_=_e.createLogger({id:"n|"+this.userId_,userId:this.client_.getUserId(),sdkAppId:this.client_.getSDKAppId(),isLocal:this.isUplink_}),this.signalChannel_=n.signalChannel,this.peerConnection_=null,this.isErrorObserved_=!1,this.emitter_=new bi,this.currentState_=an,this.waitForPeerConnectionConnectedPromise_=null,this.isReconnecting_=!1,this.reconnectionCount_=0,this.reconnectionTimer_=-1,this.isFirstConnection_=!0,this.delay_={audioDelay:0,videoDelay:0},this.enableSEI_=n.enableSEI,this.enableSEI_&&ym&&(this.sei_=new XB(this,this.log_,this.isUplink_))}var t;return Ie(e,[{key:"initialize",value:function(){var n={encodedInsertableStreams:this.enableSEI_&&ym,iceServers:this.client_.getIceServers(),iceTransportPolicy:this.client_.getIceTransportPolicy(),sdpSemantics:this.sdpSemantics_,bundlePolicy:"max-bundle",rtcpMuxPolicy:"require",tcpCandidatePolicy:"disable",IceTransportsType:"nohost"};this.peerConnection_=new RTCPeerConnection(n),this.peerConnection_.onconnectionstatechange=this.onConnectionStateChange.bind(this)}},{key:"close",value:function(){this.log_.info("closing connection"),this.closePeerConnection(),this.sei_&&(this.sei_.destroy(),this.sei_=null)}},{key:"closePeerConnection",value:function(){var n=arguments.length>0&&arguments[0]!==void 0&&arguments[0];this.peerConnection_&&(this.peerConnection_.onconnectionstatechange=function(){},this.peerConnection_.close(),this.peerConnection_=null,n&&this.emitConnectionStateChangedEvent(an))}},{key:"getDTLSTransportState",value:function(){if(!this.peerConnection_)return zu;var n=null;if(this.isUplink_){if(!fl()||this.peerConnection_.getSenders().length===0)return zu;n=this.peerConnection_.getSenders()[0].transport}else{if(!Nk()||this.peerConnection_.getReceivers().length===0)return zu;n=this.peerConnection_.getReceivers()[0].transport}return n?n.state:zu}},{key:"onConnectionStateChange",value:function(n){var i=this.peerConnection_.iceConnectionState,r=this.getDTLSTransportState();if(this.log_.info("onConnectionStateChange() connectionState: "+n.target.connectionState),this.log_.info("ICE Transport state: ".concat(i,", DTLS Transport state: ").concat(r)),n.target.connectionState===Wu&&this.emitConnectionStateChangedEvent(yb),n.target.connectionState===bb||n.target.connectionState===Vf){var o="".concat(this.isUplink_?"uplink":"downlink"," ICE/DTLS Transport connection ").concat(n.target.connectionState,". ICE Transport state: ").concat(i,", DTLS Transport state: ").concat(r),c=new ne({message:o,code:ee.ICE_TRANSPORT_ERROR});ke.logFailedEvent({userId:this.client_.getUserId(),eventType:Lb,error:c}),this.emitConnectionStateChangedEvent(an),this.isErrorObserved_||this.emitter_.emit(et.ERROR,c)}n.target.connectionState!==Sb&&n.target.connectionState!==JM||(this.logSelectedCandidate(),ke.logSuccessEvent({userId:this.client_.getUserId(),eventType:Lb}),this.emitConnectionStateChangedEvent(pn))}},{key:"emitConnectionStateChangedEvent",value:function(n){n!==this.currentState_&&(this.currentState_===Uf&&n===yb||(Q.emit(dl,{client:this.client_,connection:this,prevState:this.currentState_,state:n}),this.emitter_.emit(et.CONNECTION_STATE_CHANGED,{prevState:this.currentState_,state:n}),this.currentState_=n))}},{key:"hitTest",value:function(n){return(n===0||n==="0")&&this.isUplink_||n===this.tinyId_}},{key:"addEventInternal",value:function(n,i){var r=this.client_.getUserId(),o={eventId:n,eventDesc:i,timestamp:rn(),userId:r,tinyId:this.client_.getTinyId()};this.isUplink_||(o.remoteUserId=this.userId_,o.remoteTinyId=this.tinyId_),mn(r,o)}},{key:"getPeerConnection",value:function(){return this.peerConnection_}},{key:"getClient",value:function(){return this.client_}},{key:"getUserId",value:function(){return this.userId_}},{key:"getTinyId",value:function(){return this.tinyId_}},{key:"logSelectedCandidate",value:(t=H(f().mark(function n(){var i,r,o,c,a,s,l;return f().wrap(function(u){for(;;)switch(u.prev=u.next){case 0:if(this.peerConnection_){u.next=2;break}return u.abrupt("return");case 2:return u.next=4,this.peerConnection_.getStats();case 4:i=u.sent,r=oe(i),u.prev=6,r.s();case 8:if((o=r.n()).done){u.next=18;break}if((c=Te(o.value,2))[0],!bm(a=c[1])){u.next=16;break}return s=i.get(a.localCandidateId),l=i.get(a.remoteCandidateId),s&&this.log_.info("local candidate: ".concat(s.candidateType," ").concat(s.protocol,":").concat(s.ip||s.address,":").concat(s.port," ").concat(s.networkType||""," ").concat(s.candidateType==="relay"?"relayProtocol:"+s.relayProtocol:"")),l&&this.log_.info("remote candidate: ".concat(l.candidateType," ").concat(l.protocol,":").concat(l.ip||l.address,":").concat(l.port)),u.abrupt("break",18);case 16:u.next=8;break;case 18:u.next=23;break;case 20:u.prev=20,u.t0=u.catch(6),r.e(u.t0);case 23:return u.prev=23,r.f(),u.finish(23);case 26:case"end":return u.stop()}},n,this,[[6,20,23,26]])})),function(){return t.apply(this,arguments)})},{key:"getCurrentState",value:function(){return this.currentState_}},{key:"waitForPeerConnectionConnected",value:function(){var n=this;return this.waitForPeerConnectionConnectedPromise_||(this.waitForPeerConnectionConnectedPromise_=new Promise(function(i,r){if(n.currentState_===pn)return i();var o=-1,c=function(l){l.state===pn&&(clearTimeout(o),s(),i())},a=function(l){l.client===n.client_&&(clearTimeout(o),s(),r(new ne({code:ee.API_CALL_ABORTED,message:ie({key:$3,data:"leave room"})})))},s=function(){Q.off(fo,a,n),n.emitter_.off(et.CONNECTION_STATE_CHANGED,c,n)};o=setTimeout(function(){s();var l=new ne({code:ee.API_CALL_TIMEOUT,message:"connection timeout"});r(l)},1e4),Q.on(fo,a,n),n.emitter_.on(et.CONNECTION_STATE_CHANGED,c,n)}),this.waitForPeerConnectionConnectedPromise_=this.waitForPeerConnectionConnectedPromise_.then(function(i){return n.waitForPeerConnectionConnectedPromise_=null,i}).catch(function(i){throw n.waitForPeerConnectionConnectedPromise_=null,i})),this.waitForPeerConnectionConnectedPromise_}},{key:"getReconnectionCount",value:function(){return this.reconnectionCount_}},{key:"startReconnection",value:function(){this.isReconnecting_=!0,this.emitConnectionStateChangedEvent(Uf),this.reconnect(),this.addEventInternal(this.isUplink_?oV:uV,"".concat(this.isUplink_?"uplink":"downlink","-connection is reconnecting"))}},{key:"stopReconnection",value:function(){this.log_.info("stop reconnection"),this.isReconnecting_=!1,this.reconnectionCount_=0,this.clearReconnectionTimer(),this.signalChannel_.off(ic,this.reconnect,this)}},{key:"on",value:function(n,i,r){this.emitter_.on(n,i,r)}},{key:"off",value:function(n,i,r){this.emitter_.off(n,i,r)}},{key:"setDelay",value:function(n){var i=n.audioDelay,r=n.videoDelay;this.delay_={audioDelay:i,videoDelay:r}}},{key:"getDelay",value:function(){return this.delay_}},{key:"isH264",get:function(){var n,i;return!((n=this.peerConnection_)===null||n===void 0||(i=n.remoteDescription)===null||i===void 0||!i.sdp.includes("H264"))}}]),e}(),QB=function(){function e(){X(this,e),this.set_=new Set,Q.on(cl,this.add,this),Q.on(ho,this.add,this),Q.on(aa,this.delete,this),Q.on(fo,this.delete,this)}return Ie(e,[{key:"add",value:function(t){var n=t.client,i=t.roomId;if(n.getMode()!=="rtc"){var r=this.getKey(n.getUserId(),i||n.getRoomId(),n.getSDKAppId(),n.getUseStringRoomId());this.set_.add(r)}}},{key:"delete",value:function(t){var n=t.client;if(n.getMode()!=="rtc"){var i=this.getKey(n.getUserId(),n.getRoomId(),n.getSDKAppId(),n.getUseStringRoomId());this.set_.delete(i)}}},{key:"getKey",value:function(t,n,i,r){return"".concat(i,"_").concat(n,"_").concat(t,"_").concat(r)}},{key:"isJoined",value:function(t){var n=t.userId,i=t.roomId,r=t.sdkAppId,o=t.client;return o.getMode()!=="rtc"&&this.set_.has(this.getKey(n,i,r,o.getUseStringRoomId()))}}]),e}(),$B=new QB;function gx(e,t,n,i){if(this.useStringRoomId_){if(!(Bt(e)&&/^[A-Za-z\d\s!#$%&()+\-:;<=.>?@[\]^_{}|~,]{1,64}$/.test(e)))throw new ne({code:ee.INVALID_PARAMETER,message:ie({key:LN,data:t,link:{className:i,fnName:n}})})}else if(!(er(e)&&/^[1-9]\d*$/.test(String(e))&&e<4294967295))throw new ne({code:ee.INVALID_PARAMETER,message:ie({key:ON,data:t,link:{className:i,fnName:n}})})}function _x(e,t,n,i){if(!/^[A-Za-z\d_-]*$/.test(e))throw new ne({code:ee.INVALID_PARAMETER,message:ie({key:XN,data:t,link:{className:i,fnName:n}})})}var ZB={createClient:{name:"clientConfig",required:!0,type:xr,properties:{sdkAppId:{required:!0,type:wt,allowEmpty:!1},userId:{required:!0,type:bt,allowEmpty:!1},userSig:{required:!0,type:bt,allowEmpty:!1},mode:{required:!0,type:bt,values:["rtc",Gu]},useStringRoomId:{type:on},autoSubscribe:{type:on},enableAutoPlayDialog:{type:on},streamId:{type:bt},userDefineRecordId:{type:bt},pureAudioPushMode:{type:wt,values:[1,2]},enableSEI:{type:on}}},createStream:{name:"streamConfig",required:!0,type:xr,properties:{userId:{type:bt},audio:{type:on},video:{type:on},screen:{type:on},screenAudio:{type:on},microphoneId:{type:bt},cameraId:{type:bt},facingMode:{type:[bt,xr]},audioSource:{instanceOf:window.MediaStreamTrack},videoSource:{instanceOf:window.MediaStreamTrack}},validate:function(e){if(!ge(e.screen)&&e.screen&&ge(e.audio)&&(e.audio=!1),!(ge(e.audio)&&ge(e.video)||ge(e.audioSource)&&ge(e.videoSource)))throw new ne({code:ee.INVALID_PARAMETER,message:ie({key:D3})});if(!ge(e.screen)&&e.screen===!0&&e.video===!0)throw new ne({code:ee.INVALID_PARAMETER,message:ie({key:L3})});if(e.audio&&e.screenAudio)throw new ne({code:ee.INVALID_PARAMETER,message:ie({key:O3})});if(e.screen!==!0&&e.screenAudio===!0)throw new ne({code:ee.INVALID_PARAMETER,message:ie({key:M3})});if(!ge(e.screen)&&e.screen===!0&&!this.isScreenShareSupported())throw new ne({code:ee.INVALID_OPERATION,message:ie({key:V3})})}}},eF={join:{name:"options",required:!0,type:xr,properties:{roomId:{required:!0,type:[wt,bt],allowEmpty:!1,validate:gx},role:{type:[bt],values:[kr,Qi]},privateMapKey:{type:[bt]}},validate:function(e){if(this.isJoined_)throw new ne({code:ee.INVALID_OPERATION,message:ie({key:DN})});if(this.checkDestroy(),$B.isJoined({userId:this.userId_,roomId:e.roomId,sdkAppId:this.sdkAppId_,client:this}))throw new ne({code:ee.INVALID_OPERATION,message:ie({key:y3,data:this.userId_})})}},publish:[{name:"stream",required:!0,instanceOf:pi,validate:function(e){if(!this.isJoined_)throw new ne({code:ee.INVALID_OPERATION,message:ie({key:VN})});if(this.mode_===Gu&&this.role_===Qi)throw new ne({code:ee.INVALID_OPERATION,message:ie({key:BN})});if(!e.getIsReadyToPublish())throw new ne({code:ee.INVALID_OPERATION,message:ie({key:FN})});if(this.notPublishWithoutH264Supported_)throw new ne({code:ee.NOT_SUPPORTED_H264,message:ie({key:mS})})}},{name:"options",type:xr,defaultValue:{isAuxiliary:!1},properties:{isAuxiliary:{type:on,defaultValue:!1,validate:function(){var e=arguments.length>0&&arguments[0]!==void 0&&arguments[0];if(e&&!gm())throw new ne({code:ee.NOT_SUPPORTED,message:ie({key:j3})});if(this.uplinkConnection_&&(e&&this.uplinkConnection_.isAuxStreamPublished||!e&&this.uplinkConnection_.isMainStreamPublished))throw new ne({code:ee.INVALID_OPERATION,message:ie({key:HN,data:e?pt:"local"})});var t=this.localScreenStream_||Se(this.connections_.values()).findIndex(function(n){return n.getTrackState().auxiliary})>=0;if(!this.enableMultiAuxStream_&&e&&t)throw new ne({code:ee.INVALID_OPERATION,message:ie({key:Z3})})}}}}],unpublish:{name:"stream",required:!0,instanceOf:pi,validate:function(e){if(e!==this.localStream_&&e!==this.localAuxStream_){if(this.localStream_||this.localAuxStream_)throw new ne({code:ee.INVALID_PARAMETER,message:ie({key:jN})});this.log_.warn("Client currently has no published stream, please call publish() first.")}}},subscribe:[{name:"stream",required:!0,instanceOf:Jf,validate:function(e){if(!e.getConnection())throw new ne({code:ee.INVALID_OPERATION,message:ie({key:$f})});if(this.notSubscribeWithoutH264Supported_)throw new ne({code:ee.NOT_SUPPORTED_H264,message:ie({key:vS})})}},{name:"options",type:xr,properties:{audio:{type:on},video:{type:on},smallVideo:{type:on}},validate:function(e){var t=e.audio,n=e.video,i=e.smallVideo;if(t===!1&&n===!1&&(ge(i)||i===!1))throw new ne({code:ee.INVALID_OPERATION,message:ie({key:W3})})}}],unsubscribe:{name:"stream",required:!0,instanceOf:Jf,validate:function(e){if(!e.getConnection())throw new ne({code:ee.INVALID_OPERATION,message:ie({key:$f})})}},switchRole:{name:"role",required:!0,values:[kr,Qi],validate:function(){if(this.mode_!==Gu)throw new ne({code:ee.INVALID_PARAMETER,message:ie({key:zN})});if(!this.isJoined_)throw new ne({code:ee.INVALID_OPERATION,message:ie({key:WN})})}},startPublishCDNStream:{name:"options",required:!1,properties:{streamId:{type:bt,validate:_x},streamType:{type:bt,values:["main","auxiliary"]},appId:{type:wt,allowEmpty:!1},bizId:{type:wt,allowEmpty:!1},url:{type:bt,allowEmpty:!1}},validate:function(){if(this.isDestroyed_)throw new ne({code:ee.INVALID_OPERATION,message:ie({key:Zf,data:{funName:"startPublishCDNStream"}})})}},startMixTranscode:{name:"config",required:!0,type:xr,properties:{mode:{type:bt,values:["preset-layout","manual"]},streamId:{type:bt,validate:_x},videoWidth:{type:wt,notLessThanZero:!0},videoHeight:{type:wt,notLessThanZero:!0},videoBitrate:{type:wt,notLessThanZero:!0,allowEmpty:!1},videoFramerate:{type:wt,validate:function(e,t,n,i){if(e<=0||e>30)throw new ne({code:ee.INVALID_PARAMETER,message:ie({key:x3,link:{className:i,fnName:n}})})}},videoGOP:{type:wt,validate:function(e,t,n,i){if(e<1||e>8)throw new ne({code:ee.INVALID_PARAMETER,message:ie({key:I3,link:{className:i,fnName:n}})})}},audioSampleRate:{type:wt,notLessThanZero:!0},audioBitrate:{type:wt,validate:function(e,t,n,i){if(e<32||e>192)throw new ne({code:ee.INVALID_PARAMETER,message:ie({key:w3,link:{className:i,fnName:n}})})}},audioChannels:{type:wt,values:[1,2]},backgroundColor:{type:wt},backgroundImage:{type:bt},mixUsers:{required:!0,type:$M,arrayItem:{require:!0,type:xr,properties:{userId:{required:!0,type:bt},roomId:{type:[bt,wt],validate:gx},pureAudio:{type:on},width:{type:wt,notLessThanZero:!0},height:{type:wt,notLessThanZero:!0},locationX:{type:wt,notLessThanZero:!0},locationY:{type:wt,notLessThanZero:!0},zOrder:{type:wt},streamType:{type:bt,values:["main","auxiliary"]},renderMode:{type:wt,values:[0,1,2,4]}}}}},validate:function(e,t,n,i,r){var o=0,c=0,a=e.mixUsers,s=[];if(a.forEach(function(l,u){if(s.push(l.userId),!l.pureAudio){if(!l.zOrder||l.zOrder<1||l.zOrder>15)throw new ne({code:ee.INVALID_PARAMETER,message:ie({key:C3,data:"config.mixUsers[".concat(u,"].zOrder"),link:{className:i,fnName:n}})});l.width+l.locationX>o&&(o=l.width+l.locationX),l.height+l.locationY>c&&(c=l.height+l.locationY)}}),s.indexOf(this.getUserId())<0)throw new ne({code:ee.INVALID_PARAMETER,message:ie({key:E3,link:{className:i,fnName:n}})});if(e.videoWidth<o||e.videoHeight<c)throw new ne({code:ee.INVALID_PARAMETER,message:ie({key:R3,link:{className:i,fnName:n}})})}},sendSEIMessage:[{name:"buffer",required:!0,instanceOf:ArrayBuffer,validate:function(e){if(!ym)throw new ne({code:ee.NOT_SUPPORTED,message:ie({key:_S})});if(!this.enableSEI_)throw new ne({code:ee.INVALID_OPERATION,message:ie({key:q3})});if(e.byteLength>1e3)throw new ne({code:ee.INVALID_PARAMETER,message:ie({key:K3,data:e.byteLength})});if(e.byteLength===0)throw new ne({code:ee.INVALID_PARAMETER,message:ie({key:J3})});if(!this.uplinkConnection_||!this.localStream_)throw new ne({code:ee.INVALID_PARAMETER,message:ie({key:Y3})});if(!this.localStream_.hasVideo())throw new ne({code:ee.INVALID_OPERATION,message:ie({key:X3})});var t=this.uplinkConnection_.isH264;if(!t)throw new ne({code:ee.NOT_SUPPORTED,message:ie({key:_S,data:t})})}},{name:"options",type:xr,properties:{seiPayloadType:{type:wt,values:[5,243]}}}]},tF={switchDevice:[{name:"type",required:!0,type:bt,values:[Ee,xe]},{name:"deviceId",required:!0,type:bt,validate:function(){if(this.screen_&&!this.audio_||this.audioSource_||this.videoSource_)throw new ne({code:ee.INVALID_OPERATION,message:ie({key:a3})});if(this.publishState_===Qs)throw new ne({code:ee.INVALID_OPERATION,message:ie({key:o3})});if(!_m())throw new ne({code:ee.NOT_SUPPORTED,message:ie({key:U3})})}}],setAudioCaptureVolume:{name:"volume",type:wt}},nF={play:[{name:"elementId",required:!0,type:[bt,"HTMLDivElement"],validate:function(e,t,n){if(Bt(e)){var i=document.getElementById(e);if(!i)throw new ne({code:ee.INVALID_PARAMETER,message:ie({key:A3,data:{key:t,fnName:n}})});if(!(i instanceof HTMLDivElement))throw new ne({code:ee.INVALID_PARAMETER,message:ie({key:P3,data:{key:t,fnName:n,type:yi(i)}})})}}},{name:"options",type:xr,properties:{objectFit:{type:bt,values:["contain","cover","fill"]},muted:{type:on},mirror:{type:on}}}],addTrack:{name:Of,instanceOf:window.MediaStreamTrack,validate:function(e){if(this.isAddingTrack_)throw new ne({code:ee.INVALID_OPERATION,message:ie({key:c3})});if(this.isRemovingTrack_)throw new ne({code:ee.INVALID_OPERATION,message:ie({key:u3})});if(this.publishState_===Qs)throw new ne({code:ee.INVALID_OPERATION,message:ie({key:l3})});var t=this.getMediaStream();if(!t)throw new ne({code:ee.INVALID_OPERATION,message:ie({key:hS})});if(e.kind===Ee&&t.getAudioTracks().length>0||e.kind===xe&&t.getVideoTracks().length>0)throw new ne({code:ee.INVALID_OPERATION,message:ie({key:d3})});if(!ki()&&!fl())throw new ne({code:ee.NOT_SUPPORTED,message:ie({key:tp,data:vb})})}},removeTrack:{name:Of,instanceOf:window.MediaStreamTrack,validate:function(e){if(this.isAddingTrack_)throw new ne({code:ee.INVALID_OPERATION,message:ie({key:f3})});if(this.isRemovingTrack_)throw new ne({code:ee.INVALID_OPERATION,message:ie({key:p3})});if(this.publishState_===Qs)throw new ne({code:ee.INVALID_OPERATION,message:ie({key:m3})});var t=this.getMediaStream();if(!t)throw new ne({code:ee.INVALID_OPERATION,message:ie({key:hS})});if(t.getTracks().indexOf(e)===-1)throw new ne({code:ee.INVALID_PARAMETER,message:ie({key:v3})});if(!ki()){if(t.getTracks().length===1)throw new ne({code:ee.INVALID_OPERATION,message:ie({key:g3})});if(e.kind===Ee)throw new ne({code:ee.INVALID_PARAMETER,message:ie({key:h3})});if(!fl())throw new ne({code:ee.NOT_SUPPORTED,message:ie({key:tp,data:gb})})}}},replaceTrack:{name:Of,instanceOf:window.MediaStreamTrack,validate:function(e){var t=this.getMediaStream();if(!t)throw new ne({code:ee.INVALID_OPERATION,message:ie({key:s3})});if(this.publishState_===Qs)throw new ne({code:ee.INVALID_OPERATION,message:ie({key:dS})});if(e.kind===Ee&&t.getAudioTracks().length<=0||e.kind===xe&&t.getVideoTracks().length<=0)throw new ne({code:ee.INVALID_PARAMETER,message:ie({key:_3,data:e})});if(!_m())throw new ne({code:ee.NOT_SUPPORTED,message:ie({key:tp,data:MM})})}}},Xt={TRTC:ZB,CLIENT:eF,LOCAL_STREAM:tF,STREAM:nF};function Jl(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return function(i,r,o){var c=o.value;return o.value=function(){for(var a=arguments.length,s=new Array(a),l=0;l<a;l++)s[l]=arguments[l];return yx.call(this,t,s,r,this.name_),c.apply(this,s)},o}}function xn(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return function(i,r,o){var c=o.value;return o.value=H(f().mark(function a(){var s,l,u,p=arguments;return f().wrap(function(k){for(;;)switch(k.prev=k.next){case 0:for(s=p.length,l=new Array(s),u=0;u<s;u++)l[u]=p[u];return yx.call(this,t,l,r,this.name_),k.abrupt("return",c.apply(this,l));case 3:case"end":return k.stop()}},a,this)})),o}}function yx(e,t,n,i){try{for(var r=0;r<e.length;r++)Uv.call(this,{rule:e[r],value:t[r],key:e[r].name,fnName:n,className:i})}catch(o){throw _e.error(o),o}}function Uv(e){var t=this,n=e.rule,i=e.value,r=e.key,o=e.fnName,c=e.className;if(ge(i)){if(n.required)throw new ne({code:ee.INVALID_PARAMETER,message:ie({key:vN,data:{key:r,rule:n,fnName:o,value:i},link:{className:c,fnName:o}})});if(ge(n.defaultValue))return;i=n.defaultValue}if(Array.isArray(n.type)){if(!n.type.map(function(p){return p.toLowerCase()}).includes(yi(i)))throw new ne({code:ee.INVALID_PARAMETER,message:ie({key:aS,data:{key:r,rule:n,fnName:o,value:i},link:{className:c,fnName:o}})})}else if(!ge(n.type)&&yi(i)!==n.type)throw new ne({code:ee.INVALID_PARAMETER,message:ie({key:aS,data:{key:r,rule:n,fnName:o,value:i},link:{className:c,fnName:o}})});if(n.allowEmpty===!1){var a=er(i)&&(i===0||Number.isNaN(i)),s=Bt(i)&&i.trim()==="";if(a||s)throw new ne({code:ee.INVALID_PARAMETER,message:ie({key:gN,data:{key:r,rule:n,fnName:o,value:i},link:{className:c,fnName:o}})})}if(n.notLessThanZero&&er(i)&&i<0)throw new ne({code:ee.INVALID_PARAMETER,message:ie({key:T3,data:{key:r,rule:n,fnName:o,value:i},link:{className:c,fnName:o}})});if(Bt(n.instanceOf)){if(!i||i.name_!==n.instanceOf)throw new ne({code:ee.INVALID_PARAMETER,message:ie({key:oS,data:{key:r,rule:n,fnName:o,value:i},link:{className:c,fnName:o}})})}else if(un(n.instanceOf)&&!(i instanceof n.instanceOf))throw new ne({code:ee.INVALID_PARAMETER,message:ie({key:oS,data:{key:r,rule:n,fnName:o,value:i},link:{className:c,fnName:o}})});if(n.values&&!n.values.includes(i))throw new ne({code:ee.INVALID_PARAMETER,message:ie({key:_N,data:{key:r,rule:n,fnName:o,value:i},link:{className:c,fnName:o}})});var l=n.properties;_i(l)&&OS(i)&&Object.keys(l).forEach(function(p){Uv.call(t,{rule:l[p],value:i&&i[p],key:"".concat(r,".").concat(p),fnName:o,className:c})});var u=n.arrayItem;_i(u)&&uo(i)&&i.forEach(function(p,k){Uv.call(t,{rule:u,value:p,key:"".concat(r,"[").concat(k,"]"),fnName:o,className:c})}),un(n.validate)&&n.validate.call(this,i,r,o,c,this)}Oe({target:"Number",stat:!0},{isNaN:function(e){return e!=e}});var rF=Oe,iF=ue,aF=ih.f;rF({target:"Object",stat:!0,forced:iF(function(){return!Object.getOwnPropertyNames(1)})},{getOwnPropertyNames:aF});var bx,Sc,oF=Yk;function Lo(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{retries:5,timeout:2e3};return function(t,n,i){var r=rc({retryFunction:i.value,settings:e,onError:e.onError,onRetrying:e.onRetrying,onRetryFailed:e.onRetryFailed});return i.value=function(){for(var o=arguments.length,c=new Array(o),a=0;a<o;a++)c[a]=arguments[a];return r.apply(this,c)},i}}Oe({target:"Array",stat:!0,forced:!mu(function(e){Array.from(e)})},{from:oF});var Sx,kx,Tx,sr,pa=5e3,sF={msg_user_info:0,uint32_video_avg_fps:0,uint32_video_width:0,uint32_video_height:0,uint32_video_avg_bitrate:0,uint32_video_block_time:0,uint32_video_play_time:0,uint32_audio_block_time:0,uint32_audio_play_time:0,uint32_audio_play_db:0,uint32_avg_down_loss:0,uint32_stream_type:0,uint32_video_render_first:0,uint32_video_block_count:0,uint32_audio_block_count:0,uint32_audio_bitrate:0,uint32_video_black_screen_subjective:0,uint32_audio_recv_bitrate:0,uint32_video_external_block_time:0},Vv=Ie(function e(t){X(this,e),this.str_identifier=String(t.userId),this.uint64_tinyid=Number(t.tinyId),this.uint32_role=t.role}),cF=(bx=Lo({timeout:500,retries:3}),Sc=function(){function e(r){var o=this;X(this,e),this.frameWorkType_=r.frameWorkType||30,this.component_=r.component||0,this.client_=r.client,this.keyPrefix_="key_point",this.storageKey_="".concat(this.keyPrefix_,"_").concat(this.client_.getUserId()),this.log_=_e.createLogger({id:"kpm|"+this.client_.getUserId(),userId:this.client_.getUserId(),sdkAppId:this.client_.getSDKAppId()}),Object.getOwnPropertyNames(this.__proto__).forEach(function(c){c.startsWith("handle")&&un(o[c])&&(o[c]=function(a){var s=a.fn,l=a.context;return H(f().mark(function u(){var p,k,x,E=arguments;return f().wrap(function(I){for(;;)switch(I.prev=I.next){case 0:for(I.prev=0,p=E.length,k=new Array(p),x=0;x<p;x++)k[x]=E[x];return I.next=4,s.apply(l||this,k);case 4:return I.abrupt("return",I.sent);case 7:I.prev=7,I.t0=I.catch(0),_e.error("".concat(s.name,"() error observed ")+I.t0);case 10:case"end":return I.stop()}},u,this,[[0,7]])}))}({fn:o[c],context:o}))}),this.initData(),this.installEvents(),this.intervalId_=_t.run(so,this.setStorage.bind(this),{delay:2e4})}var t,n,i;return Ie(e,[{key:"initData",value:function(){var r;this.firstPublishedUserList_=[],this.networkQuality_={totalUplinkRTT:0,totalUplinkLoss:0,count:0,totalDownlinkRTTAndLossMap:new Map},this.basicInfo={string_sdk_version:Fi,uint32_os_type:15,string_device_name:"",string_http_user_agent:navigator.userAgent,string_os_version:"",string_domain:location.host,uint32_avg_rtt:0,uint32_avg_up_loss:0,uint32_scene:((r=this.client_)===null||r===void 0?void 0:r.getMode())==="live"?1:0,uint32_joining_duration:0,uint32_networkType:Wf[Sp()],uint32_framework:this.frameWorkType_,uint32_component:this.component_},this.pathJoinRoom_={uint64_start_time:0,uint64_init_audio_start_time:0,uint64_init_audio_end_time:0,uint64_init_camera_start_time:0,uint64_init_camera_end_time:0,uint64_send_request_acc_ip_cmd_start_time:0,uint64_send_request_acc_ip_cmd_end_time:0,uint64_send_request_enter_room_cmd_start_time:0,uint64_send_request_enter_room_cmd_end_time:0,uint64_send_first_video_frame_time:0,uint64_recv_userlist_time:0,uint64_end_time:0,int32_init_audio_ret:0,int32_init_camera_ret:0,int32_send_request_acc_ip_cmd_ret:0,int32_send_request_enter_room_cmd_ret:0,int32_end_ret:0},this.pathLeaveRoom_={uint64_start_time:0,uint64_send_request_exit_room_cmd_start_time:0,uint64_send_request_exit_room_cmd_end_time:0,uint64_end_time:0,int32_send_request_exit_room_cmd_ret:0,int32_end_ret:0},this.pathMainVideoMap_=new Map,this.pathMainAudioMap_=new Map,this.pathAuxiliaryMap_=new Map,this.localStreamStats_={totalVideoBitrate:0,totalVideoFPS:0,totalVideoHeight:0,totalVideoWidth:0,totalAudioLevel:0,videoCount:0,audioLevelCount:0,publishStartTime:0,statsToReport:{uint32_audio_capture_db:0,uint32_video_big_capture_fps:0,uint32_video_big_bitrate:0,uint32_video_big_resolution:0}},this.remoteStreamStatsMap_=new Map}},{key:"installEvents",value:function(){Q.on(cl,this.handleJoinStart,this),Q.on(Lp,this.handleWSStart,this),Q.on(ul,this.handleWSEnd,this),Q.on(wp,this.handleJoinSendCMD,this),Q.on(Cp,this.handleJoinReceivedCMDResponce,this),Q.on(ho,this.handleJoinSuccess,this),Q.on(aa,this.handleJoinFailed,this),Q.on(Pp,this.handleReceivedPublishUserList,this),Q.on(dl,this.handleConnectionStateChanged,this),Q.on(Ep,this.handleLeaveStart,this),Q.on(fo,this.handleLeaveSuccess,this),Q.on(Rp,this.handleLeaveSendCMD,this),Q.on(Kp,this.handleSendSubscribeCMD,this),Q.on(ec,this.handleVideoPlaying,this),Q.on(Np,this.handleAudioPlaying,this),Q.on(Yp,this.handleNetworkQuality,this),Q.on(Ap,this.handleHeartbeatStats,this),Q.on(ll,this.handleRemoteStreamAdded,this),Q.on(Up,this.handleRemoteStreamSubscribeStart,this),Q.on(Ur,this.handleRemoteStreamSubscribed,this),Q.on(oa,this.handleRemoteStreamRemoved,this),Q.on(Gp,this.handleVideoLoadedData,this),Q.on(Hp,this.handlePlayStream,this),Q.on(Dp,this.handlePublishStart,this),Q.on(Vp,this.handleLocalStreamInitStart,this),Q.on(jp,this.handleLocalStreamInitEnd,this),Q.on(Bp,this.handleLocalStreamInitFailed,this)}},{key:"uninstallEvents",value:function(){Q.off(cl,this.handleJoinStart,this),Q.off(Lp,this.handleWSStart,this),Q.off(ul,this.handleWSEnd,this),Q.off(wp,this.handleJoinSendCMD,this),Q.off(Cp,this.handleJoinReceivedCMDResponce,this),Q.off(Pp,this.handleReceivedPublishUserList,this),Q.off(dl,this.handleConnectionStateChanged,this),Q.off(Ep,this.handleLeaveStart,this),Q.off(fo,this.handleLeaveSuccess,this),Q.off(ho,this.handleJoinSuccess,this),Q.off(aa,this.handleJoinFailed,this),Q.off(Rp,this.handleLeaveSendCMD,this),Q.off(Kp,this.handleSendSubscribeCMD,this),Q.off(ec,this.handleVideoPlaying,this),Q.off(Np,this.handleAudioPlaying,this),Q.off(Yp,this.handleNetworkQuality,this),Q.off(Ap,this.handleHeartbeatStats,this),Q.off(ll,this.handleRemoteStreamAdded,this),Q.off(Up,this.handleRemoteStreamSubscribeStart,this),Q.off(Ur,this.handleRemoteStreamSubscribed,this),Q.off(oa,this.handleRemoteStreamRemoved,this),Q.off(Gp,this.handleVideoLoadedData,this),Q.off(Hp,this.handlePlayStream,this),Q.off(Dp,this.handlePublishStart,this),Q.off(Vp,this.handleLocalStreamInitStart,this),Q.off(jp,this.handleLocalStreamInitEnd,this),Q.off(Bp,this.handleLocalStreamInitFailed,this)}},{key:"destroy",value:function(){this.uninstallEvents(),_t.clearTask(this.intervalId_),this.client_=null}},{key:"handleJoinStart",value:function(r){this.hitTest(r.client)&&this.pathJoinRoom_.uint64_start_time===0&&(this.pathJoinRoom_.uint64_start_time=Date.now(),this.checkStorage())}},{key:"handleWSStart",value:function(r){var o=r.client;this.hitTest(o)&&this.pathJoinRoom_.uint64_send_request_acc_ip_cmd_start_time===0&&(this.pathJoinRoom_.uint64_send_request_acc_ip_cmd_start_time=Date.now())}},{key:"handleWSEnd",value:function(r){var o=r.client,c=r.error;this.hitTest(o)&&this.pathJoinRoom_.uint64_send_request_acc_ip_cmd_end_time===0&&(this.pathJoinRoom_.uint64_send_request_acc_ip_cmd_end_time=Date.now(),c&&(this.pathJoinRoom_.int32_send_request_acc_ip_cmd_ret=c instanceof ne?Number(c.getExtraCode()||c.getCode()):ee.UNKNOWN,this.pathJoinRoom_.int32_end_ret=2))}},{key:"handleJoinSendCMD",value:function(r){this.hitTest(r.client)&&this.pathJoinRoom_.uint64_send_request_enter_room_cmd_start_time===0&&(this.pathJoinRoom_.uint64_send_request_enter_room_cmd_start_time=Date.now())}},{key:"handleJoinReceivedCMDResponce",value:function(r){this.hitTest(r.client)&&this.pathJoinRoom_.uint64_send_request_enter_room_cmd_end_time===0&&(this.pathJoinRoom_.uint64_send_request_enter_room_cmd_end_time=Date.now(),this.pathJoinRoom_.int32_send_request_enter_room_cmd_ret=r.code,r.code!==0&&(this.pathJoinRoom_.int32_end_ret=3))}},{key:"handleJoinSuccess",value:function(r){this.hitTest(r.client)&&this.pathJoinRoom_.uint64_end_time===0&&(this.pathJoinRoom_.uint64_end_time=Date.now(),this.pathJoinRoom_.int32_end_ret=0)}},{key:"handleJoinFailed",value:function(r){var o=r.client;this.hitTest(o)&&(this.pathJoinRoom_.uint64_end_time=Date.now(),this.pathJoinRoom_.int32_end_ret===0&&(this.pathJoinRoom_.int32_end_ret=3),this.prepareReport(),this.report())}},{key:"handleReceivedPublishUserList",value:function(r){this.hitTest(r.client)&&this.pathJoinRoom_.uint64_recv_userlist_time===0&&(this.pathJoinRoom_.uint64_recv_userlist_time=Date.now(),this.firstPublishedUserList_=r.data.data&&r.data.data.userList||[])}},{key:"handleConnectionStateChanged",value:function(r){var o=r.client,c=r.state,a=r.connection;if(this.hitTest(o)&&c===pn){this.client_.getUplinkConnection()===a&&this.pathJoinRoom_.uint64_send_first_video_frame_time===0&&this.localStreamStats_.publishStartTime>this.pathJoinRoom_.uint64_end_time&&this.localStreamStats_.publishStartTime-this.pathJoinRoom_.uint64_end_time<=100&&(this.pathJoinRoom_.uint64_send_first_video_frame_time=Date.now());var s=this.pathMainVideoMap_.get("".concat(a.getUserId(),"_").concat(gt));s&&s.statsToReport.uint64_pc_connected_time===0&&(s.statsToReport.uint64_pc_connected_time=Date.now())}}},{key:"handleLeaveStart",value:function(r){this.hitTest(r.client)&&(this.pathLeaveRoom_.uint64_start_time=Date.now())}},{key:"handleLeaveSuccess",value:function(r){this.hitTest(r.client)&&this.pathLeaveRoom_.uint64_end_time===0&&(this.pathLeaveRoom_.uint64_end_time=Date.now(),this.pathJoinRoom_.uint64_end_time!==0?this.basicInfo.uint32_joining_duration=this.pathLeaveRoom_.uint64_end_time-this.pathJoinRoom_.uint64_end_time:this.log_.warn("pathJoinRoom endTime is 0"),this.report())}},{key:"handleLeaveSendCMD",value:function(r){this.hitTest(r.client)&&(this.pathLeaveRoom_.uint64_send_request_exit_room_cmd_start_time=Date.now(),this.pathLeaveRoom_.uint64_send_request_exit_room_cmd_end_time=Date.now())}},{key:"handleRemoteStreamAdded",value:function(r){var o=r.client,c=r.stream;if(this.hitTest(o)){var a=c.getUserId(),s=c.getType(),l="".concat(a,"_").concat(s),u=this.remoteStreamStatsMap_.get(l);if(u)u.stream=c;else{var p={userId:a,totalVideoFPS:0,totalVideoBitrate:0,totalAudioLevel:0,totalAudioBitrate:0,totalLoss:0,audioCount:0,audioLevelCount:0,videoCount:0,networkQualityCount:0,streamAddedTime:Date.now(),subscribeStartTime:0,subscribedTime:0,playStreamTime:0,statsToReport:q({},sF),stream:c};p.statsToReport.msg_user_info=new Vv({userId:a,tinyId:c.getTinyId(),role:ao}),p.statsToReport.uint32_stream_type=s===gt?2:7,this.remoteStreamStatsMap_.set(l,p)}}}},{key:"handleRemoteStreamSubscribeStart",value:function(r){var o=r.client,c=r.stream;if(this.hitTest(o)){var a=c.getUserId(),s=c.getType(),l="".concat(a,"_").concat(s),u=this.remoteStreamStatsMap_.get(l);u&&u.subscribeStartTime===0&&(u.subscribeStartTime=Date.now())}}},{key:"handleSendSubscribeCMD",value:function(r){if(this.hitTest(r.client)){var o=new Vv(r),c=Date.now(),a="".concat(r.userId,"_").concat(gt);r.trackState.video&&r.subscribeState.video&&!this.pathMainVideoMap_.has(a)&&this.pathMainVideoMap_.set(a,{statsToReport:{msg_user_info:o,uint64_start_enter_time:this.pathJoinRoom_.uint64_start_time,uint64_render_first_frame_time:0,uint64_combine_first_frame_time:0,uint64_pc_connected_time:0},userId:r.userId,sendSubscribeCMDTime:c}),r.trackState.audio&&r.subscribeState.audio&&!this.pathMainAudioMap_.has(a)&&this.pathMainAudioMap_.set(a,{statsToReport:{msg_user_info:o,uint64_start_enter_time:this.pathJoinRoom_.uint64_start_time,uint64_play_first_frame_time:0},userId:r.userId,sendSubscribeCMDTime:c});var s="".concat(r.userId,"_").concat(Dt);r.trackState.auxiliary&&r.subscribeState.auxiliary&&!this.pathAuxiliaryMap_.has(s)&&this.pathAuxiliaryMap_.set(s,{sendSubscribeCMDTime:c})}}},{key:"handleRemoteStreamSubscribed",value:function(r){var o=r.client,c=r.stream;if(this.hitTest(o)){var a=c.getUserId(),s=c.getType(),l="".concat(a,"_").concat(s),u=this.remoteStreamStatsMap_.get(l);u&&u.subscribedTime===0&&(u.subscribedTime=Date.now(),u.stream=c)}}},{key:"handleRemoteStreamRemoved",value:function(r){var o=r.client,c=r.stream;if(this.hitTest(o)){var a=c.getUserId(),s=c.getType(),l=this.remoteStreamStatsMap_.get("".concat(a,"_").concat(s));l&&(l.stream=null)}}},{key:"handlePlayStream",value:function(r){var o=r.stream;if(o.isRemote()&&o.getConnection()&&this.hitTest(o.getConnection().getClient())){var c=o.getConnection().getUserId(),a="".concat(c,"_").concat(o.getType());if(this.remoteStreamStatsMap_.has(a)){var s=this.remoteStreamStatsMap_.get(a);s.playStreamTime===0&&(s.playStreamTime=Date.now())}}}},{key:"handleVideoLoadedData",value:function(r){var o=r.stream;if(o.isRemote()&&o.getConnection()&&this.hitTest(o.getConnection().getClient())){var c=o.getConnection().getUserId(),a="".concat(c,"_").concat(o.getType());if(this.pathMainVideoMap_.has(a)){var s=this.pathMainVideoMap_.get(a);s.statsToReport.uint64_combine_first_frame_time===0&&(s.statsToReport.uint64_combine_first_frame_time=Date.now())}}}},{key:"handleVideoPlaying",value:function(r){var o=r.stream;if(o.isRemote()&&o.getConnection()&&this.hitTest(o.getConnection().getClient())){var c=o.getConnection().getUserId(),a="".concat(c,"_").concat(o.getType()),s=Date.now();if(this.pathMainVideoMap_.has(a)){var l=this.pathMainVideoMap_.get(a);if(l.statsToReport.uint64_render_first_frame_time===0&&(l.statsToReport.uint64_render_first_frame_time=s),this.remoteStreamStatsMap_.has(a)){var u=this.remoteStreamStatsMap_.get(a),p=u.statsToReport,k=u.playStreamTime,x=u.subscribedTime;p.uint32_video_render_first===0&&k-x<=100&&(p.uint32_video_render_first=s-l.sendSubscribeCMDTime)}}if(o.getType()===Dt&&this.pathAuxiliaryMap_.has(a)&&this.remoteStreamStatsMap_.has(a)){var E=this.remoteStreamStatsMap_.get(a),I=E.statsToReport,m=E.playStreamTime,T=E.subscribedTime;I.uint32_video_render_first===0&&m-T<=100&&(I.uint32_video_render_first=s-this.pathAuxiliaryMap_.get(a).sendSubscribeCMDTime)}}}},{key:"handleAudioPlaying",value:function(r){if(r.stream.isRemote()&&r.stream.getConnection()&&this.hitTest(r.stream.getConnection().getClient())){var o=r.stream.getConnection().getUserId(),c="".concat(o,"_").concat(r.stream.getType());if(this.pathMainAudioMap_.has(c)){var a=this.pathMainAudioMap_.get(c);a.statsToReport.uint64_play_first_frame_time===0&&(a.statsToReport.uint64_play_first_frame_time=Date.now())}}}},{key:"handleNetworkQuality",value:function(r){var o=this;this.hitTest(r.client)&&(this.networkQuality_.totalUplinkLoss+=r.uplinkLoss,this.networkQuality_.totalUplinkRTT+=r.uplinkRTT,this.networkQuality_.count++,r.downlinkLossAndRTTMap.forEach(function(c){var a=c.rtt,s=c.loss,l=c.userId,u=o.networkQuality_.totalDownlinkRTTAndLossMap.get(l);u?(u.totalRTT+=a,u.totalLoss+=s,u.count++):o.networkQuality_.totalDownlinkRTTAndLossMap.set(l,{totalRTT:a,totalLoss:s,count:1})}))}},{key:"handleHeartbeatStats",value:function(r){var o=this;if(this.hitTest(r.client)){var c=r.stats,a=c.msg_up_stream_info,s=c.msg_down_stream_info;if(a.msg_video_status[0]){var l=a.msg_video_status[0],u=l.uint32_video_codec_bitrate,p=l.uint32_video_enc_fps,k=l.uint32_video_width,x=l.uint32_video_height;this.localStreamStats_.totalVideoBitrate+=u,this.localStreamStats_.totalVideoFPS+=p,this.localStreamStats_.totalVideoWidth+=k,this.localStreamStats_.totalVideoHeight+=x,this.localStreamStats_.videoCount++}if(a.msg_audio_status){var E=a.msg_audio_status.audioLevel;Math.floor(100*E)>0&&(this.localStreamStats_.totalAudioLevel+=E,this.localStreamStats_.audioLevelCount++)}s.forEach(function(I){var m=I.msg_user_info,T=I.msg_audio_status,v=I.msg_video_status,C=m.str_identifier;if(v.forEach(function(_){var b=_.uint32_video_stream_type===2,R=_.uint32_video_stream_type===7,P="".concat(C,"_").concat(b?gt:Dt);if(o.remoteStreamStatsMap_.has(P)){var V,S,h=o.remoteStreamStatsMap_.get(P);(b&&(V=h.stream)!==null&&V!==void 0&&V.isMainVideoSubscribed||R&&(S=h.stream)!==null&&S!==void 0&&S.isAuxVideoSubscribed)&&(h.totalVideoFPS+=_.uint32_video_receive_fps,h.totalVideoBitrate+=_.uint32_video_codec_bitrate,h.videoCount++,h.statsToReport.uint32_video_width===0&&(h.statsToReport.uint32_video_width=_.uint32_video_width),h.statsToReport.uint32_video_height===0&&(h.statsToReport.uint32_video_height=_.uint32_video_height))}}),T){var O="".concat(C,"_").concat(gt);if(o.remoteStreamStatsMap_.has(O)){var N,j=o.remoteStreamStatsMap_.get(O);(N=j.stream)!==null&&N!==void 0&&N.isMainAudioSubscribed&&(j.totalAudioBitrate+=T.uint32_audio_codec_bitrate,j.audioCount++,Math.floor(100*T.audioLevel)>0&&(j.totalAudioLevel+=T.audioLevel,j.audioLevelCount++))}}})}}},{key:"handlePublishStart",value:function(r){var o=r.client;this.hitTest(o)&&this.localStreamStats_.publishStartTime===0&&(this.localStreamStats_.publishStartTime=Date.now())}},{key:"handleLocalStreamInitStart",value:function(r){var o=r.audio,c=r.video;o&&this.pathJoinRoom_.uint64_init_audio_start_time===0&&(this.pathJoinRoom_.uint64_init_audio_start_time=Date.now()),c&&this.pathJoinRoom_.uint64_init_camera_start_time===0&&(this.pathJoinRoom_.uint64_init_camera_start_time=Date.now())}},{key:"handleLocalStreamInitEnd",value:function(r){var o=r.audio,c=r.video;o&&this.pathJoinRoom_.uint64_init_audio_end_time===0&&(this.pathJoinRoom_.uint64_init_audio_end_time=Date.now()),c&&this.pathJoinRoom_.uint64_init_camera_end_time===0&&(this.pathJoinRoom_.uint64_init_camera_end_time=Date.now())}},{key:"handleLocalStreamInitFailed",value:function(r){var o=r.audio,c=r.video,a=r.error,s=a instanceof ne?a.getExtraCode()||a.getCode():{NotFoundError:1,NotAllowedError:2,NotReadableError:3,OverConstrainedError:4,AbortError:5}[a.name]||ee.UNKNOWN;o&&this.pathJoinRoom_.uint64_init_audio_end_time===0&&(this.pathJoinRoom_.int32_init_audio_ret=s,this.pathJoinRoom_.uint64_init_audio_end_time=Date.now()),c&&this.pathJoinRoom_.uint64_init_camera_end_time===0&&(this.pathJoinRoom_.int32_init_camera_ret=s,this.pathJoinRoom_.uint64_init_camera_end_time=Date.now())}},{key:"hasVideoFlag",value:function(r){return this.firstPublishedUserList_.findIndex(function(o){return o.userId===r&&1&o.flag})>=0}},{key:"hasAudioFlag",value:function(r){return this.firstPublishedUserList_.findIndex(function(o){return o.userId===r&&8&o.flag})>=0}},{key:"hasAuxFlag",value:function(r){return this.firstPublishedUserList_.findIndex(function(o){return o.userId===r&&4&o.flag})>=0}},{key:"hitTest",value:function(r){return r===this.client_}},{key:"checkStorage",value:(i=H(f().mark(function r(){var o;return f().wrap(function(c){for(;;)switch(c.prev=c.next){case 0:if(c.prev=0,!(o=_o.getItem(this.storageKey_))){c.next=6;break}return c.next=5,this.upload(o);case 5:_o.deleteItem(this.storageKey_);case 6:c.next=11;break;case 8:c.prev=8,c.t0=c.catch(0),this.log_.warn(c.t0);case 11:case"end":return c.stop()}},r,this,[[0,8]])})),function(){return i.apply(this,arguments)})},{key:"setStorage",value:function(){this.prepareReport();var r=this.getReportData();r.msg_path_enter_room.uint64_start_time!==0&&_o.setItem(this.storageKey_,r)}},{key:"prepareReport",value:function(){var r=this;if(this.networkQuality_.count>0&&(this.basicInfo.uint32_avg_rtt=Math.floor(this.networkQuality_.totalUplinkRTT/this.networkQuality_.count),this.basicInfo.uint32_avg_up_loss=Math.floor(this.networkQuality_.totalUplinkLoss/this.networkQuality_.count)),this.localStreamStats_.videoCount>0){this.localStreamStats_.statsToReport.uint32_video_big_capture_fps=Math.floor(this.localStreamStats_.totalVideoFPS/this.localStreamStats_.videoCount),this.localStreamStats_.statsToReport.uint32_video_big_bitrate=Math.floor(this.localStreamStats_.totalVideoBitrate/this.localStreamStats_.videoCount);var o=Math.floor(this.localStreamStats_.totalVideoWidth/this.localStreamStats_.videoCount),c=Math.floor(this.localStreamStats_.totalVideoHeight/this.localStreamStats_.videoCount);this.localStreamStats_.statsToReport.uint32_video_big_resolution=o<<16|c}this.localStreamStats_.audioLevelCount>0&&(this.localStreamStats_.statsToReport.uint32_audio_capture_db=Math.floor(this.localStreamStats_.totalAudioLevel/this.localStreamStats_.audioLevelCount*100)),this.remoteStreamStatsMap_.forEach(function(a,s){var l=a.userId;if(r.networkQuality_.totalDownlinkRTTAndLossMap.has(l)){var u=r.networkQuality_.totalDownlinkRTTAndLossMap.get(l),p=u.totalLoss,k=u.count;a.statsToReport.uint32_avg_down_loss=Math.floor(p/k)}a.videoCount>0&&(a.statsToReport.uint32_video_avg_fps=Math.floor(a.totalVideoFPS/a.videoCount),a.statsToReport.uint32_video_avg_bitrate=Math.floor(a.totalVideoBitrate/a.videoCount)),a.audioCount>0&&(a.statsToReport.uint32_audio_recv_bitrate=a.statsToReport.uint32_audio_bitrate=Math.floor(a.totalAudioBitrate/a.audioCount)),a.audioLevelCount>0&&(a.statsToReport.uint32_audio_play_db=Math.floor(a.totalAudioLevel/a.audioLevelCount*100));var x=r.client_.getCallDurationCalculator();x&&(a.statsToReport.uint32_audio_play_time=x.getDuration(s,Ee),a.statsToReport.uint32_video_play_time=x.getDuration(s,xe)),a.statsToReport.uint32_video_render_first=Math.min(a.statsToReport.uint32_video_render_first,pa);var E=r.client_.getBadCaseDetector();if(E){var I=E.getDataFreezeDuration(s),m=I.dataFreeze,T=I.count,v=E.getRenderFreezeDuration(s).renderFreeze;a.statsToReport.uint32_video_block_count=T,a.statsToReport.uint32_video_block_time=Math.min(m,a.statsToReport.uint32_video_play_time),a.statsToReport.uint32_video_external_block_time=Math.min(v,a.statsToReport.uint32_video_play_time),E.isBlackStream(s)&&a.statsToReport.uint32_video_avg_fps===0?a.statsToReport.uint32_video_black_screen_subjective=1:a.statsToReport.uint32_video_black_screen_subjective=0}(a.subscribeStartTime===0||a.subscribeStartTime-a.streamAddedTime>100||a.playStreamTime===0)&&(r.pathMainAudioMap_.delete(s),r.pathMainVideoMap_.delete(s),a.statsToReport.uint32_video_render_first=0)}),this.pathMainAudioMap_.forEach(function(a,s){r.hasAudioFlag(a.userId)?a.statsToReport.uint64_play_first_frame_time-a.statsToReport.uint64_start_enter_time>pa&&(a.statsToReport.uint64_play_first_frame_time=a.statsToReport.uint64_start_enter_time+pa):r.pathMainAudioMap_.delete(s)}),this.pathMainVideoMap_.forEach(function(a,s){r.hasVideoFlag(a.userId)?a.statsToReport.uint64_render_first_frame_time-a.statsToReport.uint64_start_enter_time>pa&&(a.statsToReport.uint64_render_first_frame_time=a.statsToReport.uint64_start_enter_time+pa):r.pathMainVideoMap_.delete(s)}),this.pathJoinRoom_.uint64_end_time-this.pathJoinRoom_.uint64_start_time>pa&&(this.pathJoinRoom_.uint64_end_time=this.pathJoinRoom_.uint64_start_time+pa)}},{key:"getReportData",value:function(){var r=this.client_.getSignalInfo();return{uint32_sdk_app_id:Number(this.client_.getSDKAppId()),msg_user_info:new Vv({userId:this.client_.getUserId(),tinyId:this.client_.getTinyId(),role:this.client_.getRole()===kr?ao:Nf}),msg_basic_info:this.basicInfo,uint32_acc_ip:Tp(r.relayIp),uint32_client_ip:Tp(r.clientIp,"small"),uint32_acc_port:0,uint64_timestamp:Date.now(),uint32_seq:Math.floor(Math.random()*Math.pow(2,31)),msg_path_enter_room:this.pathJoinRoom_,msg_path_exit_room:this.pathLeaveRoom_,msg_path_recv_video:Se(this.pathMainVideoMap_.values()).map(function(o){return o.statsToReport}),msg_quality_statistics:Se(this.remoteStreamStatsMap_.values()).map(function(o){return o.statsToReport}),str_room_name:String(this.client_.getRoomId()),msg_path_recv_audio:Se(this.pathMainAudioMap_.values()).map(function(o){return o.statsToReport}),uint32_info_client_ip:Tp(r.clientIp,"small"),error_code:[],msg_local_statistics:this.localStreamStats_.statsToReport,msg_function_state:Ei.getStateArray()}}},{key:"report",value:(n=H(f().mark(function r(){var o;return f().wrap(function(c){for(;;)switch(c.prev=c.next){case 0:return c.prev=0,o=this.getReportData(),c.next=4,this.upload(o);case 4:_o.deleteItem(this.storageKey_),Ei.clearStateArray(),this.initData(),c.next=12;break;case 9:c.prev=9,c.t0=c.catch(0),this.log_.warn(c.t0);case 12:case"end":return c.stop()}},r,this,[[0,9]])})),function(){return n.apply(this,arguments)})},{key:"upload",value:(t=H(f().mark(function r(o){var c,a,s;return f().wrap(function(l){for(;;)switch(l.prev=l.next){case 0:if(!(ta||o.msg_path_enter_room.uint64_start_time===0||[Kf,Kb,Yb].findIndex(function(u){return u===location.host})>=0)){l.next=2;break}return l.abrupt("return");case 2:return c=Number(this.client_.getSDKAppId()),a=al(c,FM),l.next=6,sl({url:a,body:JSON.stringify(o)});case 6:if((s=l.sent).data==="ok"){l.next=9;break}throw"key point upload failed: ".concat(s.data);case 9:case"end":return l.stop()}},r,this)})),function(r){return t.apply(this,arguments)})}]),e}(),Y(Sc.prototype,"upload",[bx],Object.getOwnPropertyDescriptor(Sc.prototype,"upload"),Sc.prototype),Sc),Ei=function(){function e(){X(this,e)}return Ie(e,null,[{key:"handleFunctionState",value:function(t){var n,i,r,o,c=t.className,a=t.fnName,s=t.params;if(!(ta||[Kf,Kb,Yb].findIndex(function(k){return k===location.host})>=0)){var l,u=[];if(c)switch(a){case"createClient":(n=s[0])!==null&&n!==void 0&&n.mode&&u.push("".concat(c,".").concat(a,".").concat(s[0].mode)),(i=s[0])!==null&&i!==void 0&&i.useStringRoomId?u.push("".concat(c,".").concat(a,".stringRoomId")):u.push("".concat(c,".").concat(a,".intRoomId")),(r=s[0])!==null&&r!==void 0&&r.autoSubscribe?u.push("".concat(c,".").concat(a,".autoSubscribe")):u.push("".concat(c,".").concat(a,".manualSubscribe"));break;case"publish":(o=s[1])!==null&&o!==void 0&&o.isAuxiliary?u.push("".concat(c,".").concat(a,".isAuxiliary")):u.push("".concat(c,".").concat(a));break;case"setAudioProfile":case"setVideoProfile":case"setScreenProfile":case"setVideoContentHint":Bt(s[0])&&u.push("".concat(c,".").concat(a,".").concat(s[0]));break;default:u.push("".concat(c,".").concat(a))}else u.push(a);for(var p=0;p<u.length;p++){if(!(l=uN[u[p]]))return;this.stateMap.has(l)?this.stateMap.get(l).int32_call_times+=1:this.stateMap.set(l,{int32_id:l,int32_call_times:1})}}}},{key:"getStateArray",value:function(){return Array.from(this.stateMap.values())}},{key:"clearStateArray",value:function(){this.stateMap.clear()}}]),e}();function St(e){return function(t,n,i){var r=i.value;return i.value=function(){for(var o=arguments.length,c=new Array(o),a=0;a<o;a++)c[a]=arguments[a];try{e||(e=this.name_),Ei.handleFunctionState({className:e,fnName:n,params:c}),e=void 0}catch(s){this.log_.info(s)}return r.apply(this,c)},i}}$e(Ei,"stateMap",new Map);var xx=(Sx=xn.apply(void 0,Se(Xt.STREAM.play)),kx=St(),Tx=St(),sr=function(){function e(c){X(this,e),this.name_=iN,this.userId_=c.userId,this.isRemote_=c.isRemote,this.type_=c.type,this.log_=_e.createLogger({id:"s".concat(c.seq?c.seq:"","|").concat(this.userId_),userId:ge(c.client)?void 0:c.client.getUserId(),sdkAppId:ge(c.client)?void 0:c.client.getSDKAppId(),isLocal:!this.isRemote_,type:this.isRemote_?this.type_:""}),this.client_=null,ge(c.client)||(this.client_=c.client),this.mediaStream_=null,this.div_=null,this.isPlaying_=!1,this.connection_=null,this.audioPlayer_=null,this.videoPlayer_=null,this.muted_=!1,this.objectFit_="cover",this.mirror_=!1,this.id_="xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(a){var s=16*Math.random()|0;return(a=="x"?s:3&s|8).toString(16)}),this.audioOutputDeviceId_=0,this.audioVolume_=1,this.emitter_=BS(new bi,this.name_),this.connectionState_=an,this.installEvents(),ge(c.mirror)||this.log_.warn('TRTC.createStream "mirror" option was deprecated since v4.12.1\uFF0Cplease use localStream.play to set up preview mirror. refer to '.concat(oo,"/en/LocalStream.html#play. TRTC.createStream \u63A5\u53E3\u7684 mirror \u9009\u9879\u4ECE v4.12.1 \u5F00\u59CB\u88AB\u5E9F\u5F03\uFF0C\u8BF7\u4F7F\u7528 localStream.play \u8BBE\u7F6E\u672C\u5730\u6D41\u9884\u89C8\u955C\u50CF\uFF0C\u53C2\u8003\u6587\u6863\uFF1A").concat(oo,"/zh-cn/LocalStream.html#play\u3002"))}var t,n,i,r,o;return Ie(e,[{key:"installEvents",value:function(){Q.on(nc,this.restartPlayback,this)}},{key:"uninstallEvents",value:function(){Q.off(nc,this.restartPlayback,this)}},{key:"getType",value:function(){return this.type_}},{key:"getLogger",value:function(){return this.log_}},{key:"isSubscribed",get:function(){return this.type_===gt&&this.connection_.isMainStreamSubscribed||this.type_===Dt&&this.connection_.isAuxStreamSubscribed}},{key:"isMainVideoSubscribed",get:function(){var c=this.getSubscribedState();return this.type_===gt&&c&&c.video}},{key:"isMainAudioSubscribed",get:function(){var c=this.getSubscribedState();return this.type_===gt&&c&&c.audio}},{key:"isAuxVideoSubscribed",get:function(){var c=this.getSubscribedState();return this.type_===Dt&&c&&c.auxiliary}},{key:"isSmallVideoSubscribed",get:function(){var c=this.getSubscribedState();return this.type_===gt&&c&&c.smallVideo}},{key:"emitConnectionStateChanged",value:function(c){c.state!==this.connectionState_&&(c.state!==an&&this.isRemote_&&!this.isSubscribed||(this.emitter_.emit(WV,c),this.connectionState_=c.state))}},{key:"setConnection",value:function(c){this.connection_!==c&&(c instanceof Nv?(this.connection_!==null&&this.connection_.off(et.CONNECTION_STATE_CHANGED,this.emitConnectionStateChanged,this),c.on(et.CONNECTION_STATE_CHANGED,this.emitConnectionStateChanged,this)):c===null&&this.connection_.off(et.CONNECTION_STATE_CHANGED,this.emitConnectionStateChanged,this),this.connection_=c)}},{key:"getConnection",value:function(){return this.connection_}},{key:"play",value:(o=H(f().mark(function c(a,s){var l,u,p;return f().wrap(function(k){for(;;)switch(k.prev=k.next){case 0:if(this.log_.info("stream ".concat(this.isPlaying_?"update":"start to"," play with elementId: ").concat(a," and options: ").concat(JSON.stringify(s),".")),!this.isPlaying_){k.next=9;break}return s&&!ge(s.muted)&&(this.muted_=s.muted),s&&!ge(s.objectFit)&&(this.objectFit_=s.objectFit),this.isScreenShare()?this.mirror_=!1:s&&!ge(s.mirror)&&(this.mirror_=s.mirror),this.audioPlayer_&&this.audioPlayer_.setMuted(this.muted_),this.videoPlayer_&&(this.videoPlayer_.setObjectFit(this.objectFit_),this.videoPlayer_.setMirror(this.mirror_)),this.elementId_!==a&&(l=a,Bt(a)&&(l=document.getElementById(a)),l.appendChild(this.div_),this.elementId_=a),k.abrupt("return");case 9:return this.isPlaying_=!0,(u=document.createElement("div")).setAttribute("id","player_".concat(this.id_)),u.setAttribute("style","width: 100%; height: 100%; position: relative; background-color: black; overflow: hidden;"),p=a,Bt(a)&&(p=document.getElementById(a)),p.appendChild(u),this.elementId_=a,this.div_=u,this.isRemote_||(this.muted_=!0),s&&!ge(s.muted)&&(this.muted_=s.muted),this.isScreenShare()&&(this.objectFit_="contain"),s&&!ge(s.objectFit)&&(this.objectFit_=s.objectFit),this.isScreenShare()?this.mirror_=!1:(this.isRemote_||(this.mirror_=!0),s&&!ge(s.mirror)&&(this.mirror_=s.mirror)),Q.emit(Hp,{stream:this}),k.next=26,Promise.all([this.playAudio(),this.playVideo()]);case 26:Q.emit(A4,{stream:this});case 27:case"end":return k.stop()}},c,this)})),function(c,a){return o.apply(this,arguments)})},{key:"playAudio",value:(r=H(f().mark(function c(){var a,s,l=this;return f().wrap(function(u){for(;;)switch(u.prev=u.next){case 0:if(this.hasAudio()&&(!this.isRemote_||this.isMainAudioSubscribed)){u.next=2;break}return u.abrupt("return");case 2:if(a=this.getAudioTrack(),this.audioPlayer_||!a){u.next=17;break}return this.log_.info("create AudioPlayer and play"),this.audioPlayer_=new q6({stream:this,track:a,gainedTrack:(s=this.gain_)===null||s===void 0?void 0:s.audioTrack,div:this.div_,muted:this.muted_,outputDeviceId:this.audioOutputDeviceId_,volume:this.audioVolume_}),this.audioPlayer_.on(vn,function(p){var k={type:Ee,state:p.state,reason:p.reason};Q.emit(qS,q({stream:l},k)),l.emitter_.emit(Bk,k)}),u.prev=7,u.next=10,this.audioPlayer_.play();case 10:u.next=17;break;case 12:throw u.prev=12,u.t0=u.catch(7),this.client_&&this.client_.getEnableAutoPlayDialog()&&new PT,this.emitter_.emit(km,u.t0),u.t0;case 17:case"end":return u.stop()}},c,this,[[7,12]])})),function(){return r.apply(this,arguments)})},{key:"playVideo",value:(i=H(f().mark(function c(){var a,s=this;return f().wrap(function(l){for(;;)switch(l.prev=l.next){case 0:if(this.hasVideo()&&(!this.isRemote_||this.isMainVideoSubscribed||this.isAuxVideoSubscribed||this.isSmallVideoSubscribed)){l.next=2;break}return l.abrupt("return");case 2:if(a=this.getVideoTrack(),this.videoPlayer_||!a){l.next=18;break}return Q.emit(zp,{stream:this}),this.log_.info("create VideoPlayer and play"),this.videoPlayer_=new DT({stream:this,track:a,div:this.div_,muted:this.muted_,objectFit:this.objectFit_,mirror:this.mirror_}),this.videoPlayer_.on(vn,function(u){var p={type:xe,state:u.state,reason:u.reason};Q.emit(qS,q({stream:s},p)),s.emitter_.emit(Bk,p)}),l.prev=8,l.next=11,this.videoPlayer_.play();case 11:l.next=18;break;case 13:throw l.prev=13,l.t0=l.catch(8),this.client_&&this.client_.getEnableAutoPlayDialog()&&new PT,this.emitter_.emit(km,l.t0),l.t0;case 18:case"end":return l.stop()}},c,this,[[8,13]])})),function(){return i.apply(this,arguments)})},{key:"stopAudio",value:function(){this.audioPlayer_&&(this.log_.info("stop AudioPlayer"),this.audioPlayer_.stop(),this.audioPlayer_=null)}},{key:"stopVideo",value:function(){this.videoPlayer_&&(this.log_.info("stop VideoPlayer"),this.videoPlayer_.stop(),this.videoPlayer_=null)}},{key:"restartPlayback",value:function(){this.audioPlayer_&&!this.audioPlayer_.isPlaying&&this.restartAudio(),this.videoPlayer_&&!this.videoPlayer_.isPlaying&&this.restartVideo()}},{key:"restartAudio",value:function(){this.isPlaying_&&(this.stopAudio(),this.playAudio().catch(function(c){}))}},{key:"restartVideo",value:function(){this.isPlaying_&&(this.stopVideo(),this.playVideo().catch(function(c){}))}},{key:"stop",value:function(){this.isPlaying_&&(this.isPlaying_=!1,this.stopAudio(),this.stopVideo(),this.div_.parentNode.removeChild(this.div_))}},{key:"resume",value:(n=H(f().mark(function c(){return f().wrap(function(a){for(;;)switch(a.prev=a.next){case 0:if(this.isPlaying_){a.next=2;break}return a.abrupt("return");case 2:if(this.log_.info("resume"),!this.audioPlayer_){a.next=6;break}return a.next=6,this.audioPlayer_.resume();case 6:if(!this.videoPlayer_){a.next=9;break}return a.next=9,this.videoPlayer_.resume();case 9:case"end":return a.stop()}},c,this)})),function(){return n.apply(this,arguments)})},{key:"close",value:function(){this.log_.info("close stream"),this.isPlaying_&&this.stop(),this.isRemote_||(this.mediaStream_&&(this.mediaStream_.preventEvent=1,this.mediaStream_.getTracks().forEach(function(c){c.stop()}),this.mediaStream_=null),this.uninstallEvents())}},{key:"muteAudio",value:function(){return this.addRemoteEvent(!0,Ee),this.doEnableTrack(Ee,!1)}},{key:"muteVideo",value:function(){return this.addRemoteEvent(!0,xe),this.doEnableTrack(xe,!1)}},{key:"unmuteAudio",value:function(){return this.addRemoteEvent(!1,Ee),this.doEnableTrack(Ee,!0)}},{key:"unmuteVideo",value:function(){return this.addRemoteEvent(!1,xe),this.doEnableTrack(xe,!0)}},{key:"addRemoteEvent",value:function(c,a){if(this.isRemote_&&this.client_){var s=this.client_.getUserId(),l="".concat(c?en:br," remote ").concat(a);mn(s,{eventId:a===Ee?c?KU:XU:c?JU:YU,eventDesc:l,timestamp:new Date().getTime(),userId:s,tinyId:this.client_.getTinyId(),remoteUserId:this.userId_,remoteTinyId:this.connection_.getTinyId()})}}},{key:"doEnableTrack",value:function(c,a){var s=!1;return c===Ee?this.mediaStream_.getAudioTracks().forEach(function(l){s=!0,l.enabled=a}):this.mediaStream_.getVideoTracks().forEach(function(l){s=!0,l.enabled=a}),s}},{key:"getId",value:function(){return this.id_}},{key:"getUserId",value:function(){return this.userId_}},{key:"getTinyId",value:function(){return this.connection_?this.connection_.getTinyId():""}},{key:"isPlaying",value:function(){return this.isPlaying_}},{key:"setAudioOutput",value:(t=H(f().mark(function c(a){var s;return f().wrap(function(l){for(;;)switch(l.prev=l.next){case 0:if(this.log_.info("setAudioOutput ".concat(a)),this.audioOutputDeviceId_=a,!this.audioPlayer_){l.next=5;break}return l.next=5,this.audioPlayer_.setSinkId(a);case 5:return l.next=7,zk();case 7:s=l.sent,this.log_.info("speakers: ".concat(JSON.stringify(s)));case 9:case"end":return l.stop()}},c,this)})),function(c){return t.apply(this,arguments)})},{key:"setAudioVolume",value:function(c){this.audioVolume_=c,this.log_.info("setAudioVolume to ".concat(c)),this.audioPlayer_&&this.audioPlayer_.setVolume(c)}},{key:"getAudioLevel",value:function(){var c=0;return this.audioPlayer_&&(c=this.audioPlayer_.getAudioLevel()),c}},{key:"getInternalAudioLevel",value:function(){var c=0;return this.audioPlayer_&&(c=this.audioPlayer_.getInternalAudioLevel()),c}},{key:"hasAudio",value:function(){if(this.isRemote_){if(!this.connection_)return!1;var c=this.connection_.getTrackState();return this.type_===gt&&c.audio}return!!this.getAudioTrack()}},{key:"hasVideo",value:function(){if(this.isRemote_){if(!this.connection_)return!1;var c=this.connection_.getTrackState();return this.type_===Dt?c.auxiliary:c.video}return!!this.getVideoTrack()}},{key:"getSubscribedState",value:function(){return this.isRemote_&&this.connection_?this.connection_.getSubscribeState():null}},{key:"getAudioTrack",value:function(){var c=null;if(this.mediaStream_){var a=this.mediaStream_.getAudioTracks();a.length>0&&(c=a[0])}return c}},{key:"getVideoTrack",value:function(){var c=null;if(this.mediaStream_){var a=this.mediaStream_.getVideoTracks();a.length>0&&(c=a[0])}return c}},{key:"getVideoFrame",value:function(){return this.videoPlayer_?this.videoPlayer_.getVideoFrame():null}},{key:"getMediaStream",value:function(){return this.mediaStream_}},{key:"setMediaStream",value:function(c){c!==this.mediaStream_&&(this.mediaStream_&&this.mediaStream_.getTracks().forEach(function(a){return a.stop()}),this.mediaStream_=c)}},{key:"updateVideoPlayingState",value:function(c){this.isPlaying_&&(c?(this.log_.info("playing state updated, play video"),this.playVideo().catch(function(a){})):(this.log_.info("playing state updated, stop video"),this.stopVideo()))}},{key:"updateAudioPlayingState",value:function(c){this.isPlaying_&&(c?(this.log_.info("playing state updated, play audio"),this.playAudio().catch(function(a){})):(this.log_.info("playing state updated, stop audio"),this.stopAudio()))}},{key:"on",value:function(c,a,s){this.emitter_.on(c,a,s)}},{key:"off",value:function(c,a,s){c==="*"?this.emitter_.removeAllListeners():this.emitter_.off(c,a,s)}},{key:"isRemote",value:function(){return this.isRemote_}},{key:"isScreenShare",value:function(){return!this.isRemote_&&this.screen_||this.isRemote_&&this.getType()===pt}},{key:"getDiv",value:function(){return this.div_}},{key:"getObjectFit",value:function(){return this.objectFit_}},{key:"getMuted",value:function(){return this.muted_}},{key:"getClient",value:function(){return this.client_}}]),e}(),Y(sr.prototype,"play",[Sx],Object.getOwnPropertyDescriptor(sr.prototype,"play"),sr.prototype),Y(sr.prototype,"setAudioOutput",[kx],Object.getOwnPropertyDescriptor(sr.prototype,"setAudioOutput"),sr.prototype),Y(sr.prototype,"getVideoFrame",[Tx],Object.getOwnPropertyDescriptor(sr.prototype,"getVideoFrame"),sr.prototype),sr),jv=function(e){Et(n,e);var t=Rr(n);function n(i){var r;X(this,n);var o={isRemote:!0,type:i.type},c=q(q({},i),o);return(r=t.call(this,c)).name_=Jf,r.isStreamAddedEventEmitted_=!1,r.isAbleToCallSubscription_=!0,r}return Ie(n,[{key:"installEvents",value:function(){le(Qe(n.prototype),"installEvents",this).call(this),Q.on(Ur,this.handleStreamSubscribed,this),Q.on(Vr,this.handleStreamUnsubscribed,this)}},{key:"uninstallEvents",value:function(){le(Qe(n.prototype),"uninstallEvents",this).call(this),Q.off(Ur,this.handleStreamSubscribed,this),Q.off(Vr,this.handleStreamUnsubscribed,this)}},{key:"handleStreamSubscribed",value:function(i){i.client===this.client_&&i.stream===this&&this.connection_.getCurrentState()===pn&&this.emitConnectionStateChanged({prevState:an,state:pn})}},{key:"handleStreamUnsubscribed",value:function(i){i.client===this.client_&&i.stream===this&&this.emitConnectionStateChanged({prevState:pn,state:an})}},{key:"getType",value:function(){return le(Qe(n.prototype),"getType",this).call(this)}},{key:"getIsAbleToCallSubscription",value:function(){return this.isAbleToCallSubscription_}},{key:"setIsAbleToCallSubscription",value:function(i){this.isAbleToCallSubscription_=i}},{key:"setIsStreamAddedEventEmitted",value:function(i){this.isStreamAddedEventEmitted_=i}},{key:"getIsStreamAddedEventEmitted",value:function(){return this.isStreamAddedEventEmitted_}},{key:"getAudioTrack",value:function(){return this.connection_&&this.connection_.getTrackState().audio?le(Qe(n.prototype),"getAudioTrack",this).call(this):null}},{key:"getVideoTrack",value:function(){if(!this.connection_)return null;var i=this.connection_.getTrackState();return(this.type_!==gt||i.video)&&(this.type_!==Dt||i.auxiliary)?le(Qe(n.prototype),"getVideoTrack",this).call(this):null}},{key:"close",value:function(){le(Qe(n.prototype),"close",this).call(this)}}]),n}(xx),uF=function(){function e(r){X(this,e),this.client_=r.client,this.subscribedStreams_=new Map,this.unsubscribedStreams_=new Map,this.subscriptedOptions_=new Map,this.autoRecoveryFlags_=new Map}var t,n,i;return Ie(e,[{key:"isEnabled",get:function(){return this.client_.getEnv()!=="webrtc"}},{key:"recover",value:(i=H(f().mark(function r(o){var c,a,s;return f().wrap(function(l){for(;;)switch(l.prev=l.next){case 0:if(c=o.getUserId(),a=o.getType(),this.hasAutoRecoveryFlag(c,a)){l.next=5;break}return l.abrupt("return");case 5:if(s=this.getUnsubscribedStream(c,a)?"unsubscribe":"subscribe",l.prev=6,_e.warn("recover() try to recover subscription [".concat(s,"][").concat(c,"][").concat(a,"]")),s!=="subscribe"){l.next=13;break}return l.next=11,this.recoverSubscription(c,o);case 11:l.next=15;break;case 13:return l.next=15,this.recoverUnsubscription(c,o);case 15:ke.logSuccessEvent({userId:this.client_.getUserId(),eventType:Nb}),_e.warn("recover() recover successfully [".concat(s,"][").concat(c,"][").concat(a,"]")),l.next=23;break;case 19:l.prev=19,l.t0=l.catch(6),_e.error("recover() recover failed [".concat(s,"][").concat(c,"][").concat(a,"]"),l.t0),ke.logFailedEvent({userId:this.client_.getUserId(),eventType:Nb,error:l.t0});case 23:this.deleteAutoRecoveryFlag(c,a);case 24:case"end":return l.stop()}},r,this,[[6,19]])})),function(r){return i.apply(this,arguments)})},{key:"recoverSubscription",value:(n=H(f().mark(function r(o,c){var a,s,l,u,p;return f().wrap(function(k){for(;;)switch(k.prev=k.next){case 0:if(a=this.getOptions(o,c.getType()),s=this.getSubscribedStream(o,c.getType()),a&&s){k.next=4;break}return k.abrupt("return");case 4:l=this.getStreamMuteState(s),u=l.isAudioMuted,p=l.isVideoMuted,this.mergeStream(s,c),this.recoverPlayingState(s),u&&s.doEnableTrack(Ee,!1),p&&s.doEnableTrack(xe,!1);case 9:case"end":return k.stop()}},r,this)})),function(r,o){return n.apply(this,arguments)})},{key:"recoverUnsubscription",value:(t=H(f().mark(function r(o,c){var a;return f().wrap(function(s){for(;;)switch(s.prev=s.next){case 0:if(a=this.getUnsubscribedStream(o,c.getType())){s.next=3;break}return s.abrupt("return");case 3:this.mergeStream(a,c);case 4:case"end":return s.stop()}},r,this)})),function(r,o){return t.apply(this,arguments)})},{key:"getStreamMuteState",value:function(r){var o={isAudioMuted:!1,isVideoMuted:!1},c=r.getMediaStream();return c&&(o.isAudioMuted=c.getAudioTracks().map(function(a){return a.enabled}).includes(!1),o.isVideoMuted=c.getVideoTracks().map(function(a){return a.enabled}).includes(!1)),o}},{key:"recoverPlayingState",value:function(r){var o=r.isPlaying(),c=r.getDiv();if(o&&c){var a=c.parentNode;r.stop(),r.play(a,{objectFit:r.getObjectFit(),muted:r.getMuted()})}}},{key:"mergeStream",value:function(r,o){var c=o.getConnection(),a=o.getMediaStream();r.setConnection(c),c.setRemoteStream(a.id,r),r.setMediaStream(a),r.updateAudioPlayingState(o.hasAudio()),r.updateVideoPlayingState(o.hasVideo())}},{key:"addSubscriptionRecord",value:function(r,o,c){var a=o.getType();if(this.subscribedStreams_.has(r))this.subscribedStreams_.get(r).set(a,o);else{var s=new Map;s.set(o.getType(),o),this.subscribedStreams_.set(r,s)}if(this.subscriptedOptions_.has(r))this.subscriptedOptions_.get(r).set(a,c);else{var l=new Map;l.set(o.getType(),c),this.subscriptedOptions_.set(r,l)}this.deleteUnsubscriptionRecord(r,a)}},{key:"addUnsubscriptionRecord",value:function(r,o){if(this.unsubscribedStreams_.has(r))this.unsubscribedStreams_.get(r).set(o.getType(),o);else{var c=new Map;c.set(o.getType(),o),this.unsubscribedStreams_.set(r,c)}this.deleteSubscriptionRecord(r,o.getType())}},{key:"getSubscribedStream",value:function(r,o){return this.subscribedStreams_.has(r)&&this.subscribedStreams_.get(r).has(o)?this.subscribedStreams_.get(r).get(o):null}},{key:"getOptions",value:function(r,o){return this.subscriptedOptions_.has(r)&&this.subscriptedOptions_.get(r).has(o)?this.subscriptedOptions_.get(r).get(o):null}},{key:"getUnsubscribedStream",value:function(r,o){return this.unsubscribedStreams_.has(r)&&this.unsubscribedStreams_.get(r).has(o)?this.unsubscribedStreams_.get(r).get(o):null}},{key:"deleteSubscriptionRecord",value:function(r,o){this.subscribedStreams_.has(r)&&this.subscribedStreams_.get(r).delete(o),this.subscriptedOptions_.has(r)&&this.subscriptedOptions_.get(r).delete(o)}},{key:"deleteUnsubscriptionRecord",value:function(r,o){this.unsubscribedStreams_.has(r)&&this.unsubscribedStreams_.get(r).delete(o)}},{key:"markAllStream",value:function(){for(var r=0,o=Se(this.subscribedStreams_.entries());r<o.length;r++)for(var c=Te(o[r],2),a=c[0],s=0,l=Se(c[1].entries());s<l.length;s++){var u=Te(l[s],1)[0];this.setAutoRecoveryFlag(a,u)}for(var p=0,k=Se(this.unsubscribedStreams_.entries());p<k.length;p++)for(var x=Te(k[p],2),E=x[0],I=0,m=Se(x[1].entries());I<m.length;I++){var T=Te(m[I],1)[0];this.setAutoRecoveryFlag(E,T)}}},{key:"setAutoRecoveryFlag",value:function(r,o){if(_e.info("setAutoRecoveryFlag() mark [".concat(r,"][").concat(o,"]")),this.autoRecoveryFlags_.has(r))this.autoRecoveryFlags_.get(r).set(o);else{var c=new Map;c.set(o),this.autoRecoveryFlags_.set(r,c)}}},{key:"hasAutoRecoveryFlag",value:function(r,o){return!!this.isEnabled&&this.autoRecoveryFlags_.has(r)&&this.autoRecoveryFlags_.get(r).has(o)}},{key:"deleteAutoRecoveryFlag",value:function(r,o){this.autoRecoveryFlags_.has(r)&&this.autoRecoveryFlags_.get(r).delete(o)}},{key:"delete",value:function(r){this.unsubscribedStreams_.delete(r),this.subscribedStreams_.delete(r),this.subscriptedOptions_.delete(r),this.autoRecoveryFlags_.delete(r)}}]),e}(),lF=function(){function e(t){X(this,e),this.player_=t,this.canvas_=document.createElement(db),this.canvasCtx_=this.canvas_.getContext("2d")}return Ie(e,[{key:"setCanvasRect",value:function(t,n){this.canvas_.width=t,this.canvas_.height=n}},{key:"drawVideoToCanvas",value:function(){var t=this.player_.getElement(),n=t.videoHeight,i=t.videoWidth,r=i*this.canvas_.height/(n*this.canvas_.width);if(r>1.05||r<.95){var o=i*n/(this.canvas_.width*this.canvas_.height);this.setCanvasRect(i/Math.sqrt(o),n/Math.sqrt(o))}this.canvasCtx_.drawImage(t,0,0,this.canvas_.width,this.canvas_.height)}},{key:"generateVideoTrackFromCanvasCapture",value:function(t){return this.canvas_.captureStream(t).getVideoTracks()[0]}},{key:"generateStreamFromTrack",value:function(t){var n=new MediaStream;return n.addTrack(t),n}},{key:"destroy",value:function(){this.player_.stop(),this.canvas_.width=0,this.canvas_.height=0,this.canvas_=null,this.canvasCtx_=null}},{key:"canvas",get:function(){return this.canvas_}},{key:"canvasCtx",get:function(){return this.canvasCtx_}},{key:"canDrawVideoToCanvas",get:function(){if(this.player_){var t=this.player_.getElement();if(t)return t.readyState===t.HAVE_ENOUGH_DATA}return!1}}]),e}(),dF=new Blob(['let t,e,a,i;onmessage=function(n){const{action:h,data:s}=n.data;switch(h){case"render":a=s.canvas,t=a.width,e=a.height,i=a.getContext("2d"),function(t,e){const n=new TransformStream({async transform(t,e){const n=t.displayWidth,h=t.displayHeight,s=n*a.height/(h*a.width);if(s>1.05||s<.95){const t=n*h/(a.width*a.height);a.width=n/Math.sqrt(t),a.height=h/Math.sqrt(t)}i.drawImage(t,0,0,a.width,a.height);const o=new VideoFrame(a,{timestamp:t.timestamp});t.close(),e.enqueue(o)}});t.pipeThrough(n).pipeTo(e)}(s.readable,s.writable)}}'],{type:"application/javascript"}),hF=function(){function e(t){X(this,e);var n=t.videoTrack;this.width=void 0,this.height=void 0,this.canvas=document.createElement("canvas"),this.offscreen=null,this.smallGenerator=new MediaStreamTrackGenerator({kind:"video"}),this.smallWritable=this.smallGenerator.writable,this.bigProcessor=new MediaStreamTrackProcessor({track:n}),this.bigReadable=this.bigProcessor.readable,this.initWorker()}return Ie(e,[{key:"initWorker",value:function(){try{this.worker=new Worker(URL.createObjectURL(dF)),_e.info("init worker processor success")}catch(t){_e.warn("init worker processor failed. ".concat(t.error))}}},{key:"setCanvasRect",value:function(t,n){this.width=t,this.height=n,this.canvas.width=t,this.canvas.height=n,this.offscreen=this.canvas.transferControlToOffscreen(),this.worker.postMessage({action:"render",data:{canvas:this.offscreen,readable:this.bigReadable,writable:this.smallWritable}},[this.offscreen,this.bigReadable,this.smallWritable])}},{key:"generatorVideoTrack",value:function(){var t=new MediaStream([this.smallGenerator]);return t==null?void 0:t.getTracks()[0]}},{key:"destroy",value:function(){this.worker.terminate()}}]),e}(),Kl=function(){function e(n){X(this,e),this.localStream_=n,this.player_=null,this.processor_=null,this.initOffscreenSuccess_=!1}var t;return Ie(e,[{key:"initialize",value:(t=H(f().mark(function n(){var i;return f().wrap(function(r){for(;;)switch(r.prev=r.next){case 0:if(!(GV()&&((i=navigator)===null||i===void 0?void 0:i.hardwareConcurrency)>=6)){r.next=13;break}return r.prev=1,r.next=4,this.initOffscreen();case 4:this.initOffscreenSuccess_=!0,_e.info("Initialize VideoGenerator successfully!"),r.next=11;break;case 8:r.prev=8,r.t0=r.catch(1),this.initCanvas();case 11:r.next=14;break;case 13:this.initCanvas();case 14:case"end":return r.stop()}},n,this,[[1,8]])})),function(){return t.apply(this,arguments)})},{key:"generateSmallVideoTrack",value:function(n){var i,r=n.height,o=n.width,c=n.frameRate,a=this.getSmallVideoProfile(o,r);return this.initOffscreenSuccess_?(this.processor_.setCanvasRect(a.width,a.height),i=this.processor_.generatorVideoTrack()):(this.processor_.setCanvasRect(a.width,a.height),this.player_.setRect({width:a.width,height:a.height}),i=this.processor_.generateVideoTrackFromCanvasCapture(c),this.interval_=_t.run(Yu,this.render.bind(this),{fps:c})),i}},{key:"render",value:function(){this.processor_.canDrawVideoToCanvas&&this.processor_.drawVideoToCanvas()}},{key:"destroy",value:function(){_t.clearTask(this.interval_),this.processor_&&this.processor_.destroy()}},{key:"initOffscreen",value:function(){this.processor_=new hF({videoTrack:this.localStream_.getVideoTrack()})}},{key:"initCanvas",value:function(){this.player_=new DT({stream:this.localStream_,track:this.localStream_.getVideoTrack(),muted:!0,objectFit:"cover",mirror:!1}),this.player_.play().then(function(){_e.info("VideoGenerator: play local video success")}).catch(function(){_e.error("VideoGenerator: Failed to play local video")}),this.processor_=new lF(this.player_)}},{key:"getSmallVideoProfile",value:function(n,i){var r,o=this.localStream_.getVideoTrack(),c=this.localStream_.getVideoProfile();if(yo){var a=o.getSettings();a&&a.width&&a.height&&(c.width=a.width,c.height=a.height)}var s=c.width*c.height,l=n*i;return _e.info("big stream resolution: ".concat(c.width,"*").concat(c.height," small stream resolution: ").concat(n,"*").concat(i," ")),r=s>l?s/l:s/19200,{width:parseInt(c.width/Math.sqrt(r)),height:parseInt(c.height/Math.sqrt(r))}}}]),e}(),Yl=new Map,fF=function(){var e=H(f().mark(function t(n){var i,r,o,c,a,s,l;return f().wrap(function(u){for(;;)switch(u.prev=u.next){case 0:if(!pl()){u.next=2;break}return u.abrupt("return");case 2:return u.next=4,pF(n);case 4:if(i=u.sent,_e.info("getUserMedia with constraints: "+JSON.stringify(i)),!i.audio){u.next=11;break}return u.next=9,xt.getMicrophones();case 9:r=u.sent,_e.info("microphones: ".concat(lo(r,["deviceId","label"])));case 11:if(!i.video){u.next=16;break}return u.next=14,xt.getCameras();case 14:o=u.sent,_e.info("cameras: ".concat(lo(o,["deviceId","label"])));case 16:return u.prev=16,u.next=19,navigator.mediaDevices.getUserMedia(i);case 19:return u.abrupt("return",u.sent);case 22:if(u.prev=22,u.t0=u.catch(16),u.t0.name!=="NotFoundError"){u.next=29;break}if(!o||o.length!==0){u.next=27;break}throw new ne({code:ee.DEVICE_NOT_FOUND,message:ie({key:F3})});case 27:if(!r||r.length!==0){u.next=29;break}throw new ne({code:ee.DEVICE_NOT_FOUND,message:ie({key:B3})});case 29:throw i.audio&&((c=r)===null||c===void 0?void 0:c.length)>0&&(s=r.find(function(p){return p.deviceId===n.microphoneId}))&&s.getCapabilities&&_e.warn(lo(s.getCapabilities(),Qf)),i.video&&((a=o)===null||a===void 0?void 0:a.length)>0&&(l=o.find(function(p){return p.deviceId===n.cameraId}))&&l.getCapabilities&&_e.warn(lo(l.getCapabilities(),Qf)),new ne({code:ee.INITIALIZE_FAILED,name:u.t0.name,message:u.t0.message,constraint:u.t0.constraint});case 32:case"end":return u.stop()}},t,null,[[16,22]])}));return function(t){return e.apply(this,arguments)}}(),Bv=rc({retryFunction:fF,settings:{retries:3,timeout:500},onError:function(e,t,n,i,r){_e.warn("getUserMedia error: ".concat(e)),e.name==="NotReadableError"?(i[0].video&&(i[0].maxResoution=!1,i[0].frameRate=i[0].frameRate>10?10:5),r===2&&(i[0].useTrueAsConstraint=!0),t()):e.message.includes("deviceId")&&i[0].retryWhenExactFailed?(i[0].useExact=!1,t()):n(e)},onRetrying:function(e){_e.warn("getUserMedia retrying [".concat(e,"/3]"))},onRetryFailed:function(){ke.uploadEvent({log:"stat-getUserMedia-retry-failed"})},onRetrySuccess:function(e){ke.uploadEvent({log:"stat-getUserMedia-retry-success-"+e})}});function pF(e){return{audio:mF(e),video:vF(e)}}function mF(e){if(!e.audio)return!1;if(e.useTrueAsConstraint)return!0;var t={};return Si(e.microphoneId)||(t.deviceId=e.useExact?{exact:e.microphoneId}:e.microphoneId),er(e.channelCount)&&e.channelCount>1&&(t.channelCount=e.channelCount),tr(e.echoCancellation)&&!e.echoCancellation&&(t.echoCancellation=!1),tr(e.noiseSuppression)&&!e.noiseSuppression&&(t.noiseSuppression=!1),tr(e.autoGainControl)&&!e.autoGainControl&&(t.autoGainControl=!1),!!Si(t)||t}function vF(e){if(!e.video)return!1;if(e.useTrueAsConstraint)return!0;var t=e.maxResoution,n=t===void 0||t,i={};return e.cameraId?i.deviceId=e.useExact?{exact:e.cameraId}:e.cameraId:e.facingMode&&(i.facingMode=e.facingMode),e.width&&(i.width={ideal:e.width},n&&!Un&&(i.width.max=e.width)),e.height&&(i.height={ideal:e.height},n&&!Un&&(i.height.max=e.height)),Un&&Zs&&e.width&&e.height&&e.width*e.height<101376&&(i.width=e.width,i.height=e.height),e.frameRate&&(i.frameRate=e.frameRate),!!Si(i)||i}var gF=function(){var e=H(f().mark(function t(n){var i,r,o,c,a,s,l,u,p;return f().wrap(function(k){for(;;)switch(k.prev=k.next){case 0:if(!pl()){k.next=2;break}return k.abrupt("return");case 2:if(i=null,!(nl&&_p<74||ea)){k.next=27;break}return r=Fv(n),_e.info("getDisplayMedia with constraints: "+JSON.stringify(r)),k.next=8,navigator.mediaDevices.getDisplayMedia(r);case 8:if(o=k.sent,!n.screenAudio){k.next=14;break}return _e.warn("Your browser not support capture system audio"),k.abrupt("return",o);case 14:if(!n.audio){k.next=24;break}return c=Ix(n),_e.info("getUserMedia with constraints: "+JSON.stringify(c)),k.next=19,navigator.mediaDevices.getUserMedia(c);case 19:return i=k.sent,o.addTrack(i.getAudioTracks()[0]),k.abrupt("return",o);case 24:return k.abrupt("return",o);case 25:k.next=53;break;case 27:if(!n.screenAudio){k.next=37;break}return n.audioConstraints={echoCancellation:n.echoCancellation,autoGainControl:n.autoGainControl,noiseSuppression:n.noiseSuppression,sampleRate:44100},a=Fv(n),_e.info("getDisplayMedia with constraints: "+JSON.stringify(a)),k.next=33,navigator.mediaDevices.getDisplayMedia(a);case 33:return s=k.sent,k.abrupt("return",s);case 37:return l=Fv(n),_e.info("getDisplayMedia with constraints: "+JSON.stringify(l)),k.next=41,navigator.mediaDevices.getDisplayMedia(l);case 41:if(u=k.sent,!n.audio){k.next=52;break}return p=Ix(n),_e.info("getUserMedia with constraints: "+JSON.stringify(p)),k.next=47,navigator.mediaDevices.getUserMedia(p);case 47:return i=k.sent,u.addTrack(i.getAudioTracks()[0]),k.abrupt("return",u);case 52:return k.abrupt("return",u);case 53:case"end":return k.stop()}},t)}));return function(t){return e.apply(this,arguments)}}();function Ix(e){var t={echoCancellation:e.echoCancellation,autoGainControl:e.autoGainControl,noiseSuppression:e.noiseSuppression,sampleRate:e.sampleRate,channelCount:e.channelCount};return ge(e.microphoneId)||(t.deviceId=e.microphoneId),{audio:t,video:!1}}function Fv(e){var t={systemAudio:"include",selfBrowserSurface:"include",surfaceSwitching:"include"},n={width:ea?{max:e.width}:{ideal:e.width,max:e.width},height:ea?{max:e.height}:{ideal:e.height,max:e.height},frameRate:e.frameRate,displaySurface:"monitor"};return t.video=n,ge(e.audioConstraints)||(t.audio=e.audioConstraints),t}var wx,Cx,Ex,Rx,Ax,Px,Dx,Lx,Ox,Mx,Nx,nt,Ux,kc,Hv=new Map([["120p",{width:160,height:120,frameRate:15,bitrate:200}],["120p_2",{width:160,height:120,frameRate:15,bitrate:100}],["180p",{width:320,height:180,frameRate:15,bitrate:350}],["180p_2",{width:320,height:180,frameRate:15,bitrate:150}],["240p",{width:320,height:240,frameRate:15,bitrate:400}],["240p_2",{width:320,height:240,frameRate:15,bitrate:200}],["360p",{width:640,height:360,frameRate:15,bitrate:800}],["360p_2",{width:640,height:360,frameRate:15,bitrate:400}],["480p",{width:640,height:480,frameRate:15,bitrate:900}],["480p_2",{width:640,height:480,frameRate:15,bitrate:500}],["720p",{width:1280,height:720,frameRate:15,bitrate:1500}],["1080p",{width:1920,height:1080,frameRate:15,bitrate:2e3}],["1440p",{width:2560,height:1440,frameRate:30,bitrate:4860}],["4K",{width:3840,height:2160,frameRate:30,bitrate:9e3}]]),Gv=new Map([["480p",{width:640,height:480,frameRate:5,bitrate:900}],["480p_2",{width:640,height:480,frameRate:30,bitrate:1e3}],["720p",{width:1280,height:720,frameRate:5,bitrate:1200}],["720p_2",{width:1280,height:720,frameRate:30,bitrate:3e3}],["1080p",{width:1920,height:1080,frameRate:5,bitrate:1600}],["1080p_2",{width:1920,height:1080,frameRate:30,bitrate:4e3}]]),Vx=new Map([["standard",{sampleRate:48e3,channelCount:1,bitrate:40}],["standard-stereo",{sampleRate:48e3,channelCount:2,bitrate:64}],["high",{sampleRate:48e3,channelCount:1,bitrate:128}],["high-stereo",{sampleRate:48e3,channelCount:2,bitrate:192}]]),ma=new Map,_F=(wx=St(pi),Cx=St(pi),Ex=St(pi),Rx=St(pi),Ax=xn.apply(void 0,Se(Xt.LOCAL_STREAM.switchDevice)),Px=xn(Xt.STREAM.addTrack),Dx=xn(Xt.STREAM.removeTrack),Lx=xn(Xt.STREAM.replaceTrack),Ox=Lo({retries:10,timeout:3e3,onRetryFailed:function(e){ke.logFailedEvent({userId:this.client_?this.client_.getUserId():this.userId_,eventType:Mb,error:e}),this.emitter_.emit(km,new ne({code:ee.DEVICE_AUTO_RECOVER_FAILED,message:e.message}))}}),Mx=Jl(Xt.LOCAL_STREAM.setAudioCaptureVolume),Nx=St(pi),nt=function(e){Et(I,e);var t,n,i,r,o,c,a,s,l,u,p,k,x,E=Rr(I);function I(m){var T;X(this,I);var v=q(q({},m),{isRemote:!1,type:"local"});return(T=E.call(this,v)).name_=pi,T.client_=null,T.video_=m.video,T.audio_=m.audio,T.cameraId_=m.cameraId,T.cameraGroupId_="",T.facingMode_=m.facingMode,T.microphoneId_=m.microphoneId,T.microphoneGroupId_="",T.microphoneLabel_="",T.videoSource_=m.videoSource,T.audioSource_=m.audioSource,T.screen_=m.screen,T.screenAudio_=m.screenAudio,T.audioProfile_={echoCancellation:!0,autoGainControl:!0,noiseSuppression:!0,sampleRate:48e3,channelCount:1,bitrate:40},T.screenAudio_&&(T.audioProfile_.echoCancellation=!0,T.audioProfile_.autoGainControl=!1,T.audioProfile_.noiseSuppression=!1),tr(m.echoCancellation)&&(T.audioProfile_.echoCancellation=m.echoCancellation),tr(m.autoGainControl)&&(T.audioProfile_.autoGainControl=m.autoGainControl),tr(m.noiseSuppression)&&(T.audioProfile_.noiseSuppression=m.noiseSuppression),T.videoProfile_=Hv.get("480p_2"),T.screenProfile_=Gv.get("1080p"),T.videoSetting_=null,T.muteState_={video:!1,audio:!1,auxVideo:!1},T.beautyStatus_=!1,T.prevAudioRecoverTime_=0,T.prevVideoRecoverTime_=0,T.isAudioRecovering_=!1,T.isVideoRecovering_=!1,T.initState(),T.canvas_=null,T.canvasInterval_=null,T.canvasTrack_=null,T.gain_={audioTrack:null,source:null,gainNode:null},T.captureVolume_=100,T.enableAutoRecoverCapture_=!!ge(m.enableAutoRecoverCapture)||m.enableAutoRecoverCapture,T.enableAutoRecoverOther_=!tr(m.enableAutoRecoverOther)||m.enableAutoRecoverOther,T.log_.info("stream created: ".concat(T.id_," autoRecover: ").concat(T.enableAutoRecoverCapture_)),T.isAIDenoiser=!1,T}return Ie(I,[{key:"initState",value:function(){this.isAddingTrack_=!1,this.isRemovingTrack_=!1,this.setIsReadyToPublish(!1),this.setPublishState(Gb)}},{key:"installEvents",value:function(){le(Qe(I.prototype),"installEvents",this).call(this),Q.on(Wp,this.onVideoTrackStopped,this),Q.on(tc,this.onVideoTrackStopped,this),Q.on(Jp,this.onAudioTrackStopped,this),Q.on(qp,this.onAudioTrackStopped,this)}},{key:"uninstallEvents",value:function(){le(Qe(I.prototype),"uninstallEvents",this).call(this),Q.off(Wp,this.onVideoTrackStopped,this),Q.off(tc,this.onVideoTrackStopped,this),Q.off(Jp,this.onAudioTrackStopped,this),Q.off(qp,this.onAudioTrackStopped,this)}},{key:"initialize",value:function(){var m=this;return new Promise(function(T,v){if(ml())v(new ne({code:ee.INVALID_OPERATION,message:ie({key:fS})}));else{if(ge(m.audio_)){var C=new MediaStream;return ge(m.audioSource_)||(C.addTrack(m.audioSource_),m.updateAudioPlayingState(!0)),ge(m.videoSource_)||(C.addTrack(m.videoSource_),m.updateVideoPlayingState(!0)),m.setMediaStream(C),ke.logSuccessEvent({userId:m.client_?m.client_.getUserId():m.userId_,eventType:Ys,kind:"custom"}),m.setIsReadyToPublish(!0),T()}m.screen_?(m.log_.info("initialize stream audio: "+m.audio_+" screenAudio: "+m.screenAudio_+" screen: "+m.screen_),gF({audio:m.audio_,screenAudio:m.screenAudio_,microphoneId:m.microphoneId_,width:m.screenProfile_.width,height:m.screenProfile_.height,frameRate:m.screenProfile_.frameRate,sampleRate:m.audioProfile_.sampleRate,channelCount:m.audioProfile_.channelCount,autoGainControl:m.audioProfile_.autoGainControl,noiseSuppression:m.audioProfile_.noiseSuppression,echoCancellation:m.audioProfile_.echoCancellation}).then(function(O){m.setMediaStream(O),m.updateAudioPlayingState(m.audio_||m.screenAudio_),m.updateVideoPlayingState(!0);var N=m.getVideoTrack();return N.applyConstraints&&N.applyConstraints({frameRate:{min:m.screenProfile_.frameRate,ideal:m.screenProfile_.frameRate},width:m.screenProfile_.width,height:m.screenProfile_.height}).catch(function(j){m.warn("screen applyConstraints failed: ".concat(j))}),m.listenForScreenSharingStopped(N),m.setVideoContentHint(pb),m.updateDeviceIdInUse(),m.setIsReadyToPublish(!0),m.log_.info(JSON.stringify(N.getSettings())),ke.logSuccessEvent({userId:m.client_?m.client_.getUserId():m.userId_,eventType:Ys,kind:"getDisplayMedia"}),T()}).catch(function(O){ke.logFailedEvent({userId:m.client_?m.client_.getUserId():m.userId_,eventType:Ys,kind:"getDisplayMedia",error:O}),m.log_.error("getDisplayMedia error observed "+O),v(O instanceof ne?O:new ne({code:ee.INITIALIZE_FAILED,name:O.name,message:O.message}))})):(Q.emit(Vp,{stream:m,audio:m.audio_,video:m.video_}),m.log_.info("initialize stream audio: "+m.audio_+" video: "+m.video_),Bv({audio:m.audio_,video:m.video_,facingMode:m.facingMode_,cameraId:m.cameraId_,microphoneId:m.microphoneId_,width:m.videoProfile_.width,height:m.videoProfile_.height,frameRate:m.videoProfile_.frameRate,sampleRate:m.audioProfile_.sampleRate,channelCount:m.audioProfile_.channelCount,autoGainControl:m.audioProfile_.autoGainControl,noiseSuppression:m.audioProfile_.noiseSuppression,echoCancellation:m.audioProfile_.echoCancellation,useExact:!0,retryWhenExactFailed:!0}).then(function(O){return Q.emit(jp,{stream:m,audio:m.audio_,video:m.video_}),m.setMediaStream(O),O.getTracks().forEach(function(N){if(yo){var j=N.getSettings();m.log_.debug("".concat(N.kind," settings: ").concat(JSON.stringify(j))),N.kind===xe&&(m.videoSetting_=j)}HV&&m.log_.info("".concat(N.kind," capabilities: ").concat(lo(N.getCapabilities(),Qf)))}),m.updateAudioPlayingState(m.audio_),m.updateVideoPlayingState(m.video_),m.updateDeviceIdInUse(),m.log_.info("gotStream hasAudio: "+m.hasAudio()+" hasVideo: "+m.hasVideo()),m.setIsReadyToPublish(!0),ke.logSuccessEvent({userId:m.client_?m.client_.getUserId():m.userId_,eventType:Ys,kind:"getUserMedia"}),T()}).catch(function(O){Q.emit(Bp,{stream:m,audio:m.audio_,video:m.video_,error:O}),ke.logFailedEvent({userId:m.client_?m.client_.getUserId():m.userId_,eventType:Ys,kind:"getUserMedia",error:O}),m.log_.error("getUserMedia error observed "+O),v(O)}))}})}},{key:"listenForScreenSharingStopped",value:function(m){var T=this;m.addEventListener("ended",function(v){T.log_.info("screen sharing was stopped because the video track is ended"),T.emitter_.emit(zV)})}},{key:"muteAudio",value:function(){var m=le(Qe(I.prototype),"muteAudio",this).call(this);return m&&(this.log_.info("localStream mute audio"),this.sendMutedFlag(Ee,!0)),m}},{key:"muteVideo",value:function(){var m=le(Qe(I.prototype),"muteVideo",this).call(this);return m&&(this.log_.info("localStream mute video"),this.sendMutedFlag(xe,!0)),m}},{key:"unmuteAudio",value:function(){var m=le(Qe(I.prototype),"unmuteAudio",this).call(this);return m&&(this.log_.info("localStream unmute audio"),this.sendMutedFlag(Ee,!1)),m}},{key:"unmuteVideo",value:function(){var m=le(Qe(I.prototype),"unmuteVideo",this).call(this);return m&&(this.log_.info("localStream unmute video"),this.sendMutedFlag(xe,!1)),m}},{key:"sendMutedFlag",value:function(m,T){this.setMuteState(m,T);var v=this.getConnection();if(v){v.sendMutedFlag(this.muteState_,this);var C=v.getUserId(),O=v.getTinyId(),N="".concat(T?en:br," local ").concat(m," track");mn(C,{eventId:m===Ee?T?VU:BU:T?jU:FU,eventDesc:N,timestamp:rn(),userId:C,tinyId:O})}}},{key:"setMuteState",value:function(m,T){this.muteState_[m]=T,this.log_.info("set ".concat(m," muted state: [").concat(T?"mute":"unmute","]"))}},{key:"setAudioProfile",value:(x=H(f().mark(function m(T){var v,C,O;return f().wrap(function(N){for(;;)switch(N.prev=N.next){case 0:if(G(T)==="object"?v=T:(v=Vx.get(T))===void 0&&(v=Vx.get("standard")),this.log_.info("setAudioProfile: "+JSON.stringify(v)),!(C=this.getAudioTrack())){N.next=6;break}return N.next=6,C.applyConstraints(v);case 6:if(O=this.audioProfile_.bitrate!==v.bitrate,this.audioProfile_=q(q({},this.audioProfile_),v),!O||!this.connection_){N.next=12;break}return N.next=11,this.connection_.setBandwidth({bandwidth:this.audioProfile_.bitrate,type:Ee});case 11:this.connection_.sendMediaSettings(this);case 12:case"end":return N.stop()}},m,this)})),function(m){return x.apply(this,arguments)})},{key:"setVideoProfile",value:(k=H(f().mark(function m(T){var v,C,O,N;return f().wrap(function(j){for(;;)switch(j.prev=j.next){case 0:if(!this.connection_||Uk()){j.next=2;break}throw new ne({code:ee.NOT_SUPPORTED,message:ie({key:N3})});case 2:if(_i(T)?C=q(q({},this.videoProfile_),T):Bt(T)&&(C=Hv.get(T),ge(C)&&(C=Hv.get("480p_2"))),(v=this.client_)!==null&&v!==void 0&&v.get2k4kFlag()&&(this.client_.get2k4kFlag()!==1&&!this.screen_&&C.height*C.width>=3686400?(C.width=1920,C.height=1080,this.log_.warn(tS)):Ei.handleFunctionState({fnName:"2K_4K"})),C&&C.width*C.height>921600&&x4&&(C.width=1280,C.height=720,this.log_.warn("reset to 1280 * 720 on iOS 13~14")),this.log_.info("setVideoProfile "+JSON.stringify(C)),!(O=this.getVideoTrack())){j.next=10;break}return j.next=10,O.applyConstraints(C);case 10:if(N=this.videoProfile_.bitrate!==C.bitrate,this.videoProfile_=C,!N||!this.connection_){j.next=16;break}return j.next=15,this.connection_.setBandwidth({bandwidth:C.bitrate,type:xe,videoType:ju});case 15:this.connection_.sendMediaSettings(this);case 16:case"end":return j.stop()}},m,this)})),function(m){return k.apply(this,arguments)})},{key:"getVideoBitrate",value:function(){return this.screen_?this.screenProfile_.bitrate:this.videoProfile_.bitrate}},{key:"getAudioBitrate",value:function(){return this.audioProfile_.bitrate}},{key:"setScreenProfile",value:function(m){var T=m;Bt(m)&&(T=Gv.get(m)||Gv.get("1080p")),this.log_.info("setScreenProfile "+JSON.stringify(m)),this.screenProfile_=T}},{key:"getVideoProfile",value:function(){return this.screen_?this.screenProfile_:this.videoProfile_}},{key:"getAudioProfile",value:function(){return this.audioProfile_}},{key:"setVideoContentHint",value:function(m){var T=this.getVideoTrack();T&&"contentHint"in T&&(this.log_.info("set video track contentHint to: "+m),T.contentHint=m,T.contentHint!==m&&this.log_.warn("Invalid video track contentHint: "+m))}},{key:"switchDevice",value:(p=H(f().mark(function m(T,v){var C,O,N,j,_,b,R,P,V,S,h,y,A,D,U,K,J,ce;return f().wrap(function(ae){for(;;)switch(ae.prev=ae.next){case 0:if(this.mediaStream_&&this.cameraId_!==v&&this.facingMode_!==v){ae.next=2;break}return ae.abrupt("return");case 2:if(O=T===xe,!(C=T===Ee)||v!==this.microphoneId_){ae.next=11;break}if(v===Ju){ae.next=7;break}return ae.abrupt("return");case 7:return ae.next=9,$V(this.microphoneGroupId_,this.microphoneLabel_);case 9:if(!ae.sent){ae.next=11;break}return ae.abrupt("return");case 11:return this.setIsReadyToPublish(!1),this.log_.info("switchDevice "+T+" to: "+v),C&&(N=this.getAudioTrack(),j=this.getMicrophoneTrackMixed(),N&&N.stop(),j&&j.stop()),O&&((_=this.getVideoTrack())&&_.stop(),vp&&(b=this.getAudioTrack())&&(this.log_.info("stop audio track first in huawei env"),b.stop())),ae.prev=15,ae.next=18,Bv({audio:C||vp,video:O,facingMode:v===hb||v===fb?v:void 0,cameraId:O?v:this.cameraId_,microphoneId:C?v:this.microphoneId_,width:this.videoProfile_.width,height:this.videoProfile_.height,frameRate:this.videoProfile_.frameRate,sampleRate:this.audioProfile_.sampleRate,channelCount:this.audioProfile_.channelCount,useExact:!0,retryWhenExactFailed:!1});case 18:if(R=ae.sent,P=null,!C){ae.next=25;break}(V=R.getAudioTracks()[0])&&this.isAudioTrackMixed()?(S=this.getAudioTrack(),h=xt.AudioMixerPlugin.getAudioTrackMap(),y=xt.AudioMixerPlugin.mix({targetTrack:V,sourceList:h.get(S.id).sourceList,trackList:h.get(S.id).trackList}),P=y):P=V,ae.next=34;break;case 25:if(!(P=R.getVideoTracks()[0])||!this.isVideoTrackBeautified()){ae.next=30;break}return ae.next=29,this.generateBeautyTrack(P);case 29:P=ae.sent;case 30:if(!(A=R.getAudioTracks()[0])||!vp){ae.next=34;break}return ae.next=34,this.replaceTrack(A);case 34:return ae.next=36,this.replaceTrack(P);case 36:this.updateDeviceIdInUse(),(D=this.getConnection())&&(U=D.getUserId(),K=D.getTinyId(),J=GU,ce="switch camera",C&&(J=zU,ce="switch microphone"),mn(U,{eventId:J,eventDesc:ce,timestamp:rn(),userId:U,tinyId:K})),this.log_.info("switch ".concat(C?"microphone":"camera"," success ")),C&&(this.audio_=!0),O&&(this.video_=!0,v!==fb&&v!==hb||(this.facingMode_=v)),this.setIsReadyToPublish(!0),ae.next=50;break;case 45:throw ae.prev=45,ae.t0=ae.catch(15),this.log_.error(ae.t0),C?this.recoverCapture({audio:!0,video:!1,microphoneId:this.microphoneId_}):this.recoverCapture({audio:!1,video:!0,cameraId:this.cameraId_,facingMode:this.facingMode_}),ae.t0;case 50:case"end":return ae.stop()}},m,this,[[15,45]])})),function(m,T){return p.apply(this,arguments)})},{key:"addTrack",value:(u=H(f().mark(function m(T){var v,C,O;return f().wrap(function(N){for(;;)switch(N.prev=N.next){case 0:if(N.prev=0,T.kind===xe&&yo&&(v=T.getSettings(),!this.videoSetting_||v.width===this.videoSetting_.width&&v.height===this.videoSetting_.height||this.log_.warn("video resolution of the track (".concat(v.width," x ").concat(v.height,") shall be kept the same as the previous: ").concat(this.videoSetting_.width," x ").concat(this.videoSetting_.height,". It may cause abnormal Cloud Recording."))),this.isAddingTrack_=!0,this.keepMuteState(T),this.mediaStream_.addTrack(T),!(C=this.getConnection())){N.next=11;break}return O=null,T.kind===xe&&(il||rl)&&MS(T)&&(O=this.getCanvasTrack()),N.next=11,C.addTrack(O||T,this);case 11:T.kind===Ee?(this.audio_=!0,this.updateAudioPlayingState(!0),this.captureVolume_!==100&&this.setAudioCaptureVolume(this.captureVolume_)):(this.video_=!0,this.updateVideoPlayingState(!0)),this.isAddingTrack_=!1,N.next=20;break;case 15:throw N.prev=15,N.t0=N.catch(0),this.mediaStream_.removeTrack(T),this.isAddingTrack_=!1,N.t0;case 20:case"end":return N.stop()}},m,this,[[0,15]])})),function(m){return u.apply(this,arguments)})},{key:"removeTrack",value:(l=H(f().mark(function m(T){var v;return f().wrap(function(C){for(;;)switch(C.prev=C.next){case 0:if(C.prev=0,this.isRemovingTrack_=!0,!(v=this.getConnection())){C.next=17;break}if(T.kind!==xe||!il&&!rl||!this.canvasTrack_){C.next=10;break}return C.next=7,v.removeTrack(this.canvasTrack_,this);case 7:this.clearCanvas(),C.next=17;break;case 10:if(T.kind!==Ee||!this.gain_.audioTrack){C.next=15;break}return C.next=13,v.removeTrack(this.gain_.audioTrack,this);case 13:C.next=17;break;case 15:return C.next=17,v.removeTrack(T,this);case 17:this.mediaStream_.removeTrack(T),T.kind===Ee?(this.audio_=!1,this.updateAudioPlayingState(!1),this.stopGainNode()):(this.video_=!1,this.updateVideoPlayingState(!1)),this.isRemovingTrack_=!1,C.next=26;break;case 22:throw C.prev=22,C.t0=C.catch(0),this.isRemovingTrack_=!1,C.t0;case 26:case"end":return C.stop()}},m,this,[[0,22]])})),function(m){return l.apply(this,arguments)})},{key:"replaceTrack",value:(s=H(f().mark(function m(T){var v,C,O;return f().wrap(function(N){for(;;)switch(N.prev=N.next){case 0:if(T.kind===xe&&yo&&(v=T.getSettings(),!this.videoSetting_||v.width===this.videoSetting_.width&&v.height===this.videoSetting_.height||this.log_.warn("video resolution of the track (".concat(v.width," x ").concat(v.height,") shall be kept the same as the previous: ").concat(this.videoSetting_.width," x ").concat(this.videoSetting_.height,". It may cause abnormal Cloud Recording."))),this.keepMuteState(T),C=this.mediaStream_,T.kind!==Ee){N.next=12;break}if(C.removeTrack(C.getAudioTracks()[0]),C.addTrack(T),le(Qe(I.prototype),"restartAudio",this).call(this),!this.gain_.gainNode){N.next=10;break}return this.reconnectGainNode(T),N.abrupt("return");case 10:N.next=15;break;case 12:C.removeTrack(C.getVideoTracks()[0]),C.addTrack(T),le(Qe(I.prototype),"restartVideo",this).call(this);case 15:if(!(O=this.getConnection())){N.next=21;break}if(T.kind!==xe||!il&&!rl||!this.canvasTrack_){N.next=19;break}return N.abrupt("return");case 19:return N.next=21,O.replaceTrack(T,this);case 21:case"end":return N.stop()}},m,this)})),function(m){return s.apply(this,arguments)})},{key:"recoverCapture",value:(a=H(f().mark(function m(T){var v,C,O,N,j,_,b,R,P,V,S,h,y,A,D,U,K;return f().wrap(function(J){for(;;)switch(J.prev=J.next){case 0:if(!(!this.mediaStream_||!this.enableAutoRecoverCapture_||T.audio&&!T.video&&this.isAudioRecovering_||T.video&&!T.audio&&this.isVideoRecovering_)){J.next=2;break}return J.abrupt("return");case 2:return T.audio&&(this.isAudioRecovering_=!0),T.video&&(this.isVideoRecovering_=!0),this.log_.warn("recoverCapture() trying "+JSON.stringify(T)),v=this.audio_&&T.audio,C=this.video_&&T.video,J.prev=7,J.next=10,xt.getCameras();case 10:return O=J.sent,J.next=13,xt.getMicrophones();case 13:if(N=J.sent,C&&O.length===0&&(C=!1,this.log_.warn("recoverCapture() video flag is true, but no camera detected, set video to false")),v&&N.length===0&&(v=!1,this.log_.warn("recoverCapture() audio flag is true, but no microphone detected, set audio to false")),v||C){J.next=21;break}return T.audio&&(this.isAudioRecovering_=!1),T.video&&(this.isVideoRecovering_=!1),this.log_.warn("recoverCapture() both audio and video are false, aborted"),J.abrupt("return");case 21:return j=T&&O.findIndex(function(ce){return ce.deviceId===T.cameraId})>=0,_=T&&N.findIndex(function(ce){return ce.deviceId===T.microphoneId})>=0,v&&((b=this.getAudioTrack())===null||b===void 0||b.stop()),C&&((R=this.getVideoTrack())===null||R===void 0||R.stop()),J.next=27,Bv({audio:v,video:C,cameraId:j?T.cameraId:void 0,microphoneId:_?T.microphoneId:void 0,facingMode:this.facingMode_,width:this.videoProfile_.width,height:this.videoProfile_.height,frameRate:this.videoProfile_.frameRate,sampleRate:this.audioProfile_.sampleRate,channelCount:this.audioProfile_.channelCount});case 27:P=J.sent,V=P.getTracks(),S=0;case 30:if(!(S<V.length)){J.next=57;break}if((h=V[S]).kind!==Ee||!this.isAudioTrackMixed()){J.next=43;break}if(y=this.getAudioTrack(),A=xt.AudioMixerPlugin.getAudioTrackMap(),(D=A.get(y.id)).hasMicrophone){J.next=39;break}return h.stop(),J.abrupt("continue",54);case 39:return U=xt.AudioMixerPlugin.mix({targetTrack:h,sourceList:D.sourceList,trackList:D.trackList}),J.next=42,this.replaceTrack(U);case 42:return J.abrupt("continue",54);case 43:if(h.kind!==xe||!this.isVideoTrackBeautified()){J.next=50;break}return J.next=46,this.generateBeautyTrack(h);case 46:return K=J.sent,J.next=49,this.replaceTrack(K);case 49:return J.abrupt("continue",54);case 50:return J.next=52,this.replaceTrack(h);case 52:if(h.readyState!=="ended"){J.next=54;break}throw new Error("new track is failed, muted ".concat(h.muted," readyState ").concat(h.readyState));case 54:S++,J.next=30;break;case 57:this.updateDeviceIdInUse(),ke.logSuccessEvent({userId:this.client_?this.client_.getUserId():this.userId_,eventType:Mb}),T.audio&&(this.isAudioRecovering_=!1),T.video&&(this.isVideoRecovering_=!1),this.log_.warn("recoverCapture() successfully"),this.emitter_.emit(qV,{isCamera:T.video,isMicrophone:T.audio,cameraId:this.cameraId_,microphoneId:this.microphoneId_}),J.next=71;break;case 65:throw J.prev=65,J.t0=J.catch(7),T.audio&&(this.isAudioRecovering_=!1),T.video&&(this.isVideoRecovering_=!1),this.log_.warn("recoverCapture() failed, "+J.t0),J.t0;case 71:case"end":return J.stop()}},m,this,[[7,65]])})),function(m){return a.apply(this,arguments)})},{key:"updateDeviceIdInUse",value:function(){var m=this;if(!this.mediaStream_)return this.cameraId_="",this.cameraGroupId_="",this.microphoneId_="",void(this.microphoneGroupId_="");yo&&this.mediaStream_.getTracks().forEach(function(C){if(C.kind===Ee&&m.isAudioTrackMixed()){var O=m.getMicrophoneTrackMixed();if(O){var N=O.getSettings(),j=N.deviceId,_=N.groupId;j&&(m.microphoneId_=j,m.microphoneGroupId_=_,m.microphoneLabel_=O.label)}}else if(C.kind===xe&&m.isVideoTrackBeautified()){var b=m.getBeautyOriginTrack();if(b){var R=b.getSettings(),P=R.deviceId,V=R.groupId;P&&(m.cameraId_=P,m.cameraGroupId_=V)}}else{var S=C.getSettings(),h=S.deviceId,y=S.groupId;h&&(C.kind===Ee?(m.microphoneId_=h,m.microphoneGroupId_=y,m.microphoneLabel_=C.label):C.kind!==xe||m.screen_||(m.cameraId_=h,m.cameraGroupId_=y))}});var T=this.mediaStream_.getAudioTracks(),v=this.mediaStream_.getVideoTracks();T&&T.length===0&&(this.microphoneId_="",this.microphoneGroupId_=""),v&&v.length===0&&(this.cameraId_="",this.cameraGroupId_="")}},{key:"isAudioTrackMixed",value:function(){if(xt.AudioMixerPlugin){var m=xt.AudioMixerPlugin.getAudioTrackMap(),T=this.getAudioTrack();if(m&&T&&m.has(T.id))return!0}return!1}},{key:"getMicrophoneTrackMixed",value:function(){if(xt.AudioMixerPlugin){var m=xt.AudioMixerPlugin.getAudioTrackMap(),T=this.getAudioTrack();if(m&&T&&m.has(T.id)){var v=m.get(T.id);return v.hasMicrophone?v.microphoneTrack:null}}return null}},{key:"isVideoTrackBeautified",value:function(){if(xt.beautyTrackMap){var m=xt.beautyTrackMap,T=this.getVideoTrack();if(T&&m.has(T.id))return!0}return!1}},{key:"getBeautyOriginTrack",value:function(){if(xt.beautyTrackMap){var m=xt.beautyTrackMap,T=this.getVideoTrack();if(T&&m.has(T.id)){var v=m.get(T.id);if(v.originTrack)return v.originTrack}}return null}},{key:"generateBeautyTrack",value:(c=H(f().mark(function m(T){var v,C,O,N;return f().wrap(function(j){for(;;)switch(j.prev=j.next){case 0:if(v=null,C=this.getVideoTrack(),O=xt.beautyTrackMap.get(C.id),N=O.param,O.type){j.next=8;break}v=O.pluginInstance.generateBeautyTrack(T),j.next=22;break;case 8:j.t0=O.type,j.next=j.t0==="beauty"?11:j.t0==="virtual"?13:j.t0==="mixed"?17:21;break;case 11:return v=O.pluginInstance.generateBeautyTrack(T),j.abrupt("break",22);case 13:return j.next=15,O.pluginInstance.generateVirtualTrack({videoTrack:T,type:N.type,img:N.img});case 15:case 19:return v=j.sent,j.abrupt("break",22);case 17:return j.next=19,O.pluginInstance.generateMixedTrack({videoTrack:T,type:N.type,img:N.img});case 21:return j.abrupt("break",22);case 22:return O.pluginInstance.deleteSource(C.id),this.log_.info("regenerate beauty track, track id = ".concat(T.id)),j.abrupt("return",v);case 25:case"end":return j.stop()}},m,this)})),function(m){return c.apply(this,arguments)})},{key:"getScreen",value:function(){return this.screen_}},{key:"hasScreenTrack",value:function(){if(this.screen_)return!0;var m=this.getVideoTrack();return!!m&&(m.contentHint===pb||m.contentHint===AM)}},{key:"getVideo",value:function(){return this.video_}},{key:"getAudio",value:function(){return this.audio_}},{key:"getCameraId",value:function(){return this.cameraId_}},{key:"getMicrophoneId",value:function(){return this.microphoneId_}},{key:"getMicrophoneGroupId",value:function(){return this.microphoneGroupId_}},{key:"getIsReadyToPublish",value:function(){return this.isReadyToPublish_}},{key:"setIsReadyToPublish",value:function(m){this.isReadyToPublish_=m}},{key:"setPublishState",value:function(m){this.publishState_=m}},{key:"setBeautyStatus",value:function(m){this.beautyStatus_=!!m}},{key:"getBeautyStatus",value:function(){return this.beautyStatus_}},{key:"syncMuteState",value:function(){var m=this.getAudioTrack(),T=this.getVideoTrack();if(m){var v=!m.enabled;this.setMuteState(Ee,v)}if(T){var C=!T.enabled;this.setMuteState(xe,C)}this.connection_&&this.connection_.sendMutedFlag(this.muteState_,this)}},{key:"keepMuteState",value:function(m){m instanceof window.MediaStreamTrack&&this.muteState_[m.kind]&&(m.enabled=!1,this.log_.warn("prev ".concat(m.kind," track is muted, keep mute state")))}},{key:"onVideoTrackStopped",value:(o=H(f().mark(function m(T){var v,C,O=this;return f().wrap(function(N){for(;;)switch(N.prev=N.next){case 0:if(v=T.stream,C=T.type,v===this&&this.video_&&this.cameraId_&&QV(this.getVideoTrack())&&!this.isVideoRecovering_&&(C!==en||!Zs||!ea)){N.next=3;break}return N.abrupt("return");case 3:if(!(Date.now()-this.prevVideoRecoverTime_<Ku)){N.next=6;break}return setTimeout(function(){return O.onVideoTrackStopped({stream:v,type:C})},Ku),N.abrupt("return");case 6:C===en?setTimeout(function(){var j=O.getVideoTrack();j!=null&&j.muted&&document.visibilityState==="visible"&&O.recoverVideoCapture(C)},5e3):this.recoverVideoCapture(C);case 7:case"end":return N.stop()}},m,this)})),function(m){return o.apply(this,arguments)})},{key:"onAudioTrackStopped",value:(r=H(f().mark(function m(T){var v,C,O=this;return f().wrap(function(N){for(;;)switch(N.prev=N.next){case 0:if(v=T.stream,C=T.type,!(v!==this||!this.audio_||!this.microphoneId_||this.isAudioRecovering_||C===en&&Zs&&ea)){N.next=3;break}return N.abrupt("return");case 3:if(!(Date.now()-this.prevAudioRecoverTime_<Ku)){N.next=6;break}return setTimeout(function(){return O.onAudioTrackStopped({stream:v,type:C})},Ku),N.abrupt("return");case 6:C===en?setTimeout(function(){var j=O.getAudioTrack();j!=null&&j.muted&&document.visibilityState==="visible"&&O.recoverAudioCapture(C)},5e3):this.recoverAudioCapture(C);case 7:case"end":return N.stop()}},m,this)})),function(m){return r.apply(this,arguments)})},{key:"recoverAudioCapture",value:(i=H(f().mark(function m(T){return f().wrap(function(v){for(;;)switch(v.prev=v.next){case 0:return this.prevAudioRecoverTime_=Date.now(),ke.uploadEvent({log:"stat-local-audio-".concat(T),userId:this.userId_}),v.t0=this,v.next=5,this.getRecoverCaptureDeviceId(!1);case 5:v.t1=v.sent,v.t2={audio:!0,video:!1,microphoneId:v.t1},v.t0.recoverCapture.call(v.t0,v.t2);case 8:case"end":return v.stop()}},m,this)})),function(m){return i.apply(this,arguments)})},{key:"recoverVideoCapture",value:(n=H(f().mark(function m(T){return f().wrap(function(v){for(;;)switch(v.prev=v.next){case 0:return this.prevVideoRecoverTime_=Date.now(),ke.uploadEvent({log:"stat-local-video-".concat(T),userId:this.userId_}),v.t0=this,v.next=5,this.getRecoverCaptureDeviceId(!0);case 5:v.t1=v.sent,v.t2={audio:!1,video:!0,cameraId:v.t1},v.t0.recoverCapture.call(v.t0,v.t2);case 8:case"end":return v.stop()}},m,this)})),function(m){return n.apply(this,arguments)})},{key:"getRecoverCaptureDeviceId",value:(t=H(f().mark(function m(){var T,v,C,O,N=arguments;return f().wrap(function(j){for(;;)switch(j.prev=j.next){case 0:if(T=!(N.length>0&&N[0]!==void 0)||N[0],!(v=T?this.cameraId_:this.microphoneId_)||!this.enableAutoRecoverOther_){j.next=17;break}if(ma.has(v)?ma.set(v,ma.get(v)+1):ma.set(v,1),!((C=ma.get(v))>=3)){j.next=17;break}if(!T){j.next=12;break}return j.next=9,xt.getCameras();case 9:j.t0=j.sent.find(function(_){return!ma.has(_.deviceId)}),j.next=15;break;case 12:return j.next=14,xt.getMicrophones();case 14:j.t0=j.sent.find(function(_){return!ma.has(_.deviceId)});case 15:(O=j.t0)&&(this.log_.warn("".concat(T?"camera":"mic"," ").concat(v," capture fail ").concat(C," times, change new ").concat(O.deviceId)),v=O.deviceId);case 17:return j.abrupt("return",v);case 18:case"end":return j.stop()}},m,this)})),function(){return t.apply(this,arguments)})},{key:"setAudioVolume",value:function(m){le(Qe(I.prototype),"setAudioVolume",this).call(this,m)}},{key:"clearCanvas",value:function(){this.canvasInterval_&&(_t.clearTask(this.canvasInterval_),this.canvasInterval_=null,this.canvas_=null,this.canvasTrack_=null)}},{key:"getCanvasTrack",value:function(){var m=this;if(this.canvasTrack_)return this.canvasTrack_;this.log_.info("gen canvas track");var T=this.getVideoTrack().getSettings(),v=T.width,C=T.height,O=T.frameRate;this.canvas_=document.createElement("canvas");var N=this.canvas_.getContext("2d");this.canvas_.width=v,this.canvas_.height=C,this.canvasInterval_=_t.run(Yu,function(){if(m.hasVideo()){var _=m.getVideoTrack().getSettings();_.width===m.canvas_.width&&_.height===m.canvas_.height||(m.canvas_.width=_.width,m.canvas_.height=_.height)}m.videoPlayer_&&m.videoPlayer_.element_&&N.drawImage(m.videoPlayer_.element_,0,0,m.canvas_.width,m.canvas_.height)},{fps:Math.max(15,O)});var j=this.canvas_.captureStream();return this.canvasTrack_=j.getVideoTracks()[0],this.canvasTrack_}},{key:"setClient",value:function(m,T){m&&(this.log_.setUserId(m.getUserId()),this.log_.setSdkAppId(m.getSDKAppId()),T||this.syncMuteState()),this.client_=m}},{key:"setAudioCaptureVolume",value:function(){var m=this,T=arguments.length>0&&arguments[0]!==void 0?arguments[0]:100;if(!this.hasAudio()||T<0||!_m())return!1;if(this.captureVolume_===T)return!0;this.captureVolume_=T,this.log_.info("setCaptureVolume "+T),T/=100;var v=jS();if(this.gain_.gainNode)this.gain_.gainNode.gain.value=T;else{var C,O=new MediaStream;O.addTrack(this.getAudioTrack());var N=v.createMediaStreamDestination(),j=v.createMediaStreamSource(O),_=v.createGain();_.gain.value=T,j.connect(_),_.connect(N);var b=N.stream.getAudioTracks()[0],R=function(P){return m.log_.info("gained audio track ".concat(P))};b.onmute=function(){return R("muted")},b.onunmute=function(){return R("unmuted")},b.onended=function(){return R("ended")},this.gain_={source:j,audioTrack:b,gainNode:_},(C=this.connection_)===null||C===void 0||C.replaceTrack(b),le(Qe(I.prototype),"restartAudio",this).call(this)}return!0}},{key:"getGainedTrack",value:function(){return this.gain_.audioTrack}},{key:"reconnectGainNode",value:function(m){this.log_.warn("reconnect gain node");var T=new MediaStream;T.addTrack(m);var v=jS().createMediaStreamSource(T);v.connect(this.gain_.gainNode),this.gain_.source.disconnect(),this.gain_.source=v}},{key:"stopGainNode",value:function(){var m=this.gain_,T=m.audioTrack,v=m.source,C=m.gainNode;C&&(v.disconnect(),C.disconnect(),T.onmute=null,T.onunmute=null,T.onended=null,T.stop(),this.gain_={source:null,gainNode:null,audioTrack:null}),this.captureVolume_=100}},{key:"close",value:function(){this.setIsReadyToPublish(!1),this.stopGainNode(),le(Qe(I.prototype),"close",this).call(this)}},{key:"setIsAIDenoiser",value:function(m){this.isAIDenoiser=m}}]),I}(xx),Y(nt.prototype,"setAudioProfile",[wx],Object.getOwnPropertyDescriptor(nt.prototype,"setAudioProfile"),nt.prototype),Y(nt.prototype,"setVideoProfile",[Cx],Object.getOwnPropertyDescriptor(nt.prototype,"setVideoProfile"),nt.prototype),Y(nt.prototype,"setScreenProfile",[Ex],Object.getOwnPropertyDescriptor(nt.prototype,"setScreenProfile"),nt.prototype),Y(nt.prototype,"setVideoContentHint",[Rx],Object.getOwnPropertyDescriptor(nt.prototype,"setVideoContentHint"),nt.prototype),Y(nt.prototype,"switchDevice",[Ax],Object.getOwnPropertyDescriptor(nt.prototype,"switchDevice"),nt.prototype),Y(nt.prototype,"addTrack",[Px],Object.getOwnPropertyDescriptor(nt.prototype,"addTrack"),nt.prototype),Y(nt.prototype,"removeTrack",[Dx],Object.getOwnPropertyDescriptor(nt.prototype,"removeTrack"),nt.prototype),Y(nt.prototype,"replaceTrack",[Lx],Object.getOwnPropertyDescriptor(nt.prototype,"replaceTrack"),nt.prototype),Y(nt.prototype,"recoverCapture",[Ox],Object.getOwnPropertyDescriptor(nt.prototype,"recoverCapture"),nt.prototype),Y(nt.prototype,"setAudioCaptureVolume",[Mx,Nx],Object.getOwnPropertyDescriptor(nt.prototype,"setAudioCaptureVolume"),nt.prototype),nt),jx={voiceActivityDetection:!1},yF=(Ux=Lo({retries:1,timeout:0,onRetrying:function(e){this.log_.warn("connection timeout, retrying [".concat(e,"]"))},onError:function(e,t,n){e.message.includes("timeout")?(this.reset(),this.initialize(),t()):n(e)}}),kc=function(e){Et(j,e);var t,n,i,r,o,c,a,s,l,u,p,k,x,E,I,m,T,v,C,O,N=Rr(j);function j(_){var b;return X(this,j),(b=N.call(this,_)).localStream_=null,b.exchangeSDPTimeout_=-1,b.localAuxStream_=null,b.publishingStream_=null,b.isPublishingAuxStream_=!1,b.smallGenerator_=null,b.isSDPExchanging_=!1,b.ssrc_={audio:0,video:0,small:0,auxiliary:0},b.mediaSettings_={videoCodec:"",videoWidth:0,videoHeight:0,videoBps:0,videoFps:0,audioCodec:"opus",audioFs:0,audioChannel:0,audioBps:0,smallVideoWidth:0,smallVideoHeight:0,smallVideoFps:0,smallVideoBps:0,auxVideoWidth:0,auxVideoHeight:0,auxVideoFps:0,auxVideoBps:0},b.mixedAudioTrack_=null,b}return Ie(j,[{key:"isMainStreamPublished",get:function(){return!!this.localStream_}},{key:"isAuxStreamPublished",get:function(){return!!this.localAuxStream_}},{key:"publishState",get:function(){var _=this,b={audio:!1,bigVideo:!1,smallVideo:!1,auxVideo:!1};if(this.peerConnection_){var R,P,V,S,h=this.peerConnection_.getSenders();h&&(ki()?(b.audio=!((R=h[0])===null||R===void 0||!R.track),b.bigVideo=!((P=h[1])===null||P===void 0||!P.track),b.smallVideo=!((V=h[2])===null||V===void 0||!V.track),b.auxVideo=!((S=h[3])===null||S===void 0||!S.track)):h.forEach(function(y){y.track&&(y.track.kind===Ee?b.audio=!0:(b.bigVideo=!0,_.smallGenerator_&&(b.smallVideo=!0)))}))}return b}},{key:"initialize",value:function(){le(Qe(j.prototype),"initialize",this).call(this),this.installEvents()}},{key:"reset",value:function(){this.isReconnecting_&&this.stopReconnection(),this.closePeerConnection(),this.uninstallEvents(),this.clearExchangeSDPTimeout(),this.localStream_&&this.localStream_.clearCanvas()}},{key:"close",value:function(){le(Qe(j.prototype),"close",this).call(this),this.reset(),this.emitConnectionStateChangedEvent(an),this.smallGenerator_&&(this.smallGenerator_.destroy(),this.smallGenerator_=null)}},{key:"installEvents",value:function(){this.emitter_.on(et.ERROR,this.handleError,this),this.emitter_.on(et.CONNECTION_STATE_CHANGED,this.handleConnectionStateChange,this)}},{key:"uninstallEvents",value:function(){this.emitter_.off(et.ERROR,this.handleError,this),this.emitter_.off(et.CONNECTION_STATE_CHANGED,this.handleConnectionStateChange,this)}},{key:"publish",value:(O=H(f().mark(function _(b,R){var P,V,S,h;return f().wrap(function(y){for(;;)switch(y.prev=y.next){case 0:if(this.publishingStream_=b,this.isPublishingAuxStream_=R,V=b.getVideoTrack(),S=null,!V||R||!this.client_.getIsEnableSmallStream()){y.next=9;break}return this.smallGenerator_=new Kl(b),y.next=8,this.smallGenerator_.initialize();case 8:S=this.smallGenerator_.generateSmallVideoTrack(this.client_.smallStreamConfig_);case 9:if(h=b.getVideoProfile(),!this.client_.get2k4kFlag()){y.next=18;break}if(this.client_.get2k4kFlag()===1||b.getScreen()||!(h.height*h.width>=3686400)){y.next=18;break}return h.width=1920,h.height=1080,this.log_.warn(tS),y.next=18,b.setVideoProfile(h);case 18:if(!(Zi&&co()===115&&h.width*h.height<=230400)){y.next=22;break}return this.log_.warn("fallback video to 480p"),y.next=22,b.setVideoProfile("480p_2");case 22:if(this.updateMediaSettings(b,R),!gm()){y.next=33;break}if(!vi||T4!==11){y.next=29;break}return y.next=27,this.publishByAddTrack(b,S);case 27:y.next=31;break;case 29:return y.next=31,this.publishByTransceiver(b,S,R);case 31:y.next=35;break;case 33:return y.next=35,this.publishByAddTrack(b,S);case 35:return this.publishingStream_=null,this.isPublishingAuxStream_=!1,R?this.localAuxStream_=b:this.localStream_=b,(P=this.sei_)===null||P===void 0||P.handleEncodedStreams(),y.abrupt("return",b);case 40:case"end":return y.stop()}},_,this)})),function(_,b){return O.apply(this,arguments)})},{key:"publishByTransceiver",value:(C=H(f().mark(function _(b,R,P){var V,S,h,y,A,D,U;return f().wrap(function(K){for(;;)switch(K.prev=K.next){case 0:if(this.log_.info("publish by transceiver"),V=b.getMediaStream(),S=b.getAudioTrack(),h=b.getVideoTrack(),y=null,(il||rl)&&MS(h)&&(y=b.getCanvasTrack()),(A=this.peerConnection_.getTransceivers()).length!==0){K.next=16;break}return this.peerConnection_.addTransceiver(S||Ee,{direction:fi,streams:[V]}),this.peerConnection_.addTransceiver(P?xe:y||h||xe,{direction:fi,streams:[V]}),this.peerConnection_.addTransceiver(R||xe,{direction:fi,streams:[V]}),this.peerConnection_.addTransceiver(P?y||h:xe,{direction:fi,streams:[V]}),K.next=14,this.connect();case 14:K.next=46;break;case 16:if(D=[],!S){K.next=29;break}if(!A[0].sender.track){K.next=24;break}return this.mixAudioTrack(A[0].sender.track,S),K.next=22,A[0].sender.replaceTrack(this.mixedAudioTrack_);case 22:K.next=27;break;case 24:return K.next=26,A[0].sender.replaceTrack(S);case 26:D.push(0);case 27:return K.next=29,this.setBandwidth({bandwidth:b.getAudioBitrate(),type:Ee});case 29:if(!h){K.next=42;break}return U=P?3:1,K.next=33,A[U].sender.replaceTrack(y||h);case 33:return K.next=35,this.setBandwidth({bandwidth:b.getVideoBitrate(),type:xe,videoType:P?pt:ju});case 35:if(D.push(U),!R){K.next=42;break}return K.next=39,A[2].sender.replaceTrack(R);case 39:return K.next=41,this.setBandwidth({bandwidth:this.client_.smallStreamConfig.bitrate,type:xe,videoType:Mr});case 41:D.push(2);case 42:return K.next=44,this.setTransceiverDirection(fi,D);case 44:return K.next=46,this.doPublishChange();case 46:case"end":return K.stop()}},_,this)})),function(_,b,R){return C.apply(this,arguments)})},{key:"publishByAddTrack",value:(v=H(f().mark(function _(b,R){var P,V,S,h;return f().wrap(function(y){for(;;)switch(y.prev=y.next){case 0:return this.log_.info("publish by addtrack"),P=b.getMediaStream(),V=b.getAudioTrack(),S=b.getVideoTrack(),V&&this.peerConnection_.addTrack(V,P),S&&(this.peerConnection_.addTrack(S,P),R&&((h=new MediaStream).addTrack(R),this.peerConnection_.addTrack(R,h))),y.next=8,this.connect();case 8:case"end":return y.stop()}},_,this)})),function(_,b){return v.apply(this,arguments)})},{key:"unpublish",value:(T=H(f().mark(function _(b){var R,P,V,S;return f().wrap(function(h){for(;;)switch(h.prev=h.next){case 0:if(ki()){h.next=2;break}return h.abrupt("return",this.doUnpublish());case 2:if(R=b.getAudioTrack(),P=b===this.localAuxStream_,V=[],!this.peerConnection_){h.next=33;break}if(S=this.peerConnection_.getSenders(),!R){h.next=18;break}if(!this.mixedAudioTrack_){h.next=15;break}return this.log_.info("has mixed audioTrack, use another audioTrack"),h.next=12,S[0].replaceTrack(P?this.localStream_.getAudioTrack():this.localAuxStream_.getAudioTrack());case 12:this.destroyMixedAudioTrack(),h.next=18;break;case 15:return h.next=17,S[0].replaceTrack(null);case 17:V.push(0);case 18:if(!P){h.next=26;break}return h.next=21,S[3].replaceTrack(null);case 21:this.localAuxStream_=null,this.mediaSettings_=q(q({},this.mediaSettings_),{},{auxVideoBps:0,auxVideoFps:0,auxVideoWidth:0,auxVideoHeight:0}),V.push(3),h.next=33;break;case 26:return h.next=28,S[1].replaceTrack(null);case 28:return h.next=30,S[2].replaceTrack(null);case 30:this.localStream_=null,this.mediaSettings_=q(q({},this.mediaSettings_),{},{videoWidth:0,videoHeight:0,videoBps:0,videoFps:0,audioFs:0,audioChannel:0,audioBps:0,smallVideoWidth:0,smallVideoHeight:0,smallVideoFps:0,smallVideoBps:0}),V.push(1,2);case 33:if(!this.localStream_&&!this.localAuxStream_){h.next=40;break}return h.next=36,this.setTransceiverDirection(io,V);case 36:return h.next=38,this.doPublishChange();case 38:h.next=42;break;case 40:return h.next=42,this.doUnpublish();case 42:case"end":return h.stop()}},_,this)})),function(_){return T.apply(this,arguments)})},{key:"doPublishChange",value:(m=H(f().mark(function _(){var b,R;return f().wrap(function(P){for(;;)switch(P.prev=P.next){case 0:return b={state:this.publishState,constraintConfig:this.mediaSettings_},P.next=3,this.signalChannel_.sendWaitForResponse({command:bU,data:b,responseCommand:mt.PUBLISH_STATE_CHANGE_RESULT});case 3:R=P.sent,this.checkPublishResultCode(R.data.code,R.data.message);case 5:case"end":return P.stop()}},_,this)})),function(){return m.apply(this,arguments)})},{key:"doUnpublish",value:function(){var _=this;return this.signalChannel_.sendWaitForResponse({command:pk,commandDesc:"unpublish",responseCommand:mt.UNPUBLISH_RESULT}).then(function(){_.close()}).catch(function(){_.close()})}},{key:"updateMediaSettings",value:function(_,b){var R=this;this.localAuxStream_&&_===this.localAuxStream_&&(b=!0);var P=this.client_.getSystemResult().detail,V=P.isH264EncodeSupported,S=P.isVp8EncodeSupported;if(V?this.mediaSettings_.videoCodec="H264":S&&(this.mediaSettings_.videoCodec="VP8"),yo){var h=_.getMediaStream();h==null||h.getTracks().forEach(function(y){var A=y.getSettings();if(y.kind===Ee){var D=1;A.channelCount&&(D=A.channelCount),R.mediaSettings_.audioChannel=D,R.mediaSettings_.audioBps=1e3*_.getAudioBitrate(),R.mediaSettings_.audioFs=A.sampleRate}else if(y.kind===xe){if(b)return R.mediaSettings_.auxVideoWidth=A.width,R.mediaSettings_.auxVideoHeight=A.height,R.mediaSettings_.auxVideoFps=A.frameRate,void(R.mediaSettings_.auxVideoBps=1e3*_.getVideoBitrate());R.client_.getIsEnableSmallStream()&&(R.mediaSettings_.smallVideoWidth=R.client_.smallStreamConfig.width,R.mediaSettings_.smallVideoHeight=R.client_.smallStreamConfig.height,R.mediaSettings_.smallVideoFps=R.client_.smallStreamConfig.frameRate,R.mediaSettings_.smallVideoBps=1e3*R.client_.smallStreamConfig.bitrate),R.mediaSettings_.videoWidth=A.width,R.mediaSettings_.videoHeight=A.height,R.mediaSettings_.videoFps=A.frameRate,R.mediaSettings_.videoBps=1e3*_.getVideoBitrate()}})}else this.updateMediaSettingsFromProfile(_);this.log_.info("updateMediaSettings: "+JSON.stringify(this.mediaSettings_))}},{key:"updateMediaSettingsFromProfile",value:function(_){if(_){if(_.hasAudio()){var b=_.getAudioProfile();this.mediaSettings_.audioChannel=b.channelCount,this.mediaSettings_.audioBps=1e3*b.bitrate,this.mediaSettings_.audioFs=b.sampleRate}if(_.hasVideo()){var R=_.getVideoProfile();this.mediaSettings_.videoWidth=R.width,this.mediaSettings_.videoHeight=R.height,this.mediaSettings_.videoFps=R.frameRate,this.mediaSettings_.videoBps=1e3*R.bitrate}}}},{key:"sendMediaSettings",value:function(_){var b=this;this.updateMediaSettings(_),this.signalChannel_.sendWaitForResponse({command:UU,data:this.mediaSettings_,responseCommand:mt.UPDATE_CONSTRAINT_CONFIG_RES}).then(function(R){R.data.code!==0&&b.log_.warn(R.data.message)}).catch(this.log_.warn)}},{key:"addTrack",value:(I=H(f().mark(function _(b,R){var P,V;return f().wrap(function(S){for(;;)switch(S.prev=S.next){case 0:if(this.peerConnection_){S.next=2;break}return S.abrupt("return");case 2:if(V=R===this.localAuxStream_,this.log_.info("is adding ".concat(b.kind," track to current published local ").concat(V?pt:Xe," stream")),(P=this.sei_)===null||P===void 0||P.handleEncodedStreams(),!ki()){S.next=10;break}return S.next=8,this.addTrackByTransceiver(b,R);case 8:S.next=12;break;case 10:return S.next=12,this.addTrackBySender(b);case 12:mn(this.userId_,{eventId:b.kind===Ee?vk:mk,eventDesc:"add ".concat(b.kind," track to current published stream"),timestamp:rn(),userId:this.userId_,tinyId:this.tinyId_});case 13:case"end":return S.stop()}},_,this)})),function(_,b){return I.apply(this,arguments)})},{key:"addTrackByTransceiver",value:(E=H(f().mark(function _(b,R){var P,V,S,h;return f().wrap(function(y){for(;;)switch(y.prev=y.next){case 0:if(P=R===this.localAuxStream_,V=this.peerConnection_.getTransceivers(),b.kind!==Ee){y.next=13;break}if(!V[0].sender.track){y.next=9;break}return this.mixAudioTrack(V[0].sender.track,b),y.next=7,V[0].sender.replaceTrack(this.mixedAudioTrack_);case 7:y.next=11;break;case 9:return y.next=11,V[0].sender.replaceTrack(b);case 11:y.next=26;break;case 13:return S=P?3:1,y.next=16,V[S].sender.replaceTrack(b);case 16:if(S!==1||!this.client_.getIsEnableSmallStream()){y.next=23;break}return this.smallGenerator_=new Kl(this.localStream_),y.next=20,this.smallGenerator_.initialize();case 20:return h=this.smallGenerator_.generateSmallVideoTrack(this.client_.smallStreamConfig_),y.next=23,V[2].sender.replaceTrack(h);case 23:if(V[S].direction!==io){y.next=26;break}return y.next=26,this.setTransceiverDirection(fi,[S]);case 26:return this.updateMediaSettings(R,P),y.next=29,this.doPublishChange();case 29:case"end":return y.stop()}},_,this)})),function(_,b){return E.apply(this,arguments)})},{key:"addTrackBySender",value:(x=H(f().mark(function _(b){var R,P,V,S,h;return f().wrap(function(y){for(;;)switch(y.prev=y.next){case 0:if(!(ki()&&this.peerConnection_.getTransceivers().findIndex(function(A){return A.direction==="stopped"})>=0)){y.next=4;break}return this.log_.warn("transceiver is stopping, negotiate sdp first"),y.next=4,this.updateOffer(sn.REMOVE,b);case 4:if(!(R=this.peerConnection_.getSenders().find(function(A){return A.track&&A.track.kind===b.kind}))){y.next=11;break}return this.log_.warn("sender already exists, remove sender first"),P=R.track,this.removeSender(R),y.next=11,this.updateOffer(sn.REMOVE,P);case 11:if(V=this.localStream_.getMediaStream(),this.peerConnection_.addTrack(b,V),b.kind!==xe||!this.client_.getIsEnableSmallStream()){y.next=21;break}return this.smallGenerator_=new Kl(this.localStream_),y.next=17,this.smallGenerator_.initialize();case 17:S=this.smallGenerator_.generateSmallVideoTrack(this.client_.smallStreamConfig_),(h=new MediaStream).addTrack(S),this.peerConnection_.addTrack(S,h);case 21:return y.next=23,this.updateOffer(sn.ADD,b);case 23:case"end":return y.stop()}},_,this)})),function(_){return x.apply(this,arguments)})},{key:"isNeedToResetOfferOrder",value:function(){if(this.sdpSemantics_===Gf||!this.peerConnection_||!this.peerConnection_.localDescription)return!1;for(var _=this.peerConnection_.localDescription.sdp,b=Br(_),R=0;R<b.media.length;R++)if(b.media[R].mid===0&&b.media[R].type===xe)return!0;return!1}},{key:"removeSender",value:function(_){var b=null;ki()&&(b=this.peerConnection_.getTransceivers().find(function(R){return R.sender&&R.sender.track===_.track})),this.peerConnection_.removeTrack(_),b&&un(b.stop)&&(this.log_.info("stop transceiver"),b.stop())}},{key:"removeTrack",value:(k=H(f().mark(function _(b,R){return f().wrap(function(P){for(;;)switch(P.prev=P.next){case 0:if(this.peerConnection_){P.next=2;break}return P.abrupt("return");case 2:if(this.log_.info("is removing ".concat(b.kind," track from current published local ").concat(R===this.localAuxStream_?pt:Xe," stream")),!ki()){P.next=8;break}return P.next=6,this.removeTrackByTransceiver(b,R);case 6:P.next=10;break;case 8:return P.next=10,this.removeTrackBySender(b);case 10:mn(this.userId_,{eventId:b.kind===Ee?_k:gk,eventDesc:"remove ".concat(b.kind," track from current published stream"),timestamp:rn(),userId:this.userId_,tinyId:this.tinyId_});case 11:case"end":return P.stop()}},_,this)})),function(_,b){return k.apply(this,arguments)})},{key:"removeTrackByTransceiver",value:(p=H(f().mark(function _(b,R){var P,V,S;return f().wrap(function(h){for(;;)switch(h.prev=h.next){case 0:if(P=R===this.localAuxStream_,V=this.peerConnection_.getTransceivers(),b.kind!==Ee){h.next=13;break}if(!this.mixedAudioTrack_){h.next=9;break}return h.next=6,V[0].sender.replaceTrack(P?this.localStream_.getAudioTrack():this.localAuxStream_.getAudioTrack());case 6:this.destroyMixedAudioTrack(),h.next=11;break;case 9:return h.next=11,V[0].sender.replaceTrack(null);case 11:h.next=23;break;case 13:return S=P?3:1,h.next=16,V[S].sender.replaceTrack(null);case 16:if(S!==1||!this.smallGenerator_){h.next=21;break}return this.smallGenerator_.destroy(),this.smallGenerator_=null,h.next=21,V[2].sender.replaceTrack(null);case 21:return h.next=23,this.setTransceiverDirection(io,[S]);case 23:return this.updateMediaSettings(R,P),h.next=26,this.doPublishChange();case 26:case"end":return h.stop()}},_,this)})),function(_,b){return p.apply(this,arguments)})},{key:"setTransceiverDirection",value:(u=H(f().mark(function _(b,R){var P,V,S,h,y,A;return f().wrap(function(D){for(;;)switch(D.prev=D.next){case 0:if(Un){D.next=2;break}return D.abrupt("return");case 2:if(P=!1,V=!1,this.log_.info("setting transceiver ".concat(R.join(",")," direction to ").concat(b)),S=this.peerConnection_.getTransceivers(),R.forEach(function(U){S[U].direction!==b&&(S[U].direction=b,P=!0)}),!P){D.next=14;break}return this.log_.info("updating offer"),D.next=11,this.peerConnection_.createOffer();case 11:return h=D.sent,D.next=14,this.peerConnection_.setLocalDescription(h);case 14:if(y=-1,A=this.peerConnection_.remoteDescription.sdp.split(`\r
|
|
63
|
-
`).map(function(
|
|
64
|
-
`),!
|
|
65
|
-
`):h}),_}},{key:"updateAudioBandwidthRestriction",value:function(_,b){var R="AS";return
|
|
62
|
+
`,i.onclick=this.onQuestionClick.bind(this);var r=document.createElement("div");r.className=ev,r.innerText="".concat(oa()?"\u8BE6\u60C5 >":"Detail >"),r.onclick=this.onCollapseClick.bind(this);var o=t.content.firstChild,c=o.querySelector(".".concat(Rl));return c.appendChild(r),c.appendChild(i),c.appendChild(n),o}},{key:"addDiaLog",value:function(){LT()||(this.dialogNode_=this.createDiaLog(),document.body.appendChild(this.dialogNode_),this.dialogNode_.onclick=this.onConfirm.bind(this),this.dialogNode_.querySelector(".".concat(wo)).onclick=function(t){return t.stopPropagation()},this.bodyPosition_=document.body.style.position,document.body.style.position="fixed",_e.info("show autoplay dialog"),ke.uploadEvent({log:l5}))}},{key:"deleteDiaLog",value:function(){this.dialogNode_&&(document.body.removeChild(this.dialogNode_),document.body.style.position=this.bodyPosition_,this.dialogNode_=null)}},{key:"onConfirm",value:function(){_e.warn("confirm clicked, try resume stream"),Y.emit(rc),this.deleteDiaLog()}},{key:"onCollapseClick",value:function(){var t=this.dialogNode_.querySelector(".".concat(PT));t.style.visibility="".concat(this.showDetail_?"hidden":"visible"),t.style.height="".concat(this.showDetail_?0:"fit-content"),this.showDetail_=!this.showDetail_,this.isCollapseClicked_||ke.uploadEvent({log:d5}),this.isCollapseClicked_=!0}},{key:"onQuestionClick",value:function(){window.open(MT,"_blank"),this.isQuestionClicked_||ke.uploadEvent({log:h5}),this.isQuestionClicked_=!0}}]),e}(),VT=function(){function e(n){Q(this,e),this.stream_=n.stream,this.userId_=n.stream.getUserId(),this.log_=this.stream_.getLogger(),this.track_=n.track,this.div_=n.div,this.muted_=n.muted,this.objectFit_=n.objectFit,this.mirror_=n.mirror,this.emitter_=new Si,this.initializeElement(),this.state_="NONE",this.pausedRetryCount_=5}var t;return Ie(e,[{key:"isPlaying",get:function(){return this.state_===ao}},{key:"initializeElement",value:function(){var n=new MediaStream;n.addTrack(this.track_);var i=document.createElement(xe);i.srcObject=n,i.muted=!0;var r="width: 100%; height: 100%; object-fit: ".concat(this.objectFit_,";");this.mirror_&&(r+="transform: scaleX(-1);"),i.setAttribute("id","video_".concat(this.stream_.getId())),i.setAttribute("style",r),i.setAttribute("autoplay","autoplay"),i.setAttribute("playsinline","playsinline"),this.element_=i,OS===17&&this.initCanvasElement(r),this.div_&&this.div_.appendChild(this.canvas_||i),this.handleEvents()}},{key:"initCanvasElement",value:function(n){var i=this;if(this.track_&&!this.stream_.isRemote()){var r=document.createElement("canvas"),o=function(){var a,s=(a=i.track_)===null||a===void 0?void 0:a.getSettings();s&&s.width&&s.height&&(r.width=s.width,r.height=s.height)};o(),r.setAttribute("style",n);var c=r.getContext("2d");this.canvasTimerId_=mt.run("raf",function(){i.element_&&c&&(o(),c.drawImage(i.element_,0,0,r.width,r.height))},{backgroundTask:!1}),this.log_.warn("use canvas for playback"),this.canvas_=r}}},{key:"setRect",value:function(n){var i=n.width,r=n.height;this.element_&&(this.element_.style.width=i+"px",this.element_.style.height=r+"px")}},{key:"setMirror",value:function(n){this.element_&&(this.element_.style.transform=n?"scaleX(-1)":"",this.mirror_=n)}},{key:"setObjectFit",value:function(n){this.element_&&(this.element_.style.objectFit="".concat(n),this.objectFit_=n)}},{key:"play",value:(t=H(p().mark(function n(){var i;return p().wrap(function(r){for(;;)switch(r.prev=r.next){case 0:return r.prev=0,r.next=3,this.element_.play();case 3:r.next=11;break;case 5:if(r.prev=5,r.t0=r.catch(0),i=ae({key:np,data:{media:"Video",error:r.t0}}),this.log_.warn(i),!i.includes("NotAllowedError")){r.next=11;break}throw new te({code:Z.PLAY_NOT_ALLOWED,message:i});case 11:case"end":return r.stop()}},n,this,[[0,5]])})),function(){return t.apply(this,arguments)})},{key:"handleEvents",value:function(){this.handleElementEvent=this.handleElementEvent.bind(this),this.handleTrackEvent=this.handleTrackEvent.bind(this),this.element_.addEventListener(di,this.handleElementEvent),this.element_.addEventListener(Nt,this.handleElementEvent),this.element_.addEventListener(hi,this.handleElementEvent),this.element_.addEventListener(io,this.handleElementEvent),this.element_.addEventListener(Lf,this.handleElementEvent),this.track_.addEventListener(Nt,this.handleTrackEvent),this.track_.addEventListener(tn,this.handleTrackEvent),this.track_.addEventListener(Sr,this.handleTrackEvent),this.track_.readyState===Nt&&this.handleTrackEvent({type:Nt}),this.track_.muted&&this.handleTrackEvent({type:tn})}},{key:"handleElementEvent",value:function(n){var i=this;switch(n.type){case di:this.log_.info("video player is playing"),this.state_=ao,Y.emit(tc,{stream:this.stream_}),this.emitter_.emit(gn,{state:this.state_,reason:di}),this.interval_&&(mt.clearTask(this.interval_),this.interval_=null);break;case Nt:this.log_.info("video player is ended"),this.state_!==fi&&(this.state_=fi,this.emitter_.emit(gn,{state:this.state_,reason:Nt}));break;case hi:this.log_.info("video player is paused"),this.div_&&!document.getElementById(this.div_.id)&&this.log_.warn("video player has been remove, element ID: ".concat(this.div_.id)),this.state_=kr,this.emitter_.emit(gn,{state:this.state_,reason:hi}),this.pausedRetryCount_>0&&!LT()&&(this.log_.info("video player auto resume when video paused"),this.resume(),this.pausedRetryCount_--),gi&&(this.interval_=mt.run(function(){i.element_&&i.state_===kr&&i.resume()},{delay:3e3}));break;case io:if(this.element_&&this.element_.error){var r="".concat(Im(),"/").concat(aa().name,"/").concat(aa().version);this.log_.error("video player error observed. code: ".concat(this.element_.error.code," message: ").concat(this.element_.error.message," deviceInfo: ").concat(r)),ke.uploadEvent({log:"stat-".concat(this.stream_.getType(),"-video-").concat(Bb,"-").concat(this.element_.error.code,"-").concat(r),userId:this.userId_,error:this.element_.error})}break;case Lf:Y.emit(Wp,{stream:this.stream_})}}},{key:"handleTrackEvent",value:function(n){var i=n.type;switch(i){case Nt:this.log_.info("video track is ended"),Y.emit(qp,{stream:this.stream_,type:i}),this.state_!==fi&&(this.state_=fi,this.emitter_.emit(gn,{state:this.state_,reason:Nt}));break;case tn:this.log_.info("video track is unable to provide media output"),this.stream_.isRemote()||BS(),Y.emit(nc,{stream:this.stream_,type:i}),this.state_!==kr&&(this.state_=kr,this.emitter_.emit(gn,{state:this.state_,reason:tn}));break;case Sr:this.log_.info("video track is able to provide media output"),Y.emit(Gp,{stream:this.stream_}),this.state_===kr&&(this.state_=ao,this.emitter_.emit(gn,{state:this.state_,reason:Sr}))}}},{key:"unbindEvents",value:function(){this.element_&&(this.element_.removeEventListener(di,this.handleElementEvent),this.element_.removeEventListener(Nt,this.handleElementEvent),this.element_.removeEventListener(hi,this.handleElementEvent),this.element_.removeEventListener(io,this.handleElementEvent),this.element_.removeEventListener(Lf,this.handleElementEvent)),this.track_&&(this.track_.removeEventListener(Nt,this.handleTrackEvent),this.track_.removeEventListener(tn,this.handleTrackEvent),this.track_.removeEventListener(Sr,this.handleTrackEvent))}},{key:"stop",value:function(){this.unbindEvents(),this.element_&&(this.element_.remove(),this.element_.srcObject=null,this.element_=null),this.interval_&&mt.clearTask(this.interval_),this.canvasTimerId_&&mt.clearTask(this.canvasTimerId_),this.canvas_&&(this.canvas_.remove(),this.canvas_=null)}},{key:"resume",value:function(){return this.play()}},{key:"getVideoFrame",value:function(){var n=document.createElement("canvas");return n.width=this.element_.videoWidth,n.height=this.element_.videoHeight,n.getContext("2d").drawImage(this.element_,0,0),n.toDataURL("image/png")}},{key:"on",value:function(n,i){this.emitter_.on(n,i)}},{key:"getElement",value:function(){return this.element_?this.element_:null}},{key:"getTrack",value:function(){return this.track_}}]),e}(),nv=typeof ArrayBuffer!="undefined"&&typeof DataView!="undefined",p5=$n,m5=yr,v5=RangeError,jT=function(e){if(e===void 0)return 0;var t=p5(e),n=m5(t);if(t!==n)throw v5("Wrong length or index");return n},g5=Array,_5=Math.abs,Wr=Math.pow,y5=Math.floor,b5=Math.log,S5=Math.LN2,k5={pack:function(e,t,n){var i,r,o,c=g5(n),a=8*n-t-1,s=(1<<a)-1,l=s>>1,u=t===23?Wr(2,-24)-Wr(2,-77):0,f=e<0||e===0&&1/e<0?1:0,S=0;for((e=_5(e))!=e||e===1/0?(r=e!=e?1:0,i=s):(i=y5(b5(e)/S5),e*(o=Wr(2,-i))<1&&(i--,o*=2),(e+=i+l>=1?u/o:u*Wr(2,1-l))*o>=2&&(i++,o/=2),i+l>=s?(r=0,i=s):i+l>=1?(r=(e*o-1)*Wr(2,t),i+=l):(r=e*Wr(2,l-1)*Wr(2,t),i=0));t>=8;)c[S++]=255&r,r/=256,t-=8;for(i=i<<t|r,a+=t;a>0;)c[S++]=255&i,i/=256,a-=8;return c[--S]|=128*f,c},unpack:function(e,t){var n,i=e.length,r=8*i-t-1,o=(1<<r)-1,c=o>>1,a=r-7,s=i-1,l=e[s--],u=127&l;for(l>>=7;a>0;)u=256*u+e[s--],a-=8;for(n=u&(1<<-a)-1,u>>=-a,a+=t;a>0;)n=256*n+e[s--],a-=8;if(u===0)u=1-c;else{if(u===o)return n?NaN:l?-1/0:1/0;n+=Wr(2,t),u-=c}return(l?-1:1)*n*Wr(2,u-t)}},T5=Mt,BT=ai,x5=nn,FT=function(e){for(var t=T5(this),n=x5(t),i=arguments.length,r=BT(i>1?arguments[1]:void 0,n),o=i>2?arguments[2]:void 0,c=o===void 0?n:BT(o,n);c>r;)t[r++]=e;return t},Pl=re,rv=pe,iv=ye,I5=nv,HT=Yn,GT=Ln,zT=As,av=ue,Dl=oi,w5=$n,C5=yr,Ol=jT,WT=k5,E5=Ts,JT=Fa,R5=ii.f,A5=Pt.f,P5=FT,D5=hu,qT=Wi,O5=HT.PROPER,KT=HT.CONFIGURABLE,Co=Xe.get,XT=Xe.set,ov="ArrayBuffer",L5="DataView",QT="Wrong index",Wn=Pl.ArrayBuffer,or=Wn,Eo=or&&or.prototype,wr=Pl.DataView,ma=wr&&wr.prototype,YT=Object.prototype,M5=Pl.Array,Ll=Pl.RangeError,N5=rv(P5),U5=rv([].reverse),$T=WT.pack,ZT=WT.unpack,e1=function(e){return[255&e]},t1=function(e){return[255&e,e>>8&255]},n1=function(e){return[255&e,e>>8&255,e>>16&255,e>>24&255]},r1=function(e){return e[3]<<24|e[2]<<16|e[1]<<8|e[0]},V5=function(e){return $T(e,23,4)},j5=function(e){return $T(e,52,8)},Ml=function(e,t){A5(e.prototype,t,{get:function(){return Co(this)[t]}})},wi=function(e,t,n,i){var r=Ol(n),o=Co(e);if(r+t>o.byteLength)throw Ll(QT);var c=Co(o.buffer).bytes,a=r+o.byteOffset,s=D5(c,a,a+t);return i?s:U5(s)},Ci=function(e,t,n,i,r,o){var c=Ol(n),a=Co(e);if(c+t>a.byteLength)throw Ll(QT);for(var s=Co(a.buffer).bytes,l=c+a.byteOffset,u=i(+r),f=0;f<t;f++)s[l+f]=u[o?f:t-f-1]};if(I5){var i1=O5&&Wn.name!==ov;if(av(function(){Wn(1)})&&av(function(){new Wn(-1)})&&!av(function(){return new Wn,new Wn(1.5),new Wn(NaN),Wn.length!=1||i1&&!KT}))i1&&KT&>(Wn,"name",ov);else{(or=function(e){return Dl(this,Eo),new Wn(Ol(e))}).prototype=Eo;for(var sv,a1=R5(Wn),o1=0;a1.length>o1;)(sv=a1[o1++])in or||GT(or,sv,Wn[sv]);Eo.constructor=or}JT&&E5(ma)!==YT&&JT(ma,YT);var Nl=new wr(new or(2)),s1=rv(ma.setInt8);Nl.setInt8(0,2147483648),Nl.setInt8(1,2147483649),!Nl.getInt8(0)&&Nl.getInt8(1)||zT(ma,{setInt8:function(e,t){s1(this,e,t<<24>>24)},setUint8:function(e,t){s1(this,e,t<<24>>24)}},{unsafe:!0})}else Eo=(or=function(e){Dl(this,Eo);var t=Ol(e);XT(this,{bytes:N5(M5(t),0),byteLength:t}),iv||(this.byteLength=t)}).prototype,wr=function(e,t,n){Dl(this,ma),Dl(e,Eo);var i=Co(e).byteLength,r=w5(t);if(r<0||r>i)throw Ll("Wrong offset");if(r+(n=n===void 0?i-r:C5(n))>i)throw Ll("Wrong length");XT(this,{buffer:e,byteLength:n,byteOffset:r}),iv||(this.buffer=e,this.byteLength=n,this.byteOffset=r)},ma=wr.prototype,iv&&(Ml(or,"byteLength"),Ml(wr,"buffer"),Ml(wr,"byteLength"),Ml(wr,"byteOffset")),zT(ma,{getInt8:function(e){return wi(this,1,e)[0]<<24>>24},getUint8:function(e){return wi(this,1,e)[0]},getInt16:function(e){var t=wi(this,2,e,arguments.length>1?arguments[1]:void 0);return(t[1]<<8|t[0])<<16>>16},getUint16:function(e){var t=wi(this,2,e,arguments.length>1?arguments[1]:void 0);return t[1]<<8|t[0]},getInt32:function(e){return r1(wi(this,4,e,arguments.length>1?arguments[1]:void 0))},getUint32:function(e){return r1(wi(this,4,e,arguments.length>1?arguments[1]:void 0))>>>0},getFloat32:function(e){return ZT(wi(this,4,e,arguments.length>1?arguments[1]:void 0),23)},getFloat64:function(e){return ZT(wi(this,8,e,arguments.length>1?arguments[1]:void 0),52)},setInt8:function(e,t){Ci(this,1,e,e1,t)},setUint8:function(e,t){Ci(this,1,e,e1,t)},setInt16:function(e,t){Ci(this,2,e,t1,t,arguments.length>2?arguments[2]:void 0)},setUint16:function(e,t){Ci(this,2,e,t1,t,arguments.length>2?arguments[2]:void 0)},setInt32:function(e,t){Ci(this,4,e,n1,t,arguments.length>2?arguments[2]:void 0)},setUint32:function(e,t){Ci(this,4,e,n1,t,arguments.length>2?arguments[2]:void 0)},setFloat32:function(e,t){Ci(this,4,e,V5,t,arguments.length>2?arguments[2]:void 0)},setFloat64:function(e,t){Ci(this,8,e,j5,t,arguments.length>2?arguments[2]:void 0)}});qT(or,ov),qT(wr,L5);var vc={ArrayBuffer:or,DataView:wr},B5=Le,cv=pe,F5=ue,c1=Tt,u1=ai,H5=yr,G5=Ou,uv=vc.ArrayBuffer,lv=vc.DataView,l1=lv.prototype,d1=cv(uv.prototype.slice),z5=cv(l1.getUint8),W5=cv(l1.setUint8);B5({target:"ArrayBuffer",proto:!0,unsafe:!0,forced:F5(function(){return!new uv(2).slice(1,void 0).byteLength})},{slice:function(e,t){if(d1&&t===void 0)return d1(c1(this),e);for(var n=c1(this).byteLength,i=u1(e,n),r=u1(t===void 0?n:t,n),o=new(G5(this,uv))(H5(r-i)),c=new lv(this),a=new lv(o),s=0;i<r;)W5(a,s++,z5(c,i++));return o}}),Le({global:!0,constructor:!0,forced:!nv},{DataView:vc.DataView});var J5=Le,q5=Ga,K5=pe([].reverse),h1=[1,2];J5({target:"Array",proto:!0,forced:String(h1)===String(h1.reverse())},{reverse:function(){return q5(this)&&(this.length=this.length),K5(this)}});var X5=Vt,Q5=Mt,Y5=yn,$5=nn,Z5=TypeError,f1=function(e){return function(t,n,i,r){X5(n);var o=Q5(t),c=Y5(o),a=$5(o),s=e?a-1:0,l=e?-1:1;if(i<2)for(;;){if(s in c){r=c[s],s+=l;break}if(s+=l,e?s<0:a<=s)throw Z5("Reduce of empty array with no initial value")}for(;e?s>=0:a>s;s+=l)s in c&&(r=n(r,c[s],s,o));return r}},dv={left:f1(!1),right:f1(!0)},ej=dv.left,p1=pr,tj=Fs;Le({target:"Array",proto:!0,forced:!Ns("reduce")||!tj&&p1>79&&p1<83},{reduce:function(e){var t=arguments.length;return ej(this,e,t,t>1?arguments[1]:void 0)}});var nj=Ps,rj="ArrayBuffer",m1=vc.ArrayBuffer;Le({global:!0,constructor:!0,forced:re.ArrayBuffer!==m1},{ArrayBuffer:m1}),nj(rj);var ij=Le,v1=Ga,aj=yu,oj=at,g1=ai,sj=nn,cj=bn,uj=Cs,lj=tt,dj=Ha,hj=Ms("slice"),fj=lj("species"),hv=Array,pj=Math.max;ij({target:"Array",proto:!0,forced:!hj},{slice:function(e,t){var n,i,r,o=cj(this),c=sj(o),a=g1(e,c),s=g1(t===void 0?c:t,c);if(v1(o)&&(n=o.constructor,(aj(n)&&(n===hv||v1(n.prototype))||oj(n)&&(n=n[fj])===null)&&(n=void 0),n===hv||n===void 0))return dj(o,a,s);for(i=new(n===void 0?hv:n)(pj(s-a,0)),r=0;a<s;a++,r++)a in o&&uj(i,r,o[a]);return i.length=r,i}});var _1=re,mj=ue,vj=pe,gj=zt,_j=Au.trim,y1=s0,gc=_1.parseInt,b1=_1.Symbol,S1=b1&&b1.iterator,k1=/^[+-]?0x/i,yj=vj(k1.exec),T1=gc(y1+"08")!==8||gc(y1+"0x16")!==22||S1&&!mj(function(){gc(Object(S1))})?function(e,t){var n=_j(gj(e));return gc(n,t>>>0||(yj(k1,n)?16:10))}:gc;Le({global:!0,forced:parseInt!=T1},{parseInt:T1});var _n,Ro,Ul,fv={exports:{}},bj=nv,pv=ye,hn=re,x1=it,Vl=at,Ei=kt,mv=Dr,Sj=Xn,kj=Ln,vv=Qt,Tj=Pt.f,xj=Sn,jl=Ts,Ao=Fa,Ij=tt,wj=Ui,I1=Xe.enforce,Cj=Xe.get,Bl=hn.Int8Array,gv=Bl&&Bl.prototype,w1=hn.Uint8ClampedArray,C1=w1&&w1.prototype,Cr=Bl&&jl(Bl),sr=gv&&jl(gv),Ej=Object.prototype,_v=hn.TypeError,E1=Ij("toStringTag"),yv=wj("TYPED_ARRAY_TAG"),Rj="TypedArrayConstructor",Jr=bj&&!!Ao&&mv(hn.opera)!=="Opera",R1=!1,qr={Int8Array:1,Uint8Array:1,Uint8ClampedArray:1,Int16Array:2,Uint16Array:2,Int32Array:4,Uint32Array:4,Float32Array:4,Float64Array:8},bv={BigInt64Array:8,BigUint64Array:8},A1=function(e){var t=jl(e);if(Vl(t)){var n=Cj(t);return n&&Ei(n,Rj)?n.TypedArrayConstructor:A1(t)}},P1=function(e){if(!Vl(e))return!1;var t=mv(e);return Ei(qr,t)||Ei(bv,t)};for(_n in qr)(Ul=(Ro=hn[_n])&&Ro.prototype)?I1(Ul).TypedArrayConstructor=Ro:Jr=!1;for(_n in bv)(Ul=(Ro=hn[_n])&&Ro.prototype)&&(I1(Ul).TypedArrayConstructor=Ro);if((!Jr||!x1(Cr)||Cr===Function.prototype)&&(Cr=function(){throw _v("Incorrect invocation")},Jr))for(_n in qr)hn[_n]&&Ao(hn[_n],Cr);if((!Jr||!sr||sr===Ej)&&(sr=Cr.prototype,Jr))for(_n in qr)hn[_n]&&Ao(hn[_n].prototype,sr);if(Jr&&jl(C1)!==sr&&Ao(C1,sr),pv&&!Ei(sr,E1))for(_n in R1=!0,Tj(sr,E1,{get:function(){return Vl(this)?this[yv]:void 0}}),qr)hn[_n]&&kj(hn[_n],yv,_n);var Ge={NATIVE_ARRAY_BUFFER_VIEWS:Jr,TYPED_ARRAY_TAG:R1&&yv,aTypedArray:function(e){if(P1(e))return e;throw _v("Target is not a typed array")},aTypedArrayConstructor:function(e){if(x1(e)&&(!Ao||xj(Cr,e)))return e;throw _v(Sj(e)+" is not a typed array constructor")},exportTypedArrayMethod:function(e,t,n,i){if(pv){if(n)for(var r in qr){var o=hn[r];if(o&&Ei(o.prototype,e))try{delete o.prototype[e]}catch(c){try{o.prototype[e]=t}catch(a){}}}sr[e]&&!n||vv(sr,e,n?t:Jr&&gv[e]||t,i)}},exportTypedArrayStaticMethod:function(e,t,n){var i,r;if(pv){if(Ao){if(n){for(i in qr)if((r=hn[i])&&Ei(r,e))try{delete r[e]}catch(o){}}if(Cr[e]&&!n)return;try{return vv(Cr,e,n?t:Jr&&Cr[e]||t)}catch(o){}}for(i in qr)!(r=hn[i])||r[e]&&!n||vv(r,e,t)}},getTypedArrayConstructor:A1,isView:function(e){if(!Vl(e))return!1;var t=mv(e);return t==="DataView"||Ei(qr,t)||Ei(bv,t)},isTypedArray:P1,TypedArray:Cr,TypedArrayPrototype:sr},D1=re,Sv=ue,Aj=vu,Pj=Ge.NATIVE_ARRAY_BUFFER_VIEWS,Dj=D1.ArrayBuffer,va=D1.Int8Array,Oj=!Pj||!Sv(function(){va(1)})||!Sv(function(){new va(-1)})||!Aj(function(e){new va,new va(null),new va(1.5),new va(e)},!0)||Sv(function(){return new va(new Dj(2),1,void 0).length!==1}),Lj=$n,Mj=RangeError,Nj=function(e){var t=Lj(e);if(t<0)throw Mj("The argument can't be less than 0");return t},Uj=RangeError,O1=function(e,t){var n=Nj(e);if(n%t)throw Uj("Wrong offset");return n},Vj=Dr,jj=pe("".slice),Bj=Vi,Fj=TypeError,L1=function(e){var t=Bj(e,"number");if(typeof t=="number")throw Fj("Can't convert number to bigint");return BigInt(t)},Hj=Lr,Gj=Ke,zj=x0,Wj=Mt,Jj=nn,qj=pu,Kj=Es,Xj=lh,Qj=function(e){return jj(Vj(e),0,3)==="Big"},Yj=Ge.aTypedArrayConstructor,$j=L1,M1=Le,N1=re,U1=Ke,Zj=ye,e8=Oj,Po=Ge,V1=vc,j1=oi,t8=Ze,_c=Ln,n8=YS,r8=yr,B1=jT,kv=O1,F1=Da,yc=kt,i8=Dr,Tv=at,a8=Li,o8=Ba,s8=Sn,Fl=Fa,c8=ii.f,H1=function(e){var t,n,i,r,o,c,a,s,l=zj(this),u=Wj(e),f=arguments.length,S=f>1?arguments[1]:void 0,x=S!==void 0,E=Kj(u);if(E&&!Xj(E))for(s=(a=qj(u,E)).next,u=[];!(c=Gj(s,a)).done;)u.push(c.value);for(x&&f>2&&(S=Hj(S,arguments[2])),n=Jj(u),i=new(Yj(l))(n),r=Qj(i),t=0;n>t;t++)o=x?S(u[t],t):u[t],i[t]=r?$j(o):+o;return i},u8=rn.forEach,l8=Ps,G1=Pt,z1=be,d8=gu,xv=Xe.get,h8=Xe.set,f8=Xe.enforce,Iv=G1.f,p8=z1.f,m8=Math.round,wv=N1.RangeError,W1=V1.ArrayBuffer,v8=W1.prototype,g8=V1.DataView,Hl=Po.NATIVE_ARRAY_BUFFER_VIEWS,J1=Po.TYPED_ARRAY_TAG,q1=Po.TypedArray,bc=Po.TypedArrayPrototype,_8=Po.aTypedArrayConstructor,Cv=Po.isTypedArray,Gl="BYTES_PER_ELEMENT",Ev="Wrong length",K1=function(e,t){_8(e);for(var n=0,i=t.length,r=new e(i);i>n;)r[n]=t[n++];return r},zl=function(e,t){Iv(e,t,{get:function(){return xv(this)[t]}})},X1=function(e){var t;return s8(v8,e)||(t=i8(e))=="ArrayBuffer"||t=="SharedArrayBuffer"},Q1=function(e,t){return Cv(e)&&!a8(t)&&t in e&&n8(+t)&&t>=0},Y1=function(e,t){return t=F1(t),Q1(e,t)?t8(2,e[t]):p8(e,t)},$1=function(e,t,n){return t=F1(t),!(Q1(e,t)&&Tv(n)&&yc(n,"value"))||yc(n,"get")||yc(n,"set")||n.configurable||yc(n,"writable")&&!n.writable||yc(n,"enumerable")&&!n.enumerable?Iv(e,t,n):(e[t]=n.value,e)};Zj?(Hl||(z1.f=Y1,G1.f=$1,zl(bc,"buffer"),zl(bc,"byteOffset"),zl(bc,"byteLength"),zl(bc,"length")),M1({target:"Object",stat:!0,forced:!Hl},{getOwnPropertyDescriptor:Y1,defineProperty:$1}),fv.exports=function(e,t,n){var i=e.match(/\d+$/)[0]/8,r=e+(n?"Clamped":"")+"Array",o="get"+e,c="set"+e,a=N1[r],s=a,l=s&&s.prototype,u={},f=function(x,E){Iv(x,E,{get:function(){return function(I,m){var T=xv(I);return T.view[o](m*i+T.byteOffset,!0)}(this,E)},set:function(I){return function(m,T,v){var w=xv(m);n&&(v=(v=m8(v))<0?0:v>255?255:255&v),w.view[c](T*i+w.byteOffset,v,!0)}(this,E,I)},enumerable:!0})};Hl?e8&&(s=t(function(x,E,I,m){return j1(x,l),d8(Tv(E)?X1(E)?m!==void 0?new a(E,kv(I,i),m):I!==void 0?new a(E,kv(I,i)):new a(E):Cv(E)?K1(s,E):U1(H1,s,E):new a(B1(E)),x,s)}),Fl&&Fl(s,q1),u8(c8(a),function(x){x in s||_c(s,x,a[x])}),s.prototype=l):(s=t(function(x,E,I,m){j1(x,l);var T,v,w,L=0,N=0;if(Tv(E)){if(!X1(E))return Cv(E)?K1(s,E):U1(H1,s,E);T=E,N=kv(I,i);var V=E.byteLength;if(m===void 0){if(V%i||(v=V-N)<0)throw wv(Ev)}else if((v=r8(m)*i)+N>V)throw wv(Ev);w=v/i}else w=B1(E),T=new W1(v=w*i);for(h8(x,{buffer:T,byteOffset:N,byteLength:v,length:w,view:new g8(T)});L<w;)f(x,L++)}),Fl&&Fl(s,q1),l=s.prototype=o8(bc)),l.constructor!==s&&_c(l,"constructor",s),f8(l).TypedArrayConstructor=s,J1&&_c(l,J1,r);var S=s!=a;u[r]=s,M1({global:!0,constructor:!0,forced:S,sham:!Hl},u),Gl in s||_c(s,Gl,i),Gl in l||_c(l,Gl,i),l8(r)}):fv.exports=function(){},(0,fv.exports)("Uint8",function(e){return function(t,n,i){return e(this,t,n,i)}});var y8=Mt,Rv=ai,b8=nn,S8=W_,k8=Math.min,T8=[].copyWithin||function(e,t){var n=y8(this),i=b8(n),r=Rv(e,i),o=Rv(t,i),c=arguments.length>2?arguments[2]:void 0,a=k8((c===void 0?i:Rv(c,i))-o,i-r),s=1;for(o<r&&r<o+a&&(s=-1,o+=a-1,r+=a-1);a-- >0;)o in n?n[r]=n[o]:S8(n,r),r+=s,o+=s;return n},Z1=Ge,x8=pe(T8),I8=Z1.aTypedArray;(0,Z1.exportTypedArrayMethod)("copyWithin",function(e,t){return x8(I8(this),e,t,arguments.length>2?arguments[2]:void 0)});var w8=rn.every,C8=Ge.aTypedArray;(0,Ge.exportTypedArrayMethod)("every",function(e){return w8(C8(this),e,arguments.length>1?arguments[1]:void 0)});var E8=FT,R8=L1,A8=Dr,P8=Ke,D8=ue,O8=Ge.aTypedArray,L8=Ge.exportTypedArrayMethod,M8=pe("".slice);L8("fill",function(e){var t=arguments.length;O8(this);var n=M8(A8(this),0,3)==="Big"?R8(e):+e;return P8(E8,this,n,t>1?arguments[1]:void 0,t>2?arguments[2]:void 0)},D8(function(){var e=0;return new Int8Array(2).fill({valueOf:function(){return e++}}),e!==1}));var N8=nn,U8=Ou,V8=Ge.aTypedArrayConstructor,j8=Ge.getTypedArrayConstructor,Wl=function(e){return V8(U8(e,j8(e)))},B8=function(e,t){for(var n=0,i=N8(t),r=new e(i);i>n;)r[n]=t[n++];return r},F8=Wl,H8=rn.filter,G8=function(e,t){return B8(F8(e),t)},z8=Ge.aTypedArray;(0,Ge.exportTypedArrayMethod)("filter",function(e){var t=H8(z8(this),e,arguments.length>1?arguments[1]:void 0);return G8(this,t)});var W8=rn.find,J8=Ge.aTypedArray;(0,Ge.exportTypedArrayMethod)("find",function(e){return W8(J8(this),e,arguments.length>1?arguments[1]:void 0)});var q8=rn.findIndex,K8=Ge.aTypedArray;(0,Ge.exportTypedArrayMethod)("findIndex",function(e){return q8(K8(this),e,arguments.length>1?arguments[1]:void 0)});var X8=rn.forEach,Q8=Ge.aTypedArray;(0,Ge.exportTypedArrayMethod)("forEach",function(e){X8(Q8(this),e,arguments.length>1?arguments[1]:void 0)});var Y8=ys.includes,$8=Ge.aTypedArray;(0,Ge.exportTypedArrayMethod)("includes",function(e){return Y8($8(this),e,arguments.length>1?arguments[1]:void 0)});var Z8=ys.indexOf,eB=Ge.aTypedArray;(0,Ge.exportTypedArrayMethod)("indexOf",function(e){return Z8(eB(this),e,arguments.length>1?arguments[1]:void 0)});var tB=re,nB=ue,Av=pe,ex=Ge,Pv=Gg,Dv=tt("iterator"),tx=tB.Uint8Array,rB=Av(Pv.values),iB=Av(Pv.keys),aB=Av(Pv.entries),Ov=ex.aTypedArray,Jl=ex.exportTypedArrayMethod,Do=tx&&tx.prototype,ql=!nB(function(){Do[Dv].call([1])}),nx=!!Do&&Do.values&&Do[Dv]===Do.values&&Do.values.name==="values",rx=function(){return rB(Ov(this))};Jl("entries",function(){return aB(Ov(this))},ql),Jl("keys",function(){return iB(Ov(this))},ql),Jl("values",rx,ql||!nx,{name:"values"}),Jl(Dv,rx,ql||!nx,{name:"values"});var oB=Ge.aTypedArray,sB=Ge.exportTypedArrayMethod,cB=pe([].join);sB("join",function(e){return cB(oB(this),e)});var uB=Ji,lB=bn,dB=$n,hB=nn,fB=Ns,pB=Math.min,Lv=[].lastIndexOf,ix=!!Lv&&1/[1].lastIndexOf(1,-0)<0,mB=fB("lastIndexOf"),vB=ix||!mB?function(e){if(ix)return uB(Lv,this,arguments)||0;var t=lB(this),n=hB(t),i=n-1;for(arguments.length>1&&(i=pB(i,dB(arguments[1]))),i<0&&(i=n+i);i>=0;i--)if(i in t&&t[i]===e)return i||0;return-1}:Lv,gB=Ji,_B=vB,yB=Ge.aTypedArray;(0,Ge.exportTypedArrayMethod)("lastIndexOf",function(e){var t=arguments.length;return gB(_B,yB(this),t>1?[e,arguments[1]]:[e])});var bB=rn.map,SB=Wl,kB=Ge.aTypedArray;(0,Ge.exportTypedArrayMethod)("map",function(e){return bB(kB(this),e,arguments.length>1?arguments[1]:void 0,function(t,n){return new(SB(t))(n)})});var TB=dv.left,xB=Ge.aTypedArray;(0,Ge.exportTypedArrayMethod)("reduce",function(e){var t=arguments.length;return TB(xB(this),e,t,t>1?arguments[1]:void 0)});var IB=dv.right,wB=Ge.aTypedArray;(0,Ge.exportTypedArrayMethod)("reduceRight",function(e){var t=arguments.length;return IB(wB(this),e,t,t>1?arguments[1]:void 0)});var CB=Ge.aTypedArray,EB=Ge.exportTypedArrayMethod,RB=Math.floor;EB("reverse",function(){for(var e,t=this,n=CB(t).length,i=RB(n/2),r=0;r<i;)e=t[r],t[r++]=t[--n],t[n]=e;return t});var ax=re,ox=Ke,Mv=Ge,AB=nn,PB=O1,DB=Mt,sx=ue,OB=ax.RangeError,Nv=ax.Int8Array,cx=Nv&&Nv.prototype,ux=cx&&cx.set,LB=Mv.aTypedArray,MB=Mv.exportTypedArrayMethod,Uv=!sx(function(){var e=new Uint8ClampedArray(2);return ox(ux,e,{length:1,0:3},1),e[1]!==3}),NB=Uv&&Mv.NATIVE_ARRAY_BUFFER_VIEWS&&sx(function(){var e=new Nv(2);return e.set(1),e.set("2",1),e[0]!==0||e[1]!==2});MB("set",function(e){LB(this);var t=PB(arguments.length>1?arguments[1]:void 0,1),n=DB(e);if(Uv)return ox(ux,this,n,t);var i=this.length,r=AB(n),o=0;if(r+t>i)throw OB("Wrong length");for(;o<r;)this[t+o]=n[o++]},!Uv||NB);var UB=Wl,VB=Ha,jB=Ge.aTypedArray;(0,Ge.exportTypedArrayMethod)("slice",function(e,t){for(var n=VB(jB(this),e,t),i=UB(this),r=0,o=n.length,c=new i(o);o>r;)c[r]=n[r++];return c},ue(function(){new Int8Array(1).slice()}));var BB=rn.some,FB=Ge.aTypedArray;(0,Ge.exportTypedArrayMethod)("some",function(e){return BB(FB(this),e,arguments.length>1?arguments[1]:void 0)});var lx=Kn.match(/firefox\/(\d+)/i),HB=!!lx&&+lx[1],GB=/MSIE|Trident/.test(Kn),dx=Kn.match(/AppleWebKit\/(\d+)\./),zB=!!dx&&+dx[1],WB=pe,Vv=ue,JB=Vt,qB=wy,hx=HB,KB=GB,fx=pr,px=zB,XB=Ge.aTypedArray,QB=Ge.exportTypedArrayMethod,Sc=re.Uint16Array,Oo=Sc&&WB(Sc.prototype.sort),YB=!(!Oo||Vv(function(){Oo(new Sc(2),null)})&&Vv(function(){Oo(new Sc(2),{})})),mx=!!Oo&&!Vv(function(){if(fx)return fx<74;if(hx)return hx<67;if(KB)return!0;if(px)return px<602;var e,t,n=new Sc(516),i=Array(516);for(e=0;e<516;e++)t=e%4,n[e]=515-e,i[e]=e-2*t+3;for(Oo(n,function(r,o){return(r/4|0)-(o/4|0)}),e=0;e<516;e++)if(n[e]!==i[e])return!0});QB("sort",function(e){return e!==void 0&&JB(e),mx?Oo(this,e):qB(XB(this),function(t){return function(n,i){return t!==void 0?+t(n,i)||0:i!=i?-1:n!=n?1:n===0&&i===0?1/n>0&&1/i<0?1:-1:n>i}}(e))},!mx||YB);var $B=yr,vx=ai,ZB=Wl,eF=Ge.aTypedArray;(0,Ge.exportTypedArrayMethod)("subarray",function(e,t){var n=eF(this),i=n.length,r=vx(e,i);return new(ZB(n))(n.buffer,n.byteOffset+r*n.BYTES_PER_ELEMENT,$B((t===void 0?i:vx(t,i))-r))});var tF=Ji,gx=Ge,jv=ue,_x=Ha,Kl=re.Int8Array,yx=gx.aTypedArray,nF=gx.exportTypedArrayMethod,bx=[].toLocaleString,rF=!!Kl&&jv(function(){bx.call(new Kl(1))});nF("toLocaleString",function(){return tF(bx,rF?_x(yx(this)):yx(this),_x(arguments))},jv(function(){return[1,2].toLocaleString()!=new Kl([1,2]).toLocaleString()})||!jv(function(){Kl.prototype.toLocaleString.call([1,2])}));var iF=Ge.exportTypedArrayMethod,aF=ue,oF=pe,Sx=re.Uint8Array,sF=Sx&&Sx.prototype||{},Xl=[].toString,cF=oF([].join);aF(function(){Xl.call({})})&&(Xl=function(){return cF(this)});var uF=sF.toString!=Xl;iF("toString",Xl,uF);var lF=function(){function e(t,n,i){Q(this,e),this.isUplink_=i,this.connection_=t,this.log_=n,this.seiMessageList_=[],this.smallVideoSeiMessageList_=[],this.seiPayloadType_=243,this.runningAbortMap_=new Map,this.abortMap_=new Map,this.onSEIMessage=null}return Ie(e,[{key:"isRunning",get:function(){return!!this.runningAbortMap_.size>0}},{key:"start",value:function(t){var n=this,i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.seiMessageList_,r=t.createEncodedStreams(),o=r.readable,c=r.writable,a=new TransformStream({transform:this.isUplink_?function(l,u){return n.encodeVideoFrame(l,u,i)}:function(l,u){var f,S;return n.decodeVideoFrame(l,u,t===((f=n.connection_)===null||f===void 0||(S=f.getPeerConnection())===null||S===void 0?void 0:S.getReceivers()[tS]))}}),s=new AbortController;o.pipeThrough(a).pipeTo(c,{signal:s.signal}).catch(function(){}),this.runningAbortMap_.set(t,s)}},{key:"restart",value:function(t,n){this.stop(),this.start(t,n)}},{key:"stop",value:function(t){var n;(n=this.runningAbortMap_.get(t))===null||n===void 0||n.abort(),this.runningAbortMap_.delete(t)}},{key:"destroy",value:function(){this.stop(),this.runningAbortMap_.forEach(function(t){return t.abort()}),this.runningAbortMap_.clear(),this.abortMap_.forEach(function(t){return t.abort()}),this.abortMap_.clear(),this.log_=null,this.onSEIMessage=null,this.connection_=null}},{key:"handleEncodedStreams",value:function(){var t=this;try{var n=this.connection_.getPeerConnection();this.clearUnusedSenderOrReceiver(n),this.isUplink_?n.getSenders().forEach(function(i,r){if(!t.runningAbortMap_.has(i)&&!t.abortMap_.has(i))if(r===lN||r===eS){var o=r===eS?t.smallVideoSeiMessageList_:t.seiMessageList_;t.isRunning?t.restart(i,o):t.start(i,o)}else t.pipeSenderOrReceiver(i)}):n.getReceivers().forEach(function(i,r){var o;t.runningAbortMap_.has(i)||t.abortMap_.has(i)||(r!==dN&&r!==tS||((o=i.track)===null||o===void 0?void 0:o.kind)!==xe?t.pipeSenderOrReceiver(i):t.isRunning?t.restart(i):t.start(i))})}catch(i){this.log_.warn(i)}}},{key:"pipeSenderOrReceiver",value:function(t){var n=t.createEncodedStreams(),i=n.readable,r=n.writable,o=new AbortController;this.abortMap_.set(t,o),i.pipeTo(r,{signal:o.signal}).catch(function(){})}},{key:"clearUnusedSenderOrReceiver",value:function(t){var n=this;this.abortMap_.forEach(function(i,r){(n.isUplink_?t.getSenders():t.getReceivers()).find(function(o){return o===r})||(i.abort(),n.abortMap_.delete(r))})}},{key:"push",value:function(t,n){n&&n.seiPayloadType&&(this.seiPayloadType_=n.seiPayloadType),this.seiMessageList_.push(t),this.smallVideoSeiMessageList_.push(t)}},{key:"hasSEI",value:function(t){var n=new DataView(t);return n.getInt32(0)===1&&n.getInt8(4)===6}},{key:"isEmptyFrame",value:function(t){return t.type==="empty"||t.data.byteLength===0}},{key:"getNaluCount",value:function(t){for(var n=0,i=0,r=new DataView(t),o=0;o<t.byteLength;o++)switch(r.getUint8(o)){case 0:n++;break;case 1:n!==2&&n!==3||i++,n=0;break;default:n=0}return i}},{key:"encodeVideoFrame",value:function(t,n,i){try{if(this.connection_.isH264&&i.length>0&&!this.isEmptyFrame(t)){var r=9-this.getNaluCount(t.data);if(r<=0)return;for(var o=i.splice(0,r).reverse().map(this.encodeSEINalu.bind(this)),c=o.reduce(function(E,I){return E+I.dataView.byteLength},0),a=new ArrayBuffer(c+t.data.byteLength),s=new DataView(a),l=new DataView(t.data),u=0,f=0;f<o.length;f++)for(var S=0;S<o[f].dataView.byteLength;S++)s.setInt8(u++,o[f].dataView.getInt8(S));for(var x=0;x<t.data.byteLength;x++)s.setInt8(u++,l.getInt8(x));t.data=a,this.log_.debug("".concat(o.length," sei sent"))}}catch(E){this.log_.warn(E)}n.enqueue(t)}},{key:"decodeVideoFrame",value:function(t,n){var i=this,r=arguments.length>2&&arguments[2]!==void 0&&arguments[2];try{if(this.connection_.isH264&&!this.isEmptyFrame(t)&&this.hasSEI(t.data)){for(var o=[],c=new DataView(t.data),a=0,s=-1,l=-1,u=0;u<t.data.byteLength;u++){var f=c.getUint8(u);if(f===0)a++;else if(f===1){if(a===2||a===3){var S=u-a;s===-1?s=S:l===-1&&(l=S,o.push(new kx(new DataView(c.buffer.slice(s,l)))),s=S,l=-1);var x=c.getUint8(u+1)===6;if(!x){t.data=new DataView(c.buffer.slice(S)).buffer;break}}a=0}else a=0}this.log_.debug("".concat(o.length," sei received")),ln(this.onSEIMessage)&&o.reverse().forEach(function(E){i.onSEIMessage({seiPayloadType:E.seiPayloadType,data:E.seiPayload.buffer,isFromAuxiliary:r})})}}catch(E){this.log_.warn(E)}n.enqueue(t)}},{key:"encodeSEINalu",value:function(t){var n=t.byteLength,i=parseInt(n/255),r=n%255,o=[];o.push(0,0,0,1,6,this.seiPayloadType_);for(var c=0;c<i;c++)o.push(255);o.push(r);var a=new DataView(t);return o.push.apply(o,Se(new Uint8Array(a.buffer))),o.push(128),new kx(new DataView(new Uint8Array(o).buffer),!0)}}]),e}(),kx=function(){function e(t){var n=arguments.length>1&&arguments[1]!==void 0&&arguments[1];Q(this,e),this.dataView=t,this.isSEI&&(n?this.addPreventionByte():this.removePreventionByte())}return Ie(e,[{key:"addPreventionByte",value:function(){for(var t=this.seiPayloadStartIndex,n=this.dataView.byteLength-2,i=[],r=0,o=t;o<=n;o++){var c=this.dataView.getInt8(o);switch(c){case 0:case 1:case 2:case 3:r===2&&(i.push(3),r=0),c==0?r++:r=0,i.push(c);break;default:r=0,i.push(c)}}i.push(this.dataView.getInt8(this.dataView.byteLength-1));var a=new DataView(new Uint8Array([].concat(Se(new Uint8Array(this.dataView.buffer).slice(0,t)),i)).buffer);this.dataView=a}},{key:"removePreventionByte",value:function(){for(var t=this.seiPayloadStartIndex,n=this.dataView.byteLength-1,i=[],r=0,o=t;o<=n;o++)switch(this.dataView.getInt8(o)){case 0:r++,i.push(this.dataView.getInt8(o));break;case 3:r!==2&&i.push(this.dataView.getInt8(o)),r=0;break;default:i.push(this.dataView.getInt8(o)),r=0}var c=new DataView(new Uint8Array([].concat(Se(new Uint8Array(this.dataView.buffer).slice(0,t)),i)).buffer);this.dataView=c}},{key:"isSEI",get:function(){return this.dataView.getUint8(4)===6}},{key:"seiPayloadStartIndex",get:function(){for(var t=6,n=6;n<this.dataView.buffer.byteLength&&(t++,this.dataView.getUint8(n)===255);n++);return t}},{key:"seiPayloadType",get:function(){return this.isSEI?this.dataView.getUint8(5):null}},{key:"seiPayload",get:function(){if(!this.isSEI)return null;for(var t=0,n=6,i=6;i<this.dataView.buffer.byteLength;i++){var r=this.dataView.getUint8(i);if(n++,r!==255){t+=r;break}t+=255}for(var o=new ArrayBuffer(t),c=new DataView(o),a=0;a<o.byteLength;a++,n++)c.setInt8(a,this.dataView.getInt8(n));return c}}]),e}(),Bv=function(){function e(n){Q(this,e),this.userId_=n.userId,this.tinyId_=n.tinyId,this.client_=n.client,this.sdpSemantics_=n.client.getSdpSemantics(),this.isUplink_=n.isUplink,this.log_=_e.createLogger({id:"n|"+this.userId_,userId:this.client_.getUserId(),sdkAppId:this.client_.getSDKAppId(),isLocal:this.isUplink_}),this.signalChannel_=n.signalChannel,this.peerConnection_=null,this.isErrorObserved_=!1,this.emitter_=new Si,this.currentState_=on,this.waitForPeerConnectionConnectedPromise_=null,this.isReconnecting_=!1,this.reconnectionCount_=0,this.reconnectionTimer_=-1,this.isFirstConnection_=!0,this.delay_={audioDelay:0,videoDelay:0},this.enableSEI_=n.enableSEI,this.enableSEI_&&Tm&&(this.sei_=new lF(this,this.log_,this.isUplink_))}var t;return Ie(e,[{key:"initialize",value:function(){var n={encodedInsertableStreams:this.enableSEI_&&Tm,iceServers:this.client_.getIceServers(),iceTransportPolicy:this.client_.getIceTransportPolicy(),sdpSemantics:this.sdpSemantics_,bundlePolicy:"max-bundle",rtcpMuxPolicy:"require",tcpCandidatePolicy:"disable",IceTransportsType:"nohost"};this.peerConnection_=new RTCPeerConnection(n),this.peerConnection_.onconnectionstatechange=this.onConnectionStateChange.bind(this)}},{key:"close",value:function(){this.log_.info("closing connection"),this.closePeerConnection(),this.sei_&&(this.sei_.destroy(),this.sei_=null)}},{key:"closePeerConnection",value:function(){var n=arguments.length>0&&arguments[0]!==void 0&&arguments[0];this.peerConnection_&&(this.peerConnection_.onconnectionstatechange=function(){},this.peerConnection_.close(),this.peerConnection_=null,n&&this.emitConnectionStateChangedEvent(on))}},{key:"getDTLSTransportState",value:function(){if(!this.peerConnection_)return Wu;var n=null;if(this.isUplink_){if(!ml()||this.peerConnection_.getSenders().length===0)return Wu;n=this.peerConnection_.getSenders()[0].transport}else{if(!Fk()||this.peerConnection_.getReceivers().length===0)return Wu;n=this.peerConnection_.getReceivers()[0].transport}return n?n.state:Wu}},{key:"onConnectionStateChange",value:function(n){var i=this.peerConnection_.iceConnectionState,r=this.getDTLSTransportState();if(this.log_.info("onConnectionStateChange() connectionState: "+n.target.connectionState),this.log_.info("ICE Transport state: ".concat(i,", DTLS Transport state: ").concat(r)),n.target.connectionState===Ju&&this.emitConnectionStateChangedEvent(bb),n.target.connectionState===Sb||n.target.connectionState===Bf){var o="".concat(this.isUplink_?"uplink":"downlink"," ICE/DTLS Transport connection ").concat(n.target.connectionState,". ICE Transport state: ").concat(i,", DTLS Transport state: ").concat(r),c=new te({message:o,code:Z.ICE_TRANSPORT_ERROR});ke.logFailedEvent({userId:this.client_.getUserId(),eventType:Lb,error:c}),this.emitConnectionStateChangedEvent(on),this.isErrorObserved_||this.emitter_.emit(et.ERROR,c)}n.target.connectionState!==kb&&n.target.connectionState!==ZM||(this.logSelectedCandidate(),ke.logSuccessEvent({userId:this.client_.getUserId(),eventType:Lb}),this.emitConnectionStateChangedEvent(sn))}},{key:"emitConnectionStateChangedEvent",value:function(n){n!==this.currentState_&&(this.currentState_===jf&&n===bb||(Y.emit(hl,{client:this.client_,connection:this,prevState:this.currentState_,state:n}),this.emitter_.emit(et.CONNECTION_STATE_CHANGED,{prevState:this.currentState_,state:n}),this.currentState_=n))}},{key:"hitTest",value:function(n){return(n===0||n==="0")&&this.isUplink_||n===this.tinyId_}},{key:"addEventInternal",value:function(n,i){var r=this.client_.getUserId(),o={eventId:n,eventDesc:i,timestamp:an(),userId:r,tinyId:this.client_.getTinyId()};this.isUplink_||(o.remoteUserId=this.userId_,o.remoteTinyId=this.tinyId_),vn(r,o)}},{key:"getPeerConnection",value:function(){return this.peerConnection_}},{key:"getClient",value:function(){return this.client_}},{key:"getUserId",value:function(){return this.userId_}},{key:"getTinyId",value:function(){return this.tinyId_}},{key:"logSelectedCandidate",value:(t=H(p().mark(function n(){var i,r,o,c,a,s,l;return p().wrap(function(u){for(;;)switch(u.prev=u.next){case 0:if(this.peerConnection_){u.next=2;break}return u.abrupt("return");case 2:return u.next=4,this.peerConnection_.getStats();case 4:i=u.sent,r=oe(i),u.prev=6,r.s();case 8:if((o=r.n()).done){u.next=18;break}if((c=Te(o.value,2))[0],!xm(a=c[1])){u.next=16;break}return s=i.get(a.localCandidateId),l=i.get(a.remoteCandidateId),s&&this.log_.info("local candidate: ".concat(s.candidateType," ").concat(s.protocol,":").concat(s.ip||s.address,":").concat(s.port," ").concat(s.networkType||""," ").concat(s.candidateType==="relay"?"relayProtocol:"+s.relayProtocol:"")),l&&this.log_.info("remote candidate: ".concat(l.candidateType," ").concat(l.protocol,":").concat(l.ip||l.address,":").concat(l.port)),u.abrupt("break",18);case 16:u.next=8;break;case 18:u.next=23;break;case 20:u.prev=20,u.t0=u.catch(6),r.e(u.t0);case 23:return u.prev=23,r.f(),u.finish(23);case 26:case"end":return u.stop()}},n,this,[[6,20,23,26]])})),function(){return t.apply(this,arguments)})},{key:"getCurrentState",value:function(){return this.currentState_}},{key:"waitForPeerConnectionConnected",value:function(){var n=this;return this.waitForPeerConnectionConnectedPromise_||(this.waitForPeerConnectionConnectedPromise_=new Promise(function(i,r){if(n.currentState_===sn)return i();var o=-1,c=function(l){l.state===sn&&(clearTimeout(o),s(),i())},a=function(l){l.client===n.client_&&(clearTimeout(o),s(),r(new te({code:Z.API_CALL_ABORTED,message:ae({key:r4,data:"leave room"})})))},s=function(){Y.off(mo,a,n),n.emitter_.off(et.CONNECTION_STATE_CHANGED,c,n)};o=setTimeout(function(){s();var l=new te({code:Z.API_CALL_TIMEOUT,message:"connection timeout"});r(l)},1e4),Y.on(mo,a,n),n.emitter_.on(et.CONNECTION_STATE_CHANGED,c,n)}),this.waitForPeerConnectionConnectedPromise_=this.waitForPeerConnectionConnectedPromise_.then(function(i){return n.waitForPeerConnectionConnectedPromise_=null,i}).catch(function(i){throw n.waitForPeerConnectionConnectedPromise_=null,i})),this.waitForPeerConnectionConnectedPromise_}},{key:"getReconnectionCount",value:function(){return this.reconnectionCount_}},{key:"startReconnection",value:function(){this.isReconnecting_=!0,this.emitConnectionStateChangedEvent(jf),this.reconnect(),this.addEventInternal(this.isUplink_?fV:vV,"".concat(this.isUplink_?"uplink":"downlink","-connection is reconnecting"))}},{key:"stopReconnection",value:function(){this.log_.info("stop reconnection"),this.isReconnecting_=!1,this.reconnectionCount_=0,this.clearReconnectionTimer(),this.signalChannel_.off(ac,this.reconnect,this)}},{key:"on",value:function(n,i,r){this.emitter_.on(n,i,r)}},{key:"off",value:function(n,i,r){this.emitter_.off(n,i,r)}},{key:"setDelay",value:function(n){var i=n.audioDelay,r=n.videoDelay;this.delay_={audioDelay:i,videoDelay:r}}},{key:"getDelay",value:function(){return this.delay_}},{key:"isH264",get:function(){var n,i;return!((n=this.peerConnection_)===null||n===void 0||(i=n.remoteDescription)===null||i===void 0||!i.sdp.includes("H264"))}}]),e}(),dF=function(){function e(){Q(this,e),this.set_=new Set,Y.on(ul,this.add,this),Y.on(po,this.add,this),Y.on(sa,this.delete,this),Y.on(mo,this.delete,this)}return Ie(e,[{key:"add",value:function(t){var n=t.client,i=t.roomId,r=this.getKey(n.getUserId(),i||n.getRoomId(),n.getSDKAppId(),n.getUseStringRoomId());this.set_.add(r)}},{key:"delete",value:function(t){var n=t.client,i=this.getKey(n.getUserId(),n.getRoomId(),n.getSDKAppId(),n.getUseStringRoomId());this.set_.delete(i)}},{key:"getKey",value:function(t,n,i,r){return"".concat(i,"_").concat(n,"_").concat(t,"_").concat(r)}},{key:"isJoined",value:function(t){var n=t.userId,i=t.roomId,r=t.sdkAppId,o=t.client;return this.set_.has(this.getKey(n,i,r,o.getUseStringRoomId()))}}]),e}(),hF=new dF;function Tx(e,t,n,i){if(this.useStringRoomId_){if(!(Bt(e)&&/^[A-Za-z\d\s!#$%&()+\-:;<=.>?@[\]^_{}|~,]{1,64}$/.test(e)))throw new te({code:Z.INVALID_PARAMETER,message:ae({key:VN,data:t,link:{className:i,fnName:n}})})}else if(!(tr(e)&&/^[1-9]\d*$/.test(String(e))&&e<4294967295))throw new te({code:Z.INVALID_PARAMETER,message:ae({key:jN,data:t,link:{className:i,fnName:n}})})}function xx(e,t,n,i){if(!/^[A-Za-z\d_-]*$/.test(e))throw new te({code:Z.INVALID_PARAMETER,message:ae({key:t3,data:t,link:{className:i,fnName:n}})})}var fF={createClient:{name:"clientConfig",required:!0,type:In,properties:{sdkAppId:{required:!0,type:wt,allowEmpty:!1},userId:{required:!0,type:dt,allowEmpty:!1},userSig:{required:!0,type:dt,allowEmpty:!1},mode:{required:!0,type:dt,values:["rtc",zu]},useStringRoomId:{type:Wt},autoSubscribe:{type:Wt},enableAutoPlayDialog:{type:Wt},streamId:{type:dt},userDefineRecordId:{type:dt},pureAudioPushMode:{type:wt,values:[1,2]},enableSEI:{type:Wt}}},createStream:{name:"streamConfig",required:!0,type:In,properties:{userId:{type:dt},audio:{type:Wt},video:{type:Wt},screen:{type:Wt},screenAudio:{type:Wt},microphoneId:{type:dt},cameraId:{type:dt},facingMode:{type:[dt,In]},audioSource:{instanceOf:window.MediaStreamTrack},videoSource:{instanceOf:window.MediaStreamTrack}},validate:function(e){if(!ge(e.screen)&&e.screen&&ge(e.audio)&&(e.audio=!1),!(ge(e.audio)&&ge(e.video)||ge(e.audioSource)&&ge(e.videoSource)))throw new te({code:Z.INVALID_PARAMETER,message:ae({key:U3})});if(!ge(e.screen)&&e.screen===!0&&e.video===!0)throw new te({code:Z.INVALID_PARAMETER,message:ae({key:V3})});if(e.audio&&e.screenAudio)throw new te({code:Z.INVALID_PARAMETER,message:ae({key:j3})});if(e.screen!==!0&&e.screenAudio===!0)throw new te({code:Z.INVALID_PARAMETER,message:ae({key:B3})});if(!ge(e.screen)&&e.screen===!0&&!this.isScreenShareSupported())throw new te({code:Z.INVALID_OPERATION,message:ae({key:G3})})}}},pF={join:{name:"options",required:!0,type:In,properties:{roomId:{required:!0,type:[wt,dt],allowEmpty:!1,validate:Tx},role:{type:[dt],values:[Tr,Zi]},privateMapKey:{type:[dt]}},validate:function(e){if(this.isJoined_)throw new te({code:Z.INVALID_OPERATION,message:ae({key:UN})});if(this.checkDestroy(),hF.isJoined({userId:this.userId_,roomId:e.roomId,sdkAppId:this.sdkAppId_,client:this}))throw new te({code:Z.INVALID_OPERATION,message:ae({key:x3,data:this.userId_})})}},publish:[{name:"stream",required:!0,instanceOf:mi,validate:function(e){if(!this.isJoined_)throw new te({code:Z.INVALID_OPERATION,message:ae({key:GN})});if(this.mode_===zu&&this.role_===Zi)throw new te({code:Z.INVALID_OPERATION,message:ae({key:WN})});if(!e.getIsReadyToPublish())throw new te({code:Z.INVALID_OPERATION,message:ae({key:JN})});if(this.notPublishWithoutH264Supported_)throw new te({code:Z.NOT_SUPPORTED_H264,message:ae({key:gS})})}},{name:"options",type:In,defaultValue:{isAuxiliary:!1},properties:{isAuxiliary:{type:Wt,defaultValue:!1,validate:function(){var e=arguments.length>0&&arguments[0]!==void 0&&arguments[0];if(e&&!vl())throw new te({code:Z.NOT_SUPPORTED,message:ae({key:z3})});if(this.uplinkConnection_&&(e&&this.uplinkConnection_.isAuxStreamPublished||!e&&this.uplinkConnection_.isMainStreamPublished))throw new te({code:Z.INVALID_OPERATION,message:ae({key:qN,data:e?gt:"local"})});var t=this.localScreenStream_||Se(this.connections_.values()).findIndex(function(n){return n.getTrackState().auxiliary})>=0;if(!this.enableMultiAuxStream_&&e&&t)throw new te({code:Z.INVALID_OPERATION,message:ae({key:i4})})}}}}],unpublish:{name:"stream",required:!0,instanceOf:mi,validate:function(e){if(e!==this.localStream_&&e!==this.localAuxStream_){if(this.localStream_||this.localAuxStream_)throw new te({code:Z.INVALID_PARAMETER,message:ae({key:zN})});this.log_.warn("Client currently has no published stream, please call publish() first.")}}},subscribe:[{name:"stream",required:!0,instanceOf:Xf,validate:function(e){if(!e.getConnection())throw new te({code:Z.INVALID_OPERATION,message:ae({key:ep})});if(this.notSubscribeWithoutH264Supported_)throw new te({code:Z.NOT_SUPPORTED_H264,message:ae({key:_S})})}},{name:"options",type:In,properties:{audio:{type:Wt},video:{type:Wt},smallVideo:{type:Wt}},validate:function(e){var t=e.audio,n=e.video,i=e.smallVideo;if(t===!1&&n===!1&&(ge(i)||i===!1))throw new te({code:Z.INVALID_OPERATION,message:ae({key:Q3})})}}],unsubscribe:{name:"stream",required:!0,instanceOf:Xf,validate:function(e){if(!e.getConnection())throw new te({code:Z.INVALID_OPERATION,message:ae({key:ep})})}},switchRole:{name:"role",required:!0,values:[Tr,Zi],validate:function(){if(this.mode_!==zu)throw new te({code:Z.INVALID_PARAMETER,message:ae({key:XN})});if(!this.isJoined_)throw new te({code:Z.INVALID_OPERATION,message:ae({key:QN})})}},startPublishCDNStream:{name:"options",required:!1,properties:{streamId:{type:dt,validate:xx},streamType:{type:dt,values:["main","auxiliary"]},appId:{type:wt,allowEmpty:!1},bizId:{type:wt,allowEmpty:!1},url:{type:dt,allowEmpty:!1}},validate:function(){if(this.isDestroyed_)throw new te({code:Z.INVALID_OPERATION,message:ae({key:tp,data:{funName:"startPublishCDNStream"}})})}},startMixTranscode:{name:"config",required:!0,type:In,properties:{mode:{type:dt,values:["preset-layout","manual"]},streamId:{type:dt,validate:xx},videoWidth:{type:wt,notLessThanZero:!0},videoHeight:{type:wt,notLessThanZero:!0},videoBitrate:{type:wt,notLessThanZero:!0,allowEmpty:!1},videoFramerate:{type:wt,validate:function(e,t,n,i){if(e<=0||e>30)throw new te({code:Z.INVALID_PARAMETER,message:ae({key:R3,link:{className:i,fnName:n}})})}},videoGOP:{type:wt,validate:function(e,t,n,i){if(e<1||e>8)throw new te({code:Z.INVALID_PARAMETER,message:ae({key:A3,link:{className:i,fnName:n}})})}},audioSampleRate:{type:wt,notLessThanZero:!0},audioBitrate:{type:wt,validate:function(e,t,n,i){if(e<32||e>192)throw new te({code:Z.INVALID_PARAMETER,message:ae({key:P3,link:{className:i,fnName:n}})})}},audioChannels:{type:wt,values:[1,2]},backgroundColor:{type:wt},backgroundImage:{type:dt},mixUsers:{required:!0,type:zb,arrayItem:{require:!0,type:In,properties:{userId:{required:!0,type:dt},roomId:{type:[dt,wt],validate:Tx},pureAudio:{type:Wt},width:{type:wt,notLessThanZero:!0},height:{type:wt,notLessThanZero:!0},locationX:{type:wt,notLessThanZero:!0},locationY:{type:wt,notLessThanZero:!0},zOrder:{type:wt},streamType:{type:dt,values:["main","auxiliary"]},renderMode:{type:wt,values:[0,1,2,4]}}}}},validate:function(e,t,n,i,r){var o=0,c=0,a=e.mixUsers,s=[];if(a.forEach(function(l,u){if(s.push(l.userId),!l.pureAudio){if(!l.zOrder||l.zOrder<1||l.zOrder>15)throw new te({code:Z.INVALID_PARAMETER,message:ae({key:D3,data:"config.mixUsers[".concat(u,"].zOrder"),link:{className:i,fnName:n}})});l.width+l.locationX>o&&(o=l.width+l.locationX),l.height+l.locationY>c&&(c=l.height+l.locationY)}}),s.indexOf(this.getUserId())<0)throw new te({code:Z.INVALID_PARAMETER,message:ae({key:O3,link:{className:i,fnName:n}})});if(e.videoWidth<o||e.videoHeight<c)throw new te({code:Z.INVALID_PARAMETER,message:ae({key:L3,link:{className:i,fnName:n}})})}},sendSEIMessage:[{name:"buffer",required:!0,instanceOf:ArrayBuffer,validate:function(e){if(!Tm)throw new te({code:Z.NOT_SUPPORTED,message:ae({key:bS})});if(!this.enableSEI_)throw new te({code:Z.INVALID_OPERATION,message:ae({key:Y3})});if(e.byteLength>1e3)throw new te({code:Z.INVALID_PARAMETER,message:ae({key:Z3,data:e.byteLength})});if(e.byteLength===0)throw new te({code:Z.INVALID_PARAMETER,message:ae({key:$3})});if(!this.uplinkConnection_||!this.localStream_)throw new te({code:Z.INVALID_PARAMETER,message:ae({key:e4})});if(!this.localStream_.hasVideo())throw new te({code:Z.INVALID_OPERATION,message:ae({key:t4})});var t=this.uplinkConnection_.isH264;if(!t)throw new te({code:Z.NOT_SUPPORTED,message:ae({key:bS,data:t})})}},{name:"options",type:In,properties:{seiPayloadType:{type:wt,values:[5,243]}}}]},mF={switchDevice:[{name:"type",required:!0,type:dt,values:[Ee,xe]},{name:"deviceId",required:!0,type:dt,validate:function(){if(this.screen_&&!this.audio_||this.audioSource_||this.videoSource_)throw new te({code:Z.INVALID_OPERATION,message:ae({key:l3})});if(this.publishState_===$s)throw new te({code:Z.INVALID_OPERATION,message:ae({key:d3})});if(!km())throw new te({code:Z.NOT_SUPPORTED,message:ae({key:H3})})}}],setAudioCaptureVolume:{name:"volume",type:wt}},vF={play:[{name:"elementId",required:!0,type:[dt,"HTMLDivElement"],validate:function(e,t,n){if(Bt(e)){var i=document.getElementById(e);if(!i)throw new te({code:Z.INVALID_PARAMETER,message:ae({key:M3,data:{key:t,fnName:n}})});if(!(i instanceof HTMLDivElement))throw new te({code:Z.INVALID_PARAMETER,message:ae({key:N3,data:{key:t,fnName:n,type:bi(i)}})})}}},{name:"options",type:In,properties:{objectFit:{type:dt,values:["contain","cover","fill"]},muted:{type:Wt},mirror:{type:Wt}}}],addTrack:{name:Nf,instanceOf:window.MediaStreamTrack,validate:function(e){if(this.isAddingTrack_)throw new te({code:Z.INVALID_OPERATION,message:ae({key:f3})});if(this.isRemovingTrack_)throw new te({code:Z.INVALID_OPERATION,message:ae({key:p3})});if(this.publishState_===$s)throw new te({code:Z.INVALID_OPERATION,message:ae({key:m3})});var t=this.getMediaStream();if(!t)throw new te({code:Z.INVALID_OPERATION,message:ae({key:pS})});if(e.kind===Ee&&t.getAudioTracks().length>0||e.kind===xe&&t.getVideoTracks().length>0)throw new te({code:Z.INVALID_OPERATION,message:ae({key:v3})});if(!Ti()&&!ml())throw new te({code:Z.NOT_SUPPORTED,message:ae({key:rp,data:gb})})}},removeTrack:{name:Nf,instanceOf:window.MediaStreamTrack,validate:function(e){if(this.isAddingTrack_)throw new te({code:Z.INVALID_OPERATION,message:ae({key:_3})});if(this.isRemovingTrack_)throw new te({code:Z.INVALID_OPERATION,message:ae({key:y3})});if(this.publishState_===$s)throw new te({code:Z.INVALID_OPERATION,message:ae({key:b3})});var t=this.getMediaStream();if(!t)throw new te({code:Z.INVALID_OPERATION,message:ae({key:pS})});if(t.getTracks().indexOf(e)===-1)throw new te({code:Z.INVALID_PARAMETER,message:ae({key:S3})});if(!Ti()){if(t.getTracks().length===1)throw new te({code:Z.INVALID_OPERATION,message:ae({key:k3})});if(e.kind===Ee)throw new te({code:Z.INVALID_PARAMETER,message:ae({key:g3})});if(!ml())throw new te({code:Z.NOT_SUPPORTED,message:ae({key:rp,data:_b})})}}},replaceTrack:{name:Nf,instanceOf:window.MediaStreamTrack,validate:function(e){var t=this.getMediaStream();if(!t)throw new te({code:Z.INVALID_OPERATION,message:ae({key:h3})});if(this.publishState_===$s)throw new te({code:Z.INVALID_OPERATION,message:ae({key:fS})});if(e.kind===Ee&&t.getAudioTracks().length<=0||e.kind===xe&&t.getVideoTracks().length<=0)throw new te({code:Z.INVALID_PARAMETER,message:ae({key:T3,data:e})});if(!km())throw new te({code:Z.NOT_SUPPORTED,message:ae({key:rp,data:FM})})}}},Yt={TRTC:fF,CLIENT:pF,LOCAL_STREAM:mF,STREAM:vF};function Ql(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return function(i,r,o){var c=o.value;return o.value=function(){for(var a=arguments.length,s=new Array(a),l=0;l<a;l++)s[l]=arguments[l];return Ix.call(this,t,s,r,this.name_),c.apply(this,s)},o}}function fn(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return function(i,r,o){var c=o.value;return o.value=H(p().mark(function a(){var s,l,u,f=arguments;return p().wrap(function(S){for(;;)switch(S.prev=S.next){case 0:for(s=f.length,l=new Array(s),u=0;u<s;u++)l[u]=f[u];return Ix.call(this,t,l,r,this.name_),S.abrupt("return",c.apply(this,l));case 3:case"end":return S.stop()}},a,this)})),o}}function Ix(e,t,n,i){try{for(var r=0;r<e.length;r++)Fv.call(this,{rule:e[r],value:t[r],key:e[r].name,fnName:n,className:i})}catch(o){throw _e.error(o),o}}function Fv(e){var t=this,n=e.rule,i=e.value,r=e.key,o=e.fnName,c=e.className;if(ge(i)){if(n.required)throw new te({code:Z.INVALID_PARAMETER,message:ae({key:SN,data:{key:r,rule:n,fnName:o,value:i},link:{className:c,fnName:o}})});if(ge(n.defaultValue))return;i=n.defaultValue}if(Array.isArray(n.type)){if(!n.type.map(function(f){return f.toLowerCase()}).includes(bi(i)))throw new te({code:Z.INVALID_PARAMETER,message:ae({key:sS,data:{key:r,rule:n,fnName:o,value:i},link:{className:c,fnName:o}})})}else if(!ge(n.type)&&bi(i)!==n.type)throw new te({code:Z.INVALID_PARAMETER,message:ae({key:sS,data:{key:r,rule:n,fnName:o,value:i},link:{className:c,fnName:o}})});if(n.allowEmpty===!1){var a=tr(i)&&(i===0||Number.isNaN(i)),s=Bt(i)&&i.trim()==="";if(a||s)throw new te({code:Z.INVALID_PARAMETER,message:ae({key:kN,data:{key:r,rule:n,fnName:o,value:i},link:{className:c,fnName:o}})})}if(n.notLessThanZero&&tr(i)&&i<0)throw new te({code:Z.INVALID_PARAMETER,message:ae({key:E3,data:{key:r,rule:n,fnName:o,value:i},link:{className:c,fnName:o}})});if(Bt(n.instanceOf)){if(!i||i.name_!==n.instanceOf)throw new te({code:Z.INVALID_PARAMETER,message:ae({key:cS,data:{key:r,rule:n,fnName:o,value:i},link:{className:c,fnName:o}})})}else if(ln(n.instanceOf)&&!(i instanceof n.instanceOf))throw new te({code:Z.INVALID_PARAMETER,message:ae({key:cS,data:{key:r,rule:n,fnName:o,value:i},link:{className:c,fnName:o}})});if(n.values&&!n.values.includes(i))throw new te({code:Z.INVALID_PARAMETER,message:ae({key:TN,data:{key:r,rule:n,fnName:o,value:i},link:{className:c,fnName:o}})});var l=n.properties;yi(l)&&US(i)&&Object.keys(l).forEach(function(f){Fv.call(t,{rule:l[f],value:i&&i[f],key:"".concat(r,".").concat(f),fnName:o,className:c})});var u=n.arrayItem;yi(u)&&ho(i)&&i.forEach(function(f,S){Fv.call(t,{rule:u,value:f,key:"".concat(r,"[").concat(S,"]"),fnName:o,className:c})}),ln(n.validate)&&n.validate.call(this,i,r,o,c,this)}Le({target:"Number",stat:!0},{isNaN:function(e){return e!=e}});var gF=Le,_F=ue,yF=oh.f;gF({target:"Object",stat:!0,forced:_F(function(){return!Object.getOwnPropertyNames(1)})},{getOwnPropertyNames:yF});var wx,kc,bF=tT;function Lo(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{retries:5,timeout:2e3};return function(t,n,i){var r=ic({retryFunction:i.value,settings:e,onError:e.onError,onRetrying:e.onRetrying,onRetryFailed:e.onRetryFailed});return i.value=function(){for(var o=arguments.length,c=new Array(o),a=0;a<o;a++)c[a]=arguments[a];return r.apply(this,c)},i}}Le({target:"Array",stat:!0,forced:!vu(function(e){Array.from(e)})},{from:bF});var Cx,Ex,Rx,cr,ga=5e3,SF={msg_user_info:0,uint32_video_avg_fps:0,uint32_video_width:0,uint32_video_height:0,uint32_video_avg_bitrate:0,uint32_video_block_time:0,uint32_video_play_time:0,uint32_audio_block_time:0,uint32_audio_play_time:0,uint32_audio_play_db:0,uint32_avg_down_loss:0,uint32_stream_type:0,uint32_video_render_first:0,uint32_video_block_count:0,uint32_audio_block_count:0,uint32_audio_bitrate:0,uint32_video_black_screen_subjective:0,uint32_audio_recv_bitrate:0,uint32_video_external_block_time:0},Hv=Ie(function e(t){Q(this,e),this.str_identifier=String(t.userId),this.uint64_tinyid=Number(t.tinyId),this.uint32_role=t.role}),kF=(wx=Lo({timeout:500,retries:3}),kc=function(){function e(r){var o=this;Q(this,e),this.frameWorkType_=r.frameWorkType||30,this.component_=r.component||0,this.client_=r.client,this.keyPrefix_="key_point",this.storageKey_="".concat(this.keyPrefix_,"_").concat(this.client_.getUserId()),this.log_=_e.createLogger({id:"kpm|"+this.client_.getUserId(),userId:this.client_.getUserId(),sdkAppId:this.client_.getSDKAppId()}),Object.getOwnPropertyNames(this.__proto__).forEach(function(c){c.startsWith("handle")&&ln(o[c])&&(o[c]=function(a){var s=a.fn,l=a.context;return H(p().mark(function u(){var f,S,x,E=arguments;return p().wrap(function(I){for(;;)switch(I.prev=I.next){case 0:for(I.prev=0,f=E.length,S=new Array(f),x=0;x<f;x++)S[x]=E[x];return I.next=4,s.apply(l||this,S);case 4:return I.abrupt("return",I.sent);case 7:I.prev=7,I.t0=I.catch(0),_e.error("".concat(s.name,"() error observed ")+I.t0);case 10:case"end":return I.stop()}},u,this,[[0,7]])}))}({fn:o[c],context:o}))}),this.initData(),this.installEvents(),this.intervalId_=mt.run(uo,this.setStorage.bind(this),{delay:2e4})}var t,n,i;return Ie(e,[{key:"initData",value:function(){var r;this.firstPublishedUserList_=[],this.networkQuality_={totalUplinkRTT:0,totalUplinkLoss:0,count:0,totalDownlinkRTTAndLossMap:new Map},this.basicInfo={string_sdk_version:Gi,uint32_os_type:15,string_device_name:"",string_http_user_agent:navigator.userAgent,string_os_version:"",string_domain:location.host,uint32_avg_rtt:0,uint32_avg_up_loss:0,uint32_scene:((r=this.client_)===null||r===void 0?void 0:r.getMode())==="live"?1:0,uint32_joining_duration:0,uint32_networkType:qf[Tp()],uint32_framework:this.frameWorkType_,uint32_component:this.component_},this.pathJoinRoom_={uint64_start_time:0,uint64_init_audio_start_time:0,uint64_init_audio_end_time:0,uint64_init_camera_start_time:0,uint64_init_camera_end_time:0,uint64_send_request_acc_ip_cmd_start_time:0,uint64_send_request_acc_ip_cmd_end_time:0,uint64_send_request_enter_room_cmd_start_time:0,uint64_send_request_enter_room_cmd_end_time:0,uint64_send_first_video_frame_time:0,uint64_recv_userlist_time:0,uint64_end_time:0,int32_init_audio_ret:0,int32_init_camera_ret:0,int32_send_request_acc_ip_cmd_ret:0,int32_send_request_enter_room_cmd_ret:0,int32_end_ret:0},this.pathLeaveRoom_={uint64_start_time:0,uint64_send_request_exit_room_cmd_start_time:0,uint64_send_request_exit_room_cmd_end_time:0,uint64_end_time:0,int32_send_request_exit_room_cmd_ret:0,int32_end_ret:0},this.pathMainVideoMap_=new Map,this.pathMainAudioMap_=new Map,this.pathAuxiliaryMap_=new Map,this.localStreamStats_={totalVideoBitrate:0,totalVideoFPS:0,totalVideoHeight:0,totalVideoWidth:0,totalAudioLevel:0,videoCount:0,audioLevelCount:0,publishStartTime:0,statsToReport:{uint32_audio_capture_db:0,uint32_video_big_capture_fps:0,uint32_video_big_bitrate:0,uint32_video_big_resolution:0}},this.remoteStreamStatsMap_=new Map}},{key:"installEvents",value:function(){Y.on(ul,this.handleJoinStart,this),Y.on(Mp,this.handleWSStart,this),Y.on(ll,this.handleWSEnd,this),Y.on(Ep,this.handleJoinSendCMD,this),Y.on(Rp,this.handleJoinReceivedCMDResponce,this),Y.on(po,this.handleJoinSuccess,this),Y.on(sa,this.handleJoinFailed,this),Y.on(Op,this.handleReceivedPublishUserList,this),Y.on(hl,this.handleConnectionStateChanged,this),Y.on(Ap,this.handleLeaveStart,this),Y.on(mo,this.handleLeaveSuccess,this),Y.on(Pp,this.handleLeaveSendCMD,this),Y.on(Qp,this.handleSendSubscribeCMD,this),Y.on(tc,this.handleVideoPlaying,this),Y.on(Vp,this.handleAudioPlaying,this),Y.on(Yp,this.handleNetworkQuality,this),Y.on(Dp,this.handleHeartbeatStats,this),Y.on(dl,this.handleRemoteStreamAdded,this),Y.on(jp,this.handleRemoteStreamSubscribeStart,this),Y.on(Ur,this.handleRemoteStreamSubscribed,this),Y.on(ca,this.handleRemoteStreamRemoved,this),Y.on(Wp,this.handleVideoLoadedData,this),Y.on(zp,this.handlePlayStream,this),Y.on(Lp,this.handlePublishStart,this),Y.on(Bp,this.handleLocalStreamInitStart,this),Y.on(Fp,this.handleLocalStreamInitEnd,this),Y.on(Hp,this.handleLocalStreamInitFailed,this)}},{key:"uninstallEvents",value:function(){Y.off(ul,this.handleJoinStart,this),Y.off(Mp,this.handleWSStart,this),Y.off(ll,this.handleWSEnd,this),Y.off(Ep,this.handleJoinSendCMD,this),Y.off(Rp,this.handleJoinReceivedCMDResponce,this),Y.off(Op,this.handleReceivedPublishUserList,this),Y.off(hl,this.handleConnectionStateChanged,this),Y.off(Ap,this.handleLeaveStart,this),Y.off(mo,this.handleLeaveSuccess,this),Y.off(po,this.handleJoinSuccess,this),Y.off(sa,this.handleJoinFailed,this),Y.off(Pp,this.handleLeaveSendCMD,this),Y.off(Qp,this.handleSendSubscribeCMD,this),Y.off(tc,this.handleVideoPlaying,this),Y.off(Vp,this.handleAudioPlaying,this),Y.off(Yp,this.handleNetworkQuality,this),Y.off(Dp,this.handleHeartbeatStats,this),Y.off(dl,this.handleRemoteStreamAdded,this),Y.off(jp,this.handleRemoteStreamSubscribeStart,this),Y.off(Ur,this.handleRemoteStreamSubscribed,this),Y.off(ca,this.handleRemoteStreamRemoved,this),Y.off(Wp,this.handleVideoLoadedData,this),Y.off(zp,this.handlePlayStream,this),Y.off(Lp,this.handlePublishStart,this),Y.off(Bp,this.handleLocalStreamInitStart,this),Y.off(Fp,this.handleLocalStreamInitEnd,this),Y.off(Hp,this.handleLocalStreamInitFailed,this)}},{key:"destroy",value:function(){this.uninstallEvents(),mt.clearTask(this.intervalId_),this.client_=null}},{key:"handleJoinStart",value:function(r){this.hitTest(r.client)&&this.pathJoinRoom_.uint64_start_time===0&&(this.pathJoinRoom_.uint64_start_time=Date.now(),this.checkStorage())}},{key:"handleWSStart",value:function(r){var o=r.client;this.hitTest(o)&&this.pathJoinRoom_.uint64_send_request_acc_ip_cmd_start_time===0&&(this.pathJoinRoom_.uint64_send_request_acc_ip_cmd_start_time=Date.now())}},{key:"handleWSEnd",value:function(r){var o=r.client,c=r.error;this.hitTest(o)&&this.pathJoinRoom_.uint64_send_request_acc_ip_cmd_end_time===0&&(this.pathJoinRoom_.uint64_send_request_acc_ip_cmd_end_time=Date.now(),c&&(this.pathJoinRoom_.int32_send_request_acc_ip_cmd_ret=c instanceof te?Number(c.getExtraCode()||c.getCode()):Z.UNKNOWN,this.pathJoinRoom_.int32_end_ret=2))}},{key:"handleJoinSendCMD",value:function(r){this.hitTest(r.client)&&this.pathJoinRoom_.uint64_send_request_enter_room_cmd_start_time===0&&(this.pathJoinRoom_.uint64_send_request_enter_room_cmd_start_time=Date.now())}},{key:"handleJoinReceivedCMDResponce",value:function(r){this.hitTest(r.client)&&this.pathJoinRoom_.uint64_send_request_enter_room_cmd_end_time===0&&(this.pathJoinRoom_.uint64_send_request_enter_room_cmd_end_time=Date.now(),this.pathJoinRoom_.int32_send_request_enter_room_cmd_ret=r.code,r.code!==0&&(this.pathJoinRoom_.int32_end_ret=3))}},{key:"handleJoinSuccess",value:function(r){this.hitTest(r.client)&&this.pathJoinRoom_.uint64_end_time===0&&(this.pathJoinRoom_.uint64_end_time=Date.now(),this.pathJoinRoom_.int32_end_ret=0)}},{key:"handleJoinFailed",value:function(r){var o=r.client;this.hitTest(o)&&(this.pathJoinRoom_.uint64_end_time=Date.now(),this.pathJoinRoom_.int32_end_ret===0&&(this.pathJoinRoom_.int32_end_ret=3),this.prepareReport(),this.report())}},{key:"handleReceivedPublishUserList",value:function(r){this.hitTest(r.client)&&this.pathJoinRoom_.uint64_recv_userlist_time===0&&(this.pathJoinRoom_.uint64_recv_userlist_time=Date.now(),this.firstPublishedUserList_=r.data.data&&r.data.data.userList||[])}},{key:"handleConnectionStateChanged",value:function(r){var o=r.client,c=r.state,a=r.connection;if(this.hitTest(o)&&c===sn){this.client_.getUplinkConnection()===a&&this.pathJoinRoom_.uint64_send_first_video_frame_time===0&&this.localStreamStats_.publishStartTime>this.pathJoinRoom_.uint64_end_time&&this.localStreamStats_.publishStartTime-this.pathJoinRoom_.uint64_end_time<=100&&(this.pathJoinRoom_.uint64_send_first_video_frame_time=Date.now());var s=this.pathMainVideoMap_.get("".concat(a.getUserId(),"_").concat(yt));s&&s.statsToReport.uint64_pc_connected_time===0&&(s.statsToReport.uint64_pc_connected_time=Date.now())}}},{key:"handleLeaveStart",value:function(r){this.hitTest(r.client)&&(this.pathLeaveRoom_.uint64_start_time=Date.now())}},{key:"handleLeaveSuccess",value:function(r){this.hitTest(r.client)&&this.pathLeaveRoom_.uint64_end_time===0&&(this.pathLeaveRoom_.uint64_end_time=Date.now(),this.pathJoinRoom_.uint64_end_time!==0?this.basicInfo.uint32_joining_duration=this.pathLeaveRoom_.uint64_end_time-this.pathJoinRoom_.uint64_end_time:this.log_.warn("pathJoinRoom endTime is 0"),this.report())}},{key:"handleLeaveSendCMD",value:function(r){this.hitTest(r.client)&&(this.pathLeaveRoom_.uint64_send_request_exit_room_cmd_start_time=Date.now(),this.pathLeaveRoom_.uint64_send_request_exit_room_cmd_end_time=Date.now())}},{key:"handleRemoteStreamAdded",value:function(r){var o=r.client,c=r.stream;if(this.hitTest(o)){var a=c.getUserId(),s=c.getType(),l="".concat(a,"_").concat(s),u=this.remoteStreamStatsMap_.get(l);if(u)u.stream=c;else{var f={userId:a,totalVideoFPS:0,totalVideoBitrate:0,totalAudioLevel:0,totalAudioBitrate:0,totalLoss:0,audioCount:0,audioLevelCount:0,videoCount:0,networkQualityCount:0,streamAddedTime:Date.now(),subscribeStartTime:0,subscribedTime:0,playStreamTime:0,statsToReport:q({},SF),stream:c};f.statsToReport.msg_user_info=new Hv({userId:a,tinyId:c.getTinyId(),role:so}),f.statsToReport.uint32_stream_type=s===yt?2:7,this.remoteStreamStatsMap_.set(l,f)}}}},{key:"handleRemoteStreamSubscribeStart",value:function(r){var o=r.client,c=r.stream;if(this.hitTest(o)){var a=c.getUserId(),s=c.getType(),l="".concat(a,"_").concat(s),u=this.remoteStreamStatsMap_.get(l);u&&u.subscribeStartTime===0&&(u.subscribeStartTime=Date.now())}}},{key:"handleSendSubscribeCMD",value:function(r){if(this.hitTest(r.client)){var o=new Hv(r),c=Date.now(),a="".concat(r.userId,"_").concat(yt);r.trackState.video&&r.subscribeState.video&&!this.pathMainVideoMap_.has(a)&&this.pathMainVideoMap_.set(a,{statsToReport:{msg_user_info:o,uint64_start_enter_time:this.pathJoinRoom_.uint64_start_time,uint64_render_first_frame_time:0,uint64_combine_first_frame_time:0,uint64_pc_connected_time:0},userId:r.userId,sendSubscribeCMDTime:c}),r.trackState.audio&&r.subscribeState.audio&&!this.pathMainAudioMap_.has(a)&&this.pathMainAudioMap_.set(a,{statsToReport:{msg_user_info:o,uint64_start_enter_time:this.pathJoinRoom_.uint64_start_time,uint64_play_first_frame_time:0},userId:r.userId,sendSubscribeCMDTime:c});var s="".concat(r.userId,"_").concat(Dt);r.trackState.auxiliary&&r.subscribeState.auxiliary&&!this.pathAuxiliaryMap_.has(s)&&this.pathAuxiliaryMap_.set(s,{sendSubscribeCMDTime:c})}}},{key:"handleRemoteStreamSubscribed",value:function(r){var o=r.client,c=r.stream;if(this.hitTest(o)){var a=c.getUserId(),s=c.getType(),l="".concat(a,"_").concat(s),u=this.remoteStreamStatsMap_.get(l);u&&u.subscribedTime===0&&(u.subscribedTime=Date.now(),u.stream=c)}}},{key:"handleRemoteStreamRemoved",value:function(r){var o=r.client,c=r.stream;if(this.hitTest(o)){var a=c.getUserId(),s=c.getType(),l=this.remoteStreamStatsMap_.get("".concat(a,"_").concat(s));l&&(l.stream=null)}}},{key:"handlePlayStream",value:function(r){var o=r.stream;if(o.isRemote()&&o.getConnection()&&this.hitTest(o.getConnection().getClient())){var c=o.getConnection().getUserId(),a="".concat(c,"_").concat(o.getType());if(this.remoteStreamStatsMap_.has(a)){var s=this.remoteStreamStatsMap_.get(a);s.playStreamTime===0&&(s.playStreamTime=Date.now())}}}},{key:"handleVideoLoadedData",value:function(r){var o=r.stream;if(o.isRemote()&&o.getConnection()&&this.hitTest(o.getConnection().getClient())){var c=o.getConnection().getUserId(),a="".concat(c,"_").concat(o.getType());if(this.pathMainVideoMap_.has(a)){var s=this.pathMainVideoMap_.get(a);s.statsToReport.uint64_combine_first_frame_time===0&&(s.statsToReport.uint64_combine_first_frame_time=Date.now())}}}},{key:"handleVideoPlaying",value:function(r){var o=r.stream;if(o.isRemote()&&o.getConnection()&&this.hitTest(o.getConnection().getClient())){var c=o.getConnection().getUserId(),a="".concat(c,"_").concat(o.getType()),s=Date.now();if(this.pathMainVideoMap_.has(a)){var l=this.pathMainVideoMap_.get(a);if(l.statsToReport.uint64_render_first_frame_time===0&&(l.statsToReport.uint64_render_first_frame_time=s),this.remoteStreamStatsMap_.has(a)){var u=this.remoteStreamStatsMap_.get(a),f=u.statsToReport,S=u.playStreamTime,x=u.subscribedTime;f.uint32_video_render_first===0&&S-x<=100&&(f.uint32_video_render_first=s-l.sendSubscribeCMDTime)}}if(o.getType()===Dt&&this.pathAuxiliaryMap_.has(a)&&this.remoteStreamStatsMap_.has(a)){var E=this.remoteStreamStatsMap_.get(a),I=E.statsToReport,m=E.playStreamTime,T=E.subscribedTime;I.uint32_video_render_first===0&&m-T<=100&&(I.uint32_video_render_first=s-this.pathAuxiliaryMap_.get(a).sendSubscribeCMDTime)}}}},{key:"handleAudioPlaying",value:function(r){if(r.stream.isRemote()&&r.stream.getConnection()&&this.hitTest(r.stream.getConnection().getClient())){var o=r.stream.getConnection().getUserId(),c="".concat(o,"_").concat(r.stream.getType());if(this.pathMainAudioMap_.has(c)){var a=this.pathMainAudioMap_.get(c);a.statsToReport.uint64_play_first_frame_time===0&&(a.statsToReport.uint64_play_first_frame_time=Date.now())}}}},{key:"handleNetworkQuality",value:function(r){var o=this;this.hitTest(r.client)&&(this.networkQuality_.totalUplinkLoss+=r.uplinkLoss,this.networkQuality_.totalUplinkRTT+=r.uplinkRTT,this.networkQuality_.count++,r.downlinkLossAndRTTMap.forEach(function(c){var a=c.rtt,s=c.loss,l=c.userId,u=o.networkQuality_.totalDownlinkRTTAndLossMap.get(l);u?(u.totalRTT+=a,u.totalLoss+=s,u.count++):o.networkQuality_.totalDownlinkRTTAndLossMap.set(l,{totalRTT:a,totalLoss:s,count:1})}))}},{key:"handleHeartbeatStats",value:function(r){var o=this;if(this.hitTest(r.client)){var c=r.stats,a=c.msg_up_stream_info,s=c.msg_down_stream_info;if(a.msg_video_status[0]){var l=a.msg_video_status[0],u=l.uint32_video_codec_bitrate,f=l.uint32_video_enc_fps,S=l.uint32_video_width,x=l.uint32_video_height;this.localStreamStats_.totalVideoBitrate+=u,this.localStreamStats_.totalVideoFPS+=f,this.localStreamStats_.totalVideoWidth+=S,this.localStreamStats_.totalVideoHeight+=x,this.localStreamStats_.videoCount++}if(a.msg_audio_status){var E=a.msg_audio_status.audioLevel;Math.floor(100*E)>0&&(this.localStreamStats_.totalAudioLevel+=E,this.localStreamStats_.audioLevelCount++)}s.forEach(function(I){var m=I.msg_user_info,T=I.msg_audio_status,v=I.msg_video_status,w=m.str_identifier;if(v.forEach(function(_){var b=_.uint32_video_stream_type===2,R=_.uint32_video_stream_type===7,P="".concat(w,"_").concat(b?yt:Dt);if(o.remoteStreamStatsMap_.has(P)){var U,k,h=o.remoteStreamStatsMap_.get(P);(b&&(U=h.stream)!==null&&U!==void 0&&U.isMainVideoSubscribed||R&&(k=h.stream)!==null&&k!==void 0&&k.isAuxVideoSubscribed)&&(h.totalVideoFPS+=_.uint32_video_receive_fps,h.totalVideoBitrate+=_.uint32_video_codec_bitrate,h.videoCount++,h.statsToReport.uint32_video_width===0&&(h.statsToReport.uint32_video_width=_.uint32_video_width),h.statsToReport.uint32_video_height===0&&(h.statsToReport.uint32_video_height=_.uint32_video_height))}}),T){var L="".concat(w,"_").concat(yt);if(o.remoteStreamStatsMap_.has(L)){var N,V=o.remoteStreamStatsMap_.get(L);(N=V.stream)!==null&&N!==void 0&&N.isMainAudioSubscribed&&(V.totalAudioBitrate+=T.uint32_audio_codec_bitrate,V.audioCount++,Math.floor(100*T.audioLevel)>0&&(V.totalAudioLevel+=T.audioLevel,V.audioLevelCount++))}}})}}},{key:"handlePublishStart",value:function(r){var o=r.client;this.hitTest(o)&&this.localStreamStats_.publishStartTime===0&&(this.localStreamStats_.publishStartTime=Date.now())}},{key:"handleLocalStreamInitStart",value:function(r){var o=r.audio,c=r.video;o&&this.pathJoinRoom_.uint64_init_audio_start_time===0&&(this.pathJoinRoom_.uint64_init_audio_start_time=Date.now()),c&&this.pathJoinRoom_.uint64_init_camera_start_time===0&&(this.pathJoinRoom_.uint64_init_camera_start_time=Date.now())}},{key:"handleLocalStreamInitEnd",value:function(r){var o=r.audio,c=r.video;o&&this.pathJoinRoom_.uint64_init_audio_end_time===0&&(this.pathJoinRoom_.uint64_init_audio_end_time=Date.now()),c&&this.pathJoinRoom_.uint64_init_camera_end_time===0&&(this.pathJoinRoom_.uint64_init_camera_end_time=Date.now())}},{key:"handleLocalStreamInitFailed",value:function(r){var o=r.audio,c=r.video,a=r.error,s=a instanceof te?a.getExtraCode()||a.getCode():{NotFoundError:1,NotAllowedError:2,NotReadableError:3,OverConstrainedError:4,AbortError:5}[a.name]||Z.UNKNOWN;o&&this.pathJoinRoom_.uint64_init_audio_end_time===0&&(this.pathJoinRoom_.int32_init_audio_ret=s,this.pathJoinRoom_.uint64_init_audio_end_time=Date.now()),c&&this.pathJoinRoom_.uint64_init_camera_end_time===0&&(this.pathJoinRoom_.int32_init_camera_ret=s,this.pathJoinRoom_.uint64_init_camera_end_time=Date.now())}},{key:"hasVideoFlag",value:function(r){return this.firstPublishedUserList_.findIndex(function(o){return o.userId===r&&1&o.flag})>=0}},{key:"hasAudioFlag",value:function(r){return this.firstPublishedUserList_.findIndex(function(o){return o.userId===r&&8&o.flag})>=0}},{key:"hasAuxFlag",value:function(r){return this.firstPublishedUserList_.findIndex(function(o){return o.userId===r&&4&o.flag})>=0}},{key:"hitTest",value:function(r){return r===this.client_}},{key:"checkStorage",value:(i=H(p().mark(function r(){var o;return p().wrap(function(c){for(;;)switch(c.prev=c.next){case 0:if(c.prev=0,!(o=bo.getItem(this.storageKey_))){c.next=6;break}return c.next=5,this.upload(o);case 5:bo.deleteItem(this.storageKey_);case 6:c.next=11;break;case 8:c.prev=8,c.t0=c.catch(0),this.log_.warn(c.t0);case 11:case"end":return c.stop()}},r,this,[[0,8]])})),function(){return i.apply(this,arguments)})},{key:"setStorage",value:function(){this.prepareReport();var r=this.getReportData();r.msg_path_enter_room.uint64_start_time!==0&&bo.setItem(this.storageKey_,r)}},{key:"prepareReport",value:function(){var r=this;if(this.networkQuality_.count>0&&(this.basicInfo.uint32_avg_rtt=Math.floor(this.networkQuality_.totalUplinkRTT/this.networkQuality_.count),this.basicInfo.uint32_avg_up_loss=Math.floor(this.networkQuality_.totalUplinkLoss/this.networkQuality_.count)),this.localStreamStats_.videoCount>0){this.localStreamStats_.statsToReport.uint32_video_big_capture_fps=Math.floor(this.localStreamStats_.totalVideoFPS/this.localStreamStats_.videoCount),this.localStreamStats_.statsToReport.uint32_video_big_bitrate=Math.floor(this.localStreamStats_.totalVideoBitrate/this.localStreamStats_.videoCount);var o=Math.floor(this.localStreamStats_.totalVideoWidth/this.localStreamStats_.videoCount),c=Math.floor(this.localStreamStats_.totalVideoHeight/this.localStreamStats_.videoCount);this.localStreamStats_.statsToReport.uint32_video_big_resolution=o<<16|c}this.localStreamStats_.audioLevelCount>0&&(this.localStreamStats_.statsToReport.uint32_audio_capture_db=Math.floor(this.localStreamStats_.totalAudioLevel/this.localStreamStats_.audioLevelCount*100)),this.remoteStreamStatsMap_.forEach(function(a,s){var l=a.userId;if(r.networkQuality_.totalDownlinkRTTAndLossMap.has(l)){var u=r.networkQuality_.totalDownlinkRTTAndLossMap.get(l),f=u.totalLoss,S=u.count;a.statsToReport.uint32_avg_down_loss=Math.floor(f/S)}a.videoCount>0&&(a.statsToReport.uint32_video_avg_fps=Math.floor(a.totalVideoFPS/a.videoCount),a.statsToReport.uint32_video_avg_bitrate=Math.floor(a.totalVideoBitrate/a.videoCount)),a.audioCount>0&&(a.statsToReport.uint32_audio_recv_bitrate=a.statsToReport.uint32_audio_bitrate=Math.floor(a.totalAudioBitrate/a.audioCount)),a.audioLevelCount>0&&(a.statsToReport.uint32_audio_play_db=Math.floor(a.totalAudioLevel/a.audioLevelCount*100));var x=r.client_.getCallDurationCalculator();x&&(a.statsToReport.uint32_audio_play_time=x.getDuration(s,Ee),a.statsToReport.uint32_video_play_time=x.getDuration(s,xe)),a.statsToReport.uint32_video_render_first=Math.min(a.statsToReport.uint32_video_render_first,ga);var E=r.client_.getBadCaseDetector();if(E){var I=E.getDataFreezeDuration(s),m=I.dataFreeze,T=I.count,v=E.getRenderFreezeDuration(s).renderFreeze;a.statsToReport.uint32_video_block_count=T,a.statsToReport.uint32_video_block_time=Math.min(m,a.statsToReport.uint32_video_play_time),a.statsToReport.uint32_video_external_block_time=Math.min(v,a.statsToReport.uint32_video_play_time),E.isBlackStream(s)&&a.statsToReport.uint32_video_avg_fps===0?a.statsToReport.uint32_video_black_screen_subjective=1:a.statsToReport.uint32_video_black_screen_subjective=0}(a.subscribeStartTime===0||a.subscribeStartTime-a.streamAddedTime>100||a.playStreamTime===0)&&(r.pathMainAudioMap_.delete(s),r.pathMainVideoMap_.delete(s),a.statsToReport.uint32_video_render_first=0)}),this.pathMainAudioMap_.forEach(function(a,s){r.hasAudioFlag(a.userId)?a.statsToReport.uint64_play_first_frame_time-a.statsToReport.uint64_start_enter_time>ga&&(a.statsToReport.uint64_play_first_frame_time=a.statsToReport.uint64_start_enter_time+ga):r.pathMainAudioMap_.delete(s)}),this.pathMainVideoMap_.forEach(function(a,s){r.hasVideoFlag(a.userId)?a.statsToReport.uint64_render_first_frame_time-a.statsToReport.uint64_start_enter_time>ga&&(a.statsToReport.uint64_render_first_frame_time=a.statsToReport.uint64_start_enter_time+ga):r.pathMainVideoMap_.delete(s)}),this.pathJoinRoom_.uint64_end_time-this.pathJoinRoom_.uint64_start_time>ga&&(this.pathJoinRoom_.uint64_end_time=this.pathJoinRoom_.uint64_start_time+ga)}},{key:"getReportData",value:function(){var r=this.client_.getSignalInfo();return{uint32_sdk_app_id:Number(this.client_.getSDKAppId()),msg_user_info:new Hv({userId:this.client_.getUserId(),tinyId:this.client_.getTinyId(),role:this.client_.getRole()===Tr?so:Vf}),msg_basic_info:this.basicInfo,uint32_acc_ip:Ip(r.relayIp),uint32_client_ip:Ip(r.clientIp,"small"),uint32_acc_port:0,uint64_timestamp:Date.now(),uint32_seq:Math.floor(Math.random()*Math.pow(2,31)),msg_path_enter_room:this.pathJoinRoom_,msg_path_exit_room:this.pathLeaveRoom_,msg_path_recv_video:Se(this.pathMainVideoMap_.values()).map(function(o){return o.statsToReport}),msg_quality_statistics:Se(this.remoteStreamStatsMap_.values()).map(function(o){return o.statsToReport}),str_room_name:String(this.client_.getRoomId()),msg_path_recv_audio:Se(this.pathMainAudioMap_.values()).map(function(o){return o.statsToReport}),uint32_info_client_ip:Ip(r.clientIp,"small"),error_code:[],msg_local_statistics:this.localStreamStats_.statsToReport,msg_function_state:Ri.getStateArray()}}},{key:"report",value:(n=H(p().mark(function r(){var o;return p().wrap(function(c){for(;;)switch(c.prev=c.next){case 0:return c.prev=0,o=this.getReportData(),c.next=4,this.upload(o);case 4:bo.deleteItem(this.storageKey_),Ri.clearStateArray(),this.initData(),c.next=12;break;case 9:c.prev=9,c.t0=c.catch(0),this.log_.warn(c.t0);case 12:case"end":return c.stop()}},r,this,[[0,9]])})),function(){return n.apply(this,arguments)})},{key:"upload",value:(t=H(p().mark(function r(o){var c,a,s;return p().wrap(function(l){for(;;)switch(l.prev=l.next){case 0:if(!(ra||o.msg_path_enter_room.uint64_start_time===0||[Qf,Qb,Yb].findIndex(function(u){return u===location.host})>=0)){l.next=2;break}return l.abrupt("return");case 2:return c=Number(this.client_.getSDKAppId()),a=ol(c,qM),l.next=6,cl({url:a,body:JSON.stringify(o)});case 6:if((s=l.sent).data==="ok"){l.next=9;break}throw"key point upload failed: ".concat(s.data);case 9:case"end":return l.stop()}},r,this)})),function(r){return t.apply(this,arguments)})}]),e}(),X(kc.prototype,"upload",[wx],Object.getOwnPropertyDescriptor(kc.prototype,"upload"),kc.prototype),kc),Ri=function(){function e(){Q(this,e)}return Ie(e,null,[{key:"handleFunctionState",value:function(t){var n,i,r,o,c=t.className,a=t.fnName,s=t.params;if(!(ra||[Qf,Qb,Yb].findIndex(function(S){return S===location.host})>=0)){var l,u=[];if(c)switch(a){case"createClient":(n=s[0])!==null&&n!==void 0&&n.mode&&u.push("".concat(c,".").concat(a,".").concat(s[0].mode)),(i=s[0])!==null&&i!==void 0&&i.useStringRoomId?u.push("".concat(c,".").concat(a,".stringRoomId")):u.push("".concat(c,".").concat(a,".intRoomId")),(r=s[0])!==null&&r!==void 0&&r.autoSubscribe?u.push("".concat(c,".").concat(a,".autoSubscribe")):u.push("".concat(c,".").concat(a,".manualSubscribe"));break;case"publish":(o=s[1])!==null&&o!==void 0&&o.isAuxiliary?u.push("".concat(c,".").concat(a,".isAuxiliary")):u.push("".concat(c,".").concat(a));break;case"setAudioProfile":case"setVideoProfile":case"setScreenProfile":case"setVideoContentHint":Bt(s[0])&&u.push("".concat(c,".").concat(a,".").concat(s[0]));break;default:u.push("".concat(c,".").concat(a))}else u.push(a);for(var f=0;f<u.length;f++){if(!(l=pN[u[f]]))return;this.stateMap.has(l)?this.stateMap.get(l).int32_call_times+=1:this.stateMap.set(l,{int32_id:l,int32_call_times:1})}}}},{key:"getStateArray",value:function(){return Array.from(this.stateMap.values())}},{key:"clearStateArray",value:function(){this.stateMap.clear()}}]),e}();function St(e){return function(t,n,i){var r=i.value;return i.value=function(){for(var o=arguments.length,c=new Array(o),a=0;a<o;a++)c[a]=arguments[a];try{e||(e=this.name_),Ri.handleFunctionState({className:e,fnName:n,params:c}),e=void 0}catch(s){this.log_.info(s)}return r.apply(this,c)},i}}$e(Ri,"stateMap",new Map);var Ax=(Cx=fn.apply(void 0,Se(Yt.STREAM.play)),Ex=St(),Rx=St(),cr=function(){function e(c){Q(this,e),this.name_=uN,this.userId_=c.userId,this.isRemote_=c.isRemote,this.type_=c.type,this.log_=_e.createLogger({id:"s".concat(c.seq?c.seq:"","|").concat(this.userId_),userId:ge(c.client)?void 0:c.client.getUserId(),sdkAppId:ge(c.client)?void 0:c.client.getSDKAppId(),isLocal:!this.isRemote_,type:this.isRemote_?this.type_:""}),this.client_=null,ge(c.client)||(this.client_=c.client),this.mediaStream_=null,this.div_=null,this.isPlaying_=!1,this.connection_=null,this.audioPlayer_=null,this.videoPlayer_=null,this.muted_=!1,this.objectFit_="cover",this.mirror_=!1,this.id_="xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(a){var s=16*Math.random()|0;return(a=="x"?s:3&s|8).toString(16)}),this.audioOutputDeviceId_=0,this.audioVolume_=1,this.emitter_=GS(new Si,this.name_),this.connectionState_=on,this.installEvents(),ge(c.mirror)||this.log_.warn('TRTC.createStream "mirror" option was deprecated since v4.12.1\uFF0Cplease use localStream.play to set up preview mirror. refer to '.concat(co,"/en/LocalStream.html#play. TRTC.createStream \u63A5\u53E3\u7684 mirror \u9009\u9879\u4ECE v4.12.1 \u5F00\u59CB\u88AB\u5E9F\u5F03\uFF0C\u8BF7\u4F7F\u7528 localStream.play \u8BBE\u7F6E\u672C\u5730\u6D41\u9884\u89C8\u955C\u50CF\uFF0C\u53C2\u8003\u6587\u6863\uFF1A").concat(co,"/zh-cn/LocalStream.html#play\u3002")),this.audioPlayerRetryCount_=3}var t,n,i,r,o;return Ie(e,[{key:"installEvents",value:function(){Y.on(rc,this.restartPlayback,this)}},{key:"uninstallEvents",value:function(){Y.off(rc,this.restartPlayback,this)}},{key:"getType",value:function(){return this.type_}},{key:"getLogger",value:function(){return this.log_}},{key:"isSubscribed",get:function(){return this.type_===yt&&this.connection_.isMainStreamSubscribed||this.type_===Dt&&this.connection_.isAuxStreamSubscribed}},{key:"isMainVideoSubscribed",get:function(){var c=this.getSubscribedState();return this.type_===yt&&c&&c.video}},{key:"isMainAudioSubscribed",get:function(){var c=this.getSubscribedState();return this.type_===yt&&c&&c.audio}},{key:"isAuxVideoSubscribed",get:function(){var c=this.getSubscribedState();return this.type_===Dt&&c&&c.auxiliary}},{key:"isSmallVideoSubscribed",get:function(){var c=this.getSubscribedState();return this.type_===yt&&c&&c.smallVideo}},{key:"emitConnectionStateChanged",value:function(c){c.state!==this.connectionState_&&(c.state!==on&&this.isRemote_&&!this.isSubscribed||(this.emitter_.emit(a6,c),this.connectionState_=c.state))}},{key:"setConnection",value:function(c){this.connection_!==c&&(c instanceof Bv?(this.connection_!==null&&this.connection_.off(et.CONNECTION_STATE_CHANGED,this.emitConnectionStateChanged,this),c.on(et.CONNECTION_STATE_CHANGED,this.emitConnectionStateChanged,this)):c===null&&this.connection_.off(et.CONNECTION_STATE_CHANGED,this.emitConnectionStateChanged,this),this.connection_=c)}},{key:"getConnection",value:function(){return this.connection_}},{key:"play",value:(o=H(p().mark(function c(a,s){var l,u,f;return p().wrap(function(S){for(;;)switch(S.prev=S.next){case 0:if(this.log_.info("stream ".concat(this.isPlaying_?"update":"start to"," play with elementId: ").concat(a," and options: ").concat(JSON.stringify(s),".")),!this.isPlaying_){S.next=9;break}return s&&!ge(s.muted)&&(this.muted_=s.muted),s&&!ge(s.objectFit)&&(this.objectFit_=s.objectFit),this.isScreenShare()?this.mirror_=!1:s&&!ge(s.mirror)&&(this.mirror_=s.mirror),this.audioPlayer_&&this.audioPlayer_.setMuted(this.muted_),this.videoPlayer_&&(this.videoPlayer_.setObjectFit(this.objectFit_),this.videoPlayer_.setMirror(this.mirror_)),this.elementId_!==a&&(l=a,Bt(a)&&(l=document.getElementById(a)),l.appendChild(this.div_),this.elementId_=a),S.abrupt("return");case 9:return this.isPlaying_=!0,(u=document.createElement("div")).setAttribute("id","player_".concat(this.id_)),u.setAttribute("style","width: 100%; height: 100%; position: relative; background-color: black; overflow: hidden;"),f=a,Bt(a)&&(f=document.getElementById(a)),f.appendChild(u),this.elementId_=a,this.div_=u,this.isRemote_||(this.muted_=!0),s&&!ge(s.muted)&&(this.muted_=s.muted),this.isScreenShare()&&(this.objectFit_="contain"),s&&!ge(s.objectFit)&&(this.objectFit_=s.objectFit),this.isScreenShare()?this.mirror_=!1:(this.isRemote_||(this.mirror_=!0),s&&!ge(s.mirror)&&(this.mirror_=s.mirror)),Y.emit(zp,{stream:this}),S.next=26,Promise.all([this.playAudio(),this.playVideo()]);case 26:Y.emit(L4,{stream:this});case 27:case"end":return S.stop()}},c,this)})),function(c,a){return o.apply(this,arguments)})},{key:"playAudio",value:(r=H(p().mark(function c(){var a,s,l=this;return p().wrap(function(u){for(;;)switch(u.prev=u.next){case 0:if(this.hasAudio()&&(!this.isRemote_||this.isMainAudioSubscribed)){u.next=2;break}return u.abrupt("return");case 2:if(a=this.getAudioTrack(),this.audioPlayer_||!a){u.next=18;break}return this.log_.info("create AudioPlayer and play"),this.audioPlayer_=new o5({stream:this,track:a,gainedTrack:(s=this.gain_)===null||s===void 0?void 0:s.audioTrack,div:this.div_,muted:this.muted_,outputDeviceId:this.audioOutputDeviceId_,volume:this.audioVolume_}),this.audioPlayer_.on(gn,function(f){var S={type:Ee,state:f.state,reason:f.reason};Y.emit(XS,q({stream:l},S)),l.emitter_.emit(Wk,S)}),this.audioPlayer_.on(Jk,function(f){l.audioPlayerRetryCount_>0&&(l.audioPlayerRetryCount_--,l.restartAudio())}),u.prev=8,u.next=11,this.audioPlayer_.play();case 11:u.next=18;break;case 13:throw u.prev=13,u.t0=u.catch(8),this.client_&&this.client_.getEnableAutoPlayDialog()&&new UT,this.emitter_.emit(wm,u.t0),u.t0;case 18:case"end":return u.stop()}},c,this,[[8,13]])})),function(){return r.apply(this,arguments)})},{key:"playVideo",value:(i=H(p().mark(function c(){var a,s=this;return p().wrap(function(l){for(;;)switch(l.prev=l.next){case 0:if(this.hasVideo()&&(!this.isRemote_||this.isMainVideoSubscribed||this.isAuxVideoSubscribed||this.isSmallVideoSubscribed)){l.next=2;break}return l.abrupt("return");case 2:if(a=this.getVideoTrack(),this.videoPlayer_||!a){l.next=18;break}return Y.emit(Jp,{stream:this}),this.log_.info("create VideoPlayer and play"),this.videoPlayer_=new VT({stream:this,track:a,div:this.div_,muted:this.muted_,objectFit:this.objectFit_,mirror:this.mirror_}),this.videoPlayer_.on(gn,function(u){var f={type:xe,state:u.state,reason:u.reason};Y.emit(XS,q({stream:s},f)),s.emitter_.emit(Wk,f)}),l.prev=8,l.next=11,this.videoPlayer_.play();case 11:l.next=18;break;case 13:throw l.prev=13,l.t0=l.catch(8),this.client_&&this.client_.getEnableAutoPlayDialog()&&new UT,this.emitter_.emit(wm,l.t0),l.t0;case 18:case"end":return l.stop()}},c,this,[[8,13]])})),function(){return i.apply(this,arguments)})},{key:"stopAudio",value:function(){this.audioPlayer_&&(this.log_.info("stop AudioPlayer"),this.audioPlayer_.stop(),this.audioPlayer_=null)}},{key:"stopVideo",value:function(){this.videoPlayer_&&(this.log_.info("stop VideoPlayer"),this.videoPlayer_.stop(),this.videoPlayer_=null)}},{key:"restartPlayback",value:function(){this.audioPlayer_&&!this.audioPlayer_.isPlaying&&this.restartAudio(),this.videoPlayer_&&!this.videoPlayer_.isPlaying&&this.restartVideo()}},{key:"restartAudio",value:function(){this.isPlaying_&&(this.stopAudio(),this.playAudio().catch(function(c){}))}},{key:"restartVideo",value:function(){this.isPlaying_&&(this.stopVideo(),this.playVideo().catch(function(c){}))}},{key:"stop",value:function(){this.isPlaying_&&(this.isPlaying_=!1,this.stopAudio(),this.stopVideo(),this.div_.parentNode.removeChild(this.div_))}},{key:"resume",value:(n=H(p().mark(function c(){return p().wrap(function(a){for(;;)switch(a.prev=a.next){case 0:if(this.isPlaying_){a.next=2;break}return a.abrupt("return");case 2:if(this.log_.info("resume"),!this.audioPlayer_){a.next=6;break}return a.next=6,this.audioPlayer_.resume();case 6:if(!this.videoPlayer_){a.next=9;break}return a.next=9,this.videoPlayer_.resume();case 9:case"end":return a.stop()}},c,this)})),function(){return n.apply(this,arguments)})},{key:"close",value:function(){this.log_.info("close stream"),this.isPlaying_&&this.stop(),this.isRemote_||(this.mediaStream_&&(this.mediaStream_.preventEvent=1,this.mediaStream_.getTracks().forEach(function(c){c.stop()}),this.mediaStream_=null),this.uninstallEvents())}},{key:"muteAudio",value:function(){return this.addRemoteEvent(!0,Ee),this.doEnableTrack(Ee,!1)}},{key:"muteVideo",value:function(){return this.addRemoteEvent(!0,xe),this.doEnableTrack(xe,!1)}},{key:"unmuteAudio",value:function(){return this.addRemoteEvent(!1,Ee),this.doEnableTrack(Ee,!0)}},{key:"unmuteVideo",value:function(){return this.addRemoteEvent(!1,xe),this.doEnableTrack(xe,!0)}},{key:"addRemoteEvent",value:function(c,a){if(this.isRemote_&&this.client_){var s=this.client_.getUserId(),l="".concat(c?tn:Sr," remote ").concat(a);vn(s,{eventId:a===Ee?c?tV:rV:c?eV:nV,eventDesc:l,timestamp:new Date().getTime(),userId:s,tinyId:this.client_.getTinyId(),remoteUserId:this.userId_,remoteTinyId:this.connection_.getTinyId()})}}},{key:"doEnableTrack",value:function(c,a){var s=!1;return c===Ee?this.mediaStream_.getAudioTracks().forEach(function(l){s=!0,l.enabled=a}):this.mediaStream_.getVideoTracks().forEach(function(l){s=!0,l.enabled=a}),s}},{key:"getId",value:function(){return this.id_}},{key:"getUserId",value:function(){return this.userId_}},{key:"getTinyId",value:function(){return this.connection_?this.connection_.getTinyId():""}},{key:"isPlaying",value:function(){return this.isPlaying_}},{key:"setAudioOutput",value:(t=H(p().mark(function c(a){var s;return p().wrap(function(l){for(;;)switch(l.prev=l.next){case 0:if(this.log_.info("setAudioOutput ".concat(a)),this.audioOutputDeviceId_=a,!this.audioPlayer_){l.next=5;break}return l.next=5,this.audioPlayer_.setSinkId(a);case 5:return l.next=7,Qk();case 7:s=l.sent,this.log_.info("speakers: ".concat(JSON.stringify(s)));case 9:case"end":return l.stop()}},c,this)})),function(c){return t.apply(this,arguments)})},{key:"setAudioVolume",value:function(c){this.audioVolume_=c,this.log_.info("setAudioVolume to ".concat(c)),this.audioPlayer_&&this.audioPlayer_.setVolume(c)}},{key:"getAudioLevel",value:function(){var c=0;return this.audioPlayer_&&(c=this.audioPlayer_.getAudioLevel()),c}},{key:"getInternalAudioLevel",value:function(){var c=0;return this.audioPlayer_&&(c=this.audioPlayer_.getInternalAudioLevel()),c}},{key:"hasAudio",value:function(){if(this.isRemote_){if(!this.connection_)return!1;var c=this.connection_.getTrackState();return this.type_===yt&&c.audio}return!!this.getAudioTrack()}},{key:"hasVideo",value:function(){if(this.isRemote_){if(!this.connection_)return!1;var c=this.connection_.getTrackState();return this.type_===Dt?c.auxiliary:c.video}return!!this.getVideoTrack()}},{key:"getSubscribedState",value:function(){return this.isRemote_&&this.connection_?this.connection_.getSubscribeState():null}},{key:"getAudioTrack",value:function(){var c=null;if(this.mediaStream_){var a=this.mediaStream_.getAudioTracks();a.length>0&&(c=a[0])}return c}},{key:"getVideoTrack",value:function(){var c=null;if(this.mediaStream_){var a=this.mediaStream_.getVideoTracks();a.length>0&&(c=a[0])}return c}},{key:"getVideoFrame",value:function(){return this.videoPlayer_?this.videoPlayer_.getVideoFrame():null}},{key:"getMediaStream",value:function(){return this.mediaStream_}},{key:"setMediaStream",value:function(c){c!==this.mediaStream_&&(this.mediaStream_&&this.mediaStream_.getTracks().forEach(function(a){return a.stop()}),this.mediaStream_=c)}},{key:"updateVideoPlayingState",value:function(c){if(this.isPlaying_)if(c){if(this.log_.info("playing state updated, play video"),this.videoPlayer_&&this.videoPlayer_.getTrack()!==this.getVideoTrack())return this.log_.warn("audio track changed, restart playback"),this.restartVideo();this.playVideo().catch(function(a){})}else this.log_.info("playing state updated, stop video"),this.stopVideo()}},{key:"updateAudioPlayingState",value:function(c){if(this.isPlaying_)if(c){if(this.log_.info("playing state updated, play audio"),this.audioPlayer_&&this.audioPlayer_.getTrack()!==this.getAudioTrack())return this.log_.warn("audio track changed, restart playback"),this.restartAudio();this.playAudio().catch(function(a){})}else this.log_.info("playing state updated, stop audio"),this.stopAudio()}},{key:"on",value:function(c,a,s){this.emitter_.on(c,a,s)}},{key:"off",value:function(c,a,s){c==="*"?this.emitter_.removeAllListeners():this.emitter_.off(c,a,s)}},{key:"isRemote",value:function(){return this.isRemote_}},{key:"isScreenShare",value:function(){return!this.isRemote_&&this.screen_||this.isRemote_&&this.getType()===gt}},{key:"getDiv",value:function(){return this.div_}},{key:"getObjectFit",value:function(){return this.objectFit_}},{key:"getMuted",value:function(){return this.muted_}},{key:"getClient",value:function(){return this.client_}}]),e}(),X(cr.prototype,"play",[Cx],Object.getOwnPropertyDescriptor(cr.prototype,"play"),cr.prototype),X(cr.prototype,"setAudioOutput",[Ex],Object.getOwnPropertyDescriptor(cr.prototype,"setAudioOutput"),cr.prototype),X(cr.prototype,"getVideoFrame",[Rx],Object.getOwnPropertyDescriptor(cr.prototype,"getVideoFrame"),cr.prototype),cr),Gv=function(e){Et(n,e);var t=Rr(n);function n(i){var r;Q(this,n);var o={isRemote:!0,type:i.type},c=q(q({},i),o);return(r=t.call(this,c)).name_=Xf,r.isStreamAddedEventEmitted_=!1,r.isAbleToCallSubscription_=!0,r}return Ie(n,[{key:"installEvents",value:function(){le(Ye(n.prototype),"installEvents",this).call(this),Y.on(Ur,this.handleStreamSubscribed,this),Y.on(Vr,this.handleStreamUnsubscribed,this)}},{key:"uninstallEvents",value:function(){le(Ye(n.prototype),"uninstallEvents",this).call(this),Y.off(Ur,this.handleStreamSubscribed,this),Y.off(Vr,this.handleStreamUnsubscribed,this)}},{key:"handleStreamSubscribed",value:function(i){i.client===this.client_&&i.stream===this&&this.connection_.getCurrentState()===sn&&this.emitConnectionStateChanged({prevState:on,state:sn})}},{key:"handleStreamUnsubscribed",value:function(i){i.client===this.client_&&i.stream===this&&this.emitConnectionStateChanged({prevState:sn,state:on})}},{key:"getType",value:function(){return le(Ye(n.prototype),"getType",this).call(this)}},{key:"getIsAbleToCallSubscription",value:function(){return this.isAbleToCallSubscription_}},{key:"setIsAbleToCallSubscription",value:function(i){this.isAbleToCallSubscription_=i}},{key:"setIsStreamAddedEventEmitted",value:function(i){this.isStreamAddedEventEmitted_=i}},{key:"getIsStreamAddedEventEmitted",value:function(){return this.isStreamAddedEventEmitted_}},{key:"getAudioTrack",value:function(){return this.connection_&&this.connection_.getTrackState().audio?le(Ye(n.prototype),"getAudioTrack",this).call(this):null}},{key:"getVideoTrack",value:function(){if(!this.connection_)return null;var i=this.connection_.getTrackState();return(this.type_!==yt||i.video)&&(this.type_!==Dt||i.auxiliary)?le(Ye(n.prototype),"getVideoTrack",this).call(this):null}},{key:"close",value:function(){le(Ye(n.prototype),"close",this).call(this)}}]),n}(Ax),TF=function(){function e(r){Q(this,e),this.client_=r.client,this.subscribedStreams_=new Map,this.unsubscribedStreams_=new Map,this.subscriptedOptions_=new Map,this.autoRecoveryFlags_=new Map}var t,n,i;return Ie(e,[{key:"isEnabled",get:function(){return this.client_.getEnv()!=="webrtc"}},{key:"recover",value:(i=H(p().mark(function r(o){var c,a,s;return p().wrap(function(l){for(;;)switch(l.prev=l.next){case 0:if(c=o.getUserId(),a=o.getType(),this.hasAutoRecoveryFlag(c,a)){l.next=5;break}return l.abrupt("return");case 5:if(s=this.getUnsubscribedStream(c,a)?"unsubscribe":"subscribe",l.prev=6,_e.warn("recover() try to recover subscription [".concat(s,"][").concat(c,"][").concat(a,"]")),s!=="subscribe"){l.next=13;break}return l.next=11,this.recoverSubscription(c,o);case 11:l.next=15;break;case 13:return l.next=15,this.recoverUnsubscription(c,o);case 15:ke.logSuccessEvent({userId:this.client_.getUserId(),eventType:Ub}),_e.warn("recover() recover successfully [".concat(s,"][").concat(c,"][").concat(a,"]")),l.next=23;break;case 19:l.prev=19,l.t0=l.catch(6),_e.error("recover() recover failed [".concat(s,"][").concat(c,"][").concat(a,"]"),l.t0),ke.logFailedEvent({userId:this.client_.getUserId(),eventType:Ub,error:l.t0});case 23:this.deleteAutoRecoveryFlag(c,a);case 24:case"end":return l.stop()}},r,this,[[6,19]])})),function(r){return i.apply(this,arguments)})},{key:"recoverSubscription",value:(n=H(p().mark(function r(o,c){var a,s,l,u,f;return p().wrap(function(S){for(;;)switch(S.prev=S.next){case 0:if(a=this.getOptions(o,c.getType()),s=this.getSubscribedStream(o,c.getType()),a&&s){S.next=4;break}return S.abrupt("return");case 4:l=this.getStreamMuteState(s),u=l.isAudioMuted,f=l.isVideoMuted,this.mergeStream(s,c),this.recoverPlayingState(s),u&&s.doEnableTrack(Ee,!1),f&&s.doEnableTrack(xe,!1);case 9:case"end":return S.stop()}},r,this)})),function(r,o){return n.apply(this,arguments)})},{key:"recoverUnsubscription",value:(t=H(p().mark(function r(o,c){var a;return p().wrap(function(s){for(;;)switch(s.prev=s.next){case 0:if(a=this.getUnsubscribedStream(o,c.getType())){s.next=3;break}return s.abrupt("return");case 3:this.mergeStream(a,c);case 4:case"end":return s.stop()}},r,this)})),function(r,o){return t.apply(this,arguments)})},{key:"getStreamMuteState",value:function(r){var o={isAudioMuted:!1,isVideoMuted:!1},c=r.getMediaStream();return c&&(o.isAudioMuted=c.getAudioTracks().map(function(a){return a.enabled}).includes(!1),o.isVideoMuted=c.getVideoTracks().map(function(a){return a.enabled}).includes(!1)),o}},{key:"recoverPlayingState",value:function(r){var o=r.isPlaying(),c=r.getDiv();if(o&&c){var a=c.parentNode;r.stop(),r.play(a,{objectFit:r.getObjectFit(),muted:r.getMuted()})}}},{key:"mergeStream",value:function(r,o){var c=o.getConnection(),a=o.getMediaStream();r.setConnection(c),c.setRemoteStream(a.id,r),r.setMediaStream(a),r.updateAudioPlayingState(o.hasAudio()),r.updateVideoPlayingState(o.hasVideo())}},{key:"addSubscriptionRecord",value:function(r,o,c){var a=o.getType();if(this.subscribedStreams_.has(r))this.subscribedStreams_.get(r).set(a,o);else{var s=new Map;s.set(o.getType(),o),this.subscribedStreams_.set(r,s)}if(this.subscriptedOptions_.has(r))this.subscriptedOptions_.get(r).set(a,c);else{var l=new Map;l.set(o.getType(),c),this.subscriptedOptions_.set(r,l)}this.deleteUnsubscriptionRecord(r,a)}},{key:"addUnsubscriptionRecord",value:function(r,o){if(this.unsubscribedStreams_.has(r))this.unsubscribedStreams_.get(r).set(o.getType(),o);else{var c=new Map;c.set(o.getType(),o),this.unsubscribedStreams_.set(r,c)}this.deleteSubscriptionRecord(r,o.getType())}},{key:"getSubscribedStream",value:function(r,o){return this.subscribedStreams_.has(r)&&this.subscribedStreams_.get(r).has(o)?this.subscribedStreams_.get(r).get(o):null}},{key:"getOptions",value:function(r,o){return this.subscriptedOptions_.has(r)&&this.subscriptedOptions_.get(r).has(o)?this.subscriptedOptions_.get(r).get(o):null}},{key:"getUnsubscribedStream",value:function(r,o){return this.unsubscribedStreams_.has(r)&&this.unsubscribedStreams_.get(r).has(o)?this.unsubscribedStreams_.get(r).get(o):null}},{key:"deleteSubscriptionRecord",value:function(r,o){this.subscribedStreams_.has(r)&&this.subscribedStreams_.get(r).delete(o),this.subscriptedOptions_.has(r)&&this.subscriptedOptions_.get(r).delete(o)}},{key:"deleteUnsubscriptionRecord",value:function(r,o){this.unsubscribedStreams_.has(r)&&this.unsubscribedStreams_.get(r).delete(o)}},{key:"markAllStream",value:function(){for(var r=0,o=Se(this.subscribedStreams_.entries());r<o.length;r++)for(var c=Te(o[r],2),a=c[0],s=0,l=Se(c[1].entries());s<l.length;s++){var u=Te(l[s],1)[0];this.setAutoRecoveryFlag(a,u)}for(var f=0,S=Se(this.unsubscribedStreams_.entries());f<S.length;f++)for(var x=Te(S[f],2),E=x[0],I=0,m=Se(x[1].entries());I<m.length;I++){var T=Te(m[I],1)[0];this.setAutoRecoveryFlag(E,T)}}},{key:"setAutoRecoveryFlag",value:function(r,o){if(_e.info("setAutoRecoveryFlag() mark [".concat(r,"][").concat(o,"]")),this.autoRecoveryFlags_.has(r))this.autoRecoveryFlags_.get(r).set(o);else{var c=new Map;c.set(o),this.autoRecoveryFlags_.set(r,c)}}},{key:"hasAutoRecoveryFlag",value:function(r,o){return!!this.isEnabled&&this.autoRecoveryFlags_.has(r)&&this.autoRecoveryFlags_.get(r).has(o)}},{key:"deleteAutoRecoveryFlag",value:function(r,o){this.autoRecoveryFlags_.has(r)&&this.autoRecoveryFlags_.get(r).delete(o)}},{key:"delete",value:function(r){this.unsubscribedStreams_.delete(r),this.subscribedStreams_.delete(r),this.subscriptedOptions_.delete(r),this.autoRecoveryFlags_.delete(r)}}]),e}(),xF=function(){function e(t){Q(this,e),this.player_=t,this.canvas_=document.createElement(hb),this.canvasCtx_=this.canvas_.getContext("2d")}return Ie(e,[{key:"setCanvasRect",value:function(t,n){this.canvas_.width=t,this.canvas_.height=n}},{key:"drawVideoToCanvas",value:function(){var t=this.player_.getElement(),n=t.videoHeight,i=t.videoWidth,r=i*this.canvas_.height/(n*this.canvas_.width);if(r>1.05||r<.95){var o=i*n/(this.canvas_.width*this.canvas_.height);this.setCanvasRect(i/Math.sqrt(o),n/Math.sqrt(o))}this.canvasCtx_.drawImage(t,0,0,this.canvas_.width,this.canvas_.height)}},{key:"generateVideoTrackFromCanvasCapture",value:function(t){return this.canvas_.captureStream(t).getVideoTracks()[0]}},{key:"generateStreamFromTrack",value:function(t){var n=new MediaStream;return n.addTrack(t),n}},{key:"destroy",value:function(){this.player_.stop(),this.canvas_.width=0,this.canvas_.height=0,this.canvas_=null,this.canvasCtx_=null}},{key:"canvas",get:function(){return this.canvas_}},{key:"canvasCtx",get:function(){return this.canvasCtx_}},{key:"canDrawVideoToCanvas",get:function(){if(this.player_){var t=this.player_.getElement();if(t)return t.readyState===t.HAVE_ENOUGH_DATA}return!1}}]),e}(),IF=new Blob(['let t,e,a,i;onmessage=function(n){const{action:h,data:s}=n.data;switch(h){case"render":a=s.canvas,t=a.width,e=a.height,i=a.getContext("2d"),function(t,e){const n=new TransformStream({async transform(t,e){const n=t.displayWidth,h=t.displayHeight,s=n*a.height/(h*a.width);if(s>1.05||s<.95){const t=n*h/(a.width*a.height);a.width=n/Math.sqrt(t),a.height=h/Math.sqrt(t)}i.drawImage(t,0,0,a.width,a.height);const o=new VideoFrame(a,{timestamp:t.timestamp});t.close(),e.enqueue(o)}});t.pipeThrough(n).pipeTo(e)}(s.readable,s.writable)}}'],{type:"application/javascript"}),wF=function(){function e(t){Q(this,e);var n=t.videoTrack;this.width=void 0,this.height=void 0,this.canvas=document.createElement("canvas"),this.offscreen=null,this.smallGenerator=new MediaStreamTrackGenerator({kind:"video"}),this.smallWritable=this.smallGenerator.writable,this.bigProcessor=new MediaStreamTrackProcessor({track:n}),this.bigReadable=this.bigProcessor.readable,this.initWorker()}return Ie(e,[{key:"initWorker",value:function(){try{this.worker=new Worker(URL.createObjectURL(IF)),_e.info("init worker processor success")}catch(t){_e.warn("init worker processor failed. ".concat(t.error))}}},{key:"setCanvasRect",value:function(t,n){this.width=t,this.height=n,this.canvas.width=t,this.canvas.height=n,this.offscreen=this.canvas.transferControlToOffscreen(),this.worker.postMessage({action:"render",data:{canvas:this.offscreen,readable:this.bigReadable,writable:this.smallWritable}},[this.offscreen,this.bigReadable,this.smallWritable])}},{key:"generatorVideoTrack",value:function(){var t=new MediaStream([this.smallGenerator]);return t==null?void 0:t.getTracks()[0]}},{key:"destroy",value:function(){this.worker.terminate()}}]),e}(),Yl=function(){function e(n){Q(this,e),this.localStream_=n,this.player_=null,this.processor_=null,this.initOffscreenSuccess_=!1}var t;return Ie(e,[{key:"initialize",value:(t=H(p().mark(function n(){var i;return p().wrap(function(r){for(;;)switch(r.prev=r.next){case 0:if(!(r6()&&((i=navigator)===null||i===void 0?void 0:i.hardwareConcurrency)>=6)){r.next=13;break}return r.prev=1,r.next=4,this.initOffscreen();case 4:this.initOffscreenSuccess_=!0,_e.info("Initialize VideoGenerator successfully!"),r.next=11;break;case 8:r.prev=8,r.t0=r.catch(1),this.initCanvas();case 11:r.next=14;break;case 13:this.initCanvas();case 14:case"end":return r.stop()}},n,this,[[1,8]])})),function(){return t.apply(this,arguments)})},{key:"generateSmallVideoTrack",value:function(n){var i,r=n.height,o=n.width,c=n.frameRate,a=this.getSmallVideoProfile(o,r);return this.initOffscreenSuccess_?(this.processor_.setCanvasRect(a.width,a.height),i=this.processor_.generatorVideoTrack()):(this.processor_.setCanvasRect(a.width,a.height),this.player_.setRect({width:a.width,height:a.height}),i=this.processor_.generateVideoTrackFromCanvasCapture(c),this.interval_=mt.run(Qu,this.render.bind(this),{fps:c})),i}},{key:"render",value:function(){this.processor_.canDrawVideoToCanvas&&this.processor_.drawVideoToCanvas()}},{key:"destroy",value:function(){mt.clearTask(this.interval_),this.processor_&&this.processor_.destroy()}},{key:"initOffscreen",value:function(){this.processor_=new wF({videoTrack:this.localStream_.getVideoTrack()})}},{key:"initCanvas",value:function(){this.player_=new VT({stream:this.localStream_,track:this.localStream_.getVideoTrack(),muted:!0,objectFit:"cover",mirror:!1}),this.player_.play().then(function(){_e.info("VideoGenerator: play local video success")}).catch(function(){_e.error("VideoGenerator: Failed to play local video")}),this.processor_=new xF(this.player_)}},{key:"getSmallVideoProfile",value:function(n,i){var r,o=this.localStream_.getVideoTrack(),c=this.localStream_.getVideoProfile();if(la){var a=o.getSettings();a&&a.width&&a.height&&(c.width=a.width,c.height=a.height)}var s=c.width*c.height,l=n*i;return _e.info("big stream resolution: ".concat(c.width,"*").concat(c.height," small stream resolution: ").concat(n,"*").concat(i," ")),r=s>l?s/l:s/19200,{width:parseInt(c.width/Math.sqrt(r)),height:parseInt(c.height/Math.sqrt(r))}}}]),e}(),$l=new Map,CF=function(){var e=H(p().mark(function t(n){var i,r,o,c,a,s,l;return p().wrap(function(u){for(;;)switch(u.prev=u.next){case 0:if(!gl()){u.next=2;break}return u.abrupt("return");case 2:return u.next=4,EF(n);case 4:if(i=u.sent,_e.info("getUserMedia with constraints: "+JSON.stringify(i)),!i.audio){u.next=11;break}return u.next=9,xt.getMicrophones();case 9:r=u.sent,_e.info("microphones: ".concat(fo(r,["deviceId","label"])));case 11:if(!i.video){u.next=16;break}return u.next=14,xt.getCameras();case 14:o=u.sent,_e.info("cameras: ".concat(fo(o,["deviceId","label"])));case 16:return u.prev=16,u.next=19,navigator.mediaDevices.getUserMedia(i);case 19:return u.abrupt("return",u.sent);case 22:if(u.prev=22,u.t0=u.catch(16),u.t0.name!=="NotFoundError"){u.next=29;break}if(!o||o.length!==0){u.next=27;break}throw new te({code:Z.DEVICE_NOT_FOUND,message:ae({key:J3})});case 27:if(!r||r.length!==0){u.next=29;break}throw new te({code:Z.DEVICE_NOT_FOUND,message:ae({key:W3})});case 29:throw i.audio&&((c=r)===null||c===void 0?void 0:c.length)>0&&(s=r.find(function(f){return f.deviceId===n.microphoneId}))&&s.getCapabilities&&_e.warn(fo(s.getCapabilities(),Zf)),i.video&&((a=o)===null||a===void 0?void 0:a.length)>0&&(l=o.find(function(f){return f.deviceId===n.cameraId}))&&l.getCapabilities&&_e.warn(fo(l.getCapabilities(),Zf)),new te({code:Z.INITIALIZE_FAILED,name:u.t0.name,message:u.t0.message,constraint:u.t0.constraint});case 32:case"end":return u.stop()}},t,null,[[16,22]])}));return function(t){return e.apply(this,arguments)}}(),zv=ic({retryFunction:CF,settings:{retries:3,timeout:500},onError:function(e,t,n,i,r){var o=r+1;_e.warn("getUserMedia error: ".concat(e)),e.name==="NotReadableError"||e.name==="OverconstrainedError"?(o===1&&i[0].video?(i[0].maxResoution=!1,i[0].frameRate=i[0].frameRate>10?10:5):o===2?i[0].useDeviceIdOnly=!0:o!==3||i[0].useExact&&!i[0].retryWhenExactFailed||(i[0].useTrueAsConstraint=!0),e.message.includes("deviceId")&&i[0].retryWhenExactFailed&&(i[0].useExact=!1),t()):n(e)},onRetrying:function(e){_e.warn("getUserMedia retrying [".concat(e,"/3]"))},onRetryFailed:function(){ke.uploadEvent({log:"stat-getUserMedia-retry-failed"})},onRetrySuccess:function(e){ke.uploadEvent({log:"stat-getUserMedia-retry-success-"+e})}});function EF(e){return{audio:RF(e),video:AF(e)}}function RF(e){if(!e.audio)return!1;if(e.useTrueAsConstraint)return!0;var t={};return!Br(e.microphoneId)&&(t.deviceId=e.useExact?{exact:e.microphoneId}:e.microphoneId,e.useDeviceIdOnly)?t:(t.echoCancellation=!0,t.noiseSuppression=!0,t.autoGainControl=!0,t.sampleRate=e.sampleRate,tr(e.channelCount)&&e.channelCount>1&&(t.channelCount=e.channelCount),nr(e.echoCancellation)&&!e.echoCancellation&&(t.echoCancellation=!1),nr(e.noiseSuppression)&&!e.noiseSuppression&&(t.noiseSuppression=!1),nr(e.autoGainControl)&&!e.autoGainControl&&(t.autoGainControl=!1),!!Br(t)||t)}function AF(e){if(!e.video)return!1;if(e.useTrueAsConstraint)return!0;var t=e.maxResoution,n=t===void 0||t,i={};return e.facingMode?i.facingMode=e.facingMode:e.cameraId&&(i.deviceId=e.useExact?{exact:e.cameraId}:e.cameraId),e.useDeviceIdOnly&&!Br(i)?i:(e.width&&(i.width={ideal:e.width},n&&!Vn&&(i.width.max=e.width)),e.height&&(i.height={ideal:e.height},n&&!Vn&&(i.height.max=e.height)),Vn&&ec&&e.width&&e.height&&e.width*e.height<101376&&(i.width=e.width,i.height=e.height),e.frameRate&&(i.frameRate=e.frameRate),!!Br(i)||i)}var PF=function(){var e=H(p().mark(function t(n){var i,r,o,c,a,s,l,u,f;return p().wrap(function(S){for(;;)switch(S.prev=S.next){case 0:if(!gl()){S.next=2;break}return S.abrupt("return");case 2:if(i=null,!(rl&&bp<74||na)){S.next=27;break}return r=Wv(n),_e.info("getDisplayMedia with constraints: "+JSON.stringify(r)),S.next=8,navigator.mediaDevices.getDisplayMedia(r);case 8:if(o=S.sent,!n.screenAudio){S.next=14;break}return _e.warn("Your browser not support capture system audio"),S.abrupt("return",o);case 14:if(!n.audio){S.next=24;break}return c=Px(n),_e.info("getUserMedia with constraints: "+JSON.stringify(c)),S.next=19,navigator.mediaDevices.getUserMedia(c);case 19:return i=S.sent,o.addTrack(i.getAudioTracks()[0]),S.abrupt("return",o);case 24:return S.abrupt("return",o);case 25:S.next=53;break;case 27:if(!n.screenAudio){S.next=37;break}return n.audioConstraints={echoCancellation:n.echoCancellation,autoGainControl:n.autoGainControl,noiseSuppression:n.noiseSuppression,sampleRate:44100},a=Wv(n),_e.info("getDisplayMedia with constraints: "+JSON.stringify(a)),S.next=33,navigator.mediaDevices.getDisplayMedia(a);case 33:return s=S.sent,S.abrupt("return",s);case 37:return l=Wv(n),_e.info("getDisplayMedia with constraints: "+JSON.stringify(l)),S.next=41,navigator.mediaDevices.getDisplayMedia(l);case 41:if(u=S.sent,!n.audio){S.next=52;break}return f=Px(n),_e.info("getUserMedia with constraints: "+JSON.stringify(f)),S.next=47,navigator.mediaDevices.getUserMedia(f);case 47:return i=S.sent,u.addTrack(i.getAudioTracks()[0]),S.abrupt("return",u);case 52:return S.abrupt("return",u);case 53:case"end":return S.stop()}},t)}));return function(t){return e.apply(this,arguments)}}();function Px(e){var t={echoCancellation:e.echoCancellation,autoGainControl:e.autoGainControl,noiseSuppression:e.noiseSuppression,sampleRate:e.sampleRate,channelCount:e.channelCount};return ge(e.microphoneId)||(t.deviceId=e.microphoneId),{audio:t,video:!1}}function Wv(e){var t={systemAudio:"include",selfBrowserSurface:"include",surfaceSwitching:"include"},n={width:na?{max:e.width}:{ideal:e.width,max:e.width},height:na?{max:e.height}:{ideal:e.height,max:e.height},frameRate:e.frameRate,displaySurface:"monitor"};return t.video=n,ge(e.audioConstraints)||(t.audio=e.audioConstraints),t}var Dx,Ox,Lx,Mx,Nx,Ux,Vx,jx,Bx,Fx,Hx,nt,Gx,Tc,Jv=new Map([["120p",{width:160,height:120,frameRate:15,bitrate:200}],["120p_2",{width:160,height:120,frameRate:15,bitrate:100}],["180p",{width:320,height:180,frameRate:15,bitrate:350}],["180p_2",{width:320,height:180,frameRate:15,bitrate:150}],["240p",{width:320,height:240,frameRate:15,bitrate:400}],["240p_2",{width:320,height:240,frameRate:15,bitrate:200}],["360p",{width:640,height:360,frameRate:15,bitrate:800}],["360p_2",{width:640,height:360,frameRate:15,bitrate:400}],["480p",{width:640,height:480,frameRate:15,bitrate:900}],["480p_2",{width:640,height:480,frameRate:15,bitrate:500}],["720p",{width:1280,height:720,frameRate:15,bitrate:1500}],["1080p",{width:1920,height:1080,frameRate:15,bitrate:2e3}],["1440p",{width:2560,height:1440,frameRate:30,bitrate:4860}],["4K",{width:3840,height:2160,frameRate:30,bitrate:9e3}]]),qv=new Map([["480p",{width:640,height:480,frameRate:5,bitrate:900}],["480p_2",{width:640,height:480,frameRate:30,bitrate:1e3}],["720p",{width:1280,height:720,frameRate:5,bitrate:1200}],["720p_2",{width:1280,height:720,frameRate:30,bitrate:3e3}],["1080p",{width:1920,height:1080,frameRate:5,bitrate:1600}],["1080p_2",{width:1920,height:1080,frameRate:30,bitrate:4e3}]]),zx=new Map([["standard",{sampleRate:48e3,channelCount:1,bitrate:40}],["standard-stereo",{sampleRate:48e3,channelCount:2,bitrate:64}],["high",{sampleRate:48e3,channelCount:1,bitrate:128}],["high-stereo",{sampleRate:48e3,channelCount:2,bitrate:192}]]),_a=new Map,DF=(Dx=St(mi),Ox=St(mi),Lx=St(mi),Mx=St(mi),Nx=fn.apply(void 0,Se(Yt.LOCAL_STREAM.switchDevice)),Ux=fn(Yt.STREAM.addTrack),Vx=fn(Yt.STREAM.removeTrack),jx=fn(Yt.STREAM.replaceTrack),Bx=Lo({retries:10,timeout:3e3,onRetryFailed:function(e){ke.logFailedEvent({userId:this.client_?this.client_.getUserId():this.userId_,eventType:Nb,error:e}),this.emitter_.emit(wm,new te({code:Z.DEVICE_AUTO_RECOVER_FAILED,message:e.message}))}}),Fx=Ql(Yt.LOCAL_STREAM.setAudioCaptureVolume),Hx=St(mi),nt=function(e){Et(I,e);var t,n,i,r,o,c,a,s,l,u,f,S,x,E=Rr(I);function I(m){var T;Q(this,I);var v=q(q({},m),{isRemote:!1,type:"local"});return(T=E.call(this,v)).name_=mi,T.client_=null,T.video_=m.video,T.audio_=m.audio,T.cameraId_=m.cameraId,T.cameraGroupId_="",T.facingMode_=m.facingMode,T.microphoneId_=m.microphoneId,T.microphoneGroupId_="",T.microphoneLabel_="",T.videoSource_=m.videoSource,T.audioSource_=m.audioSource,T.screen_=m.screen,T.screenAudio_=m.screenAudio,T.audioProfile_={echoCancellation:!0,autoGainControl:!0,noiseSuppression:!0,sampleRate:48e3,channelCount:1,bitrate:40},T.screenAudio_&&(T.audioProfile_.echoCancellation=!0,T.audioProfile_.autoGainControl=!1,T.audioProfile_.noiseSuppression=!1),nr(m.echoCancellation)&&(T.audioProfile_.echoCancellation=m.echoCancellation),nr(m.autoGainControl)&&(T.audioProfile_.autoGainControl=m.autoGainControl),nr(m.noiseSuppression)&&(T.audioProfile_.noiseSuppression=m.noiseSuppression),T.videoProfile_=Jv.get("480p_2"),T.screenProfile_=qv.get("1080p"),T.videoSetting_=null,T.muteState_={video:!1,audio:!1,auxVideo:!1},T.beautyStatus_=!1,T.prevAudioRecoverTime_=0,T.prevVideoRecoverTime_=0,T.isAudioRecovering_=!1,T.isVideoRecovering_=!1,T.initState(),T.canvas_=null,T.canvasInterval_=null,T.canvasTrack_=null,T.gain_={audioTrack:null,source:null,gainNode:null},T.captureVolume_=100,T.enableAutoRecoverCapture_=!!ge(m.enableAutoRecoverCapture)||m.enableAutoRecoverCapture,T.enableAutoRecoverOther_=!nr(m.enableAutoRecoverOther)||m.enableAutoRecoverOther,T.log_.info("stream created: ".concat(T.id_," autoRecover: ").concat(T.enableAutoRecoverCapture_)),T.isAIDenoiser=!1,T}return Ie(I,[{key:"scaleResolutionDownBy",get:function(){var m=this.getVideoTrack();if(!m||!la||this.isScreenShare())return 1;var T,v,w,L=m.getSettings();return L.width===this.videoProfile_.width&&L.height===this.videoProfile_.height?1:(T=window.screen)!==null&&T!==void 0&&(v=T.orientation)!==null&&v!==void 0&&(w=v.type)!==null&&w!==void 0&&w.includes("portrait")&&this.videoProfile_.width>this.videoProfile_.height&&L.height>L.width?Math.max(L.width/this.videoProfile_.height,L.height/this.videoProfile_.width,1):Math.max(L.width/this.videoProfile_.width,L.height/this.videoProfile_.height,1)}},{key:"initState",value:function(){this.isAddingTrack_=!1,this.isRemovingTrack_=!1,this.setIsReadyToPublish(!1),this.setPublishState(Wb)}},{key:"installEvents",value:function(){le(Ye(I.prototype),"installEvents",this).call(this),Y.on(qp,this.onVideoTrackStopped,this),Y.on(nc,this.onVideoTrackStopped,this),Y.on(Xp,this.onAudioTrackStopped,this),Y.on(Kp,this.onAudioTrackStopped,this)}},{key:"uninstallEvents",value:function(){le(Ye(I.prototype),"uninstallEvents",this).call(this),Y.off(qp,this.onVideoTrackStopped,this),Y.off(nc,this.onVideoTrackStopped,this),Y.off(Xp,this.onAudioTrackStopped,this),Y.off(Kp,this.onAudioTrackStopped,this)}},{key:"initialize",value:function(){var m=this;return new Promise(function(T,v){if(_l())v(new te({code:Z.INVALID_OPERATION,message:ae({key:mS})}));else{if(ge(m.audio_)){var w=new MediaStream;return ge(m.audioSource_)||(w.addTrack(m.audioSource_),m.updateAudioPlayingState(!0)),ge(m.videoSource_)||(w.addTrack(m.videoSource_),m.updateVideoPlayingState(!0)),m.setMediaStream(w),ke.logSuccessEvent({userId:m.client_?m.client_.getUserId():m.userId_,eventType:Qs,kind:"custom"}),m.setIsReadyToPublish(!0),T()}m.screen_?(m.log_.info("initialize stream audio: "+m.audio_+" screenAudio: "+m.screenAudio_+" screen: "+m.screen_),PF({audio:m.audio_,screenAudio:m.screenAudio_,microphoneId:m.microphoneId_,width:m.screenProfile_.width,height:m.screenProfile_.height,frameRate:m.screenProfile_.frameRate,sampleRate:m.audioProfile_.sampleRate,channelCount:m.audioProfile_.channelCount,autoGainControl:m.audioProfile_.autoGainControl,noiseSuppression:m.audioProfile_.noiseSuppression,echoCancellation:m.audioProfile_.echoCancellation}).then(function(L){m.setMediaStream(L),m.updateAudioPlayingState(m.audio_||m.screenAudio_),m.updateVideoPlayingState(!0);var N=m.getVideoTrack();return N.applyConstraints&&N.applyConstraints({frameRate:{min:m.screenProfile_.frameRate,ideal:m.screenProfile_.frameRate},width:m.screenProfile_.width,height:m.screenProfile_.height}).catch(function(V){m.warn("screen applyConstraints failed: ".concat(V))}),m.listenForScreenSharingStopped(N),m.setVideoContentHint(mb),m.updateDeviceIdInUse(),m.setIsReadyToPublish(!0),m.log_.info(JSON.stringify(N.getSettings())),ke.logSuccessEvent({userId:m.client_?m.client_.getUserId():m.userId_,eventType:Qs,kind:"getDisplayMedia"}),T()}).catch(function(L){ke.logFailedEvent({userId:m.client_?m.client_.getUserId():m.userId_,eventType:Qs,kind:"getDisplayMedia",error:L}),m.log_.error("getDisplayMedia error observed "+L),v(L instanceof te?L:new te({code:Z.INITIALIZE_FAILED,name:L.name,message:L.message}))})):(Y.emit(Bp,{stream:m,audio:m.audio_,video:m.video_}),m.log_.info("initialize stream audio: "+m.audio_+" video: "+m.video_),zv({audio:m.audio_,video:m.video_,facingMode:m.facingMode_,cameraId:m.cameraId_,microphoneId:m.microphoneId_,width:m.videoProfile_.width,height:m.videoProfile_.height,frameRate:m.videoProfile_.frameRate,sampleRate:m.audioProfile_.sampleRate,channelCount:m.audioProfile_.channelCount,autoGainControl:m.audioProfile_.autoGainControl,noiseSuppression:m.audioProfile_.noiseSuppression,echoCancellation:m.audioProfile_.echoCancellation,useExact:!0,retryWhenExactFailed:!0}).then(function(L){return Y.emit(Fp,{stream:m,audio:m.audio_,video:m.video_}),m.setMediaStream(L),L.getTracks().forEach(function(N){if(la){var V=N.getSettings();m.log_.debug("".concat(N.kind," settings: ").concat(JSON.stringify(V))),N.kind===xe&&(m.videoSetting_=V)}n6&&m.log_.info("".concat(N.kind," capabilities: ").concat(fo(N.getCapabilities(),Zf)))}),m.updateAudioPlayingState(m.audio_),m.updateVideoPlayingState(m.video_),m.updateDeviceIdInUse(),m.log_.info("gotStream hasAudio: "+m.hasAudio()+" hasVideo: "+m.hasVideo()),m.setIsReadyToPublish(!0),ke.logSuccessEvent({userId:m.client_?m.client_.getUserId():m.userId_,eventType:Qs,kind:"getUserMedia"}),T()}).catch(function(L){Y.emit(Hp,{stream:m,audio:m.audio_,video:m.video_,error:L}),ke.logFailedEvent({userId:m.client_?m.client_.getUserId():m.userId_,eventType:Qs,kind:"getUserMedia",error:L}),m.log_.error("getUserMedia error observed "+L),v(L)}))}})}},{key:"listenForScreenSharingStopped",value:function(m){var T=this;m.addEventListener("ended",function(v){T.log_.info("screen sharing was stopped because the video track is ended"),T.emitter_.emit(i6)})}},{key:"muteAudio",value:function(){var m=le(Ye(I.prototype),"muteAudio",this).call(this);return m&&(this.log_.info("localStream mute audio"),this.sendMutedFlag(Ee,!0)),m}},{key:"muteVideo",value:function(){var m=le(Ye(I.prototype),"muteVideo",this).call(this);return m&&(this.log_.info("localStream mute video"),this.sendMutedFlag(xe,!0)),m}},{key:"unmuteAudio",value:function(){var m=le(Ye(I.prototype),"unmuteAudio",this).call(this);return m&&(this.log_.info("localStream unmute audio"),this.sendMutedFlag(Ee,!1)),m}},{key:"unmuteVideo",value:function(){var m=le(Ye(I.prototype),"unmuteVideo",this).call(this);return m&&(this.log_.info("localStream unmute video"),this.sendMutedFlag(xe,!1)),m}},{key:"sendMutedFlag",value:function(m,T){this.setMuteState(m,T);var v=this.getConnection();if(v){v.sendMutedFlag(this.muteState_,this);var w=v.getUserId(),L=v.getTinyId(),N="".concat(T?tn:Sr," local ").concat(m," track");vn(w,{eventId:m===Ee?T?WU:qU:T?JU:KU,eventDesc:N,timestamp:an(),userId:w,tinyId:L})}}},{key:"setMuteState",value:function(m,T){this.muteState_[m]=T,this.log_.info("set ".concat(m," muted state: [").concat(T?"mute":"unmute","]"))}},{key:"setAudioProfile",value:(x=H(p().mark(function m(T){var v,w,L;return p().wrap(function(N){for(;;)switch(N.prev=N.next){case 0:if(G(T)==="object"?v=T:(v=zx.get(T))===void 0&&(v=zx.get("standard")),this.log_.info("setAudioProfile: "+JSON.stringify(v)),!(w=this.getAudioTrack())){N.next=6;break}return N.next=6,w.applyConstraints(v);case 6:if(L=this.audioProfile_.bitrate!==v.bitrate,this.audioProfile_=q(q({},this.audioProfile_),v),!L||!this.connection_){N.next=12;break}return N.next=11,this.connection_.setBandwidth({bandwidth:this.audioProfile_.bitrate,type:Ee});case 11:this.connection_.sendMediaSettings(this);case 12:case"end":return N.stop()}},m,this)})),function(m){return x.apply(this,arguments)})},{key:"setVideoProfile",value:(S=H(p().mark(function m(T){var v,w,L,N;return p().wrap(function(V){for(;;)switch(V.prev=V.next){case 0:if(!this.connection_||Hk()){V.next=2;break}throw new te({code:Z.NOT_SUPPORTED,message:ae({key:F3})});case 2:if(yi(T)?w=q(q({},this.videoProfile_),T):Bt(T)&&(w=Jv.get(T),ge(w)&&(w=Jv.get("480p_2"))),(v=this.client_)!==null&&v!==void 0&&v.get2k4kFlag()&&(this.client_.get2k4kFlag()!==1&&!this.screen_&&w.height*w.width>=3686400?(w.width=1920,w.height=1080,this.log_.warn(rS)):Ri.handleFunctionState({fnName:"2K_4K"})),w&&w.width*w.height>921600&&E4&&(w.width=1280,w.height=720,this.log_.warn("reset to 1280 * 720 on iOS 13~14")),this.log_.info("setVideoProfile "+JSON.stringify(w)),!(L=this.getVideoTrack())){V.next=10;break}return V.next=10,L.applyConstraints(w);case 10:if(N=this.videoProfile_.bitrate!==w.bitrate,this.videoProfile_=w,!N||!this.connection_){V.next=16;break}return V.next=15,this.connection_.setBandwidth({bandwidth:w.bitrate,type:xe,videoType:Bu});case 15:this.connection_.sendMediaSettings(this);case 16:case"end":return V.stop()}},m,this)})),function(m){return S.apply(this,arguments)})},{key:"getVideoBitrate",value:function(){return this.screen_?this.screenProfile_.bitrate:this.videoProfile_.bitrate}},{key:"getAudioBitrate",value:function(){return this.audioProfile_.bitrate}},{key:"setScreenProfile",value:function(m){var T=m;Bt(m)&&(T=qv.get(m)||qv.get("1080p")),this.log_.info("setScreenProfile "+JSON.stringify(m)),this.screenProfile_=T}},{key:"getVideoProfile",value:function(){return this.screen_?this.screenProfile_:this.videoProfile_}},{key:"getAudioProfile",value:function(){return this.audioProfile_}},{key:"setVideoContentHint",value:function(m){var T=this.getVideoTrack();T&&"contentHint"in T&&(this.log_.info("set video track contentHint to: "+m),T.contentHint=m,T.contentHint!==m&&this.log_.warn("Invalid video track contentHint: "+m))}},{key:"switchDevice",value:(f=H(p().mark(function m(T,v){var w,L,N,V,_,b,R,P,U,k,h,y,A,D,j,K,J,se;return p().wrap(function(ie){for(;;)switch(ie.prev=ie.next){case 0:if(this.mediaStream_&&this.cameraId_!==v&&this.facingMode_!==v){ie.next=2;break}return ie.abrupt("return");case 2:if(L=T===xe,!(w=T===Ee)||v!==this.microphoneId_){ie.next=11;break}if(v===Ku){ie.next=7;break}return ie.abrupt("return");case 7:return ie.next=9,h6(this.microphoneGroupId_,this.microphoneLabel_);case 9:if(!ie.sent){ie.next=11;break}return ie.abrupt("return");case 11:return this.setIsReadyToPublish(!1),this.log_.info("switchDevice "+T+" to: "+v),w&&(N=this.getAudioTrack(),V=this.getMicrophoneTrackMixed(),N&&N.stop(),V&&V.stop()),L&&((_=this.getVideoTrack())&&_.stop(),_p&&(b=this.getAudioTrack())&&(this.log_.info("stop audio track first in huawei env"),b.stop())),ie.prev=15,ie.next=18,zv({audio:w||_p,video:L,facingMode:v===fb||v===pb?v:void 0,cameraId:L?v:this.cameraId_,microphoneId:w?v:this.microphoneId_,width:this.videoProfile_.width,height:this.videoProfile_.height,frameRate:this.videoProfile_.frameRate,sampleRate:this.audioProfile_.sampleRate,channelCount:this.audioProfile_.channelCount,autoGainControl:this.audioProfile_.autoGainControl,noiseSuppression:this.audioProfile_.noiseSuppression,echoCancellation:this.audioProfile_.echoCancellation,useExact:!0,retryWhenExactFailed:!1});case 18:if(R=ie.sent,P=null,!w){ie.next=34;break}if(!(U=R.getAudioTracks()[0])||!this.isAudioTrackMixed()){ie.next=31;break}return k=this.getAudioTrack(),h=xt.AudioMixerPlugin.getAudioTrackMap(),ie.next=27,xt.AudioMixerPlugin.mix({targetTrack:U,sourceList:h.get(k.id).sourceList,trackList:h.get(k.id).trackList});case 27:y=ie.sent,P=y,ie.next=32;break;case 31:P=U;case 32:ie.next=43;break;case 34:if(!(P=R.getVideoTracks()[0])||!this.isVideoTrackBeautified()){ie.next=39;break}return ie.next=38,this.generateBeautyTrack(P);case 38:P=ie.sent;case 39:if(!(A=R.getAudioTracks()[0])||!_p){ie.next=43;break}return ie.next=43,this.replaceTrack(A);case 43:return ie.next=45,this.replaceTrack(P);case 45:(D=this.getConnection())&&(j=D.getUserId(),K=D.getTinyId(),J=QU,se="switch camera",w&&(J=YU,se="switch microphone"),vn(j,{eventId:J,eventDesc:se,timestamp:an(),userId:j,tinyId:K})),this.log_.info("switch ".concat(w?"microphone":"camera"," success ")),w&&(this.audio_=!0),L&&(this.video_=!0,this.facingMode_=v===pb||v===fb?v:""),this.updateDeviceIdInUse(),this.setIsReadyToPublish(!0),ie.next=59;break;case 54:throw ie.prev=54,ie.t0=ie.catch(15),this.log_.error(ie.t0),w?this.recoverCapture({audio:!0,video:!1,microphoneId:this.microphoneId_}):this.recoverCapture({audio:!1,video:!0,cameraId:this.cameraId_,facingMode:this.facingMode_}),ie.t0;case 59:case"end":return ie.stop()}},m,this,[[15,54]])})),function(m,T){return f.apply(this,arguments)})},{key:"addTrack",value:(u=H(p().mark(function m(T){var v,w,L;return p().wrap(function(N){for(;;)switch(N.prev=N.next){case 0:if(N.prev=0,T.kind===xe&&la&&(v=T.getSettings(),!this.videoSetting_||v.width===this.videoSetting_.width&&v.height===this.videoSetting_.height||this.log_.warn("video resolution of the track (".concat(v.width," x ").concat(v.height,") shall be kept the same as the previous: ").concat(this.videoSetting_.width," x ").concat(this.videoSetting_.height,". It may cause abnormal Cloud Recording."))),this.isAddingTrack_=!0,this.keepMuteState(T),this.mediaStream_.addTrack(T),!(w=this.getConnection())){N.next=11;break}return L=null,T.kind===xe&&(al||il)&&VS(T)&&(L=this.getCanvasTrack()),N.next=11,w.addTrack(L||T,this);case 11:T.kind===Ee?(this.audio_=!0,this.updateAudioPlayingState(!0),this.captureVolume_!==100&&this.setAudioCaptureVolume(this.captureVolume_)):(this.video_=!0,this.updateVideoPlayingState(!0)),this.isAddingTrack_=!1,N.next=20;break;case 15:throw N.prev=15,N.t0=N.catch(0),this.mediaStream_.removeTrack(T),this.isAddingTrack_=!1,N.t0;case 20:case"end":return N.stop()}},m,this,[[0,15]])})),function(m){return u.apply(this,arguments)})},{key:"removeTrack",value:(l=H(p().mark(function m(T){var v;return p().wrap(function(w){for(;;)switch(w.prev=w.next){case 0:if(w.prev=0,this.isRemovingTrack_=!0,!(v=this.getConnection())){w.next=17;break}if(T.kind!==xe||!al&&!il||!this.canvasTrack_){w.next=10;break}return w.next=7,v.removeTrack(this.canvasTrack_,this);case 7:this.clearCanvas(),w.next=17;break;case 10:if(T.kind!==Ee||!this.gain_.audioTrack){w.next=15;break}return w.next=13,v.removeTrack(this.gain_.audioTrack,this);case 13:w.next=17;break;case 15:return w.next=17,v.removeTrack(T,this);case 17:this.mediaStream_.removeTrack(T),T.kind===Ee?(this.audio_=!1,this.updateAudioPlayingState(!1),this.stopGainNode()):(this.video_=!1,this.updateVideoPlayingState(!1)),this.isRemovingTrack_=!1,w.next=26;break;case 22:throw w.prev=22,w.t0=w.catch(0),this.isRemovingTrack_=!1,w.t0;case 26:case"end":return w.stop()}},m,this,[[0,22]])})),function(m){return l.apply(this,arguments)})},{key:"replaceTrack",value:(s=H(p().mark(function m(T){var v,w,L;return p().wrap(function(N){for(;;)switch(N.prev=N.next){case 0:if(T.kind===xe&&la&&(v=T.getSettings(),!this.videoSetting_||v.width===this.videoSetting_.width&&v.height===this.videoSetting_.height||this.log_.warn("video resolution of the track (".concat(v.width," x ").concat(v.height,") shall be kept the same as the previous: ").concat(this.videoSetting_.width," x ").concat(this.videoSetting_.height,". It may cause abnormal Cloud Recording."))),this.keepMuteState(T),w=this.mediaStream_,T.kind!==Ee){N.next=12;break}if(w.removeTrack(w.getAudioTracks()[0]),w.addTrack(T),le(Ye(I.prototype),"restartAudio",this).call(this),!this.gain_.gainNode){N.next=10;break}return this.reconnectGainNode(T),N.abrupt("return");case 10:N.next=15;break;case 12:w.removeTrack(w.getVideoTracks()[0]),w.addTrack(T),le(Ye(I.prototype),"restartVideo",this).call(this);case 15:if(!(L=this.getConnection())){N.next=21;break}if(T.kind!==xe||!al&&!il||!this.canvasTrack_){N.next=19;break}return N.abrupt("return");case 19:return N.next=21,L.replaceTrack(T,this);case 21:case"end":return N.stop()}},m,this)})),function(m){return s.apply(this,arguments)})},{key:"recoverCapture",value:(a=H(p().mark(function m(T){var v,w,L,N,V,_,b,R,P,U,k,h,y,A,D,j,K;return p().wrap(function(J){for(;;)switch(J.prev=J.next){case 0:if(!(!this.mediaStream_||!this.enableAutoRecoverCapture_||T.audio&&!T.video&&this.isAudioRecovering_||T.video&&!T.audio&&this.isVideoRecovering_)){J.next=2;break}return J.abrupt("return");case 2:return T.audio&&(this.isAudioRecovering_=!0),T.video&&(this.isVideoRecovering_=!0),this.log_.warn("recoverCapture() trying "+JSON.stringify(T)),v=this.audio_&&T.audio,w=this.video_&&T.video,J.prev=7,J.next=10,xt.getCameras();case 10:return L=J.sent,J.next=13,xt.getMicrophones();case 13:if(N=J.sent,w&&L.length===0&&(w=!1,this.log_.warn("recoverCapture() video flag is true, but no camera detected, set video to false")),v&&N.length===0&&(v=!1,this.log_.warn("recoverCapture() audio flag is true, but no microphone detected, set audio to false")),v||w){J.next=21;break}return T.audio&&(this.isAudioRecovering_=!1),T.video&&(this.isVideoRecovering_=!1),this.log_.warn("recoverCapture() both audio and video are false, aborted"),J.abrupt("return");case 21:return V=T&&L.findIndex(function(se){return se.deviceId===T.cameraId})>=0,_=T&&N.findIndex(function(se){return se.deviceId===T.microphoneId})>=0,v&&((b=this.getAudioTrack())===null||b===void 0||b.stop()),w&&((R=this.getVideoTrack())===null||R===void 0||R.stop()),J.next=27,zv({audio:v,video:w,cameraId:V?T.cameraId:void 0,microphoneId:_?T.microphoneId:void 0,facingMode:this.facingMode_,width:this.videoProfile_.width,height:this.videoProfile_.height,frameRate:this.videoProfile_.frameRate,sampleRate:this.audioProfile_.sampleRate,channelCount:this.audioProfile_.channelCount,autoGainControl:this.audioProfile_.autoGainControl,noiseSuppression:this.audioProfile_.noiseSuppression,echoCancellation:this.audioProfile_.echoCancellation});case 27:P=J.sent,U=P.getTracks(),k=0;case 30:if(!(k<U.length)){J.next=59;break}if((h=U[k]).kind!==Ee||!this.isAudioTrackMixed()){J.next=45;break}if(y=this.getAudioTrack(),A=xt.AudioMixerPlugin.getAudioTrackMap(),(D=A.get(y.id)).hasMicrophone){J.next=39;break}return h.stop(),J.abrupt("continue",56);case 39:return J.next=41,xt.AudioMixerPlugin.mix({targetTrack:h,sourceList:D.sourceList,trackList:D.trackList});case 41:return j=J.sent,J.next=44,this.replaceTrack(j);case 44:return J.abrupt("continue",56);case 45:if(h.kind!==xe||!this.isVideoTrackBeautified()){J.next=52;break}return J.next=48,this.generateBeautyTrack(h);case 48:return K=J.sent,J.next=51,this.replaceTrack(K);case 51:return J.abrupt("continue",56);case 52:return J.next=54,this.replaceTrack(h);case 54:if(h.readyState!=="ended"){J.next=56;break}throw new Error("new track is failed, muted ".concat(h.muted," readyState ").concat(h.readyState));case 56:k++,J.next=30;break;case 59:this.updateDeviceIdInUse(),ke.logSuccessEvent({userId:this.client_?this.client_.getUserId():this.userId_,eventType:Nb}),T.audio&&(this.isAudioRecovering_=!1),T.video&&(this.isVideoRecovering_=!1),this.log_.warn("recoverCapture() successfully"),this.emitter_.emit(o6,{isCamera:T.video,isMicrophone:T.audio,cameraId:this.cameraId_,microphoneId:this.microphoneId_}),J.next=73;break;case 67:throw J.prev=67,J.t0=J.catch(7),T.audio&&(this.isAudioRecovering_=!1),T.video&&(this.isVideoRecovering_=!1),this.log_.warn("recoverCapture() failed, "+J.t0),J.t0;case 73:case"end":return J.stop()}},m,this,[[7,67]])})),function(m){return a.apply(this,arguments)})},{key:"updateDeviceIdInUse",value:function(){var m=this;if(!this.mediaStream_)return this.cameraId_="",this.cameraGroupId_="",this.microphoneId_="",void(this.microphoneGroupId_="");la&&this.mediaStream_.getTracks().forEach(function(w){if(w.kind===Ee&&m.isAudioTrackMixed()){var L=m.getMicrophoneTrackMixed();if(L){var N=L.getSettings(),V=N.deviceId,_=N.groupId;V&&(m.microphoneId_=V,m.microphoneGroupId_=_,m.microphoneLabel_=L.label)}}else if(w.kind===xe&&m.isVideoTrackBeautified()){var b=m.getBeautyOriginTrack();if(b){var R=b.getSettings(),P=R.deviceId,U=R.groupId,k=R.facingMode;P&&(m.cameraId_=P,m.cameraGroupId_=U),k&&(m.facingMode_=k)}}else{var h=w.getSettings(),y=h.deviceId,A=h.groupId,D=h.facingMode;y&&(w.kind===Ee?(m.microphoneId_=y,m.microphoneGroupId_=A,m.microphoneLabel_=w.label):w.kind!==xe||m.screen_||(m.cameraId_=y,m.cameraGroupId_=A,D&&(m.facingMode_=D)))}});var T=this.mediaStream_.getAudioTracks(),v=this.mediaStream_.getVideoTracks();T&&T.length===0&&(this.microphoneId_="",this.microphoneGroupId_=""),v&&v.length===0&&(this.cameraId_="",this.cameraGroupId_="")}},{key:"isAudioTrackMixed",value:function(){if(xt.AudioMixerPlugin){var m=xt.AudioMixerPlugin.getAudioTrackMap(),T=this.getAudioTrack();if(m&&T&&m.has(T.id))return!0}return!1}},{key:"getMicrophoneTrackMixed",value:function(){if(xt.AudioMixerPlugin){var m=xt.AudioMixerPlugin.getAudioTrackMap(),T=this.getAudioTrack();if(m&&T&&m.has(T.id)){var v=m.get(T.id);return v.hasMicrophone?v.microphoneTrack:null}}return null}},{key:"isVideoTrackBeautified",value:function(){if(xt.beautyTrackMap){var m=xt.beautyTrackMap,T=this.getVideoTrack();if(T&&m.has(T.id))return!0}return!1}},{key:"getBeautyOriginTrack",value:function(){if(xt.beautyTrackMap){var m=xt.beautyTrackMap,T=this.getVideoTrack();if(T&&m.has(T.id)){var v=m.get(T.id);if(v.originTrack)return v.originTrack}}return null}},{key:"generateBeautyTrack",value:(c=H(p().mark(function m(T){var v,w,L,N;return p().wrap(function(V){for(;;)switch(V.prev=V.next){case 0:if(v=null,w=this.getVideoTrack(),L=xt.beautyTrackMap.get(w.id),N=L.param,L.type){V.next=8;break}v=L.pluginInstance.generateBeautyTrack(T),V.next=22;break;case 8:V.t0=L.type,V.next=V.t0==="beauty"?11:V.t0==="virtual"?13:V.t0==="mixed"?17:21;break;case 11:return v=L.pluginInstance.generateBeautyTrack(T),V.abrupt("break",22);case 13:return V.next=15,L.pluginInstance.generateVirtualTrack({videoTrack:T,type:N.type,img:N.img});case 15:case 19:return v=V.sent,V.abrupt("break",22);case 17:return V.next=19,L.pluginInstance.generateMixedTrack({videoTrack:T,type:N.type,img:N.img});case 21:return V.abrupt("break",22);case 22:return L.pluginInstance.deleteSource(w.id),this.log_.info("regenerate beauty track, track id = ".concat(T.id)),V.abrupt("return",v);case 25:case"end":return V.stop()}},m,this)})),function(m){return c.apply(this,arguments)})},{key:"getScreen",value:function(){return this.screen_}},{key:"hasScreenTrack",value:function(){if(this.screen_)return!0;var m=this.getVideoTrack();return!!m&&(m.contentHint===mb||m.contentHint===NM)}},{key:"getVideo",value:function(){return this.video_}},{key:"getAudio",value:function(){return this.audio_}},{key:"getCameraId",value:function(){return this.cameraId_}},{key:"getMicrophoneId",value:function(){return this.microphoneId_}},{key:"getMicrophoneGroupId",value:function(){return this.microphoneGroupId_}},{key:"getIsReadyToPublish",value:function(){return this.isReadyToPublish_}},{key:"setIsReadyToPublish",value:function(m){this.isReadyToPublish_=m}},{key:"setPublishState",value:function(m){this.publishState_=m}},{key:"setBeautyStatus",value:function(m){this.beautyStatus_=!!m}},{key:"getBeautyStatus",value:function(){return this.beautyStatus_}},{key:"syncMuteState",value:function(){var m=this.getAudioTrack(),T=this.getVideoTrack();if(m){var v=!m.enabled;this.setMuteState(Ee,v)}if(T){var w=!T.enabled;this.setMuteState(xe,w)}this.connection_&&this.connection_.sendMutedFlag(this.muteState_,this)}},{key:"keepMuteState",value:function(m){m instanceof window.MediaStreamTrack&&this.muteState_[m.kind]&&(m.enabled=!1,this.log_.warn("prev ".concat(m.kind," track is muted, keep mute state")))}},{key:"onVideoTrackStopped",value:(o=H(p().mark(function m(T){var v,w,L=this;return p().wrap(function(N){for(;;)switch(N.prev=N.next){case 0:if(v=T.stream,w=T.type,v===this&&this.video_&&this.cameraId_&&d6(this.getVideoTrack())&&!this.isVideoRecovering_&&(w!==tn||!ec||!na)){N.next=3;break}return N.abrupt("return");case 3:if(!(Date.now()-this.prevVideoRecoverTime_<Xu)){N.next=6;break}return setTimeout(function(){return L.onVideoTrackStopped({stream:v,type:w})},Xu),N.abrupt("return");case 6:w===tn?setTimeout(function(){var V=L.getVideoTrack();V!=null&&V.muted&&document.visibilityState==="visible"&&L.recoverVideoCapture(w)},5e3):this.recoverVideoCapture(w);case 7:case"end":return N.stop()}},m,this)})),function(m){return o.apply(this,arguments)})},{key:"onAudioTrackStopped",value:(r=H(p().mark(function m(T){var v,w,L=this;return p().wrap(function(N){for(;;)switch(N.prev=N.next){case 0:if(v=T.stream,w=T.type,!(v!==this||!this.audio_||!this.microphoneId_||this.isAudioRecovering_||w===tn&&ec&&na)){N.next=3;break}return N.abrupt("return");case 3:if(!(Date.now()-this.prevAudioRecoverTime_<Xu)){N.next=6;break}return setTimeout(function(){return L.onAudioTrackStopped({stream:v,type:w})},Xu),N.abrupt("return");case 6:w===tn?setTimeout(function(){var V=L.getAudioTrack();V!=null&&V.muted&&document.visibilityState==="visible"&&L.recoverAudioCapture(w)},5e3):this.recoverAudioCapture(w);case 7:case"end":return N.stop()}},m,this)})),function(m){return r.apply(this,arguments)})},{key:"recoverAudioCapture",value:(i=H(p().mark(function m(T){return p().wrap(function(v){for(;;)switch(v.prev=v.next){case 0:return this.prevAudioRecoverTime_=Date.now(),ke.uploadEvent({log:"stat-local-audio-".concat(T),userId:this.userId_}),v.t0=this,v.next=5,this.getRecoverCaptureDeviceId(!1);case 5:v.t1=v.sent,v.t2={audio:!0,video:!1,microphoneId:v.t1},v.t0.recoverCapture.call(v.t0,v.t2);case 8:case"end":return v.stop()}},m,this)})),function(m){return i.apply(this,arguments)})},{key:"recoverVideoCapture",value:(n=H(p().mark(function m(T){return p().wrap(function(v){for(;;)switch(v.prev=v.next){case 0:return this.prevVideoRecoverTime_=Date.now(),ke.uploadEvent({log:"stat-local-video-".concat(T),userId:this.userId_}),v.t0=this,v.next=5,this.getRecoverCaptureDeviceId(!0);case 5:v.t1=v.sent,v.t2={audio:!1,video:!0,cameraId:v.t1},v.t0.recoverCapture.call(v.t0,v.t2);case 8:case"end":return v.stop()}},m,this)})),function(m){return n.apply(this,arguments)})},{key:"getRecoverCaptureDeviceId",value:(t=H(p().mark(function m(){var T,v,w,L,N=arguments;return p().wrap(function(V){for(;;)switch(V.prev=V.next){case 0:if(T=!(N.length>0&&N[0]!==void 0)||N[0],!(v=T?this.cameraId_:this.microphoneId_)||!this.enableAutoRecoverOther_){V.next=17;break}if(_a.has(v)?_a.set(v,_a.get(v)+1):_a.set(v,1),!((w=_a.get(v))>=3)){V.next=17;break}if(!T){V.next=12;break}return V.next=9,xt.getCameras();case 9:V.t0=V.sent.find(function(_){return!_a.has(_.deviceId)}),V.next=15;break;case 12:return V.next=14,xt.getMicrophones();case 14:V.t0=V.sent.find(function(_){return!_a.has(_.deviceId)});case 15:(L=V.t0)&&(this.log_.warn("".concat(T?"camera":"mic"," ").concat(v," capture fail ").concat(w," times, change new ").concat(L.deviceId)),v=L.deviceId);case 17:return V.abrupt("return",v);case 18:case"end":return V.stop()}},m,this)})),function(){return t.apply(this,arguments)})},{key:"setAudioVolume",value:function(m){le(Ye(I.prototype),"setAudioVolume",this).call(this,m)}},{key:"clearCanvas",value:function(){this.canvasInterval_&&(mt.clearTask(this.canvasInterval_),this.canvasInterval_=null,this.canvas_=null,this.canvasTrack_=null)}},{key:"getCanvasTrack",value:function(){var m=this;if(this.canvasTrack_)return this.canvasTrack_;this.log_.info("gen canvas track");var T=this.getVideoTrack().getSettings(),v=T.width,w=T.height,L=T.frameRate;this.canvas_=document.createElement("canvas");var N=this.canvas_.getContext("2d");this.canvas_.width=v,this.canvas_.height=w,this.canvasInterval_=mt.run(Qu,function(){if(m.hasVideo()){var _=m.getVideoTrack().getSettings();_.width===m.canvas_.width&&_.height===m.canvas_.height||(m.canvas_.width=_.width,m.canvas_.height=_.height)}m.videoPlayer_&&m.videoPlayer_.element_&&N.drawImage(m.videoPlayer_.element_,0,0,m.canvas_.width,m.canvas_.height)},{fps:Math.max(15,L)});var V=this.canvas_.captureStream();return this.canvasTrack_=V.getVideoTracks()[0],this.canvasTrack_}},{key:"setClient",value:function(m,T){m&&(this.log_.setUserId(m.getUserId()),this.log_.setSdkAppId(m.getSDKAppId()),T||this.syncMuteState()),this.client_=m}},{key:"setAudioCaptureVolume",value:function(){var m=this,T=arguments.length>0&&arguments[0]!==void 0?arguments[0]:100;if(!this.hasAudio()||T<0||!km())return!1;if(this.captureVolume_===T)return!0;this.captureVolume_=T,this.log_.info("setCaptureVolume "+T),T/=100;var v=HS();if(this.gain_.gainNode)this.gain_.gainNode.gain.value=T;else{var w,L=new MediaStream;L.addTrack(this.getAudioTrack());var N=v.createMediaStreamDestination(),V=v.createMediaStreamSource(L),_=v.createGain();_.gain.value=T,V.connect(_),_.connect(N);var b=N.stream.getAudioTracks()[0],R=function(P){return m.log_.info("gained audio track ".concat(P))};b.onmute=function(){return R("muted")},b.onunmute=function(){return R("unmuted")},b.onended=function(){return R("ended")},this.gain_={source:V,audioTrack:b,gainNode:_},(w=this.connection_)===null||w===void 0||w.replaceTrack(b),le(Ye(I.prototype),"restartAudio",this).call(this)}return!0}},{key:"getGainedTrack",value:function(){return this.gain_.audioTrack}},{key:"reconnectGainNode",value:function(m){this.log_.warn("reconnect gain node");var T=new MediaStream;T.addTrack(m);var v=HS().createMediaStreamSource(T);v.connect(this.gain_.gainNode),this.gain_.source.disconnect(),this.gain_.source=v}},{key:"stopGainNode",value:function(){var m=this.gain_,T=m.audioTrack,v=m.source,w=m.gainNode;w&&(v.disconnect(),w.disconnect(),T.onmute=null,T.onunmute=null,T.onended=null,T.stop(),this.gain_={source:null,gainNode:null,audioTrack:null}),this.captureVolume_=100}},{key:"close",value:function(){this.setIsReadyToPublish(!1),this.stopGainNode(),le(Ye(I.prototype),"close",this).call(this)}},{key:"setIsAIDenoiser",value:function(m){this.isAIDenoiser=m}}]),I}(Ax),X(nt.prototype,"setAudioProfile",[Dx],Object.getOwnPropertyDescriptor(nt.prototype,"setAudioProfile"),nt.prototype),X(nt.prototype,"setVideoProfile",[Ox],Object.getOwnPropertyDescriptor(nt.prototype,"setVideoProfile"),nt.prototype),X(nt.prototype,"setScreenProfile",[Lx],Object.getOwnPropertyDescriptor(nt.prototype,"setScreenProfile"),nt.prototype),X(nt.prototype,"setVideoContentHint",[Mx],Object.getOwnPropertyDescriptor(nt.prototype,"setVideoContentHint"),nt.prototype),X(nt.prototype,"switchDevice",[Nx],Object.getOwnPropertyDescriptor(nt.prototype,"switchDevice"),nt.prototype),X(nt.prototype,"addTrack",[Ux],Object.getOwnPropertyDescriptor(nt.prototype,"addTrack"),nt.prototype),X(nt.prototype,"removeTrack",[Vx],Object.getOwnPropertyDescriptor(nt.prototype,"removeTrack"),nt.prototype),X(nt.prototype,"replaceTrack",[jx],Object.getOwnPropertyDescriptor(nt.prototype,"replaceTrack"),nt.prototype),X(nt.prototype,"recoverCapture",[Bx],Object.getOwnPropertyDescriptor(nt.prototype,"recoverCapture"),nt.prototype),X(nt.prototype,"setAudioCaptureVolume",[Fx,Hx],Object.getOwnPropertyDescriptor(nt.prototype,"setAudioCaptureVolume"),nt.prototype),nt),Wx={voiceActivityDetection:!1},OF=(Gx=Lo({retries:1,timeout:0,onRetrying:function(e){this.log_.warn("connection timeout, retrying [".concat(e,"]"))},onError:function(e,t,n){e.message.includes("timeout")?(this.reset(),this.initialize(),t()):n(e)}}),Tc=function(e){Et(V,e);var t,n,i,r,o,c,a,s,l,u,f,S,x,E,I,m,T,v,w,L,N=Rr(V);function V(_){var b;return Q(this,V),(b=N.call(this,_)).localStream_=null,b.exchangeSDPTimeout_=-1,b.localAuxStream_=null,b.publishingStream_=null,b.isPublishingAuxStream_=!1,b.smallGenerator_=null,b.isSDPExchanging_=!1,b.ssrc_={audio:0,video:0,small:0,auxiliary:0},b.mediaSettings_={videoCodec:"",videoWidth:0,videoHeight:0,videoBps:0,videoFps:0,audioCodec:"opus",audioFs:0,audioChannel:0,audioBps:0,smallVideoWidth:0,smallVideoHeight:0,smallVideoFps:0,smallVideoBps:0,auxVideoWidth:0,auxVideoHeight:0,auxVideoFps:0,auxVideoBps:0},b.mixedAudioTrack_=null,b}return Ie(V,[{key:"isMainStreamPublished",get:function(){return!!this.localStream_}},{key:"isAuxStreamPublished",get:function(){return!!this.localAuxStream_}},{key:"publishState",get:function(){var _=this,b={audio:!1,bigVideo:!1,smallVideo:!1,auxVideo:!1};if(this.peerConnection_){var R,P,U,k,h=this.peerConnection_.getSenders();h&&(Ti()?(b.audio=!((R=h[0])===null||R===void 0||!R.track),b.bigVideo=!((P=h[1])===null||P===void 0||!P.track),b.smallVideo=!((U=h[2])===null||U===void 0||!U.track),b.auxVideo=!((k=h[3])===null||k===void 0||!k.track)):h.forEach(function(y){y.track&&(y.track.kind===Ee?b.audio=!0:(b.bigVideo=!0,_.smallGenerator_&&(b.smallVideo=!0)))}))}return b}},{key:"initialize",value:function(){le(Ye(V.prototype),"initialize",this).call(this),this.installEvents()}},{key:"reset",value:function(){this.isReconnecting_&&this.stopReconnection(),this.closePeerConnection(),this.uninstallEvents(),this.clearExchangeSDPTimeout(),this.localStream_&&this.localStream_.clearCanvas()}},{key:"close",value:function(){le(Ye(V.prototype),"close",this).call(this),this.reset(),this.emitConnectionStateChangedEvent(on),this.smallGenerator_&&(this.smallGenerator_.destroy(),this.smallGenerator_=null)}},{key:"installEvents",value:function(){this.emitter_.on(et.ERROR,this.handleError,this),this.emitter_.on(et.CONNECTION_STATE_CHANGED,this.handleConnectionStateChange,this)}},{key:"uninstallEvents",value:function(){this.emitter_.off(et.ERROR,this.handleError,this),this.emitter_.off(et.CONNECTION_STATE_CHANGED,this.handleConnectionStateChange,this)}},{key:"publish",value:(L=H(p().mark(function _(b,R){var P,U,k,h;return p().wrap(function(y){for(;;)switch(y.prev=y.next){case 0:if(this.publishingStream_=b,this.isPublishingAuxStream_=R,U=b.getVideoTrack(),k=null,!U||R||!this.client_.getIsEnableSmallStream()){y.next=9;break}return this.smallGenerator_=new Yl(b),y.next=8,this.smallGenerator_.initialize();case 8:k=this.smallGenerator_.generateSmallVideoTrack(this.client_.smallStreamConfig_);case 9:if(h=b.getVideoProfile(),!this.client_.get2k4kFlag()){y.next=18;break}if(this.client_.get2k4kFlag()===1||b.getScreen()||!(h.height*h.width>=3686400)){y.next=18;break}return h.width=1920,h.height=1080,this.log_.warn(rS),y.next=18,b.setVideoProfile(h);case 18:if(!(ta&&lo()===115&&h.width*h.height<=230400)){y.next=22;break}return this.log_.warn("fallback video to 480p"),y.next=22,b.setVideoProfile("480p_2");case 22:if(this.updateMediaSettings(b,R),!vl()){y.next=33;break}if(!gi||OS!==11){y.next=29;break}return y.next=27,this.publishByAddTrack(b,k);case 27:y.next=31;break;case 29:return y.next=31,this.publishByTransceiver(b,k,R);case 31:y.next=35;break;case 33:return y.next=35,this.publishByAddTrack(b,k);case 35:return this.publishingStream_=null,this.isPublishingAuxStream_=!1,R?this.localAuxStream_=b:this.localStream_=b,(P=this.sei_)===null||P===void 0||P.handleEncodedStreams(),y.abrupt("return",b);case 40:case"end":return y.stop()}},_,this)})),function(_,b){return L.apply(this,arguments)})},{key:"publishByTransceiver",value:(w=H(p().mark(function _(b,R,P){var U,k,h,y,A,D,j;return p().wrap(function(K){for(;;)switch(K.prev=K.next){case 0:if(this.log_.info("publish by transceiver"),U=b.getMediaStream(),k=b.getAudioTrack(),h=b.getVideoTrack(),y=null,(al||il)&&VS(h)&&(y=b.getCanvasTrack()),(A=this.peerConnection_.getTransceivers()).length!==0){K.next=16;break}return this.peerConnection_.addTransceiver(k||Ee,{direction:pi,streams:[U]}),this.peerConnection_.addTransceiver(P?xe:y||h||xe,{direction:pi,streams:[U]}),this.peerConnection_.addTransceiver(R||xe,{direction:pi,streams:[U]}),this.peerConnection_.addTransceiver(P?y||h:xe,{direction:pi,streams:[U]}),K.next=14,this.connect();case 14:K.next=46;break;case 16:if(D=[],!k){K.next=29;break}if(!A[0].sender.track){K.next=24;break}return this.mixAudioTrack(A[0].sender.track,k),K.next=22,A[0].sender.replaceTrack(this.mixedAudioTrack_);case 22:K.next=27;break;case 24:return K.next=26,A[0].sender.replaceTrack(k);case 26:D.push(0);case 27:return K.next=29,this.setBandwidth({bandwidth:b.getAudioBitrate(),type:Ee});case 29:if(!h){K.next=42;break}return j=P?3:1,K.next=33,A[j].sender.replaceTrack(y||h);case 33:return K.next=35,this.setBandwidth({bandwidth:b.getVideoBitrate(),type:xe,videoType:P?gt:Bu,scaleResolutionDownBy:b.scaleResolutionDownBy});case 35:if(D.push(j),!R){K.next=42;break}return K.next=39,A[2].sender.replaceTrack(R);case 39:return K.next=41,this.setBandwidth({bandwidth:this.client_.smallStreamConfig.bitrate,type:xe,videoType:Mr});case 41:D.push(2);case 42:return K.next=44,this.setTransceiverDirection(pi,D);case 44:return K.next=46,this.doPublishChange();case 46:case"end":return K.stop()}},_,this)})),function(_,b,R){return w.apply(this,arguments)})},{key:"publishByAddTrack",value:(v=H(p().mark(function _(b,R){var P,U,k,h;return p().wrap(function(y){for(;;)switch(y.prev=y.next){case 0:return this.log_.info("publish by addtrack"),P=b.getMediaStream(),U=b.getAudioTrack(),k=b.getVideoTrack(),U&&this.peerConnection_.addTrack(U,P),k&&(this.peerConnection_.addTrack(k,P),R&&((h=new MediaStream).addTrack(R),this.peerConnection_.addTrack(R,h))),y.next=8,this.connect();case 8:case"end":return y.stop()}},_,this)})),function(_,b){return v.apply(this,arguments)})},{key:"unpublish",value:(T=H(p().mark(function _(b){var R,P,U,k;return p().wrap(function(h){for(;;)switch(h.prev=h.next){case 0:if(Ti()){h.next=2;break}return h.abrupt("return",this.doUnpublish());case 2:if(R=b.getAudioTrack(),P=b===this.localAuxStream_,U=[],!this.peerConnection_){h.next=33;break}if(k=this.peerConnection_.getSenders(),!R){h.next=18;break}if(!this.mixedAudioTrack_){h.next=15;break}return this.log_.info("has mixed audioTrack, use another audioTrack"),h.next=12,k[0].replaceTrack(P?this.localStream_.getAudioTrack():this.localAuxStream_.getAudioTrack());case 12:this.destroyMixedAudioTrack(),h.next=18;break;case 15:return h.next=17,k[0].replaceTrack(null);case 17:U.push(0);case 18:if(!P){h.next=26;break}return h.next=21,k[3].replaceTrack(null);case 21:this.localAuxStream_=null,this.mediaSettings_=q(q({},this.mediaSettings_),{},{auxVideoBps:0,auxVideoFps:0,auxVideoWidth:0,auxVideoHeight:0}),U.push(3),h.next=33;break;case 26:return h.next=28,k[1].replaceTrack(null);case 28:return h.next=30,k[2].replaceTrack(null);case 30:this.localStream_=null,this.mediaSettings_=q(q({},this.mediaSettings_),{},{videoWidth:0,videoHeight:0,videoBps:0,videoFps:0,audioFs:0,audioChannel:0,audioBps:0,smallVideoWidth:0,smallVideoHeight:0,smallVideoFps:0,smallVideoBps:0}),U.push(1,2);case 33:if(!this.localStream_&&!this.localAuxStream_){h.next=40;break}return h.next=36,this.setTransceiverDirection(oo,U);case 36:return h.next=38,this.doPublishChange();case 38:h.next=42;break;case 40:return h.next=42,this.doUnpublish();case 42:case"end":return h.stop()}},_,this)})),function(_){return T.apply(this,arguments)})},{key:"doPublishChange",value:(m=H(p().mark(function _(){var b,R;return p().wrap(function(P){for(;;)switch(P.prev=P.next){case 0:return b={state:this.publishState,constraintConfig:this.mediaSettings_},P.next=3,this.signalChannel_.sendWaitForResponse({command:xU,data:b,responseCommand:st.PUBLISH_STATE_CHANGE_RESULT});case 3:R=P.sent,this.checkPublishResultCode(R.data.code,R.data.message);case 5:case"end":return P.stop()}},_,this)})),function(){return m.apply(this,arguments)})},{key:"doUnpublish",value:function(){var _=this;return this.signalChannel_.sendWaitForResponse({command:gk,commandDesc:"unpublish",responseCommand:st.UNPUBLISH_RESULT}).then(function(){_.close()}).catch(function(){_.close()})}},{key:"updateMediaSettings",value:function(_,b){var R=this;this.localAuxStream_&&_===this.localAuxStream_&&(b=!0);var P=this.client_.getSystemResult().detail,U=P.isH264EncodeSupported,k=P.isVp8EncodeSupported;if(U?this.mediaSettings_.videoCodec="H264":k&&(this.mediaSettings_.videoCodec="VP8"),la){var h=_.getMediaStream();h==null||h.getTracks().forEach(function(y){var A=y.getSettings();if(y.kind===Ee){var D=1;A.channelCount&&(D=A.channelCount),R.mediaSettings_.audioChannel=D,R.mediaSettings_.audioBps=1e3*_.getAudioBitrate(),R.mediaSettings_.audioFs=A.sampleRate}else if(y.kind===xe){if(b)return R.mediaSettings_.auxVideoWidth=A.width,R.mediaSettings_.auxVideoHeight=A.height,R.mediaSettings_.auxVideoFps=A.frameRate,void(R.mediaSettings_.auxVideoBps=1e3*_.getVideoBitrate());R.client_.getIsEnableSmallStream()&&(R.mediaSettings_.smallVideoWidth=R.client_.smallStreamConfig.width,R.mediaSettings_.smallVideoHeight=R.client_.smallStreamConfig.height,R.mediaSettings_.smallVideoFps=R.client_.smallStreamConfig.frameRate,R.mediaSettings_.smallVideoBps=1e3*R.client_.smallStreamConfig.bitrate),R.mediaSettings_.videoWidth=A.width,R.mediaSettings_.videoHeight=A.height,R.mediaSettings_.videoFps=A.frameRate,R.mediaSettings_.videoBps=1e3*_.getVideoBitrate()}})}else this.updateMediaSettingsFromProfile(_);this.log_.info("updateMediaSettings: "+JSON.stringify(this.mediaSettings_))}},{key:"updateMediaSettingsFromProfile",value:function(_){if(_){if(_.hasAudio()){var b=_.getAudioProfile();this.mediaSettings_.audioChannel=b.channelCount,this.mediaSettings_.audioBps=1e3*b.bitrate,this.mediaSettings_.audioFs=b.sampleRate}if(_.hasVideo()){var R=_.getVideoProfile();this.mediaSettings_.videoWidth=R.width,this.mediaSettings_.videoHeight=R.height,this.mediaSettings_.videoFps=R.frameRate,this.mediaSettings_.videoBps=1e3*R.bitrate}}}},{key:"sendMediaSettings",value:function(_){var b=this;this.updateMediaSettings(_),this.signalChannel_.sendWaitForResponse({command:FU,data:this.mediaSettings_,responseCommand:st.UPDATE_CONSTRAINT_CONFIG_RES}).then(function(R){R.data.code!==0&&b.log_.warn(R.data.message)}).catch(this.log_.warn)}},{key:"addTrack",value:(I=H(p().mark(function _(b,R){var P,U;return p().wrap(function(k){for(;;)switch(k.prev=k.next){case 0:if(this.peerConnection_){k.next=2;break}return k.abrupt("return");case 2:if(U=R===this.localAuxStream_,this.log_.info("is adding ".concat(b.kind," track to current published local ").concat(U?gt:Qe," stream")),(P=this.sei_)===null||P===void 0||P.handleEncodedStreams(),!Ti()){k.next=10;break}return k.next=8,this.addTrackByTransceiver(b,R);case 8:k.next=12;break;case 10:return k.next=12,this.addTrackBySender(b);case 12:vn(this.userId_,{eventId:b.kind===Ee?yk:_k,eventDesc:"add ".concat(b.kind," track to current published stream"),timestamp:an(),userId:this.userId_,tinyId:this.tinyId_});case 13:case"end":return k.stop()}},_,this)})),function(_,b){return I.apply(this,arguments)})},{key:"addTrackByTransceiver",value:(E=H(p().mark(function _(b,R){var P,U,k,h;return p().wrap(function(y){for(;;)switch(y.prev=y.next){case 0:if(P=R===this.localAuxStream_,U=this.peerConnection_.getTransceivers(),b.kind!==Ee){y.next=13;break}if(!U[0].sender.track){y.next=9;break}return this.mixAudioTrack(U[0].sender.track,b),y.next=7,U[0].sender.replaceTrack(this.mixedAudioTrack_);case 7:y.next=11;break;case 9:return y.next=11,U[0].sender.replaceTrack(b);case 11:y.next=26;break;case 13:return k=P?3:1,y.next=16,U[k].sender.replaceTrack(b);case 16:if(k!==1||!this.client_.getIsEnableSmallStream()){y.next=23;break}return this.smallGenerator_=new Yl(this.localStream_),y.next=20,this.smallGenerator_.initialize();case 20:return h=this.smallGenerator_.generateSmallVideoTrack(this.client_.smallStreamConfig_),y.next=23,U[2].sender.replaceTrack(h);case 23:if(U[k].direction!==oo){y.next=26;break}return y.next=26,this.setTransceiverDirection(pi,[k]);case 26:return this.updateMediaSettings(R,P),y.next=29,this.doPublishChange();case 29:case"end":return y.stop()}},_,this)})),function(_,b){return E.apply(this,arguments)})},{key:"addTrackBySender",value:(x=H(p().mark(function _(b){var R,P,U,k,h;return p().wrap(function(y){for(;;)switch(y.prev=y.next){case 0:if(!(Ti()&&this.peerConnection_.getTransceivers().findIndex(function(A){return A.direction==="stopped"})>=0)){y.next=4;break}return this.log_.warn("transceiver is stopping, negotiate sdp first"),y.next=4,this.updateOffer(cn.REMOVE,b);case 4:if(!(R=this.peerConnection_.getSenders().find(function(A){return A.track&&A.track.kind===b.kind}))){y.next=11;break}return this.log_.warn("sender already exists, remove sender first"),P=R.track,this.removeSender(R),y.next=11,this.updateOffer(cn.REMOVE,P);case 11:if(U=this.localStream_.getMediaStream(),this.peerConnection_.addTrack(b,U),b.kind!==xe||!this.client_.getIsEnableSmallStream()){y.next=21;break}return this.smallGenerator_=new Yl(this.localStream_),y.next=17,this.smallGenerator_.initialize();case 17:k=this.smallGenerator_.generateSmallVideoTrack(this.client_.smallStreamConfig_),(h=new MediaStream).addTrack(k),this.peerConnection_.addTrack(k,h);case 21:return y.next=23,this.updateOffer(cn.ADD,b);case 23:case"end":return y.stop()}},_,this)})),function(_){return x.apply(this,arguments)})},{key:"isNeedToResetOfferOrder",value:function(){if(this.sdpSemantics_===Wf||!this.peerConnection_||!this.peerConnection_.localDescription)return!1;for(var _=this.peerConnection_.localDescription.sdp,b=Fr(_),R=0;R<b.media.length;R++)if(b.media[R].mid===0&&b.media[R].type===xe)return!0;return!1}},{key:"removeSender",value:function(_){var b=null;Ti()&&(b=this.peerConnection_.getTransceivers().find(function(R){return R.sender&&R.sender.track===_.track})),this.peerConnection_.removeTrack(_),b&&ln(b.stop)&&(this.log_.info("stop transceiver"),b.stop())}},{key:"removeTrack",value:(S=H(p().mark(function _(b,R){return p().wrap(function(P){for(;;)switch(P.prev=P.next){case 0:if(this.peerConnection_){P.next=2;break}return P.abrupt("return");case 2:if(this.log_.info("is removing ".concat(b.kind," track from current published local ").concat(R===this.localAuxStream_?gt:Qe," stream")),!Ti()){P.next=8;break}return P.next=6,this.removeTrackByTransceiver(b,R);case 6:P.next=10;break;case 8:return P.next=10,this.removeTrackBySender(b);case 10:vn(this.userId_,{eventId:b.kind===Ee?Sk:bk,eventDesc:"remove ".concat(b.kind," track from current published stream"),timestamp:an(),userId:this.userId_,tinyId:this.tinyId_});case 11:case"end":return P.stop()}},_,this)})),function(_,b){return S.apply(this,arguments)})},{key:"removeTrackByTransceiver",value:(f=H(p().mark(function _(b,R){var P,U,k;return p().wrap(function(h){for(;;)switch(h.prev=h.next){case 0:if(P=R===this.localAuxStream_,U=this.peerConnection_.getTransceivers(),b.kind!==Ee){h.next=13;break}if(!this.mixedAudioTrack_){h.next=9;break}return h.next=6,U[0].sender.replaceTrack(P?this.localStream_.getAudioTrack():this.localAuxStream_.getAudioTrack());case 6:this.destroyMixedAudioTrack(),h.next=11;break;case 9:return h.next=11,U[0].sender.replaceTrack(null);case 11:h.next=23;break;case 13:return k=P?3:1,h.next=16,U[k].sender.replaceTrack(null);case 16:if(k!==1||!this.smallGenerator_){h.next=21;break}return this.smallGenerator_.destroy(),this.smallGenerator_=null,h.next=21,U[2].sender.replaceTrack(null);case 21:return h.next=23,this.setTransceiverDirection(oo,[k]);case 23:return this.updateMediaSettings(R,P),h.next=26,this.doPublishChange();case 26:case"end":return h.stop()}},_,this)})),function(_,b){return f.apply(this,arguments)})},{key:"setTransceiverDirection",value:(u=H(p().mark(function _(b,R){var P,U,k,h,y,A;return p().wrap(function(D){for(;;)switch(D.prev=D.next){case 0:if(Vn){D.next=2;break}return D.abrupt("return");case 2:if(P=!1,U=!1,this.log_.info("setting transceiver ".concat(R.join(",")," direction to ").concat(b)),k=this.peerConnection_.getTransceivers(),R.forEach(function(j){k[j].direction!==b&&(k[j].direction=b,P=!0)}),!P){D.next=14;break}return this.log_.info("updating offer"),D.next=11,this.peerConnection_.createOffer();case 11:return h=D.sent,D.next=14,this.peerConnection_.setLocalDescription(h);case 14:if(y=-1,A=this.peerConnection_.remoteDescription.sdp.split(`\r
|
|
63
|
+
`).map(function(j){if(j.match(new RegExp("a=(".concat(oo,"|").concat(Mf,"|").concat(pi,")")))&&y++,R.includes(y)){if(b===oo&&j.includes("a=".concat(Mf)))return U=!0,"a=".concat(b);if(b===pi&&j.includes("a=".concat(oo)))return U=!0,"a=".concat(Mf)}return j}).join(`\r
|
|
64
|
+
`),!U){D.next=20;break}return this.log_.info("updating answer"),D.next=20,this.peerConnection_.setRemoteDescription({type:"answer",sdp:A});case 20:case"end":return D.stop()}},_,this)})),function(_,b){return u.apply(this,arguments)})},{key:"removeTrackBySender",value:(l=H(p().mark(function _(b){var R,P,U=this;return p().wrap(function(k){for(;;)switch(k.prev=k.next){case 0:if(b.kind!==xe||!this.isNeedToResetOfferOrder()){k.next=7;break}return this.reset(),this.initialize(),(R=this.localStream_.getMediaStream())===null||R===void 0||R.removeTrack(b),k.next=6,this.publish(this.localStream_);case 6:return k.abrupt("return");case 7:return(P=this.peerConnection_.getSenders().find(function(h){return h.track===b}))&&(this.removeSender(P),b.kind===xe&&this.smallGenerator_&&(this.smallGenerator_.destroy(),this.smallGenerator_=null,this.peerConnection_.getSenders().forEach(function(h){h.track&&h.track.kind===xe&&U.removeSender(h)}))),k.next=11,this.updateOffer(cn.REMOVE,b);case 11:case"end":return k.stop()}},_,this)})),function(_){return l.apply(this,arguments)})},{key:"replaceTrack",value:(s=H(p().mark(function _(b,R){var P,U,k,h,y,A,D;return p().wrap(function(j){for(;;)switch(j.prev=j.next){case 0:if((U=(P=this.peerConnection_)===null||P===void 0?void 0:P.getSenders())&&U.length!==0){j.next=3;break}throw new te({code:Z.INVALID_OPERATION,message:ae({key:fS})});case 3:if(k=R===this.localAuxStream_,this.log_.info("is replacing ".concat(b.kind," track to current published local ").concat(k?gt:Qe," stream")),b.kind!==Ee||!U[0]){j.next=16;break}if(!(this.mixedAudioTrack_&&(h=this.localStream_)!==null&&h!==void 0&&h.hasAudio()&&(y=this.localAuxStream_)!==null&&y!==void 0&&y.hasAudio())){j.next=14;break}return this.destroyMixedAudioTrack(),A=k?this.localStream_.getAudioTrack():this.localAuxStream_.getAudioTrack(),this.mixAudioTrack(b,A),j.next=12,U[0].replaceTrack(this.mixedAudioTrack_);case 12:j.next=16;break;case 14:return j.next=16,U[0].replaceTrack(b);case 16:if(b.kind!==xe){j.next=32;break}if(R!==this.localStream_||!U[1]){j.next=29;break}return j.next=20,U[1].replaceTrack(b);case 20:if(!this.smallGenerator_||!U[2]){j.next=29;break}return this.log_.info("replacing smallVideo"),this.smallGenerator_.destroy(),this.smallGenerator_=new Yl(this.localStream_),j.next=26,this.smallGenerator_.initialize();case 26:return D=this.smallGenerator_.generateSmallVideoTrack(this.client_.smallStreamConfig_),j.next=29,U[2].replaceTrack(D);case 29:if(R!==this.localAuxStream_||!U[3]){j.next=32;break}return j.next=32,U[3].replaceTrack(b);case 32:vn(this.userId_,{eventId:b.kind===Ee?ZU:$U,eventDesc:"replace ".concat(b.kind," track from current published stream"),timestamp:an(),userId:this.userId_,tinyId:this.tinyId_});case 33:case"end":return j.stop()}},_,this)})),function(_,b){return s.apply(this,arguments)})},{key:"updateOffer",value:(a=H(p().mark(function _(b,R){var P,U,k,h,y,A,D;return p().wrap(function(j){for(;;)switch(j.prev=j.next){case 0:return j.prev=0,j.next=3,this.peerConnection_.createOffer(Wx);case 3:return P=j.sent,Vn&&(P.sdp=this.setSDPDirection(P.sdp,"sendrecv")),j.next=7,this.peerConnection_.setLocalDescription(P);case 7:return U=this.updateMediaSettings(this.localStream_||this.localAuxStream_),k={action:b,trackId:R.id,kind:R.kind===xe?"bigVideo":R.kind,type:"offer",sdp:this.peerConnection_.localDescription.sdp,constraintConfig:U,state:this.publishState},this.log_.info("createOffer success, sending updated offer to remote server"),this.log_.debug("updatedOffer: "+k.sdp),j.next=13,this.signalChannel_.sendWaitForResponse({command:TU,data:k,responseCommand:st.UPDATE_OFFER_RESULT,timeout:1e4,commandDesc:"update offer"});case 13:return h=j.sent,y=h.data,A=y.code,D=y.message,A!==0&&this.checkPublishResultCode(A,D),j.next=18,this.acceptAnswer(h.data.data);case 18:this.updateSSRC(P.sdp),ke.logSuccessEvent({userId:this.client_.getUserId(),eventType:qu,kind:"offer"}),j.next=27;break;case 22:throw j.prev=22,j.t0=j.catch(0),this.log_.error(j.t0),ke.logFailedEvent({userId:this.client_.getUserId(),eventType:qu,kind:"offer",error:j.t0}),j.t0;case 27:case"end":return j.stop()}},_,this,[[0,22]])})),function(_,b){return a.apply(this,arguments)})},{key:"setBandwidth",value:(c=H(p().mark(function _(b){var R,P,U,k,h,y,A,D,j,K;return p().wrap(function(J){for(;;)switch(J.prev=J.next){case 0:if(R=b.bandwidth,P=b.type,U=b.videoType,k=U===void 0?"":U,h=b.sdp,y=b.scaleResolutionDownBy,A=y===void 0?1:y,Hk()||!h){J.next=3;break}return J.abrupt("return",P===xe?this.updateVideoBandwidthRestriction(h,R,k):this.updateAudioBandwidthRestriction(h,R));case 3:if(D=null,vl()?(j=0,P===xe&&(j=k===Mr?2:k===gt?3:1),D=this.peerConnection_.getSenders()[j]):D=this.peerConnection_.getSenders().find(function(se){return se.track&&se.track.kind===P}),!D){J.next=22;break}return(K=D.getParameters()).encodings&&K.encodings.length!==0||(K.encodings=[{}]),R==="unlimited"?delete K.encodings[0].maxBitrate:K.encodings[0].maxBitrate=1e3*R,A>1&&(this.log_.warn("".concat(k," scaleResolutionDownBy ").concat(A)),K.encodings[0].scaleResolutionDownBy=A),J.prev=10,J.next=13,D.setParameters(K);case 13:return this.log_.info(k+P+" bandwidth was set to "+R+" kbps"),J.abrupt("return",h);case 17:if(J.prev=17,J.t0=J.catch(10),this.log_.info("failed to set bandwidth by setting maxBitrate: "+J.t0),!h){J.next=22;break}return J.abrupt("return",P===xe?this.updateVideoBandwidthRestriction(h,R,k):this.updateAudioBandwidthRestriction(h,R));case 22:return J.abrupt("return",h);case 23:case"end":return J.stop()}},_,this,[[10,17]])})),function(_){return c.apply(this,arguments)})},{key:"updateVideoBandwidthRestriction",value:function(_,b,R){var P="AS";Vn&&(P="TIAS",b*=1e3);var U=0,k=-1;return R===Mr?U=1:R===gt&&(U=2),_=_.replace(/m=video (.*)\r\nc=IN (.*)\r\n/g,function(h){return++k===U?"".concat(h,"b=").concat(P,":").concat(b,`\r
|
|
65
|
+
`):h}),_}},{key:"updateAudioBandwidthRestriction",value:function(_,b){var R="AS";return Vn&&(R="TIAS",b*=1e3),_=_.replace(/m=audio (.*)\r\nc=IN (.*)\r\n/,`m=audio $1\r
|
|
66
66
|
c=IN $2\r
|
|
67
67
|
b=`+R+":"+b+`\r
|
|
68
|
-
`)}},{key:"removeBandwidthRestriction",value:function(_){return _.replace(/b=AS:.*\r\n/,"").replace(/b=TIAS:.*\r\n/,"")}},{key:"removeVideoOrientation",value:function(_){return _.replace(/urn:3gpp:video-orientation/,"")}},{key:"connect",value:(o=H(f().mark(function _(){return f().wrap(function(b){for(;;)switch(b.prev=b.next){case 0:return b.prev=0,b.next=3,this.exchangeSDP();case 3:return b.next=5,this.waitForPeerConnectionConnected();case 5:b.next=11;break;case 7:throw b.prev=7,b.t0=b.catch(0),this.closePeerConnection(!0),b.t0;case 11:case"end":return b.stop()}},_,this,[[0,7]])})),function(){return o.apply(this,arguments)})},{key:"exchangeSDP",value:(r=H(f().mark(function _(){return f().wrap(function(b){for(;;)switch(b.prev=b.next){case 0:return b.prev=0,this.isSDPExchanging_=!0,b.next=4,this.createOffer();case 4:return this.log_.info("createOffer success, sending offer to remote server"),b.next=7,this.doExchangeSDP();case 7:this.isSDPExchanging_=!1,b.next=14;break;case 10:throw b.prev=10,b.t0=b.catch(0),this.isSDPExchanging_=!1,b.t0;case 14:case"end":return b.stop()}},_,this,[[0,10]])})),function(){return r.apply(this,arguments)})},{key:"createOffer",value:(i=H(f().mark(function _(){var b;return f().wrap(function(R){for(;;)switch(R.prev=R.next){case 0:return R.prev=0,R.next=3,this.peerConnection_.createOffer(jx);case 3:return b=R.sent,R.next=6,this.peerConnection_.setLocalDescription(b);case 6:this.updateSSRC(b.sdp),ke.logSuccessEvent({userId:this.client_.getUserId(),eventType:qu,kind:"offer"}),R.next=14;break;case 10:throw R.prev=10,R.t0=R.catch(0),ke.logFailedEvent({userId:this.client_.getUserId(),eventType:qu,kind:"offer",error:R.t0}),R.t0;case 14:case"end":return R.stop()}},_,this,[[0,10]])})),function(){return i.apply(this,arguments)})},{key:"doExchangeSDP",value:function(){var _=this;return new Promise(function(b,R){_.exchangeSDPTimeout_=setTimeout(function(){_.signalChannel_.off(mt.PUBLISH_RESULT,P),_.clearExchangeSDPTimeout();var S=new ne({code:ee.API_CALL_TIMEOUT,message:ie({key:TN})});R(S)},1e4);var P=function(){var S=H(f().mark(function h(y){var A,D,U;return f().wrap(function(K){for(;;)switch(K.prev=K.next){case 0:if(K.prev=0,_.clearExchangeSDPTimeout(),A=y.data,D=A.code,U=A.message,D!==0){K.next=9;break}return K.next=6,_.acceptAnswer(y.data.data);case 6:b(),K.next=10;break;case 9:_.checkPublishResultCode(D,U);case 10:K.next=15;break;case 12:K.prev=12,K.t0=K.catch(0),R(K.t0);case 15:case"end":return K.stop()}},h,null,[[0,12]])}));return function(h){return S.apply(this,arguments)}}(),V={type:_.peerConnection_.localDescription.type,sdp:_.removeVideoOrientation(_.peerConnection_.localDescription.sdp),screen:(_.publishingStream_||_.localStream_).hasScreenTrack(),state:_.publishState,constraintConfig:_.mediaSettings_};_.signalChannel_.once(mt.PUBLISH_RESULT,P),_.log_.debug("sending sdp offer: "+V.sdp),_.signalChannel_.send(IU,V)})}},{key:"setSDPDirection",value:function(_,b){var R=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"all",P=Br(_);return P.media.forEach(function(V){R!=="all"&&V.type!==R||(V.direction=b)}),mo(P)}},{key:"acceptAnswer",value:(n=H(f().mark(function _(b){var R,P,V,S,h,y,A;return f().wrap(function(D){for(;;)switch(D.prev=D.next){case 0:if(D.prev=0,R=this.removeVideoOrientation(b.sdp),!(P=this.publishingStream_||this.localStream_)){D.next=15;break}if(V=P.getVideoBitrate(),S=P.getAudioBitrate(),!V){D.next=11;break}return h=this.isPublishingAuxStream_?pt:ju,D.next=10,this.setBandwidth({bandwidth:V,type:xe,sdp:R,videoType:h});case 10:R=D.sent;case 11:if(!S){D.next=15;break}return D.next=14,this.setBandwidth({bandwidth:S,type:Ee,sdp:R});case 14:R=D.sent;case 15:if(!this.client_.getIsEnableSmallStream()){D.next=20;break}return y=this.client_.smallStreamConfig,D.next=19,this.setBandwidth({bandwidth:y.bitrate,type:xe,videoType:Mr,sdp:R});case 19:R=D.sent;case 20:return A={type:b.type,sdp:R},D.next=23,this.peerConnection_.setRemoteDescription(A);case 23:this.log_.debug("accepted answer: "+R),ke.logSuccessEvent({userId:this.client_.getUserId(),eventType:Db,kind:"answer"}),D.next=32;break;case 27:throw D.prev=27,D.t0=D.catch(0),ke.logFailedEvent({userId:this.client_.getUserId(),eventType:Db,kind:"answer",error:D.t0}),this.log_.error("failed to accept remote answer "+D.t0),D.t0;case 32:case"end":return D.stop()}},_,this,[[0,27]])})),function(_){return n.apply(this,arguments)})},{key:"sendMutedFlag",value:function(_,b){if(b!==this.localAuxStream_){var R={audio:_.audio,bigVideo:_.video,auxVideo:_.auxVideo};this.log_.info("send muted state: ".concat(JSON.stringify(R))),this.signalChannel_.send(xU,R)}}},{key:"getIsReconnecting",value:function(){return this.isReconnecting_}},{key:"reconnect",value:(t=H(f().mark(function _(){var b,R,P=this;return f().wrap(function(V){for(;;)switch(V.prev=V.next){case 0:if(this.reconnectionTimer_===-1){V.next=3;break}return this.log_.warn("reconnect() uplink is reconnecting, ignore current reconnection"),V.abrupt("return");case 3:if(!(this.reconnectionCount_>=30)){V.next=12;break}return this.log_.warn("SDK has tried reconnect uplink for ".concat(30," times, but all failed, please check your network")),this.stopReconnection(),b=new ne({code:ee.UPLINK_RECONNECTION_FAILED,message:ie({key:wN})}),ke.logFailedEvent({userId:this.client_.getUserId(),eventType:Rb,error:b}),this.addEventInternal(cV,"uplink-connection reconnect fail"),this.emitConnectionStateChangedEvent(an),this.emitter_.emit(et.ERROR,b),V.abrupt("return");case 12:if(this.signalChannel_.getCurrentState()===ac){V.next=16;break}return this.log_.warn("reconnect() signal channel is not connected, suspend reconnection until signal is connected"),this.signalChannel_.once(ic,this.reconnect,this),V.abrupt("return");case 16:if(this.reconnectionCount_++,V.prev=17,this.log_.warn("reconnect() try to reconnect uplink [".concat(this.reconnectionCount_,"/").concat(30,"]")),R=kp(this.reconnectionCount_),this.reconnectionTimer_=setTimeout(function(){P.log_.warn("reconnect() uplink reconnect timeout(".concat(R/1e3,"s), try again")),P.clearReconnectionTimer(),P.reconnect()},R),!(this.isSDPExchanging_||this.peerConnection_&&this.peerConnection_.connectionState===Wu)){V.next=23;break}return V.abrupt("return");case 23:return V.next=25,this.signalChannel_.sendWaitForResponse({command:pk,responseCommand:mt.UNPUBLISH_RESULT,enableLog:!1});case 25:if(this.reset(),this.initialize(),!this.localStream_){V.next=30;break}return V.next=30,this.publish(this.localStream_);case 30:if(!this.localAuxStream_){V.next=33;break}return V.next=33,this.publish(this.localAuxStream_,!0);case 33:ke.logSuccessEvent({userId:this.client_.getUserId(),eventType:Rb}),this.log_.warn("reconnect() uplink reconnect successfully"),this.addEventInternal(sV,"uplink-connection reconnect success"),this.stopReconnection(),this.localStream_.syncMuteState(),V.next=42;break;case 40:V.prev=40,V.t0=V.catch(17);case 42:case"end":return V.stop()}},_,this,[[17,40]])})),function(){return t.apply(this,arguments)})},{key:"clearExchangeSDPTimeout",value:function(){this.exchangeSDPTimeout_!==-1&&(clearTimeout(this.exchangeSDPTimeout_),this.exchangeSDPTimeout_=-1)}},{key:"clearReconnectionTimer",value:function(){this.reconnectionTimer_!==-1&&(clearTimeout(this.reconnectionTimer_),this.reconnectionTimer_=-1)}},{key:"handleError",value:function(_){_.getCode()===ee.ICE_TRANSPORT_ERROR&&(this.isFirstConnection_&&(this.isFirstConnection_=!1,ke.logFailedEvent({userId:this.client_.getUserId(),eventType:Eb,error:_})),this.isReconnecting_||this.startReconnection())}},{key:"handleConnectionStateChange",value:function(_){_.state===pn&&this.isFirstConnection_&&(this.isFirstConnection_=!1,ke.logSuccessEvent({userId:this.client_.getUserId(),eventType:Eb}),this.addEventInternal(tV,"uplink-connection is connected"))}},{key:"updateSSRC",value:function(_){var b=this;try{Br(_).media.forEach(function(R,P){if(R.type===Ee){var V=R.ssrcs[0];V&&(b.ssrc_.audio=V.id)}else{if(b.sdpSemantics_===Gf)return void R.ssrcGroups.forEach(function(h,y){var A=Number(h.ssrcs.split(" ")[0]);y===0?b.ssrc_.video=A:y===1&&(b.ssrc_.small=A)});var S=R.ssrcs[0];if(!S)return;switch(P){case 1:b.ssrc_.video=S.id;break;case 2:b.ssrc_.small=S.id;break;case 3:b.ssrc_.auxiliary=S.id}}})}catch(R){}}},{key:"getVideoTrackId",value:function(){var _=arguments.length>0&&arguments[0]!==void 0?arguments[0]:xe;if(this.peerConnection_){var b=this.peerConnection_.getSenders();if(_===xe&&b[1]&&b[1].track)return b[1].track.id;if(_===Mr&&b[2]&&b[2].track)return b[2].track.id;if(_===pt&&b[3]&&b[3].track)return b[3].track.id}if(this.localStream_&&_===xe){var R=this.localStream_.getVideoTrack();if(R)return R.id}if(this.localAuxStream_&&_===pt){var P=this.localAuxStream_.getVideoTrack();if(P)return P.id}return""}},{key:"getSSRC",value:function(){return this.ssrc_}},{key:"checkPublishResultCode",value:function(_,b){if(_!==0)throw _===1028?(this.log_.error(mi.NOT_SUPPORTED_H264ENCODE),new ne({code:ee.NOT_SUPPORTED_H264,message:ie({key:mS})})):new ne({code:ee.UNKNOWN,message:ie({key:gS,data:{signalResponse:mt.PUBLISH_RESULT,code:_,message:b}})})}},{key:"getLocalStream",value:function(){return this.localStream_}},{key:"sendSEI",value:function(_,b){this.sei_.push(_,b)}},{key:"mixAudioTrack",value:function(_,b){this.log_.info("mix audio track"),this.mixedAudioTrack_=function(R){var P=VS(),V=P.createMediaStreamDestination(),S=[];R.forEach(function(y){var A=new MediaStream;A.addTrack(y);var D=P.createMediaStreamSource(A);D.connect(V),S.push(D)});var h=V.stream.getAudioTracks()[0];return Yl.set(h,{destination:V,track:h,mediaStreamSourceList:S}),h}([_,b])}},{key:"destroyMixedAudioTrack",value:function(){this.mixedAudioTrack_&&(this.log_.info("destroy audio track"),function(_){if(Yl.has(_)){var b=Yl.get(_),R=b.destination,P=b.track,V=b.mediaStreamSourceList;P.stop(),R.disconnect(),V.forEach(function(S){S.disconnect()}),Yl.delete(_)}}(this.mixedAudioTrack_),this.mixedAudioTrack_=null)}}]),j}(Nv),Y(kc.prototype,"publish",[Ux],Object.getOwnPropertyDescriptor(kc.prototype,"publish"),kc.prototype),kc),bF=pe,Bx=Rs,Xl=Is.exports.getWeakData,SF=ai,kF=Tt,TF=Rt,zv=at,xF=Es,Fx=kt,IF=Ye.set,wF=Ye.getterFor,CF=nn.find,EF=nn.findIndex,RF=bF([].splice),AF=0,Ql=function(e){return e.frozen||(e.frozen=new Hx)},Hx=function(){this.entries=[]},Wv=function(e,t){return CF(e.entries,function(n){return n[0]===t})};Hx.prototype={get:function(e){var t=Wv(this,e);if(t)return t[1]},has:function(e){return!!Wv(this,e)},set:function(e,t){var n=Wv(this,e);n?n[1]=t:this.entries.push([e,t])},delete:function(e){var t=EF(this.entries,function(n){return n[0]===e});return~t&&RF(this.entries,t,1),!!~t}};var Tc,PF={getConstructor:function(e,t,n,i){var r=e(function(s,l){SF(s,o),IF(s,{type:t,id:AF++,frozen:void 0}),TF(l)||xF(l,s[i],{that:s,AS_ENTRIES:n})}),o=r.prototype,c=wF(t),a=function(s,l,u){var p=c(s),k=Xl(kF(l),!0);return k===!0?Ql(p).set(l,u):k[p.id]=u,s};return Bx(o,{delete:function(s){var l=c(this);if(!zv(s))return!1;var u=Xl(s);return u===!0?Ql(l).delete(s):u&&Fx(u,l.id)&&delete u[l.id]},has:function(s){var l=c(this);if(!zv(s))return!1;var u=Xl(s);return u===!0?Ql(l).has(s):u&&Fx(u,l.id)}}),Bx(o,n?{get:function(s){var l=c(this);if(zv(s)){var u=Xl(s);return u===!0?Ql(l).get(s):u?u[l.id]:void 0}},set:function(s,l){return a(this,s,l)}}:{add:function(s){return a(this,s,!0)}}),r}},Gx=re,$l=pe,DF=Rs,LF=Is.exports,OF=dh,zx=PF,Zl=at,ed=Yg,td=Ye.enforce,MF=L,NF=!Gx.ActiveXObject&&"ActiveXObject"in Gx,Wx=function(e){return function(){return e(this,arguments.length?arguments[0]:void 0)}},UF=OF("WeakMap",Wx,zx);if(MF&&NF){Tc=zx.getConstructor(Wx,"WeakMap",!0),LF.enable();var xc=UF.prototype,qx=$l(xc.delete),nd=$l(xc.has),Jx=$l(xc.get),Kx=$l(xc.set);DF(xc,{delete:function(e){if(Zl(e)&&!ed(e)){var t=td(this);return t.frozen||(t.frozen=new Tc),qx(this,e)||t.frozen.delete(e)}return qx(this,e)},has:function(e){if(Zl(e)&&!ed(e)){var t=td(this);return t.frozen||(t.frozen=new Tc),nd(this,e)||t.frozen.has(e)}return nd(this,e)},get:function(e){if(Zl(e)&&!ed(e)){var t=td(this);return t.frozen||(t.frozen=new Tc),nd(this,e)?Jx(this,e):t.frozen.get(e)}return Jx(this,e)},set:function(e,t){if(Zl(e)&&!ed(e)){var n=td(this);n.frozen||(n.frozen=new Tc),nd(this,e)?Kx(this,e,t):n.frozen.set(e,t)}else Kx(this,e,t);return this}})}var VF=Oe,rd=zs,jF=ue,Yx=Rn,Xx=it,BF=Du,Qx=ub,FF=Yt,qv=rd&&rd.prototype;if(VF({target:"Promise",proto:!0,real:!0,forced:!!rd&&jF(function(){qv.finally.call({then:function(){}},function(){})})},{finally:function(e){var t=BF(this,Yx("Promise")),n=Xx(e);return this.then(n?function(i){return Qx(t,e()).then(function(){return i})}:e,n?function(i){return Qx(t,e()).then(function(){throw i})}:e)}}),Xx(rd)){var $x=Yx("Promise").prototype.finally;qv.finally!==$x&&FF(qv,"finally",$x,{unsafe:!0})}var Zx,eI,tI,nI,cr,Oo=new WeakMap;function rI(){return function(e,t,n){var i=n.value,r=function o(c){var a=c.fn,s=c.args,l=c.context,u=c.resolve,p=c.reject;a.apply(l,s).then(u,p).finally(function(){var k=Oo.get(l);k&&(k.shift(),k[0]&&o(q({},k[0])))})};return n.value=function(){for(var o=this,c=arguments.length,a=new Array(c),s=0;s<c;s++)a[s]=arguments[s];return new Promise(function(l,u){if(Oo.has(o)){var p=Oo.get(o),k=p.length;p.push({fn:i,args:a,context:o,resolve:l,reject:u,name:t}),k===0&&r({fn:i,args:a,context:o,resolve:l,reject:u})}else Oo.set(o,[{fn:i,args:a,context:o,resolve:l,reject:u,name:t}]),r({fn:i,args:a,context:o,resolve:l,reject:u})})},n}}var HF=(Zx=rI(),eI=Lo({retries:1,timeout:0,onRetrying:function(e){this.log_.warn("connection timeout, retrying [".concat(e,"]"))},onError:function(e,t,n){e.message.includes("timeout")?t():n(e)}}),tI=rI(),nI=function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:1e4;return function(t,n,i){var r=i.value;return i.value=function(){for(var o=this,c=arguments.length,a=new Array(c),s=0;s<c;s++)a[s]=arguments[s];return new Promise(function(l,u){var p=setTimeout(function(){return u(new Error("".concat(n," timeout")))},e);r.apply(o,a).then(l,u).finally(function(){clearTimeout(p)})})},i}}(),cr=function(e){Et(l,e);var t,n,i,r,o,c,a,s=Rr(l);function l(u){var p;return X(this,l),(p=s.call(this,u)).remoteStreams_=new Map,p.autoSubscribe=u.autoSubscribe,p.trackState_={audio:u.trackState.audio,video:u.trackState.video,auxiliary:u.trackState.auxiliary,smallVideo:u.trackState.smallVideo},p.ssrc_={audio:0,video:0,auxiliary:0},p.subscribeState_={audio:u.autoSubscribe,video:u.autoSubscribe,auxiliary:u.autoSubscribe,smallVideo:!1},p.isSDPExchanging_=!1,p.installEvents(),p}return Ie(l,[{key:"getMixUserList",value:function(){return this.mixUserList_?this.mixUserList_.map(function(u){var p=u.userId,k=u.flag;return{userId:p,hasAudio:!!(8&k),hasVideo:!!(1&k),hasAuxiliary:!!(4&k)}}):void 0}},{key:"setMixUserList",value:function(u){(!this.mixUserList_||uo(this.mixUserList_)&&!function(p,k){if(k.length===p.length){var x,E=oe(k);try{var I=function(){var T=x.value,v=p.find(function(C){return C.userId===T.userId});if(!v||v.flag!==T.flag)return{v:!1}};for(E.s();!(x=E.n()).done;){var m=I();if(G(m)==="object")return m.v}}catch(T){E.e(T)}finally{E.f()}return!0}return!1}(this.mixUserList_,u))&&(this.mixUserList_=u,this.emitter_.emit(et.STREAM_UPDATED,{stream:this.getMainStream()}))}},{key:"isMainStreamSubscribed",get:function(){return(this.subscribeState_.audio||this.subscribeState_.video||this.subscribeState_.smallVideo)&&(this.trackState_.audio||this.trackState_.video||this.trackState_.smallVideo)}},{key:"isAuxStreamSubscribed",get:function(){return this.subscribeState_.auxiliary&&this.trackState_.auxiliary}},{key:"isSmallStreamSubscribed",get:function(){return this.subscribeState_.smallVideo&&this.trackState_.smallVideo}},{key:"isBigStreamSubscribed",get:function(){return this.subscribeState_.video&&this.trackState_.video}},{key:"isStreamUnpublished",value:function(u){return u.getType()===Xe?!this.trackState_.audio&&!this.trackState_.video:!this.trackState_.auxiliary}},{key:"initialize",value:function(){le(Qe(l.prototype),"initialize",this).call(this),this.peerConnection_.ontrack=this.onTrack.bind(this)}},{key:"close",value:function(){var u,p,k,x=this;le(Qe(l.prototype),"close",this).call(this),this.trackState_.audio=!1,this.trackState_.video=!1,this.trackState_.smallVideo=!1,this.trackState_.auxiliary=!1,this.emitConnectionStateChangedEvent(an),u=this,p=function(E){E.fn;var I=E.args,m=E.resolve,T=E.reject,v=E.name;if(v==="subscribe"){if(!x.client_.getIsJoined())return T(new ne({code:ee.API_CALL_ABORTED,message:ie({key:np,data:{message:"leave room",stream:I[0]}})}));if(x.isStreamUnpublished(I[0]))return T(new ne({code:ee.API_CALL_ABORTED,message:ie({key:np,data:{message:"remote user ".concat(x.userId_," unpublished stream"),stream:I[0]}})}))}else if(v==="unsubscribe")return m();m()},(k=Oo.get(u))===null||k===void 0||k.forEach(p),Oo.delete(u),this.remoteStreams_.forEach(function(E){var I=E;I.setConnection(null),I.uninstallEvents(),I.getIsStreamAddedEventEmitted()&&x.emitter_.emit(et.STREAM_REMOVED,{stream:I})}),this.remoteStreams_.clear(),this.uninstallEvents()}},{key:"installEvents",value:function(){var u=this;Q.on(Vn,this.onRemoteStreamUpdate,this),this.emitter_.on(et.ERROR,function(p){p.getCode()===ee.ICE_TRANSPORT_ERROR&&(u.isFirstConnection_&&(u.isFirstConnection_=!1,ke.logFailedEvent({userId:u.client_.getUserId(),eventType:Ab,error:p})),u.isReconnecting_||u.startReconnection())}),this.emitter_.on(et.CONNECTION_STATE_CHANGED,function(p){p.state===pn&&u.isFirstConnection_&&(u.isFirstConnection_=!1,ke.logSuccessEvent({userId:u.client_.getUserId(),eventType:Ab}),u.addEventInternal(nV,"downlink-connection is connected"))})}},{key:"uninstallEvents",value:function(){Q.removeListener(Vn,this.onRemoteStreamUpdate,this)}},{key:"onRemoteStreamUpdate",value:function(u){if(this.hitTest(u.tinyId)&&u.client===this.client_){this.updateTrackState(u.action,u.kind);var p=u.kind===pt?Ks:Tr,k=this.remoteStreams_.get(p);if(!k)return;u.action===sn.ADD?this.handleRemoteAddTrack(u.kind,k):this.handleRemoteRemoveTrack(u.kind,k)}}},{key:"handleRemoteAddTrack",value:function(u,p){this.log_.info("remote add ".concat(u," track")),u===Ee?p.updateAudioPlayingState(this.subscribeState_.audio):p.updateVideoPlayingState(u===pt?this.subscribeState_.auxiliary:this.subscribeState_.video||this.subscribeState_.smallVideo),p.getIsStreamAddedEventEmitted()?this.emitter_.emit(et.STREAM_UPDATED,{stream:p}):(this.emitter_.emit(et.STREAM_ADDED,{stream:p}),this.currentState_===pn&&p.emitConnectionStateChanged({prevState:an,state:pn}))}},{key:"handleRemoteRemoveTrack",value:function(u,p){p.getIsStreamAddedEventEmitted()&&(this.log_.info("remote remove ".concat(u," track")),u===pt||!this.trackState_.audio&&!this.trackState_.video?(this.log_.info("remote stream ".concat(p.getType()," removed")),this.currentState_===pn&&p.emitConnectionStateChanged({prevState:pn,state:an}),this.emitter_.emit(et.STREAM_REMOVED,{stream:p})):(u===Ee?p.updateAudioPlayingState(!1):(u!==Bu||this.isSmallStreamSubscribed)&&p.updateVideoPlayingState(!1),this.emitter_.emit(et.STREAM_UPDATED,{stream:p})))}},{key:"updateTrackState",value:function(u,p){var k=u===sn.ADD;switch(p){case Ee:this.trackState_.audio=k;break;case xe:this.trackState_.video=k;break;case pt:this.trackState_.auxiliary=k;break;case Bu:this.trackState_.smallVideo=k}this.log_.info("trackState updated: ".concat(JSON.stringify(this.trackState_)))}},{key:"onTrack",value:function(u){var p=u.streams[0],k=u.track;if(this.log_.info("ontrack() kind: ".concat(k.kind," id: ").concat(k.id," streamId: ").concat(p.id)),this.sdpSemantics_===Xs){var x=function(v){var C=nr.parse(v),O={audio:[],video:[]};return C.media.forEach(function(N){if(N.ssrcs){var j=N.ssrcs[0].id>>16&255;if(N.type===Ee)O.audio.push(Tr);else if(N.type==xe){var _=j===zM?Tr:Ks;O.video.push(_)}}}),O}(this.peerConnection_.remoteDescription.sdp);if(k.kind===Ee){if(x.audio.length===0||p.id!==Tr)return void this.log_.debug("skip this invalid audio track")}else if(x.video.indexOf(p.id)===-1)return void this.log_.debug("skip this invalid video track: ".concat(k.id," msid: ").concat(p.id))}ke.logEvent({eventType:"ontrack",kind:k.kind});var E=!1,I=this.remoteStreams_.get(p.id),m=p.id===Tr?gt:Dt;if(ge(I)&&((I=new jv({type:m,userId:this.userId_,client:this.client_})).setConnection(this),this.remoteStreams_.set(p.id,I),E=!0),I.setMediaStream(p),k.kind===Ee?I.updateAudioPlayingState(this.subscribeState_.audio):m===gt?I.updateVideoPlayingState(this.subscribeState_.video||this.subscribeState_.smallVideo):I.updateVideoPlayingState(this.subscribeState_.auxiliary),(m!==Dt||this.trackState_.auxiliary)&&(m!==gt||this.trackState_.audio||this.trackState_.video)){var T=this.client_.getSubscriptionManager();T&&T.hasAutoRecoveryFlag(this.userId_,m)||(E?this.emitter_.emit(et.STREAM_ADDED,{stream:I}):this.emitter_.emit(et.STREAM_UPDATED,{stream:I}))}}},{key:"addRRTRLine",value:function(u){var p=u.split(`\r
|
|
69
|
-
`),
|
|
70
|
-
`)}},{key:"addSPSDescription",value:function(u){var p=Br(u);return p.media.forEach(function(k){k.type===xe&&k.fmtp.forEach(function(x){x.config+=";sps-pps-idr-in-keyframe=1"})}),mo(p)}},{key:"removeSDESDescription",value:function(u){var p=["urn:ietf:params:rtp-hdrext:sdes:mid","urn:ietf:params:rtp-hdrext:sdes:rtp-stream-id","urn:ietf:params:rtp-hdrext:sdes:repaired-rtp-stream-id"],k=Br(u);return k.media.forEach(function(x){x.ext=x.ext.filter(function(E){return!p.includes(E.uri)})}),mo(k)}},{key:"isSubscriptionStateNotChanged",value:function(u,p){return u.getType()===gt?(p==null?void 0:p.audio)===this.subscribeState_.audio&&(p==null?void 0:p.video)===this.subscribeState_.video&&this.isSubscribeSmall(p):u.getType()===Dt?!ge(p.video)&&this.subscribeState_.auxiliary===p.video:void 0}},{key:"isSubscribeSmall",value:function(u){return ge(u.smallVideo)&&!this.subscribeState_.smallVideo}},{key:"subscribe",value:(a=H(f().mark(function u(p,k){var x,E,I,m,T,v;return f().wrap(function(C){for(;;)switch(C.prev=C.next){case 0:if(C.prev=0,I=k.emitEvent,m=I===void 0||I,T=p.getType(),((x=this.peerConnection_)===null||x===void 0?void 0:x.connectionState)!==WM&&((E=this.peerConnection_)===null||E===void 0?void 0:E.connectionState)!==Wu){C.next=6;break}return C.next=6,this.waitForPeerConnectionConnected();case 6:if(!this.isSubscriptionStateNotChanged(p,k)){C.next=13;break}if(this.peerConnection_){C.next=11;break}return this.initialize(),C.next=11,this.connect();case 11:return m&&ge(k.smallVideo)&&this.emitter_.emit(et.STREAM_SUBSCRIBED,{stream:p,result:!0}),C.abrupt("return",p);case 13:if(T===Xe?(ge(k.audio)||(this.subscribeState_.audio=k.audio),ge(k.video)||(this.subscribeState_.video=k.video),this.subscribeState_.smallVideo=(k==null?void 0:k.smallVideo)||!1,this.addEventInternal(this.subscribeState_.audio?yk:im,this.subscribeState_.audio?"subscribe audio":"unsubscribe audio"),this.addEventInternal(this.subscribeState_.video?yk:im,this.subscribeState_.video?"subscribe video":"unsubscribe video"),this.addEventInternal(this.subscribeState_.smallVideo?hV:fV,this.subscribeState_.smallVideo?"subscribe smallVideo":"unsubscribe smallVideo")):ge(k.video)||(this.subscribeState_.auxiliary=k.video),this.log_.info("subscribe ".concat(T," stream with options ").concat(JSON.stringify(k)," current state: ").concat(JSON.stringify(this.subscribeState_))),!this.peerConnection_&&!this.isSDPExchanging_){C.next=23;break}return v=Hf,this.isMainStreamSubscribed||this.isAuxStreamSubscribed||(v=Ff),C.next=20,this.sendSubscription(v);case 20:T===Xe?(p.updateAudioPlayingState(this.subscribeState_.audio),p.updateVideoPlayingState(this.subscribeState_.video||this.subscribeState_.smallVideo)):p.updateVideoPlayingState(this.subscribeState_.auxiliary),C.next=26;break;case 23:return this.initialize(),C.next=26,this.connect();case 26:return m&&this.emitter_.emit(et.STREAM_SUBSCRIBED,{stream:p,result:!0}),C.abrupt("return",p);case 30:if(C.prev=30,C.t0=C.catch(0),!this.client_.getIsJoined()||!this.isStreamUnpublished(p)){C.next=35;break}throw this.log_.warn("".concat(C.t0.message," ").concat(JSON.stringify(this.trackState_))),new ne({code:ee.REMOTE_STREAM_NOT_EXIST,message:"remote user ".concat(this.userId_," unpublished stream")});case 35:throw C.t0;case 36:case"end":return C.stop()}},u,this,[[0,30]])})),function(u,p){return a.apply(this,arguments)})},{key:"unsubscribe",value:(c=H(f().mark(function u(p){var k,x,E;return f().wrap(function(I){for(;;)switch(I.prev=I.next){case 0:if((k=p.getType())!==Xe){I.next=10;break}if(this.isMainStreamSubscribed){I.next=5;break}return this.log_.info("main stream already unsubscribed"),I.abrupt("return",p);case 5:this.subscribeState_.audio=!1,this.subscribeState_.video=!1,this.subscribeState_.smallVideo=!1,I.next=14;break;case 10:if(this.isAuxStreamSubscribed){I.next=13;break}return this.log_.info("auxiliary stream already unsubscribed"),I.abrupt("return",p);case 13:this.subscribeState_.auxiliary=!1;case 14:return x=Ff,(k===gt&&this.isAuxStreamSubscribed||k===Dt&&this.isMainStreamSubscribed)&&(x=Hf),this.log_.info("unsubscribe ".concat(k," stream with ").concat(JSON.stringify(this.subscribeState_))),I.next=19,this.sendSubscription(x);case 19:return p.updateVideoPlayingState(!1),p.updateAudioPlayingState(!1),x===Ff&&((E=p.getMediaStream())&&E.getTracks().forEach(function(m){return E.removeTrack(m)}),this.closePeerConnection(),this.emitConnectionStateChangedEvent(an)),this.addEventInternal(im,"unsubscribe audio"),this.addEventInternal(HU,"unsubscribe video"),I.abrupt("return",p);case 25:case"end":return I.stop()}},u,this)})),function(u){return c.apply(this,arguments)})},{key:"sendSubscription",value:function(u){var p=this,k={srcTinyId:this.tinyId_,srcUserId:this.userId_},x=CU,E=mt.UNSUBSCRIBE_RESULT;return u===Hf&&(k={audio:this.subscribeState_.audio,bigVideo:this.subscribeState_.video,auxVideo:this.subscribeState_.auxiliary,smallVideo:this.subscribeState_.smallVideo,srcTinyId:this.tinyId_},x=EU,E=mt.SUBSCRIBE_CHANGE_RESULT),this.signalChannel_.sendWaitForResponse({command:x,data:k,responseCommand:E,timeout:1e4}).then(function(I){var m=I.data;if(m.code!==0){var T=new ne({code:m.code,message:ie({key:kN,data:{type:u,message:m.message}})});throw p.log_.error(T),T}})}},{key:"connect",value:(o=H(f().mark(function u(){return f().wrap(function(p){for(;;)switch(p.prev=p.next){case 0:return p.prev=0,p.next=3,this.exchangeSDP();case 3:return p.next=5,this.waitForPeerConnectionConnected();case 5:p.next=11;break;case 7:throw p.prev=7,p.t0=p.catch(0),this.closePeerConnection(!0),p.t0;case 11:case"end":return p.stop()}},u,this,[[0,7]])})),function(){return o.apply(this,arguments)})},{key:"exchangeSDP",value:(r=H(f().mark(function u(){var p,k,x,E,I,m;return f().wrap(function(T){for(;;)switch(T.prev=T.next){case 0:return T.prev=0,this.isSDPExchanging_=!0,T.next=4,this.createOffer();case 4:return this.log_.info("createOffer success, sending offer to remote server"),p=this.peerConnection_.localDescription,k=p.type,x=p.sdp,E={type:k,sdp:x,srcUserId:this.userId_,srcTinyId:this.tinyId_,audio:this.subscribeState_.audio,bigVideo:this.subscribeState_.video,auxVideo:this.subscribeState_.auxiliary,smallVideo:this.subscribeState_.smallVideo},Q.emit(Kp,{client:this.client_,connection:this,userId:this.userId_,tinyId:this.tinyId_,role:ao,subscribeState:this.subscribeState_,trackState:this.trackState_}),T.next=10,this.signalChannel_.sendWaitForResponse({command:wU,commandDesc:"exchange sdp",data:E,responseCommand:mt.SUBSCRIBE_RESULT,timeout:1e4});case 10:if(I=T.sent,this.peerConnection_){T.next=15;break}throw m=new ne({code:ee.INVALID_OPERATION,message:ie({key:z3})}),this.log_.warn(m),m;case 15:return T.next=17,this.onSubscribeResult(I);case 17:this.isSDPExchanging_=!1,T.next=24;break;case 20:throw T.prev=20,T.t0=T.catch(0),this.isSDPExchanging_=!1,T.t0;case 24:case"end":return T.stop()}},u,this,[[0,20]])})),function(){return r.apply(this,arguments)})},{key:"createOffer",value:(i=H(f().mark(function u(){var p,k;return f().wrap(function(x){for(;;)switch(x.prev=x.next){case 0:return p={voiceActivityDetection:!1},gm()&&this.sdpSemantics_===Xs?(this.peerConnection_.addTransceiver(Ee,{direction:"recvonly"}),this.peerConnection_.addTransceiver(xe,{direction:"recvonly"}),this.peerConnection_.addTransceiver(xe,{direction:"recvonly"})):(p.offerToReceiveAudio=!0,p.offerToReceiveVideo=!0),x.next=4,this.peerConnection_.createOffer(p);case 4:return k=x.sent,x.next=7,Lk();case 7:return x.sent.isH264DecodeSupported||(this.log_.warn("remove h264 desc from sdp"),k.sdp=(E=k.sdp,I=void 0,(I=Br(E)).media.forEach(function(m){if(m.type===xe){var T=new Set;m.rtp.forEach(function(C){var O=C.payload;return C.codec==="H264"&&T.add(O)}),m.fmtp.forEach(function(C){var O=C.payload,N=C.config.match(/apt=(\d+)/);N&&N[1]&&T.has(Number(N[1]))&&T.add(O)});var v=function(C){var O=C.payload;return!T.has(O)};m.rtp=m.rtp.filter(v),m.rtcpFb=m.rtcpFb.filter(v),m.fmtp=m.fmtp.filter(v),m.payloads=m.payloads.split(" ").filter(function(C){return!T.has(Number(C))}).join(" ")}}),mo(I))),k.sdp=this.addRRTRLine(k.sdp),k.sdp=this.addSPSDescription(k.sdp),k.sdp=wV(k.sdp),this.sdpSemantics_===Xs&&(k.sdp=this.removeSDESDescription(k.sdp)),x.next=16,this.peerConnection_.setLocalDescription(k);case 16:case"end":return x.stop()}var E,I},u,this)})),function(){return i.apply(this,arguments)})},{key:"onSubscribeResult",value:(n=H(f().mark(function u(p){var k,x,E,I,m,T,v,C=this;return f().wrap(function(O){for(;;)switch(O.prev=O.next){case 0:if(k=p&&p.data||{},x=k.code,E=k.message,I=E===void 0?"":E,m=p&&p.data&&p.data.data||{},T=m.type,v=m.sdp,x!==77393){O.next=5;break}throw this.log_.error(mi.NOT_SUPPORTED_H264DECODE),new ne({code:ee.NOT_SUPPORTED_H264,message:ie({key:vS})});case 5:if(O.prev=5,x===0){O.next=8;break}throw new ne({code:x,message:ie({key:IN,data:{errMsg:I}})});case 8:return this.log_.debug("accept remote answer: "+v),O.next=11,this.peerConnection_.setRemoteDescription({type:T,sdp:v});case 11:this.sei_&&(this.sei_.handleEncodedStreams(),this.sei_.onSEIMessage=function(N){C.emitter_.emit(et.SEI_MESSAGE,q(q({},N),{},{userId:C.userId_}))}),this.updateSSRC(v),O.next=19;break;case 15:throw O.prev=15,O.t0=O.catch(5),this.log_.error(O.t0),O.t0;case 19:case"end":return O.stop()}},u,this,[[5,15]])})),function(u){return n.apply(this,arguments)})},{key:"updateSSRC",value:function(u){var p=this;try{Br(u).media.forEach(function(k){if(k.type===Ee){var x=k.ssrcs.find(function(m){return m.value.includes(Tr)});x&&(p.ssrc_.audio=x.id)}else{var E=k.ssrcs.find(function(m){return m.value.includes(Tr)}),I=k.ssrcs.find(function(m){return m.value.includes(Ks)});E&&(p.ssrc_.video=E.id),I&&(p.ssrc_.auxiliary=I.id)}})}catch(k){}}},{key:"setRemoteStream",value:function(u,p){this.remoteStreams_.set(u,p)}},{key:"getSubscribeState",value:function(){return this.subscribeState_}},{key:"getTrackState",value:function(){return this.trackState_}},{key:"getSSRC",value:function(){return this.ssrc_}},{key:"getMainStream",value:function(){return this.remoteStreams_.get(Tr)}},{key:"getAuxStream",value:function(){return this.remoteStreams_.get(Ks)}},{key:"getMainStreamVideoTrackId",value:function(){var u=this.getMainStream();if(u){var p=u.getVideoTrack();if(p)return p.id}return""}},{key:"getAuxStreamVideoTrackId",value:function(){var u=this.getAuxStream();if(u){var p=u.getVideoTrack();if(p)return p.id}return""}},{key:"reconnect",value:(t=H(f().mark(function u(){var p,k,x=this;return f().wrap(function(E){for(;;)switch(E.prev=E.next){case 0:if(this.reconnectionTimer_===-1){E.next=3;break}return this.log_.warn("reconnect() downlink is reconnecting, ignore current reconnection"),E.abrupt("return");case 3:if(!(this.reconnectionCount_>=30)){E.next=12;break}return this.log_.warn("SDK has tried reconnect downlink [".concat(this.userId_,"] for ").concat(30," times, but all failed, please check your network")),this.stopReconnection(),p=new ne({code:ee.DOWNLINK_RECONNECTION_FAILED,message:ie({key:xN})}),ke.logFailedEvent({userId:this.client_.getUserId(),eventType:Pb,error:p}),this.addEventInternal(dV,"downlink-connection reconnect fail"),this.emitConnectionStateChangedEvent(an),this.emitter_.emit(et.ERROR,p),E.abrupt("return");case 12:if(this.signalChannel_.getCurrentState()===ac){E.next=16;break}return this.log_.warn("reconnect() signal channel is not connected, suspend reconnection until signal is connected"),this.signalChannel_.once(ic,this.reconnect,this),E.abrupt("return");case 16:if(this.reconnectionCount_++,this.log_.warn("reconnect() try to reconnect downlink [".concat(this.reconnectionCount_,"/").concat(30,"]")),k=kp(this.reconnectionCount_),this.reconnectionTimer_=setTimeout(function(){x.log_.warn("reconnect() downlink [".concat(x.userId_,"] reconnect timeout(").concat(k/1e3,"s), try again")),x.clearReconnectionTimer(),x.reconnect()},k),!(this.isSDPExchanging_||this.peerConnection_&&this.peerConnection_.connectionState===Wu)){E.next=22;break}return E.abrupt("return");case 22:return E.prev=22,this.closePeerConnection(),this.initialize(),E.next=27,this.connect();case 27:this.stopReconnection(),this.log_.warn("reconnect() downlink reconnect successfully"),ke.logSuccessEvent({userId:this.client_.getUserId(),eventType:Pb}),this.addEventInternal(lV,"downlink-connection reconnect success"),this.recoverSubscription(),E.next=36;break;case 34:E.prev=34,E.t0=E.catch(22);case 36:case"end":return E.stop()}},u,this,[[22,34]])})),function(){return t.apply(this,arguments)})},{key:"recoverSubscription",value:function(){var u=this,p=this.client_.getSubscriptionManager();p&&Se(this.remoteStreams_.values()).forEach(function(k){p.hasAutoRecoveryFlag(u.userId_,k.getType())&&p.recover(k)})}},{key:"getIsReconnecting",value:function(){return this.isReconnecting_}},{key:"getSubscribedMainStream",value:function(){var u=null;return this.isMainStreamSubscribed&&(u=this.remoteStreams_.get(Tr)),u}},{key:"clearReconnectionTimer",value:function(){this.reconnectionTimer_!==-1&&(clearTimeout(this.reconnectionTimer_),this.reconnectionTimer_=-1)}},{key:"startReconnection",value:function(){var u=this.client_.getSubscriptionManager();if(u){var p,k=oe(this.remoteStreams_.values());try{for(k.s();!(p=k.n()).done;){var x=p.value,E=x.getType();(E===gt&&(this.trackState_.audio||this.trackState_.video)||E===Dt&&this.trackState_.auxiliary)&&u.setAutoRecoveryFlag(this.userId_,x.getType())}}catch(I){k.e(I)}finally{k.f()}}le(Qe(l.prototype),"startReconnection",this).call(this)}},{key:"getCurrentState",value:function(){return this.currentState_}},{key:"hasMainStream",value:function(){return this.trackState_.video||this.trackState_.audio||this.trackState_.smallVideo}},{key:"hasAuxStream",value:function(){return this.trackState_.auxiliary}}]),l}(Nv),Y(cr.prototype,"subscribe",[Zx,eI],Object.getOwnPropertyDescriptor(cr.prototype,"subscribe"),cr.prototype),Y(cr.prototype,"unsubscribe",[tI],Object.getOwnPropertyDescriptor(cr.prototype,"unsubscribe"),cr.prototype),Y(cr.prototype,"exchangeSDP",[nI],Object.getOwnPropertyDescriptor(cr.prototype,"exchangeSDP"),cr.prototype),cr),id=function(){function e(){X(this,e),this.startTime=0,this.endTime=0,this.start()}return Ie(e,[{key:"start",value:function(){this.startTime===0&&(this.startTime=Ct())}},{key:"stop",value:function(){this.endTime===0&&(this.endTime=Ct())}},{key:"getDuration",value:function(){return this.endTime===0?Ct()-this.startTime:this.endTime-this.startTime}}]),e}(),GF=function(){function e(r){X(this,e),this.client_=r.client,this.intervalId_=-1,this.statsCalculator_=r.stats,this.prevStats_=null,this.renderFreezeMap_=new Map,this.remoteStreamMap_=new Map,this.dataFreezeMap_=new Map,this.monitorFreezeData_=new Map}var t,n,i;return Ie(e,[{key:"installEvents",value:function(){Q.on(zp,this.handlePlayVideoStart,this),Q.on(tc,this.onVideoTrackMuted,this),Q.on(Fp,this.onVideoTrackUnmuted,this),Q.on(oa,this.handleStreamStopped,this),Q.on(Vr,this.handleStreamStopped,this),Q.on(ec,this.handleVideoPlaying,this)}},{key:"uninstallEvents",value:function(){Q.off(zp,this.handlePlayVideoStart,this),Q.off(tc,this.onVideoTrackMuted,this),Q.off(Fp,this.onVideoTrackUnmuted,this),Q.off(oa,this.handleStreamStopped,this),Q.off(Vr,this.handleStreamStopped,this),Q.off(ec,this.handleVideoPlaying,this)}},{key:"start",value:function(){var r=this;this.intervalId_===-1&&(this.installEvents(),this.intervalId_=_t.run(H(f().mark(function o(){return f().wrap(function(c){for(;;)switch(c.prev=c.next){case 0:return c.prev=0,c.next=3,r.detectFPS();case 3:c.next=7;break;case 5:c.prev=5,c.t0=c.catch(0);case 7:case"end":return c.stop()}},o,null,[[0,5]])})),{delay:1e3}))}},{key:"stop",value:function(){this.intervalId_!==-1&&(this.uninstallEvents(),_t.clearTask(this.intervalId_),this.intervalId_=-1,this.renderFreezeMap_.clear(),this.dataFreezeMap_.clear(),this.remoteStreamMap_.clear())}},{key:"onVideoTrackMuted",value:function(r){var o=r.stream;if(o.getClient()===this.client_&&o.isRemote()){var c=o.userId_,a=o.type_,s="".concat(c,"_").concat(a),l=this.dataFreezeMap_.get(s),u=new id;l?l.durationItemList.push(u):this.dataFreezeMap_.set(s,{userId:c,type:a,durationItemList:[u],isFreezing:function(){var p=this.durationItemList[this.durationItemList.length-1];return p&&p.endTime===0}})}}},{key:"onVideoTrackUnmuted",value:function(r){var o=r.stream;if(o.getClient()===this.client_&&o.isRemote()){var c=o.userId_,a=o.type_,s="".concat(c,"_").concat(a);this.stopDataFreeze({key:s,userId:c,type:a})}}},{key:"handleStreamStopped",value:function(r){var o=r.client,c=r.stream;if(o===this.client_){var a=c.getUserId(),s=c.getType(),l="".concat(a,"_").concat(s);this.stopDataFreeze({key:l,userId:a,type:s})}}},{key:"stopDataFreeze",value:function(r){var o=r.key,c=r.userId,a=r.type,s=this.dataFreezeMap_.get(o);if(s&&s.isFreezing()){var l=s.durationItemList[s.durationItemList.length-1];l.stop();var u=l.getDuration();u>500?(ke.logEvent({eventType:"videoFrozenCount",delta:u}),this.monitorFreezeData_.set(o,{userId:c,type:a,duration:u})):s.durationItemList.pop()}}},{key:"getTotalDuration",value:function(r){return r.reduce(function(o,c){var a=c.getDuration();return o+Math.min(a,5e3)},0)}},{key:"getStats",value:(i=H(f().mark(function r(){var o,c,a,s,l,u,p,k,x,E,I;return f().wrap(function(m){for(;;)switch(m.prev=m.next){case 0:o=this.client_.getConnections(),c={},a=oe(o),m.prev=3,a.s();case 5:if((s=a.n()).done){m.next=20;break}if(l=Te(s.value,2),u=l[0],(p=l[1]).getPeerConnection()){m.next=9;break}return m.abrupt("continue",18);case 9:return k=p.getSubscribeState(),x=p.getTrackState(),m.next=13,this.statsCalculator_.getReceiverStats(p);case 13:E=m.sent,(I={userId:E.userId,tinyId:u,hasVideo:x.video&&k.video,hasAuxiliary:x.auxiliary&&k.auxiliary,video:{framesDecoded:0},auxiliary:{framesDecoded:0}}).hasVideo&&(I.video.framesDecoded=E.video.framesDecoded),I.hasAuxiliary&&(I.auxiliary.framesDecoded=E.auxiliary.framesDecoded),c[E.userId]=I;case 18:m.next=5;break;case 20:m.next=25;break;case 22:m.prev=22,m.t0=m.catch(3),a.e(m.t0);case 25:return m.prev=25,a.f(),m.finish(25);case 28:return m.abrupt("return",c);case 29:case"end":return m.stop()}},r,this,[[3,22,25,28]])})),function(){return i.apply(this,arguments)})},{key:"detectFPS",value:(n=H(f().mark(function r(){var o,c,a,s,l,u;return f().wrap(function(p){for(;;)switch(p.prev=p.next){case 0:return p.next=2,this.getStats();case 2:if(o=p.sent,this.prevStats_){p.next=6;break}return this.prevStats_=o,p.abrupt("return");case 6:p.t0=f().keys(o);case 7:if((p.t1=p.t0()).done){p.next=17;break}if(c=p.t1.value,this.prevStats_[c]){p.next=11;break}return p.abrupt("continue",7);case 11:a=o[c].tinyId,s=this.client_.getMutedStates(),o[c].hasVideo&&this.prevStats_[c].hasVideo&&s.has(a)&&!s.get(a).videoMuted&&(l=o[c].video.framesDecoded-this.prevStats_[c].video.framesDecoded,this.handleRenderFreeze({userId:c,type:gt,fps:l})),o[c].hasAuxiliary&&this.prevStats_[c].hasAuxiliary&&(u=o[c].auxiliary.framesDecoded-this.prevStats_[c].auxiliary.framesDecoded,this.handleRenderFreeze({userId:c,type:Dt,fps:u})),p.next=7;break;case 17:this.prevStats_=o;case 18:case"end":return p.stop()}},r,this)})),function(){return n.apply(this,arguments)})},{key:"handleRenderFreeze",value:(t=H(f().mark(function r(o){var c,a,s,l,u,p,k,x;return f().wrap(function(E){for(;;)switch(E.prev=E.next){case 0:c=o.userId,a=o.fps,s=o.type,l="".concat(c,"_").concat(s),u=this.renderFreezeMap_.get(l),a<=2?(p=Ct(),u&&!u.isFreeze&&(u.freezeTimeline.push({startTime:p,endTime:void 0}),u.isFreeze=!0),u||this.renderFreezeMap_.set(l,{userId:c,type:s,isFreeze:!0,freezeTimeline:[{startTime:p,endTime:void 0}],renderFreezeTotal:0})):u&&u.isFreeze&&(u.isFreeze=!1,(k=u.freezeTimeline.pop()).endTime=Ct(),x=k.endTime-k.startTime,u.freezeTimeline.push(k),u.renderFreezeTotal+=Math.min(5e3,x));case 4:case"end":return E.stop()}},r,this)})),function(r){return t.apply(this,arguments)})},{key:"handlePlayVideoStart",value:function(r){var o=r.stream;if(o.getClient()===this.client_&&o.isRemote()&&o.hasVideo()){var c="".concat(o.getUserId(),"_").concat(o.getType());this.remoteStreamMap_.has(c)||this.remoteStreamMap_.set(c,{isPlayingFired:!1})}}},{key:"handleVideoPlaying",value:function(r){var o=r.stream;if(o.isRemote()&&o.getClient()===this.client_){var c="".concat(o.getUserId(),"_").concat(o.getType());this.remoteStreamMap_.has(c)&&(this.remoteStreamMap_.get(c).isPlayingFired=!0)}}},{key:"getDataFreezeDuration",value:function(r){var o={dataFreeze:0,count:0},c=this.dataFreezeMap_.get(r);if(c){if(c.isFreezing()){var a=c.durationItemList[c.durationItemList.length-1];a.stop(),a.getDuration()<500&&c.durationItemList.pop()}o.dataFreeze=this.getTotalDuration(c.durationItemList),o.count=c.durationItemList.length}return o}},{key:"getRenderFreezeDuration",value:function(r){var o=this.renderFreezeMap_.get(r),c=0,a=0;if(o)if(o.isFreeze){var s=Ct()-o.freezeTimeline[o.freezeTimeline.length-1].startTime;c=o.renderFreezeTotal+Math.min(s,5e3),a=o.freezeTimeline.length}else c=o.renderFreezeTotal;return{renderFreeze:c,count:a}}},{key:"getMonitorFreeze",value:function(){return this.monitorFreezeData_}},{key:"isBlackStream",value:function(r){return!!this.remoteStreamMap_.has(r)&&!this.remoteStreamMap_.get(r).isPlayingFired}},{key:"resetMonitor",value:function(){this.monitorFreezeData_.clear()}}]),e}(),Jv=Ie(function e(t){X(this,e),this.userId=t.userId,this.tinyId=t.tinyId,this.role=t.role===ao?kr:Qi}),iI={exports:{}};(function(e){(function(t){function n(m,T){var v=(65535&m)+(65535&T);return(m>>16)+(T>>16)+(v>>16)<<16|65535&v}function i(m,T,v,C,O,N){return n((j=n(n(T,m),n(C,N)))<<(_=O)|j>>>32-_,v);var j,_}function r(m,T,v,C,O,N,j){return i(T&v|~T&C,m,T,O,N,j)}function o(m,T,v,C,O,N,j){return i(T&C|v&~C,m,T,O,N,j)}function c(m,T,v,C,O,N,j){return i(T^v^C,m,T,O,N,j)}function a(m,T,v,C,O,N,j){return i(v^(T|~C),m,T,O,N,j)}function s(m,T){var v,C,O,N,j;m[T>>5]|=128<<T%32,m[14+(T+64>>>9<<4)]=T;var _=1732584193,b=-271733879,R=-1732584194,P=271733878;for(v=0;v<m.length;v+=16)C=_,O=b,N=R,j=P,_=r(_,b,R,P,m[v],7,-680876936),P=r(P,_,b,R,m[v+1],12,-389564586),R=r(R,P,_,b,m[v+2],17,606105819),b=r(b,R,P,_,m[v+3],22,-1044525330),_=r(_,b,R,P,m[v+4],7,-176418897),P=r(P,_,b,R,m[v+5],12,1200080426),R=r(R,P,_,b,m[v+6],17,-1473231341),b=r(b,R,P,_,m[v+7],22,-45705983),_=r(_,b,R,P,m[v+8],7,1770035416),P=r(P,_,b,R,m[v+9],12,-1958414417),R=r(R,P,_,b,m[v+10],17,-42063),b=r(b,R,P,_,m[v+11],22,-1990404162),_=r(_,b,R,P,m[v+12],7,1804603682),P=r(P,_,b,R,m[v+13],12,-40341101),R=r(R,P,_,b,m[v+14],17,-1502002290),_=o(_,b=r(b,R,P,_,m[v+15],22,1236535329),R,P,m[v+1],5,-165796510),P=o(P,_,b,R,m[v+6],9,-1069501632),R=o(R,P,_,b,m[v+11],14,643717713),b=o(b,R,P,_,m[v],20,-373897302),_=o(_,b,R,P,m[v+5],5,-701558691),P=o(P,_,b,R,m[v+10],9,38016083),R=o(R,P,_,b,m[v+15],14,-660478335),b=o(b,R,P,_,m[v+4],20,-405537848),_=o(_,b,R,P,m[v+9],5,568446438),P=o(P,_,b,R,m[v+14],9,-1019803690),R=o(R,P,_,b,m[v+3],14,-187363961),b=o(b,R,P,_,m[v+8],20,1163531501),_=o(_,b,R,P,m[v+13],5,-1444681467),P=o(P,_,b,R,m[v+2],9,-51403784),R=o(R,P,_,b,m[v+7],14,1735328473),_=c(_,b=o(b,R,P,_,m[v+12],20,-1926607734),R,P,m[v+5],4,-378558),P=c(P,_,b,R,m[v+8],11,-2022574463),R=c(R,P,_,b,m[v+11],16,1839030562),b=c(b,R,P,_,m[v+14],23,-35309556),_=c(_,b,R,P,m[v+1],4,-1530992060),P=c(P,_,b,R,m[v+4],11,1272893353),R=c(R,P,_,b,m[v+7],16,-155497632),b=c(b,R,P,_,m[v+10],23,-1094730640),_=c(_,b,R,P,m[v+13],4,681279174),P=c(P,_,b,R,m[v],11,-358537222),R=c(R,P,_,b,m[v+3],16,-722521979),b=c(b,R,P,_,m[v+6],23,76029189),_=c(_,b,R,P,m[v+9],4,-640364487),P=c(P,_,b,R,m[v+12],11,-421815835),R=c(R,P,_,b,m[v+15],16,530742520),_=a(_,b=c(b,R,P,_,m[v+2],23,-995338651),R,P,m[v],6,-198630844),P=a(P,_,b,R,m[v+7],10,1126891415),R=a(R,P,_,b,m[v+14],15,-1416354905),b=a(b,R,P,_,m[v+5],21,-57434055),_=a(_,b,R,P,m[v+12],6,1700485571),P=a(P,_,b,R,m[v+3],10,-1894986606),R=a(R,P,_,b,m[v+10],15,-1051523),b=a(b,R,P,_,m[v+1],21,-2054922799),_=a(_,b,R,P,m[v+8],6,1873313359),P=a(P,_,b,R,m[v+15],10,-30611744),R=a(R,P,_,b,m[v+6],15,-1560198380),b=a(b,R,P,_,m[v+13],21,1309151649),_=a(_,b,R,P,m[v+4],6,-145523070),P=a(P,_,b,R,m[v+11],10,-1120210379),R=a(R,P,_,b,m[v+2],15,718787259),b=a(b,R,P,_,m[v+9],21,-343485551),_=n(_,C),b=n(b,O),R=n(R,N),P=n(P,j);return[_,b,R,P]}function l(m){var T,v="",C=32*m.length;for(T=0;T<C;T+=8)v+=String.fromCharCode(m[T>>5]>>>T%32&255);return v}function u(m){var T,v=[];for(v[(m.length>>2)-1]=void 0,T=0;T<v.length;T+=1)v[T]=0;var C=8*m.length;for(T=0;T<C;T+=8)v[T>>5]|=(255&m.charCodeAt(T/8))<<T%32;return v}function p(m){var T,v,C="0123456789abcdef",O="";for(v=0;v<m.length;v+=1)T=m.charCodeAt(v),O+=C.charAt(T>>>4&15)+C.charAt(15&T);return O}function k(m){return unescape(encodeURIComponent(m))}function x(m){return function(T){return l(s(u(T),8*T.length))}(k(m))}function E(m,T){return function(v,C){var O,N,j=u(v),_=[],b=[];for(_[15]=b[15]=void 0,j.length>16&&(j=s(j,8*v.length)),O=0;O<16;O+=1)_[O]=909522486^j[O],b[O]=1549556828^j[O];return N=s(_.concat(u(C)),512+8*C.length),l(s(b.concat(N),640))}(k(m),k(T))}function I(m,T,v){return T?v?E(T,m):p(E(T,m)):v?x(m):p(x(m))}e.exports?e.exports=I:t.md5=I})(se)})(iI);var ad=iI.exports,zF=function(){function e(o){X(this,e),this.client_=o.client,this.signalChannel_=o.signalChannel,this.log_=_e.createLogger({id:"mix|"+this.client_.getUserId(),userId:o.client.getUserId(),sdkAppId:o.client.getSDKAppId()}),this.isMixing_=!1,this.config_=null,this.data_=null,this.remoteStreamMap_=new Map,this.installEvents()}var t,n,i,r;return Ie(e,[{key:"isPresetLayoutMode",get:function(){return this.config_&&this.config_.mode===zf.PRESET_LAYOUT}},{key:"installEvents",value:function(){Q.on(Ur,this.onStreamSubscribed,this),Q.on(Vr,this.onStreamUnsubscribed,this),this.client_.on("stream-removed",this.onStreamRemoved,this)}},{key:"uninstallEvents",value:function(){Q.off(Ur,this.onStreamSubscribed,this),Q.off(Vr,this.onStreamUnsubscribed,this),this.client_.off("stream-removed",this.onStreamRemoved,this)}},{key:"reset",value:function(){this.uninstallEvents(),this.isMixing_=!1,this.config_=null}},{key:"onStreamSubscribed",value:function(o){var c=o.client,a=o.stream;c===this.client_&&(this.remoteStreamMap_.set(a.getId(),{remoteStream:a,isUsed:!1}),this.isMixing_&&this.hasAvailablePlaceHolder()&&this.startMixTranscode(this.config_))}},{key:"onStreamUnsubscribed",value:function(o){var c=o.client,a=o.stream;c===this.client_&&this.onStreamRemoved({stream:a})}},{key:"onStreamRemoved",value:function(o){var c=o.stream;if(this.remoteStreamMap_.has(c.getId())){var a=this.remoteStreamMap_.get(c.getId()).isUsed;this.remoteStreamMap_.delete(c.getId()),this.isMixing_&&this.isPresetLayoutMode&&a&&this.startMixTranscode(this.config_)}}},{key:"startMixTranscode",value:(r=H(f().mark(function o(c){var a,s,l;return f().wrap(function(u){for(;;)switch(u.prev=u.next){case 0:if(u.prev=0,this.resetIsUsedFlag(),this.config_=c,a=this.getInputParam(c,this.remoteStreamMap_),s=this.getOutputParam(c),l=this.getOutputSessionId({config:c,roomId:this.client_.getRoomId(),userId:this.client_.getUserId()}),!this.isMixing_||!this.data_||l===this.data_.outputSessionId){u.next=10;break}return this.log_.info("startMixTranscode() streamId changed, stop mixing before start"),u.next=10,this.doStopMixTranscode();case 10:return u.next=12,this.doStartMixTranscode({outputSessionId:l,inputParam:a,outputParam:s});case 12:u.next=18;break;case 14:throw u.prev=14,u.t0=u.catch(0),this.resetIsUsedFlag(),u.t0;case 18:case"end":return u.stop()}},o,this,[[0,14]])})),function(o){return r.apply(this,arguments)})},{key:"doStartMixTranscode",value:(i=H(f().mark(function o(c){var a,s,l,u,p,k,x,E;return f().wrap(function(I){for(;;)switch(I.prev=I.next){case 0:return a=c.outputSessionId,s=c.inputParam,l=c.outputParam,u={roomId:String(this.client_.getRoomId()),mcuRequestTime:Date.now(),outputSessionId:a,inputParam:s,outputParam:l},this.data_=u,this.log_.info("startMixTranscode: ".concat(JSON.stringify(u))),this.isMixing_=!0,I.prev=5,I.next=8,this.signalChannel_.sendWaitForResponse({command:LU,data:u,timeout:5e3,responseCommand:mt.START_MIX_TRANSCODE_RES,commandDesc:"startMixTranscode"});case 8:if(p=I.sent,k=p.data,x=k.code,E=k.message,x===0){I.next=15;break}throw x===-102083&&(E="Please enable relayed-push in ".concat(Xb," and try later, refer to ").concat(Yf,"tutorial-26-advanced-publish-cdn-stream.html")),this.log_.error("startMixTranscode failed, errCode: ".concat(x," errMsg: ").concat(E)),this.isMixing_=!1,new ne({code:ee.START_MIX_TRANSCODE_FAILED,message:ie({key:b3,data:{message:E},link:{className:"Client",fnName:"startMixTranscode"}})});case 15:I.next=21;break;case 17:throw I.prev=17,I.t0=I.catch(5),this.isMixing_=!1,I.t0;case 21:case"end":return I.stop()}},o,this,[[5,17]])})),function(o){return i.apply(this,arguments)})},{key:"reStartMixTranscode",value:function(){this.isMixing_&&this.startMixTranscode(this.config_)}},{key:"stopMixTranscode",value:(n=H(f().mark(function o(){return f().wrap(function(c){for(;;)switch(c.prev=c.next){case 0:if(this.isMixing_){c.next=2;break}throw new ne({code:ee.INVALID_OPERATION,message:ie({key:k3})});case 2:return c.next=4,this.doStopMixTranscode();case 4:this.resetIsUsedFlag();case 5:case"end":return c.stop()}},o,this)})),function(){return n.apply(this,arguments)})},{key:"doStopMixTranscode",value:(t=H(f().mark(function o(){var c,a,s,l,u;return f().wrap(function(p){for(;;)switch(p.prev=p.next){case 0:return c={mcuRequestTime:Date.now(),outputSessionId:this.data_.outputSessionId,streamType:this.data_.outputParam.streamType},this.log_.info("stopMixTranscode: ".concat(JSON.stringify(c))),p.next=4,this.signalChannel_.sendWaitForResponse({command:OU,data:c,timeout:5e3,responseCommand:mt.STOP_MIX_TRANSCODE_RES,commandDesc:"stopMixTranscode"});case 4:if(a=p.sent,s=a.data,l=s.code,u=s.message,l!==0){p.next=10;break}this.isMixing_=!1,p.next=12;break;case 10:throw this.log_.error("stopMixTranscode failed, errCode: ".concat(l," errMsg: ").concat(u)),new ne({code:ee.STOP_MIX_TRANSCODE_FAILED,message:ie({key:S3,data:{message:u},link:{className:"Client",fnName:"stopMixTranscode"}})});case 12:case"end":return p.stop()}},o,this)})),function(){return t.apply(this,arguments)})},{key:"getOutputSessionId",value:function(o){var c=o.config,a=o.userId,s=o.roomId;return Bt(c.streamId)&&c.streamId.length>0?c.streamId:ad("".concat(s,"_").concat(a,"_main"))}},{key:"getInputParam",value:function(o,c){var a=this,s=o.mixUsers.map(function(l){return{userId:l.userId,roomId:String(l.roomId||a.client_.getRoomId()),width:l.width||0,height:l.height||0,locationX:l.locationX||0,locationY:l.locationY||0,zOrder:l.zOrder,streamType:ge(l.streamType)||l.streamType!==Dt?0:1,inputType:l.pureAudio?Hb.IT_PURE_AUDIO:Hb.IT_AUDIO_VIDEO,renderMode:l.renderMode||0}});return o.mode===zf.PRESET_LAYOUT&&(s.forEach(function(l){if(l.userId===Fb.REMOTE){var u=Se(c.values()).find(function(p){return!p.isUsed});u&&(l.userId=u.remoteStream.getUserId(),l.streamType=u.remoteStream.getType()===Dt?1:0,u.isUsed=!0)}}),s=s.filter(function(l){return l.userId!==Fb.REMOTE})),s}},{key:"getOutputParam",value:function(o){var c=o.streamId||"";return{streamId:c,streamType:c.length>0?1:0,width:ge(o.videoWidth)?640:o.videoWidth,height:ge(o.videoHeight)?480:o.videoHeight,videoBps:o.videoBitrate||0,fps:o.videoFramerate||15,gop:o.videoGOP||2,audioSampleRate:o.audioSampleRate||48e3,audioBps:o.audioBitrate||64,audioChannels:o.audioChannels||1,backgroundColor:o.backgroundColor||0,backgroundImg:o.backgroundImage||"",extraInfo:"",videoCodec:2,audioCodec:0}}},{key:"hasAvailablePlaceHolder",value:function(){return!!this.isPresetLayoutMode&&this.data_.inputParam.length!==this.config_.mixUsers.length}},{key:"resetIsUsedFlag",value:function(){this.remoteStreamMap_.forEach(function(o){return o.isUsed=!1})}}]),e}(),WF=function(){function e(a){X(this,e),this.client_=a.client,this.signalChannel_=a.signalChannel,this.publishTencentMainStreamObj_={params_:null,streamId_:void 0,isPublishing_:!1},this.publishTencentAuxStreamObj_={params_:null,streamId_:void 0,isPublishing_:!1},this.publishGivenCDNData_=null,this.isPublishingGivenCDN_=!1}var t,n,i,r,o,c;return Ie(e,[{key:"setSignalChannel",value:function(a){this.signalChannel_=a.signalChannel}},{key:"getIsPublishingTencentCDN",value:function(){return this.publishTencentMainStreamObj_.isPublishing_||this.publishTencentAuxStreamObj_.isPublishing_}},{key:"getIsPublishingGivenCDN",value:function(){return this.isPublishingGivenCDN_}},{key:"generatePublishCDNStreamId",value:function(a,s){if(!a){var l="".concat(this.client_.getRoomId(),"_").concat(this.client_.getUserId(),"_").concat(s);return/^[A-Za-z\d_-]*$/.test(l)||(l=ad(l)),"".concat(this.client_.getSDKAppId(),"_").concat(l)}return a}},{key:"generatePublishCDNSessionId",value:function(a){return ad("".concat(this.client_.getRoomId(),"_").concat(this.client_.getUserId(),"_").concat(a))}},{key:"startPublishTencentCDN",value:(c=H(f().mark(function a(s){var l,u,p,k;return f().wrap(function(x){for(;;)switch(x.prev=x.next){case 0:if(s.streamType===Mn?(this.publishTencentAuxStreamObj_.params_=s,this.publishTencentAuxStreamObj_.isPublishing_=!0):(this.publishTencentMainStreamObj_.params_=s,this.publishTencentMainStreamObj_.isPublishing_=!0),this.client_.isJoined_){x.next=3;break}return x.abrupt("return");case 3:return l=this.generatePublishCDNStreamId(s.streamId,s.streamType),u=this.generatePublishCDNSessionId(s.streamType),p=s.streamType===Mn?1:0,k={requestTime:Date.now(),sessionId:u,streamId:l,streamType:p},x.next=9,this.doStartPublishTencentCDN(k,s.streamType);case 9:case"end":return x.stop()}},a,this)})),function(a){return c.apply(this,arguments)})},{key:"doStartPublishTencentCDN",value:(o=H(f().mark(function a(s,l){var u,p,k,x;return f().wrap(function(E){for(;;)switch(E.prev=E.next){case 0:return E.prev=0,_e.info("startPublishTencentCDN: "+JSON.stringify(s)),E.next=4,this.signalChannel_.sendWaitForResponseWithRetry({command:RU,data:s,timeout:2e3,responseCommand:mt.START_PUBLISH_TENCENT_CDN_RES,commandDesc:"startPublishCDNStream",retries:2});case 4:if(u=E.sent,p=u.data,k=p.code,x=p.message,k!==0){E.next=10;break}l===Mn?this.publishTencentAuxStreamObj_.streamId_=s.streamId:this.publishTencentMainStreamObj_.streamId_=s.streamId,E.next=14;break;case 10:throw l===Mn?this.publishTencentAuxStreamObj_.isPublishing_=!1:this.publishTencentMainStreamObj_.isPublishing_=!1,k===-102083&&(x="Please enable relayed-push in ".concat(Xb," and try later, refer to ").concat(Yf,"tutorial-26-advanced-publish-cdn-stream.html")),_e.error("startPublishTencentCDN failed, errCode: ".concat(k,", errMsg: ").concat(x)),new ne({code:ee.START_PUBLISH_CDN_FAILED,message:ie({key:uS,data:{message:x},link:{className:"Client",fnName:"startPublishCDNStream"}})});case 14:E.next=20;break;case 16:throw E.prev=16,E.t0=E.catch(0),l===Mn?this.publishTencentAuxStreamObj_.isPublishing_=!1:this.publishTencentMainStreamObj_.isPublishing_=!1,E.t0;case 20:case"end":return E.stop()}},a,this,[[0,16]])})),function(a,s){return o.apply(this,arguments)})},{key:"resetPublishTencentParam",value:function(a){a===Xe&&(this.publishTencentMainStreamObj_={params_:null,streamId_:void 0,isPublishing_:!1}),a===Mn&&(this.publishTencentAuxStreamObj_={params_:null,streamId_:void 0,isPublishing_:!1})}},{key:"stopPublishTencentCDN",value:(r=H(f().mark(function a(){return f().wrap(function(s){for(;;)switch(s.prev=s.next){case 0:if(this.client_.isJoined_){s.next=4;break}return this.resetPublishTencentParam(Xe),this.resetPublishTencentParam(Mn),s.abrupt("return");case 4:if(!this.publishTencentMainStreamObj_.isPublishing_){s.next=7;break}return s.next=7,this.doStopPublishTencentCDN(Xe);case 7:if(!this.publishTencentAuxStreamObj_.isPublishing_){s.next=10;break}return s.next=10,this.doStopPublishTencentCDN(Mn);case 10:case"end":return s.stop()}},a,this)})),function(){return r.apply(this,arguments)})},{key:"doStopPublishTencentCDN",value:(i=H(f().mark(function a(s){var l,u,p,k,x;return f().wrap(function(E){for(;;)switch(E.prev=E.next){case 0:return l={requestTime:Date.now(),sessionId:ad("".concat(this.client_.getRoomId(),"_").concat(this.client_.getUserId(),"_").concat(s))},_e.info("stopPublishTencentCDN: "+JSON.stringify(l)),E.next=4,this.signalChannel_.sendWaitForResponse({command:AU,data:l,timeout:5e3,responseCommand:mt.STOP_PUBLISH_TENCENT_CDN_RES,commandDesc:"stopPublishCDNStream"});case 4:if(u=E.sent,p=u.data,k=p.code,x=p.message,k!==0){E.next=10;break}this.resetPublishTencentParam(s),E.next=17;break;case 10:if(k!==-102069){E.next=15;break}_e.warn("stopPublishTencentCDN failed, can not stopPublishTencentCDN in auto relayed-push mode"),this.resetPublishTencentParam(s),E.next=17;break;case 15:throw _e.error("stopPublishTencentCDN failed, errCode: ".concat(k," errMsg: ").concat(x)),new ne({code:ee.STOP_PUBLISH_CDN_FAILED,message:ie({key:lS,data:{message:x},link:{className:"Client",fnName:"stopPublishCDNStream"}})});case 17:case"end":return E.stop()}},a,this)})),function(a){return i.apply(this,arguments)})},{key:"startPublishGivenCDN",value:(n=H(f().mark(function a(s){var l,u,p,k,x,E;return f().wrap(function(I){for(;;)switch(I.prev=I.next){case 0:if(l=s.streamType===Xe?this.publishTencentMainStreamObj_.streamId_:this.publishTencentAuxStreamObj_.streamId_,u={pushRequestTime:Date.now(),pushAppId:s.appId,pushBizId:s.bizId,pushCdnUrl:s.url,pushStreamType:s.streamType,pushStreamId:l},_e.info("startPublishGivenCDN: "+JSON.stringify(u)),this.publishGivenCDNData_=u,this.isPublishingGivenCDN_=!0,this.client_.isJoined_){I.next=7;break}return I.abrupt("return");case 7:return I.prev=7,I.next=10,this.signalChannel_.sendWaitForResponse({command:PU,data:u,timeout:5e3,responseCommand:mt.START_PUBLISH_GIVEN_CDN_RES,commandDesc:"startPublishCDNStream"});case 10:if(p=I.sent,k=p.data,x=k.code,E=k.message,x===0){I.next=17;break}throw _e.error("startPublishGivenCDN failed, errCode: ".concat(x,", errMsg: ").concat(E)),this.publishGivenCDNData_=null,this.isPublishingGivenCDN_=!1,new ne({code:ee.START_PUBLISH_CDN_FAILED,message:ie({key:uS,data:{message:E},link:{className:"Client",fnName:"startPublishCDNStream"}})});case 17:I.next=24;break;case 19:throw I.prev=19,I.t0=I.catch(7),this.publishGivenCDNData_=null,this.isPublishingGivenCDN_=!1,I.t0;case 24:case"end":return I.stop()}},a,this,[[7,19]])})),function(a){return n.apply(this,arguments)})},{key:"stopPublishGivenCDN",value:(t=H(f().mark(function a(){var s,l,u,p,k,x,E,I,m,T;return f().wrap(function(v){for(;;)switch(v.prev=v.next){case 0:if(this.client_.isJoined_){v.next=4;break}return this.publishGivenCDNData_=null,this.isPublishingGivenCDN_=!1,v.abrupt("return");case 4:return s=this.publishGivenCDNData_,l=s.pushAppId,u=s.pushBizId,p=s.pushCdnUrl,k=s.pushStreamType,x={pushRequestTime:Date.now(),pushAppId:l,pushBizId:u,pushCdnUrl:p,pushStreamType:k},_e.info("stopPublishGivenCDN: "+JSON.stringify(x)),v.next=9,this.signalChannel_.sendWaitForResponse({command:DU,data:x,timeout:5e3,responseCommand:mt.STOP_PUBLISH_GIVEN_CDN_RES,commandDesc:"stopPublishCDNStream"});case 9:if(E=v.sent,I=E.data,m=I.code,T=I.message,m!==0){v.next=16;break}this.publishGivenCDNData_=null,this.isPublishingGivenCDN_=!1,v.next=18;break;case 16:throw _e.error("stopPublishGivenCDN failed, errCode: ".concat(m," errMsg: ").concat(T)),new ne({code:ee.STOP_PUBLISH_CDN_FAILED,message:ie({key:lS,data:{message:T},link:{className:"Client",fnName:"stopPublishCDNStream"}})});case 18:case"end":return v.stop()}},a,this)})),function(){return t.apply(this,arguments)})},{key:"handleCDNConfigForJoinData",value:function(a){var s,l=a;if(this.publishTencentMainStreamObj_.isPublishing_||this.publishTencentAuxStreamObj_.isPublishing_){var u={};Bt(l)&&(u=JSON.parse(l)),u.Str_uc_params||(u.Str_uc_params={}),this.publishTencentMainStreamObj_.isPublishing_&&(this.publishTencentMainStreamObj_.streamId_?u.Str_uc_params.userdefine_streamid_main=this.publishTencentMainStreamObj_.streamId_:this.publishTencentMainStreamObj_.params_&&(u.Str_uc_params.userdefine_streamid_main=this.generatePublishCDNStreamId(this.publishTencentMainStreamObj_.params_.streamId,Xe))),this.publishTencentAuxStreamObj_.isPublishing_&&(this.publishTencentAuxStreamObj_.streamId_?u.Str_uc_params.userdefine_streamid_aux=this.publishTencentAuxStreamObj_.streamId_:this.publishTencentAuxStreamObj_.params_&&(u.Str_uc_params.userdefine_streamid_aux=this.generatePublishCDNStreamId(this.publishTencentAuxStreamObj_.params_.streamId,Mn))),l=JSON.stringify(u)}if(this.isPublishingGivenCDN_){var p=this.publishGivenCDNData_,k=p.pushAppId,x=p.pushBizId,E=p.pushCdnUrl,I=p.pushStreamType,m=p.pushStreamId;s={pushRequestTime:Date.now(),pushAppId:k,pushBizId:x,pushCdnUrl:E,pushStreamType:I,pushStreamId:m}}return{bussinessInfo:l,pushUserCdnInfo:s}}},{key:"reset",value:function(){this.resetPublishTencentParam(Xe),this.resetPublishTencentParam(Mn),this.publishGivenCDNData_=null,this.isPublishingGivenCDN_=!1}}]),e}(),qF=function(){function e(t){X(this,e),this.client_=t.client,this.durationMap_=new Map,this.installEvents()}return Ie(e,[{key:"installEvents",value:function(){Q.on(Ur,this.handleSubscribed,this),Q.on(Vn,this.handleStreamTrackUpdated,this),Q.on(Vr,this.handleStreamStopped,this),Q.on(oa,this.handleStreamStopped,this)}},{key:"uninstallEvents",value:function(){Q.off(Ur,this.handleSubscribed,this),Q.off(Vn,this.handleStreamTrackUpdated,this),Q.off(Vr,this.handleStreamStopped,this),Q.off(oa,this.handleStreamStopped,this)}},{key:"handleSubscribed",value:function(t){var n=t.client,i=t.stream;if(n===this.client_){var r=i.getUserId(),o=i.getType(),c="".concat(r,"_").concat(o);if(i.hasAudio())if(i.isMainAudioSubscribed){var a=new id,s=this.durationMap_.get(c);s?this.isRecording(s.audio)||s.audio.push(a):this.durationMap_.set(c,{userId:r,type:o,audio:[a],video:[]})}else this.stopDurationItem(c,Ee);if(i.hasVideo())if(o===gt&&i.isMainVideoSubscribed||o===Dt&&i.isAuxVideoSubscribed){var l=new id,u=this.durationMap_.get(c);u?this.isRecording(u.video)||u.video.push(l):this.durationMap_.set(c,{userId:r,type:o,audio:[],video:[l]})}else this.stopDurationItem(c,xe)}}},{key:"handleStreamStopped",value:function(t){var n=t.client,i=t.stream;if(this.clientHitTest(n)){var r=i.getUserId(),o=i.getType(),c="".concat(r,"_").concat(o);this.stopDurationItem(c,Ee),this.stopDurationItem(c,xe)}}},{key:"handleStreamTrackUpdated",value:function(t){var n=t.client,i=t.userId,r=t.tinyId,o=t.kind,c=t.action;if(this.clientHitTest(n)&&this.client_.getConnections().has(r)){var a=o===pt?o:gt,s="".concat(i,"_").concat(a);if(c===sn.ADD){var l=this.client_.getConnections().get(r).getSubscribeState();if(o===Ee&&!l.audio||o===xe&&!l.video||o===pt&&!l.auxiliary)return;var u=new id,p=this.durationMap_.get(s);p?(o!==Ee||this.isRecording(p.audio)||p.audio.push(u),o===Ee||this.isRecording(p.video)||p.video.push(u)):this.durationMap_.set(s,{userId:i,type:a,audio:o===Ee?[u]:[],video:o===Ee?[]:[u]})}else this.stopDurationItem(s,o===Ee?Ee:xe)}}},{key:"isRecording",value:function(t){return t.findIndex(function(n){return n.endTime===0})>=0}},{key:"stopDurationItem",value:function(t,n){if(this.durationMap_.has(t)){var i=this.durationMap_.get(t)[n].find(function(r){return r.endTime===0});i&&i.stop()}}},{key:"clientHitTest",value:function(t){return this.client_===t}},{key:"getDuration",value:function(t,n){return this.durationMap_.has(t)?this.durationMap_.get(t)[n].reduce(function(i,r){return i+r.getDuration()},0):0}},{key:"getDurationMap",value:function(){return this.durationMap_}},{key:"reset",value:function(){this.durationMap_.clear()}},{key:"destroy",value:function(){this.client_=null,this.uninstallEvents()}}]),e}();function Ic(){return function(e,t,n){var i=n.value,r=new Set;return n.value=H(f().mark(function o(){var c,a,s,l,u=arguments;return f().wrap(function(p){for(;;)switch(p.prev=p.next){case 0:if(!r.has(this)){p.next=2;break}throw new ne({code:ee.INVALID_OPERATION,message:ie({key:mN,data:{name:t}})});case 2:for(p.prev=2,r.add(this),c=u.length,a=new Array(c),s=0;s<c;s++)a[s]=u[s];return p.next=7,i.apply(this,a);case 7:return l=p.sent,r.delete(this),p.abrupt("return",l);case 12:throw p.prev=12,p.t0=p.catch(2),r.delete(this),p.t0;case 16:case"end":return p.stop()}},o,this,[[2,12]])})),n}}var JF=Mt,KF=Ni;Oe({target:"Date",proto:!0,arity:1,forced:ue(function(){return new Date(NaN).toJSON()!==null||Date.prototype.toJSON.call({toISOString:function(){return 1}})!==1})},{toJSON:function(e){var t=JF(this),n=KF(t,"number");return typeof n!="number"||isFinite(n)?t.toISOString():null}});var YF=Ke;Oe({target:"URL",proto:!0,enumerable:!0},{toJSON:function(){return YF(URL.prototype.toString,this)}});var Kv=null,Yv=!0;function va(e){tr(e)&&e!==Yv&&(Yv=e,_e.info("setIsNeedToSchedule "+e))}function XF(e,t){try{if(PerformanceObserver){var n=Ct(),i=od(e,Xe),r=od(e,Zn),o=new PerformanceObserver(function(c){c.getEntries().forEach(function(a){if(a.startTime>=n&&(a.name===i||a.name===r)){var s=a.name===i?Xe:Zn;if(a.code&&a.code!==200)return void _e.warn("".concat(s," schedule with code ").concat(a.code,", ").concat(JSON.stringify(a.toJSON())));var l=a.responseEnd-a.startTime,u=[a.domainLookupStart-a.startTime,a.domainLookupEnd-a.domainLookupStart,a.requestStart-a.secureConnectionStart,a.secureConnectionStart-a.connectStart,a.responseStart-a.requestStart,a.responseEnd-a.responseStart].map(function(p){return p.toFixed(1)});o.disconnect(),ke.uploadEvent({log:"stat-schedule-net:".concat(l.toFixed(1),"(").concat(u.join("->"),") ").concat(s),userId:t})}})});o.observe({type:"resource",buffered:!0})}}catch(c){}}function QF(e){return Xv.apply(this,arguments)}function Xv(){return Xv=H(f().mark(function e(t){var n,i,r,o,c,a,s,l,u,p,k,x,E;return f().wrap(function(I){for(;;)switch(I.prev=I.next){case 0:if(n=t.userId,i=t.sdkAppId,r=t.useStringRoomId,o=t.roomId,c=t.userSig,Yv||!Kv){I.next=3;break}return I.abrupt("return",{isCached:!0,result:Kv});case 3:return a={delta:0,count:[1,1],msg:[]},I.prev=4,(s=new FormData).append("userId",String(n)),s.append("sdkAppId",String(i)),s.append("isStrGroupId",r),s.append("groupId",String(o)),s.append("sdkVersion",Fi),s.append("userSig",String(c)),qf&&s.append("oversea",!0),XF(i,n),l=Ct(),I.next=17,ZF(s,a,i);case 17:return(u=I.sent).config&&(u.config.loggerDomain&&Mf(u.config.loggerDomain),tr(u.config.scheduleCache)&&va(!u.config.scheduleCache)),a.delta=Ct()-l,aI({stat:a,userId:n}),Kv=u,I.abrupt("return",{isCached:!1,result:u});case 25:throw I.prev=25,I.t0=I.catch(4),p=uo(I.t0)?I.t0[0]:I.t0,k=er(p.code)?p.code:0,x="schedule failed".concat(p.message?": ".concat(p.message):""),E=new ne({code:ee.SCHEDULE_FAILED,extraCode:k,message:ie({key:sS,data:{error:x,code:k}})}),_e.error(E),aI({stat:a,userId:n,roomId:o,error:E}),E;case 34:case"end":return I.stop()}},e,null,[[4,25]])})),Xv.apply(this,arguments)}function aI(e){var t=e.stat,n=e.userId,i=e.error;i?ke.logFailedEvent({eventType:Bb,error:i,userId:n}):ke.logSuccessEvent({eventType:Bb,delta:t.delta,userId:n}),ke.uploadEvent({log:"stat-schedule:"+JSON.stringify(t),userId:n})}function od(e){var t,n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Xe;return t=qf||(LS(e)?n===Xe?nN:rN:n===Xe?eN:tN),"https://".concat(t,"/api/v1/config")}function $F(e,t,n){return new Promise(function(i,r){sl({url:e,body:t,timeout:n.timeout}).then(function(o){o.data.code===0?i(o.data.data):r({code:o.data.code,message:o.data.msg})}).catch(r)})}Q.on(aa,function(){return va(!0)}),Q.on(E4,function(){return va(!0)}),Q.on(R4,function(){return va(!0)}),Q.on(WS,function(){return va(!0)}),Q.on(dl,function(e){e.state===Uf&&va(!0)});var oI=function(e,t){return rc({retryFunction:$F,settings:{retries:3,timeout:0},onError:t,onRetrying:e})};function ZF(e,t,n){return new Promise(function(i,r){var o,c=null;(o=[oI(function(a){return t.count[0]=a+1},function(a,s){t.msg[0]=a.message,c||s()})(od(n,Xe),e,{get timeout(){return 1e3*ol(2+t.count[0])}}),oI(function(a){return t.count[1]=a+1},function(a,s){t.msg[1]=a.message,c||s()})(od(n,Zn),e,{get timeout(){return 1e3*ol(2+t.count[1])}})],new Promise(function(a,s){var l=[];o.forEach(function(u){u.then(a).catch(function(p){l.push(p),l.length===o.length&&s(l)})})})).then(function(a){i(c=a)}).catch(r)})}var sI,cI,uI,lI,dI,hI,fI,pI,mI,vI,gI,_I,yI,bI,SI,kI,TI,xI,II,wI,CI,EI,RI,AI,PI,DI,LI,OI,MI,NI,UI,Pe,e7=function(){function e(){X(this,e)}return Ie(e,[{key:"call",value:function(t,n){return un(this[t])?this[t](n):Promise.reject(new ne({code:ee.INVALID_PARAMETER,message:ie({key:G3,data:{name:t}})}))}},{key:"updatePrivateMapKey",value:function(t){var n=t.privateMapKey;return t.client.setProperty("privateMapKey",n),Promise.resolve()}}]),e}(),t7=new e7,sd,cd,ud,Qv,VI,jI,BI,FI,HI,GI,Qt,n7=(sI=Ic(),cI=xn(Xt.CLIENT.join),uI=Lo({retries:1,timeout:0,onError:function(e,t,n){this.isUsingCachedSchedule_?(this.log_.warn("is using cached schedule, retry join"),va(!0),this.reset(),t()):(Q.emit(aa,{client:this,error:e}),ke.logFailedEvent({userId:this.userId_,eventType:kb,error:e}),this.reset(),this.log_.error(e),n(e))}}),lI=Ic(),dI=Lo({retries:3}),hI=Ic(),fI=xn.apply(void 0,Se(Xt.CLIENT.publish)),pI=St(cn),mI=Ic(),vI=xn(Xt.CLIENT.unpublish),gI=xn.apply(void 0,Se(Xt.CLIENT.subscribe)),_I=xn(Xt.CLIENT.unsubscribe),yI=Ic(),bI=xn(Xt.CLIENT.switchRole),SI=St(cn),kI=xn(Xt.CLIENT.startPublishCDNStream),TI=St(cn),xI=St(cn),II=xn(Xt.CLIENT.startMixTranscode),wI=St(cn),CI=St(cn),EI=St(cn),RI=St(cn),AI=St(cn),PI=St(cn),DI=St(cn),LI=Jl.apply(void 0,Se(Xt.CLIENT.sendSEIMessage)),OI=St(cn),sd={timesInSecond:30,maxSizeInSecond:8e3,getSize:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return t[0].byteLength}},cd=sd.timesInSecond,ud=sd.maxSizeInSecond,Qv=sd.getSize,MI=function(e,t,n){var i=n.value,r=new Map;return Q.on(Mp,function(o){var c=o.client;return r.delete(c)}),n.value=function(){var o=r.get(this);o||(o={callCountInSecond:0,timestamp:0,totalSizeInSecond:0},r.set(this,o)),o.timestamp===0?o.timestamp=Date.now():Date.now()-o.timestamp>1e3&&(o.timestamp=Date.now(),o.callCountInSecond=0,o.totalSizeInSecond=0);for(var c=arguments.length,a=new Array(c),s=0;s<c;s++)a[s]=arguments[s];if(Qv&&(o.totalSizeInSecond+=Qv.apply(void 0,a)),o.timestamp!==0&&Date.now()-o.timestamp<1e3&&(o.callCountInSecond>=cd||o.totalSizeInSecond>ud))throw new ne({code:ee.INVALID_OPERATION,message:ie({key:Q3,data:{isTimes:o.callCountInSecond>=cd,isSize:o.totalSizeInSecond>ud,name:t,timesInSecond:cd,maxSizeInSecond:ud}})});return o.callCountInSecond++,i.apply(this,a)},n},NI=St(cn),UI=St(cn),Pe=function(){function e(S){var h,y;X(this,e),this.name_=cn,this.mode_=S.mode,this.sdpSemantics_=Gf,ge(S.sdpSemantics)?function(){var A;if(ge(window.RTCRtpTransceiver)||!("currentDirection"in RTCRtpTransceiver.prototype))return!1;var D=null,U=!1;try{(D=new RTCPeerConnection({sdpSemantics:Xs})).addTransceiver(Ee),U=!0}catch(K){}return(A=D)===null||A===void 0||A.close(),U}()&&(this.sdpSemantics_=Xs):this.sdpSemantics_=S.sdpSemantics,this.sdkAppId_=S.sdkAppId,this.userId_=S.userId,this.log_=_e.createLogger({id:"c".concat(S.seq,"|").concat(this.userId_),userId:this.userId_,sdkAppId:this.sdkAppId_}),this.userSig_=S.userSig,this.roomId_=0,this.useStringRoomId_=S.useStringRoomId||!1,this.pureAudioPushMode_=null,this.version_=S.version,this.log_.info("using sdpSemantics: "+this.sdpSemantics_),this.signalChannel_=null,this.role_=kr,this.privateMapKey_="",this.tinyId_=0,this.env_="",this.proxy_=null,this.unifiedProxy_=null,this.connections_=new Map,this.mutedStates_=new Map,this.userMap_=new Map,this.syncUserListInterval_=-1,this.localStream_=null,this.localAuxStream_=null,this.uplinkConnection_=null,this.emitter_=BS(new bi,this.name_),this.isJoined_=!1,this.heartbeat_=-1,this.lastHeartBeatTime_=-1,this.stats_=new KV(this),this.joinTimeout_=-1,this.changeBigSmallRecords_=new Map,this.networkQuality_=null,this.badCaseDetector_=null,this.networkType_=Sp(),this.autoSubscribe_=!!ge(S.autoSubscribe)||S.autoSubscribe,this.joinedTimestamp_=0,this.joinOptions_={},this.basis_=(y={browser:ra().name+"/"+ra().version,os:Sm(),displayResolution:jV(),isScreenShareSupported:Mk(),isWebRTCSupported:pm(),isGetUserMediaSupported:BV(),isWebAudioSupported:FV(),isWebSocketsSupported:"WebSocket"in window&&window.WebSocket.CLOSING===2,isWebCodecSupported:(h={AudioDecoder:!1,AudioEncoder:!1,VideoDecoder:!1,VideoEncoder:!1,ImageDecoder:!1},ge(window.AudioDecoder)||(h.AudioDecoder=!0),ge(window.AudioEncoder)||(h.AudioEncoder=!0),ge(window.VideoDecoder)||(h.VideoDecoder=!0),ge(window.VideoEncoder)||(h.VideoEncoder=!0),ge(window.ImageDecoder)||(h.ImageDecoder=!0),h),isMediaSessionSupported:"mediaSession"in navigator&&!ge(navigator.mediaSession.setActionHandler),isWebTransportSupported:!ge(window.WebTransport)},navigator.userAgent.includes("miniProgram")&&(y.browser="mini/".concat(y.browser)),y),this.initBussinessInfo_(S),this.publishedCDN_=!1,this.publishCDNData_=null,this.mixedMCU_=!1,this.mixTranscodeData_=null,this.checkSystemResult_=null,this.enableAudioVolumeEvaluation_=!1,this.audioVolumeIntervalId_=null,this.mixTranscodeManager_=null,this.publishCDNManager_=new WF({client:this}),this.keyPointManager_=new cF({client:this,frameWorkType:S.frameWorkType,component:S.component}),this.isPublishing_=!1,this.isEnableSmallStream_=!1,this.smallStreamConfig_={bitrate:100,frameRate:15,height:120,width:160},this.turnServers_=[],this.iceTransportPolicy_=S.iceTransportPolicy,this.schedule_={domains:null,iceServers:null,iceTransportPolicy:null,trtcCapability:null},this.isUsingCachedSchedule_=!1,this.enableAutoPlayDialog_=!!ge(S.enableAutoPlayDialog)||S.enableAutoPlayDialog,this.enableMultiAuxStream_=!ge(S.enableMultiAuxStream)&&S.enableMultiAuxStream,this.signalInfo_={},this.enableSEI_=!ge(S.enableSEI)&&S.enableSEI,this.isDestroyed_=!1}var t,n,i,r,o,c,a,s,l,u,p,k,x,E,I,m,T,v,C,O,N,j,_,b,R,P,V;return Ie(e,[{key:"initBussinessInfo_",value:function(S){this.bussinessInfo_=S.bussinessInfo;var h={};if(Bt(S.bussinessInfo)&&(h=JSON.parse(S.bussinessInfo)),!ge(S.pureAudioPushMode)){if(!Number.isInteger(Number(S.pureAudioPushMode)))throw new ne({code:ee.INVALID_PARAMETER,message:ie({key:CN})});this.pureAudioPushMode_=S.pureAudioPushMode,h.Str_uc_params||(h.Str_uc_params={}),h.Str_uc_params.pure_audio_push_mod=this.pureAudioPushMode_}if(!ge(S.streamId)){if(!(Bt(S.streamId)&&String(S.streamId)&&String(S.streamId).length<=64))throw new ne({code:ee.INVALID_PARAMETER,message:ie({key:EN})});h.Str_uc_params||(h.Str_uc_params={}),h.Str_uc_params.userdefine_streamid_main=S.streamId}if(!ge(S.userDefineRecordId)){if(S.userDefineRecordId.match(/^[A-Za-z0-9_-]{1,64}$/gi)===null)throw new ne({code:ee.INVALID_PARAMETER,message:ie({key:RN})});h.Str_uc_params||(h.Str_uc_params={}),h.Str_uc_params.userdefine_record_id=S.userDefineRecordId}if(!ge(S.userDefinePushArgs)){if(!(Bt(S.userDefinePushArgs)&&String(S.userDefinePushArgs)&&String(S.userDefinePushArgs).length<=256))throw new ne({code:ee.INVALID_PARAMETER,message:ie({key:AN})});h.Str_uc_params||(h.Str_uc_params={}),h.Str_uc_params.userdefine_push_args=S.userDefinePushArgs}S.enableServerAudioMix&&(h.Str_uc_params||(h.Str_uc_params={}),h.Str_uc_params.enable_server_audio_mix=1,h.Str_uc_params.uc_biz_type=1e3),Si(h)||(this.bussinessInfo_=JSON.stringify(h))}},{key:"schedule",value:(V=H(f().mark(function S(h){var y,A,D;return f().wrap(function(U){for(;;)switch(U.prev=U.next){case 0:return U.next=2,QF({userId:this.userId_,sdkAppId:this.sdkAppId_,roomId:h,useStringRoomId:this.useStringRoomId_,version:this.version_,userSig:this.userSig_});case 2:y=U.sent,A=y.result,D=y.isCached,this.isUsingCachedSchedule_=D,A&&(this.log_.info("schedule with cache:".concat(D," : ").concat(JSON.stringify(A))),A.trtcCapability=A==null?void 0:A.trtcAutoConf,this.schedule_=q(q({},this.schedule_),A),Q.emit(zS,this.schedule_));case 7:case"end":return U.stop()}},S,this)})),function(S){return V.apply(this,arguments)})},{key:"getSignalChannelUrl",value:function(){var S={mainUrl:"",backupUrl:""},h=DS();return h?S.mainUrl=S.backupUrl="wss://".concat(h,".rtc.qq.com"):this.proxy_?S.mainUrl=S.backupUrl=this.proxy_:this.unifiedProxy_?S.mainUrl=S.backupUrl="wss://".concat(this.unifiedProxy_):Array.isArray(this.schedule_.domains)&&this.schedule_.domains.length>0&&(S.mainUrl=S.backupUrl="wss://".concat(this.schedule_.domains[0]),this.schedule_.domains[1]&&(S.backupUrl="wss://".concat(this.schedule_.domains[1]))),S}},{key:"getUserId",value:function(){return this.userId_}},{key:"getUserSig",value:function(){return this.userSig_}},{key:"getRole",value:function(){return this.role_}},{key:"getSignalInfo",value:function(){return this.signalInfo_}},{key:"getRoomId",value:function(){return this.roomId_}},{key:"getSDKAppId",value:function(){return this.sdkAppId_}},{key:"getTinyId",value:function(){return this.tinyId_}},{key:"getIceTransportPolicy",value:function(){return this.iceTransportPolicy_||this.schedule_.iceTransportPolicy||"all"}},{key:"initialize",value:function(S){var h=this;this.log_.info("setup signal channel");var y=this.getSignalChannelUrl(),A=y.mainUrl,D=y.backupUrl;return this.signalChannel_=new gV({sdkAppId:this.sdkAppId_,userId:this.userId_,userSig:this.userSig_,roomId:S.roomId,url:A,backupUrl:D,signalDomainWhenUnifiedProxy:this.unifiedProxy_?this.schedule_.domains[0]:void 0,client:this}),this.networkQuality_||(this.networkQuality_=new YV({connections:this.connections_,signalChannel:this.signalChannel_,userId:this.userId_,client:this}),this.networkQuality_.on(st.NETWORK_QUALITY,function(U){h.emitter_.emit(st.NETWORK_QUALITY,U)})),this.deviceDetector_||(this.deviceDetector_=new XV({client:this})),this.subscriptionManager_||(this.subscriptionManager_=new uF({client:this})),this.badCaseDetector_||(this.badCaseDetector_=new GF({client:this,stats:this.stats_})),this.callDurationCalculator_||(this.callDurationCalculator_=new qF({client:this})),this.mixTranscodeManager_||(this.mixTranscodeManager_=new zF({client:this,signalChannel:this.signalChannel_})),this.publishCDNManager_&&this.publishCDNManager_.setSignalChannel({signalChannel:this.signalChannel_}),this.signalChannel_.on(tm,function(U){h.log_.info("SignalChannel state changed from ".concat(U.prevState," to ").concat(U.state)),h.emitter_.emit(st.CONNECTION_STATE_CHANGED,U)}),this.signalChannel_.on(nm,function(U){h.reset(),h.emitter_.emit(st.ERROR,U)}),this.signalChannel_.once(dk,function(U){h.tinyId_=U.signalInfo.tinyId,Q.emit(ul,{client:h})}),this.signalChannel_.on(mt.PEER_JOIN,this.onPeerJoin,this),this.signalChannel_.on(mt.PEER_LEAVE,this.onPeerLeave,this),this.signalChannel_.on(mt.UPDATE_REMOTE_MUTE_STAT,function(U){Date.now()-h.lastHeartBeatTime_>=1e4&&h.doHeartbeat(),Q.emit(Pp,{client:h,data:U.data}),h.onPublishedUserList(U.data),h.onUpdateRemoteMuteStat(U.data)}),this.signalChannel_.on(mt.CLIENT_BANNED,function(U){var K,J=U.data.data.reason;if(ke.uploadEvent({log:"stat-banned:".concat(J),userId:h.userId_}),J===PM)K="you got banned by the admin";else if(J===DM)K="duplicated userId joining the room";else if(J===OM)K="the room has been disbanded by the admin",J=J.replace("_","-");else if(J===LM)return h.log_.warn("".concat(J," last heart beat time: ").concat(h.lastHeartBeatTime_," interval: ").concat(Date.now()-h.lastHeartBeatTime_,", visibility: ").concat(document.visibilityState)),void h.reJoin();h.log_[J==="kick"?"error":"info"]("user was banned because of [".concat(J,"]")),h.reset(),h.emitter_.emit(st.CLIENT_BANNED,{reason:J,message:ie({key:KN,data:{message:K,reason:J}})||J})}),Q.emit(Lp,{client:this}),this.signalChannel_.connect()}},{key:"preJoin",value:(P=H(f().mark(function S(h){var y,A,D,U;return f().wrap(function(K){for(;;)switch(K.prev=K.next){case 0:return this.joinOptions_=h,K.next=3,vm();case 3:if(this.checkSystemResult_=K.sent,this.checkDestroy(),(y=DS())||(y=Hu,this.proxy_&&(this.proxy_.startsWith(NM)?y=VM:this.proxy_.startsWith(UM)&&(y=jM))),this.env_=y,ke.setConfig({env:y,sdkAppId:this.sdkAppId_,userId:this.userId_,roomId:h.roomId}),this.uploadTrtcStats(),A=this.checkSystemResult_.detail,D=A.isH264EncodeSupported,U=A.isVp8EncodeSupported,pm()&&(D||U)){K.next=13;break}throw new ne({code:ee.NOT_SUPPORTED,message:ie({key:pS})});case 13:case"end":return K.stop()}},S,this)})),function(S){return P.apply(this,arguments)})},{key:"join",value:(R=H(f().mark(function S(h){var y,A=this;return f().wrap(function(D){for(;;)switch(D.prev=D.next){case 0:return this.roomId_=h.roomId,ge(h.role)||(this.role_=h.role),ge(h.privateMapKey)||(this.privateMapKey_=h.privateMapKey),y=Ct(),Q.emit(cl,{client:this}),mn(this.userId_,{eventId:QU,eventDesc:"joining room",timestamp:rn(),userId:this.userId_,tinyId:this.tinyId_}),D.next=8,this.preJoin(h);case 8:return D.abrupt("return",new Promise(function(){var U=H(f().mark(function K(J,ce){return f().wrap(function(ae){for(;;)switch(ae.prev=ae.next){case 0:if(A.joinReject_=ce,ae.prev=1,A.proxy_||A.schedule_.domains){ae.next=5;break}return ae.next=5,A.schedule(h.roomId);case 5:return A.checkDestroy(),ae.next=8,A.initialize(h);case 8:return ae.next=10,A.doJoin(h);case 10:A.signalInfo_=A.signalChannel_.getSignalInfo(),Q.emit(ho,{client:A}),A.joinedTimestamp_=Ct(),ke.logSuccessEvent({userId:A.userId_,eventType:KM,delta:A.joinedTimestamp_-y}),ke.logSuccessEvent({userId:A.userId_,eventType:kb}),ke.uploadEvent({log:"stat-autoplay-dialog:".concat(A.enableAutoPlayDialog_),userId:A.userId_}),ke.uploadEvent({log:"stat-conv-".concat(ta,"-").concat(location.hostname),userId:A.userId_}),J(),ae.next=23;break;case 20:ae.prev=20,ae.t0=ae.catch(1),ce(ae.t0);case 23:A.joinReject_=null;case 24:case"end":return ae.stop()}},K,null,[[1,20]])}));return function(K,J){return U.apply(this,arguments)}}()));case 9:case"end":return D.stop()}},S,this)})),function(S){return R.apply(this,arguments)})},{key:"checkDestroy",value:function(){if(this.isDestroyed_)throw new ne({code:ee.INVALID_OPERATION,message:ie({key:Zf,data:{funName:"join"}})})}},{key:"uploadTrtcStats",value:(b=H(f().mark(function S(){var h,y,A,D,U,K,J,ce,ae,qe,Ue,Fe,lt;return f().wrap(function(ze){for(;;)switch(ze.prev=ze.next){case 0:return ze.prev=0,ze.next=3,xt.getMicrophones();case 3:A=ze.sent,h=A&&A.length,ze.next=9;break;case 7:ze.prev=7,ze.t0=ze.catch(0);case 9:return ze.prev=9,ze.next=12,xt.getCameras();case 12:D=ze.sent,y=D&&D.length,ze.next=18;break;case 16:ze.prev=16,ze.t1=ze.catch(9);case 18:U={microphone:h,camera:y},K=this.checkSystemResult_.detail,J=K.isH264EncodeSupported,ce=K.isVp8EncodeSupported,ae=K.isH264DecodeSupported,qe=K.isVp8DecodeSupported,Ue={webRTC:this.basis_.isWebRTCSupported,getUserMedia:this.basis_.isGetUserMediaSupported,webSocket:this.basis_.isWebSocketsSupported,screenShare:this.basis_.isScreenShareSupported,webAudio:this.basis_.isWebAudioSupported,h264Encode:J,h264Decode:ae,vp8Encode:ce,vp8Decode:qe},Fe={browser:this.basis_.browser,os:this.basis_.os,trtc:Ue,devices:U},lt={isWebCodecSupported:this.basis_.isWebCodecSupported,isMediaSessionSupported:this.basis_.isMediaSessionSupported,isWebTransportSupported:this.basis_.isWebTransportSupported},ke.uploadEvent({log:"trtcstats-"+JSON.stringify(Fe),userId:this.userId_}),this.log_.info("TrtcStats-"+JSON.stringify(Fe)),ke.uploadEvent({log:"trtcadvancedstats-"+JSON.stringify(lt),userId:this.userId_});case 26:case"end":return ze.stop()}},S,this,[[0,7],[9,16]])})),function(){return b.apply(this,arguments)})},{key:"doJoin",value:function(S){var h=this;return new Promise(function(y,A){h.log_.info("Join() => joining room: ".concat(h.roomId_," useStringRoomId: ").concat(h.useStringRoomId_," mode: ").concat(h.mode_," role: ").concat(h.role_));var D={roomId:String(h.roomId_),useStringRoomId:h.useStringRoomId_,privateMapKey:h.privateMapKey_,trtcRole:h.role_===kr?ao:Nf,trtcScene:h.mode_===Gu?GM:HM,sdpSemantics:h.sdpSemantics_,version:C4(h.version_),ua:navigator&&navigator.userAgent||"",autoSubscribe:h.autoSubscribe_,terminalType:Zi?4:ip?2:rp?3:Zs?12:ES?5:RS?13:1,netType:Wf[Sp()],bussinessInfo:h.bussinessInfo_,receiveMix:!0};if(h.publishCDNManager_){var U=h.publishCDNManager_.handleCDNConfigForJoinData(h.bussinessInfo_),K=U.bussinessInfo,J=U.pushUserCdnInfo;Object.assign(D,{bussinessInfo:K,pushUserCdnInfo:J})}h.log_.debug("join room signal data: ".concat(JSON.stringify(D))),h.joinTimeout_=setTimeout(function(){A(new ne({code:ee.JOIN_ROOM_FAILED,message:ie({key:MN})}))},5e3),Q.emit(wp,{client:h}),h.signalChannel_.once(hk,function(ce){h.clearJoinTimeout(),Q.emit(ul,{client:h,error:ce}),A(ce)}),h.signalChannel_.send(SU,D),h.signalChannel_.once(mt.JOIN_ROOM_RESULT,function(ce){h.clearJoinTimeout();var ae=ce.data,qe=ae.code,Ue=ae.message,Fe=ae.data;h.onPublishedUserList({data:{userList:Fe.publishers}}),Q.emit(Cp,{client:h,code:qe}),qe===0?(h.isJoined_=!0,h.log_.info("Join room success, start heartbeat"),h.startHeartbeat(),h.badCaseDetector_&&h.badCaseDetector_.start(),h.syncUserList(),h.startSyncUserListInterval(),y()):(h.log_.error("Join room failed result: "+qe+" error: "+Ue),A(new ne({code:ee.JOIN_ROOM_FAILED,extraCode:qe,message:ie({key:sS,data:{error:Ue,code:qe}})})))})})}},{key:"reJoin",value:(_=H(f().mark(function S(){return f().wrap(function(h){for(;;)switch(h.prev=h.next){case 0:if(this.isJoined_){h.next=3;break}return this.log_.warn("reJoin abort"),h.abrupt("return");case 3:return this.isJoined_=!1,h.prev=4,this.log_.warn("reJoin pending: ".concat(this.joinOptions_.roomId)),this.subscriptionManager_&&this.subscriptionManager_.markAllStream(),this.signalChannel_.close(),h.next=10,this.signalChannel_.connect();case 10:return h.next=12,this.doJoin(q(q({},this.joinOptions_),{},{role:this.role_,privateMapKey:this.privateMapKey_}));case 12:this.log_.warn("reJoin success"),ke.logSuccessEvent({userId:this.userId_,eventType:Tb}),this.checkConnectionsToReconnect(),this.uplinkConnection_&&!this.uplinkConnection_.getIsReconnecting()&&this.uplinkConnection_.startReconnection(),this.mixTranscodeManager_&&this.mixTranscodeManager_.reStartMixTranscode(),h.next=25;break;case 19:h.prev=19,h.t0=h.catch(4),this.log_.warn("reJoin fail "+h.t0),this.reset(),ke.logFailedEvent({userId:this.userId_,eventType:Tb,error:h.t0}),this.emitter_.emit(st.ERROR,new ne({code:ee.JOIN_ROOM_FAILED,message:ie({key:NN,data:{roomId:this.joinOptions_.roomId}})}));case 25:case"end":return h.stop()}},S,this,[[4,19]])})),function(){return _.apply(this,arguments)})},{key:"leave",value:(j=H(f().mark(function S(){var h;return f().wrap(function(y){for(;;)switch(y.prev=y.next){case 0:return Q.emit(Ep,{client:this}),mn(this.userId_,{eventId:$U,eventDesc:"leaving room",timestamp:rn(),userId:this.userId_,tinyId:this.tinyId_}),y.prev=2,y.next=5,this.doHeartbeat();case 5:y.next=9;break;case 7:y.prev=7,y.t0=y.catch(2);case 9:this.doLeave(),Q.emit(fo,{client:this}),ke.logSuccessEvent({userId:this.userId_,eventType:YM}),h=Math.floor((Ct()-this.joinedTimestamp_)/1e3),ke.logSuccessEvent({userId:this.userId_,eventType:XM,delta:h});case 14:case"end":return y.stop()}},S,this,[[2,7]])})),function(){return j.apply(this,arguments)})},{key:"doLeave",value:function(){this.isJoined_&&(Q.emit(Rp,{client:this}),this.log_.info("leave() => leaving room"),this.signalChannel_.send(kU),this.reset())}},{key:"clearNetworkQuality",value:function(){this.networkQuality_&&(this.networkQuality_.stop(),this.networkQuality_=null)}},{key:"closeConnections",value:function(){var S=this;this.connections_.forEach(function(h){S.closeDownLink(h.getTinyId())})}},{key:"clearJoinTimeout",value:function(){clearTimeout(this.joinTimeout_),this.joinTimeout_=-1}},{key:"destroy",value:function(){var S,h,y;if(this.isJoined_)throw this.log_.warn(mi.INVALID_DESTROY),new ne({code:ee.INVALID_OPERATION,message:ie({key:UN})});this.isDestroyed_||(this.log_.info("destroy client"),this.joinReject_&&(this.joinReject_(new ne({code:ee.INVALID_OPERATION,message:ie({key:Zf,data:{funName:"join"}})})),this.clearJoinTimeout(),this.reset()),this.off("*"),(S=this.callDurationCalculator_)===null||S===void 0||S.destroy(),(h=this.keyPointManager_)===null||h===void 0||h.destroy(),(y=this.deviceDetector_)===null||y===void 0||y.destroy(),this.callDurationCalculator_=null,this.keyPointManager_=null,this.deviceDetector_=null,this.badCaseDetector_=null,this.publishCDNManager_=null,this.isDestroyed_=!0,Q.emit(Mp,{client:this}))}},{key:"reset",value:function(){this.isJoined_=!1,this.schedule_={domains:null,iceServers:null,iceTransportPolicy:null,trtcCapability:null},this.keyPointManager_&&this.keyPointManager_.prepareReport(),this.mixTranscodeManager_&&(this.mixTranscodeManager_.reset(),this.mixTranscodeManager_=null),this.publishCDNManager_&&this.publishCDNManager_.reset(),this.userMap_.clear(),this.stopSyncUserListInterval(),this.stopHeartbeat(),this.closeConnections(),this.mutedStates_.clear(),this.clearNetworkQuality(),this.badCaseDetector_&&this.callDurationCalculator_&&this.uploadAllCallStats(),this.closeUplink(),this.signalChannel_&&(this.log_.info("destroying SignalChannel"),this.signalChannel_.close(),this.signalChannel_=null),this.stats_.reset()}},{key:"startSyncUserListInterval",value:function(){this.syncUserListInterval_===-1&&(this.syncUserListInterval_=_t.run(so,this.syncUserList.bind(this)))}},{key:"stopSyncUserListInterval",value:function(){_t.clearTask(this.syncUserListInterval_),this.syncUserListInterval_=-1}},{key:"syncUserList",value:(N=H(f().mark(function S(){var h,y=this;return f().wrap(function(A){for(;;)switch(A.prev=A.next){case 0:return A.prev=0,A.next=3,this.getUserList();case 3:h=A.sent,this.userMap_.size!==0&&this.userMap_.forEach(function(D){h.findIndex(function(U){return U.userId===D.userId})<0&&(y.log_.info("peer leave detected: ".concat(D.userId)),y.cleanUser({userId:D.userId,tinyId:D.tinyId}))}),h.forEach(function(D){var U=D.userId;y.userMap_.has(U)||U===y.userId_||(y.userMap_.set(U,D),y.emitter_.emit(st.PEER_JOIN,{userId:U}))}),A.next=11;break;case 8:A.prev=8,A.t0=A.catch(0),this.log_.warn("sync user list failed: "+A.t0);case 11:case"end":return A.stop()}},S,this,[[0,8]])})),function(){return N.apply(this,arguments)})},{key:"getUserList",value:function(){return this.signalChannel_?this.signalChannel_.sendWaitForResponse({command:MU,responseCommand:mt.USER_LIST_RES,enableLog:!1,timeout:2e3}).then(function(S){var h=S.data,y=h.code,A=h.message;if(y===0)return(h.data&&h.data.userList||[]).map(function(D){var U=D.userId,K=D.srcTinyId,J=D.role;return new Jv({userId:U,tinyId:K,role:J})});throw ie({key:gS,data:{signalResponse:mt.USER_LIST_RES,code:y,message:A}})}):[]}},{key:"publish",value:(O=H(f().mark(function S(h){var y,A,D,U,K,J,ce,ae,qe=this,Ue=arguments;return f().wrap(function(Fe){for(;;)switch(Fe.prev=Fe.next){case 0:return y=Ue.length>1&&Ue[1]!==void 0?Ue[1]:{isAuxiliary:!1},h.setPublishState(Qs),this.isPublishing_=!0,A=Ct(),Q.emit(Dp,{client:this,stream:h}),D=y.isAuxiliary,U=D?pt:Xe,K=h.getScreen(),this.log_.info("publish() => publishing ".concat(K?Pf+" ":"").concat(U," stream ").concat(h.getId())),J=this.uplinkConnection_,Fe.prev=10,J||((J=new yF({userId:this.userId_,tinyId:this.tinyId_,client:this,isUplink:!0,signalChannel:this.signalChannel_,enableSEI:this.enableSEI_})).initialize(),J.on(et.ERROR,function(lt){var ze=lt.getCode();ze!==ee.ICE_TRANSPORT_ERROR&&(ze===ee.UPLINK_RECONNECTION_FAILED&&qe.closeUplink(),qe.emitter_.emit(st.ERROR,lt))})),h.setConnection(J),Fe.next=15,J.publish(h,D);case 15:this.log_.info("local ".concat(K?Pf+" ":"").concat(U," stream is published")),this.isPublishing_=!1,D?this.localAuxStream_=h:(this.localStream_=h,this.deviceDetector_&&this.deviceDetector_.setLocalStream(this.localStream_),this.localStream_.getBeautyStatus()&&this.log_.info("beauty stream is published successfully")),h.setPublishState(ZM),h.setClient(this,D),this.uplinkConnection_=J,ce=Ct(),ae=ce-A,ke.logSuccessEvent({userId:this.userId_,eventType:xb}),ke.logSuccessEvent({userId:this.userId_,eventType:QM,delta:ae}),h.hasAudio()&&mn(this.userId_,{eventId:vk,eventDesc:"publish audio track",timestamp:rn(),userId:this.userId_,tinyId:this.tinyId_}),h.hasVideo()&&mn(this.userId_,{eventId:mk,eventDesc:"publish video track",timestamp:rn(),userId:this.userId_,tinyId:this.tinyId_}),this.networkQuality_&&this.networkQuality_.setUplinkConnection(this.uplinkConnection_),Q.emit(D4,{localStream:h,isAuxiliary:D,client:this}),this.notPublishWithoutH264Supported_=!1,h.isAIDenoiser&&Ei.handleFunctionState({fnName:"AI_DENOISER"}),Fe.next=42;break;case 33:throw Fe.prev=33,Fe.t0=Fe.catch(10),Fe.t0 instanceof ne&&Fe.t0.getCode()===ee.NOT_SUPPORTED_H264&&(this.notPublishWithoutH264Supported_=!0),h.setPublishState(Gb),J.close(),this.log_.error("failed to publish stream "+Fe.t0),this.isPublishing_=!1,ke.logFailedEvent({userId:this.userId_,eventType:xb,error:Fe.t0}),Fe.t0;case 42:case"end":return Fe.stop()}},S,this,[[10,33]])})),function(S){return O.apply(this,arguments)})},{key:"unpublish",value:(C=H(f().mark(function S(h){var y,A;return f().wrap(function(D){for(;;)switch(D.prev=D.next){case 0:if(this.uplinkConnection_){D.next=2;break}return D.abrupt("return");case 2:return y=h===this.localAuxStream_,A=h.getScreen(),this.log_.info("unpublish() => unpublishing local ".concat(A?Pf+" ":"").concat(y?pt:Xe," stream")),D.prev=5,D.next=8,this.uplinkConnection_.unpublish(h);case 8:h.setClient(null),h.setConnection(null),y?this.localAuxStream_=null:(this.localStream_=null,h.hasAudio()&&mn(this.userId_,{eventId:_k,eventDesc:"unpublish audio track",timestamp:rn(),userId:this.userId_,tinyId:this.tinyId_}),h.hasVideo()&&mn(this.userId_,{eventId:gk,eventDesc:"unpublish video track",timestamp:rn(),userId:this.userId_,tinyId:this.tinyId_})),this.localStream_||this.localAuxStream_||this.closeUplink(),ke.logSuccessEvent({userId:this.userId_,eventType:Ib}),D.next=19;break;case 15:throw D.prev=15,D.t0=D.catch(5),ke.logFailedEvent({userId:this.userId_,eventType:Ib,error:D.t0}),D.t0;case 19:case"end":return D.stop()}},S,this,[[5,15]])})),function(S){return C.apply(this,arguments)})},{key:"closeUplink",value:function(){this.uplinkConnection_&&(this.uplinkConnection_.close(),this.uplinkConnection_=null,this.networkQuality_&&this.networkQuality_.setUplinkConnection(null),this.localStream_&&(this.localStream_.setClient(null),this.localStream_.setConnection(null),this.localStream_=null),this.localAuxStream_&&(this.localAuxStream_.setClient(null),this.localAuxStream_.setConnection(null),this.localAuxStream_=null),this.deviceDetector_&&this.deviceDetector_.setLocalStream(null))}},{key:"closeDownLink",value:function(S){var h=this.connections_.get(S);h&&(h.getIsReconnecting()&&h.stopReconnection(),this.subscriptionManager_&&this.subscriptionManager_.delete(h.getUserId()),h.close(),this.connections_.delete(S),this.mutedStates_.delete(S))}},{key:"subscribe",value:(v=H(f().mark(function S(h,y){var A,D,U;return f().wrap(function(K){for(;;)switch(K.prev=K.next){case 0:return this.log_.info("subscribe() => subscribe to [".concat(h.getUserId(),"] ").concat(h.getType()," stream with options: ").concat(JSON.stringify(y))),ge(y)&&(y={audio:!0,video:!0}),ge(y.audio)&&(y.audio=!0),ge(y.smallVideo)?ge(y.video)&&(y.video=!0):y.smallVideo?ge(y.video)?(y.video=!1,y.smallVideo=!0):y.video&&(y.video=!0,delete y.smallVideo,this.log_.warn("options.video and options.smallVideo can't be both true")):ge(y.video)&&(y.video=!0,delete y.smallVideo),y.video&&this.changeBigSmallRecords_.delete(h.getUserId()),A=h.getConnection(),y.smallVideo&&(A.getTrackState().smallVideo||(this.setRemoteVideoStreamType(h,"small"),y.video=!0,delete y.smallVideo)),K.prev=7,Q.emit(Up,{client:this,stream:h}),K.next=11,A.subscribe(h,y);case 11:this.subscriptionManager_&&this.subscriptionManager_.addSubscriptionRecord(h.getUserId(),h,y),this.notSubscribeWithoutH264Supported_=!1,ke.logSuccessEvent({userId:this.userId_,eventType:wb}),K.next=24;break;case 16:throw K.prev=16,K.t0=K.catch(7),(D=K.t0 instanceof ne?K.t0.getCode():ee.UNKNOWN)===ee.NOT_SUPPORTED_H264&&(this.notSubscribeWithoutH264Supported_=!0),(U=new ne(D===ee.REMOTE_STREAM_NOT_EXIST?{code:ee.API_CALL_ABORTED,message:ie({key:np,data:{message:K.t0.message,stream:h}})}:{code:D,message:ie({key:GN,data:{message:K.t0.message,stream:h}})})).getCode()===ee.API_CALL_ABORTED?this.log_.warn(U):this.log_.error(U),ke.logFailedEvent({userId:this.userId_,eventType:wb,error:U}),U;case 24:case"end":return K.stop()}},S,this,[[7,16]])})),function(S,h){return v.apply(this,arguments)})},{key:"unsubscribe",value:(T=H(f().mark(function S(h){var y;return f().wrap(function(A){for(;;)switch(A.prev=A.next){case 0:return this.log_.info("unsubscribe() => unsubscribe to [".concat(h.getUserId(),"] ").concat(h.getType()," stream")),A.prev=1,y=h.getConnection(),A.next=5,y.unsubscribe(h);case 5:this.subscriptionManager_&&this.subscriptionManager_.addUnsubscriptionRecord(h.getUserId(),h),Q.emit(Vr,{client:this,stream:h}),ke.logSuccessEvent({userId:this.userId_,eventType:Cb}),A.next=14;break;case 10:throw A.prev=10,A.t0=A.catch(1),ke.logFailedEvent({userId:this.userId_,eventType:Cb,error:A.t0}),A.t0;case 14:case"end":return A.stop()}},S,this,[[1,10]])})),function(S){return T.apply(this,arguments)})},{key:"switchRole",value:(m=H(f().mark(function S(h){return f().wrap(function(y){for(;;)switch(y.prev=y.next){case 0:if(this.role_!==h){y.next=2;break}return y.abrupt("return");case 2:return h===Qi&&this.uplinkConnection_&&this.closeUplink(),this.log_.info("switchRole() => switch role to: "+h),y.next=6,this.doSwitchRole(h);case 6:case"end":return y.stop()}},S,this)})),function(S){return m.apply(this,arguments)})},{key:"doSwitchRole",value:function(S){var h,y,A=this,D={command:NU,data:{role:S===kr?ao:Nf,privateMapKey:this.privateMapKey_},responseCommand:mt.SWITCH_ROLE_RES,retries:((h=this.schedule_.config)===null||h===void 0||(y=h.retries)===null||y===void 0?void 0:y.switchRole)||1};return this.log_.info("switchRole signal data: "+JSON.stringify(D.data)),this.signalChannel_.sendWaitForResponseWithRetry(D).then(function(U){var K=U.data,J=K.code,ce=K.message;if(J!==0)throw new ne({code:ee.SWITCH_ROLE_FAILED,message:ie({key:JN,data:{errMsg:ce,errCode:J}})});A.role_=S}).catch(function(U){throw U instanceof ne&&U.getCode()===ee.API_CALL_TIMEOUT&&(U=new ne({code:ee.SWITCH_ROLE_FAILED,message:ie({key:qN})})),A.log_.error(U),U})}},{key:"on",value:function(S,h,y){this.emitter_.on(S,h,y)}},{key:"off",value:function(S,h,y){S==="*"?this.emitter_.removeAllListeners():this.emitter_.off(S,h,y)}},{key:"getRemoteMutedState",value:function(){var S=this,h=[];return this.mutedStates_.forEach(function(y,A,D){var U=S.connections_.get(A);U&&h.push(q({userId:U.getUserId()},y))}),h}},{key:"getTransportStats",value:(I=H(f().mark(function S(){var h,y,A,D,U,K,J;return f().wrap(function(ce){for(;;)switch(ce.prev=ce.next){case 0:if(h={rtt:0,downlinksRTT:{}},!this.uplinkConnection_){ce.next=6;break}return ce.next=4,this.stats_.getSenderStats(this.uplinkConnection_);case 4:y=ce.sent,h.rtt=y.rtt;case 6:A=oe(this.connections_),ce.prev=7,A.s();case 9:if((D=A.n()).done){ce.next=17;break}return(U=Te(D.value,2))[0],K=U[1],ce.next=13,this.stats_.getReceiverStats(K);case 13:J=ce.sent,h.downlinksRTT[J.userId]=J.rtt;case 15:ce.next=9;break;case 17:ce.next=22;break;case 19:ce.prev=19,ce.t0=ce.catch(7),A.e(ce.t0);case 22:return ce.prev=22,A.f(),ce.finish(22);case 25:return ce.abrupt("return",h);case 26:case"end":return ce.stop()}},S,this,[[7,19,22,25]])})),function(){return I.apply(this,arguments)})},{key:"getLocalAudioStats",value:(E=H(f().mark(function S(){var h,y;return f().wrap(function(A){for(;;)switch(A.prev=A.next){case 0:if((h={})[this.userId_]={bytesSent:0,packetsSent:0},!this.uplinkConnection_){A.next=7;break}return A.next=5,this.stats_.getSenderStats(this.uplinkConnection_);case 5:y=A.sent,h[this.userId_]={bytesSent:y.audio.bytesSent,packetsSent:y.audio.packetsSent};case 7:return A.abrupt("return",h);case 8:case"end":return A.stop()}},S,this)})),function(){return E.apply(this,arguments)})},{key:"getLocalVideoStats",value:(x=H(f().mark(function S(){var h,y;return f().wrap(function(A){for(;;)switch(A.prev=A.next){case 0:if((h={})[this.userId_]={bytesSent:0,packetsSent:0,framesEncoded:0,framesSent:0,frameWidth:0,frameHeight:0},!this.uplinkConnection_){A.next=7;break}return A.next=5,this.stats_.getSenderStats(this.uplinkConnection_);case 5:y=A.sent,h[this.userId_]={bytesSent:y.video.bytesSent,packetsSent:y.video.packetsSent,framesEncoded:y.video.framesEncoded,framesSent:y.video.framesSent,frameWidth:y.video.frameWidth,frameHeight:y.video.frameHeight};case 7:return A.abrupt("return",h);case 8:case"end":return A.stop()}},S,this)})),function(){return x.apply(this,arguments)})},{key:"getRemoteAudioStats",value:(k=H(f().mark(function S(){var h,y,A,D,U,K,J,ce;return f().wrap(function(ae){for(;;)switch(ae.prev=ae.next){case 0:h={},y=oe(this.connections_),ae.prev=2,y.s();case 4:if((A=y.n()).done){ae.next=13;break}return(D=Te(A.value,2))[0],U=D[1],K=U.getDelay(),J=K.audioDelay,ae.next=9,this.stats_.getReceiverStats(U);case 9:(ce=ae.sent).hasAudio&&(h[ce.userId]={bytesReceived:ce.audio.bytesReceived,packetsReceived:ce.audio.packetsReceived,packetsLost:ce.audio.packetsLost,end2EndDelay:J});case 11:ae.next=4;break;case 13:ae.next=18;break;case 15:ae.prev=15,ae.t0=ae.catch(2),y.e(ae.t0);case 18:return ae.prev=18,y.f(),ae.finish(18);case 21:return ae.abrupt("return",h);case 22:case"end":return ae.stop()}},S,this,[[2,15,18,21]])})),function(){return k.apply(this,arguments)})},{key:"getRemoteVideoStats",value:(p=H(f().mark(function S(){var h,y,A,D,U,K,J,ce,ae,qe=arguments;return f().wrap(function(Ue){for(;;)switch(Ue.prev=Ue.next){case 0:h=qe.length>0&&qe[0]!==void 0?qe[0]:gt,y={},A=oe(this.connections_),Ue.prev=3,A.s();case 5:if((D=A.n()).done){Ue.next=15;break}return(U=Te(D.value,2))[0],K=U[1],Ue.next=9,this.stats_.getReceiverStats(K);case 9:J=Ue.sent,ce=K.getDelay(),ae=ce.videoDelay,h===gt&&J.hasVideo&&(y[J.userId]={bytesReceived:J.video.bytesReceived,packetsReceived:J.video.packetsReceived,packetsLost:J.video.packetsLost,framesDecoded:J.video.framesDecoded,frameWidth:J.video.frameWidth,frameHeight:J.video.frameHeight,end2EndDelay:ae}),h===Dt&&J.hasAuxiliary&&(y[J.userId]={bytesReceived:J.auxiliary.bytesReceived,packetsReceived:J.auxiliary.packetsReceived,packetsLost:J.auxiliary.packetsLost,framesDecoded:J.auxiliary.framesDecoded,frameWidth:J.auxiliary.frameWidth,frameHeight:J.auxiliary.frameHeight,end2EndDelay:ae});case 13:Ue.next=5;break;case 15:Ue.next=20;break;case 17:Ue.prev=17,Ue.t0=Ue.catch(3),A.e(Ue.t0);case 20:return Ue.prev=20,A.f(),Ue.finish(20);case 23:return Ue.abrupt("return",y);case 24:case"end":return Ue.stop()}},S,this,[[3,17,20,23]])})),function(){return p.apply(this,arguments)})},{key:"getSdpSemantics",value:function(){return this.sdpSemantics_}},{key:"getIceServers",value:function(){return this.turnServers_.length===0&&this.schedule_.iceServers?this.schedule_.iceServers:this.turnServers_}},{key:"getConnections",value:function(){return this.connections_}},{key:"getMutedStates",value:function(){return this.mutedStates_}},{key:"startHeartbeat",value:function(){this.heartbeat_===-1&&(this.log_.info("startHeartbeat..."),this.heartbeat_=_t.run(so,this.doHeartbeat.bind(this),{delay:2e3}))}},{key:"stopHeartbeat",value:function(){this.heartbeat_!==-1&&(this.log_.info("stopHeartbeat"),_t.clearTask(this.heartbeat_),this.heartbeat_=-1,this.lastHeartBeatTime_=-1)}},{key:"doHeartbeat",value:(u=H(f().mark(function S(){var h,y,A,D,U,K;return f().wrap(function(J){for(;;)switch(J.prev=J.next){case 0:return y=this.badCaseDetector_.getMonitorFreeze(),J.next=3,this.stats_.getStatsReport({uplinkConnection:this.uplinkConnection_,downlinkConnections:this.connections_,freezeMap:y});case 3:if(A=J.sent,Q.emit(Ap,{client:this,stats:A}),(h=this.badCaseDetector_)===null||h===void 0||h.resetMonitor(),this.signalChannel_){J.next=8;break}return J.abrupt("return");case 8:D=this.signalChannel_.isConnected()?pV(this.userId_):[],U=q(q({str_sdk_version:this.version_,uint64_datetime:new Date().getTime(),msg_user_info:{str_identifier:this.userId_,uint64_tinyid:this.tinyId_},msg_device_info:{uint32_terminal_type:15,str_device_name:navigator.platform,str_os_version:"",uint32_net_type:Wf[this.networkType_]}},A),{},{msg_event_msg:D}),this.signalChannel_.send(TU,U),K=Date.now(),this.lastHeartBeatTime_>0&&K-this.lastHeartBeatTime_>1e4&&this.log_.warn("heartbeat took ".concat(K-this.lastHeartBeatTime_)),this.lastHeartBeatTime_=K,!this.isRelayChanged_&&this.isRelayMaybeFailed()&&(this.reJoin(),this.isRelayChanged_=!0);case 15:case"end":return J.stop()}},S,this)})),function(){return u.apply(this,arguments)})},{key:"onRemoteStreamAdded",value:function(S){var h=S.content,y=h.userId,A=h.tinyId,D=h.audio,U=h.bigVideo,K=h.auxVideo,J=h.smallVideo;if(y!==null){this.userMap_.has(y)||(this.userMap_.set(y,new Jv({userId:y,tinyId:A,role:kr})),this.emitter_.emit(st.PEER_JOIN,{userId:y}));var ce=this.connections_.get(A);if(ce){if(ce.getIsReconnecting())return;this.log_.warn("duplicated stream-added observed, rebuild the connection"),ce.close(),this.connections_.delete(A)}var ae={audio:D,video:U,auxiliary:K,smallVideo:J};this.log_.info("remote peer [".concat(y,"] published stream. trackState: ").concat(JSON.stringify(ae))),this.createDownlinkConnection({userId:y,tinyId:A,trackState:ae})}else this.log_.warn("received null userId on stream added")}},{key:"createDownlinkConnection",value:function(S){var h=this,y=S.userId,A=S.tinyId,D=S.trackState,U=new HF({userId:y,tinyId:A,client:this,isUplink:!1,signalChannel:this.signalChannel_,autoSubscribe:this.autoSubscribe_,trackState:D,enableSEI:this.enableSEI_});this.connections_.set(A,U),this.installDownlinkEvents(U,y,A),this.autoSubscribe_?(U.initialize(),U.connect().catch(function(){!U.getMainStream()&&U.hasMainStream()&&h.initRemoteStream({type:gt,userId:y,downlinkConnection:U}),!U.getAuxStream()&&U.hasAuxStream()&&h.initRemoteStream({type:Dt,userId:y,downlinkConnection:U})})):(U.hasMainStream()&&this.initRemoteStream({type:gt,userId:y,downlinkConnection:U}),U.hasAuxStream()&&this.initRemoteStream({type:Dt,userId:y,downlinkConnection:U}))}},{key:"initRemoteStream",value:function(S){var h=S.type,y=S.userId,A=S.downlinkConnection,D=new jv({type:h,userId:y,client:this});D.setConnection(A),A.setRemoteStream(h===gt?Tr:Ks,D),D.setIsStreamAddedEventEmitted(!0),Q.emit(ll,{client:this,stream:D}),this.emitter_.emit(st.STREAM_ADDED,{stream:D})}},{key:"installDownlinkEvents",value:function(S,h,y){var A=this;S.on(et.SEI_MESSAGE,function(D){A.emitter_.emit(st.SEI_MESSAGE,D)}),S.on(et.STREAM_ADDED,function(D){D.stream.setIsStreamAddedEventEmitted(!0),Q.emit(ll,{client:A,stream:D.stream}),A.emitter_.emit(st.STREAM_ADDED,{stream:D.stream})}),S.on(et.STREAM_REMOVED,function(D){A.changeBigSmallRecords_.delete(D.stream.getUserId()),D.stream.stop(),D.stream.setIsStreamAddedEventEmitted(!1),A.subscriptionManager_&&A.subscriptionManager_.deleteAutoRecoveryFlag(D.stream.getUserId(),D.stream.getType()),Q.emit(oa,{client:A,stream:D.stream}),A.emitter_.emit(st.STREAM_REMOVED,{stream:D.stream})}),S.on(et.STREAM_UPDATED,function(D){Q.emit(P4,{client:A,stream:D.stream});var U=S.getMixUserList();U&&(D.mixUserList=U),A.emitter_.emit(st.STREAM_UPDATED,D)}),S.on(et.STREAM_SUBSCRIBED,function(D){Q.emit(Ur,{client:A,stream:D.stream}),A.emitter_.emit(st.STREAM_SUBSCRIBED,{stream:D.stream})}),S.on(et.ERROR,function(D){var U=D.getCode();U!==ee.ICE_TRANSPORT_ERROR&&(U===ee.DOWNLINK_RECONNECTION_FAILED&&A.closeDownLink(y),A.emitter_.emit(st.ERROR,D))})}},{key:"onPeerJoin",value:function(S){var h=S.data.data,y=h.srcTinyId,A=h.userId,D=h.role;this.userMap_.has(A)||(this.userMap_.set(A,new Jv({userId:A,tinyId:y,role:D})),this.emitter_.emit(st.PEER_JOIN,{userId:A}))}},{key:"onPeerLeave",value:function(S){var h=S.data.data,y=h.srcTinyId,A=h.userId,D=h.reason,U=D===void 0?0:D;this.log_.info("peer leave [".concat(A,"]: ").concat(sN[U])),this.cleanUser({userId:A,tinyId:y})}},{key:"cleanUser",value:function(S){var h=S.userId,y=S.tinyId;this.userMap_.delete(h),this.closeDownLink(y),this.emitter_.emit(st.PEER_LEAVE,{userId:h})}},{key:"onPublishedUserList",value:function(S){var h=this;try{var y=Se(S.data.userList);S.data.mixRobotList&&y.push.apply(y,Se(S.data.mixRobotList)),S.data.fakeMixUser&&y.push(S.data.fakeMixUser);var A=y.map(function(D){return D.userId});this.connections_.forEach(function(D){var U=D.getUserId(),K=D.getTinyId();A.findIndex(function(J){return J===U})<0&&(h.log_.info("peer unpublished detected [".concat(U,"]")),h.closeDownLink(K))}),y.forEach(function(D){var U=D.userId,K=D.srcTinyId,J=D.flag,ce=D.mixUserList;if(U!==h.userId_){var ae=!!(1&J),qe=!!(8&J),Ue=!!(4&J),Fe=!!(2&J),lt=h.connections_.get(K);if((Fe||ae)&&h.checkSubscribeBigSmallVideo(lt,Fe),lt){var ze=lt.getTrackState(),wc=ze.audio,ld=ze.video,Cc=ze.auxiliary,zI=ze.smallVideo;uo(ce)&<.setMixUserList(ce),!ld&&ae&&Q.emit(Vn,{client:h,tinyId:K,userId:U,action:sn.ADD,kind:xe}),!wc&&qe&&Q.emit(Vn,{client:h,tinyId:K,userId:U,action:sn.ADD,kind:Ee}),!Cc&&Ue&&Q.emit(Vn,{client:h,tinyId:K,userId:U,action:sn.ADD,kind:pt}),!zI&&Fe&&Q.emit(Vn,{client:h,tinyId:K,userId:U,action:sn.ADD,kind:Bu}),ld&&!ae&&Q.emit(Vn,{client:h,tinyId:K,userId:U,action:sn.REMOVE,kind:xe}),wc&&!qe&&Q.emit(Vn,{client:h,tinyId:K,userId:U,action:sn.REMOVE,kind:Ee}),Cc&&!Ue&&Q.emit(Vn,{client:h,tinyId:K,userId:U,action:sn.REMOVE,kind:pt}),zI&&!Fe&&Q.emit(Vn,{client:h,tinyId:K,userId:U,action:sn.REMOVE,kind:Bu})}else h.log_.info("peer published detected [".concat(U,"]")),h.onRemoteStreamAdded({content:{audio:qe,bigVideo:ae,auxVideo:Ue,smallVideo:Fe,userId:U,tinyId:K}})}})}catch(D){}}},{key:"onUpdateRemoteMuteStat",value:function(S){var h=this,y=S.data;(y&&y.userList||[]).forEach(function(A){var D=A.srcTinyId,U=A.userId;if(D!==0&&D!==h.tinyId_){var K=h.connections_.get(D);if(K){var J=K.getMainStream();if(J&&J.getIsStreamAddedEventEmitted()){var ce=!!(1&A.flag),ae=!!(8&A.flag),qe=!!(2&A.flag),Ue=!!(64&A.flag),Fe=!!(16&A.flag),lt=h.mutedStates_.get(D);if(lt===void 0)return h.mutedStates_.set(D,{hasAudio:ae,hasVideo:ce,hasSmall:qe,audioMuted:Ue,videoMuted:Fe}),ce?Fe?h.emitter_.emit(st.MUTE_VIDEO,{userId:U}):h.emitter_.emit(st.UNMUTE_VIDEO,{userId:U}):h.emitter_.emit(st.MUTE_VIDEO,{userId:U}),void(ae?Ue?h.emitter_.emit(st.MUTE_AUDIO,{userId:U}):h.emitter_.emit(st.UNMUTE_AUDIO,{userId:U}):h.emitter_.emit(st.MUTE_AUDIO,{userId:U}));var ze=!lt.audioMuted&<.hasAudio,wc=!Ue&&ae,ld=!lt.videoMuted&<.hasVideo,Cc=!Fe&&ce;h.mutedStates_.set(D,{hasAudio:ae,hasVideo:ce,hasSmall:qe,audioMuted:Ue,videoMuted:Fe}),ze!==wc&&(wc?h.emitter_.emit(st.UNMUTE_AUDIO,{userId:U}):h.emitter_.emit(st.MUTE_AUDIO,{userId:U})),ld!==Cc&&(Cc?h.emitter_.emit(st.UNMUTE_VIDEO,{userId:U}):h.emitter_.emit(st.MUTE_VIDEO,{userId:U}))}}else h.mutedStates_.delete(D)}})}},{key:"getEnv",value:function(){return this.env_}},{key:"getSubscriptionManager",value:function(){return this.subscriptionManager_}},{key:"startPublishCDNStream",value:(l=H(f().mark(function S(){var h,y=arguments;return f().wrap(function(A){for(;;)switch(A.prev=A.next){case 0:if(h=y.length>0&&y[0]!==void 0?y[0]:{},this.log_.info("startPublishCDNStream with params: ".concat(JSON.stringify(h),"; isJoined: ").concat(this.isJoined_,"; hasMainStream: ").concat(!!this.localStream_,"; hasAuxStream: ").concat(!!this.localAuxStream_,";")),h.streamType=h.streamType||Xe,h.streamType===pt&&(h.streamType=Mn),h.streamId=h.streamId||"",!this.isJoined_){A.next=10;break}if(h.streamType!==Xe||this.localStream_){A.next=8;break}throw new ne({code:ee.INVALID_OPERATION,message:ie({key:cS})});case 8:if(h.streamType!==Mn||this.localAuxStream_){A.next=10;break}throw new ne({code:ee.INVALID_OPERATION,message:ie({key:cS})});case 10:return A.next=12,this.publishCDNManager_.startPublishTencentCDN(h);case 12:if(!(h.appId&&h.bizId&&h.url)){A.next=15;break}return A.next=15,this.publishCDNManager_.startPublishGivenCDN(h);case 15:case"end":return A.stop()}},S,this)})),function(){return l.apply(this,arguments)})},{key:"stopPublishCDNStream",value:(s=H(f().mark(function S(){return f().wrap(function(h){for(;;)switch(h.prev=h.next){case 0:if(this.publishCDNManager_.getIsPublishingTencentCDN()){h.next=2;break}throw new ne({code:ee.INVALID_OPERATION,message:ie({key:YN})});case 2:return this.log_.info("stopPublishCDNStream"),h.next=5,this.publishCDNManager_.stopPublishTencentCDN();case 5:if(!this.publishCDNManager_.getIsPublishingGivenCDN()){h.next=8;break}return h.next=8,this.publishCDNManager_.stopPublishGivenCDN();case 8:case"end":return h.stop()}},S,this)})),function(){return s.apply(this,arguments)})},{key:"startMixTranscode",value:(a=H(f().mark(function S(h){return f().wrap(function(y){for(;;)switch(y.prev=y.next){case 0:if(this.isJoined_&&this.mixTranscodeManager_){y.next=2;break}throw new ne({code:ee.INVALID_OPERATION,message:ie({key:QN})});case 2:return ge(h.mode)&&(h.mode=zf.MANUAL),y.prev=3,this.log_.info("startMixTranscode with config ".concat(JSON.stringify(h))),ke.uploadEvent({log:"mix-transcode-mode:".concat(h.mode),userId:this.userId_}),y.next=8,this.mixTranscodeManager_.startMixTranscode(h);case 8:ke.logSuccessEvent({userId:this.userId_,eventType:Ub}),y.next=15;break;case 11:throw y.prev=11,y.t0=y.catch(3),ke.logFailedEvent({userId:this.userId_,eventType:Ub,error:y.t0}),y.t0;case 15:case"end":return y.stop()}},S,this,[[3,11]])})),function(S){return a.apply(this,arguments)})},{key:"stopMixTranscode",value:(c=H(f().mark(function S(){return f().wrap(function(h){for(;;)switch(h.prev=h.next){case 0:if(this.isJoined_&&this.mixTranscodeManager_){h.next=2;break}throw new ne({code:ee.INVALID_OPERATION,message:ie({key:$N})});case 2:return h.prev=2,h.next=5,this.mixTranscodeManager_.stopMixTranscode();case 5:ke.logSuccessEvent({userId:this.userId_,eventType:Vb}),h.next=12;break;case 8:throw h.prev=8,h.t0=h.catch(2),ke.logFailedEvent({userId:this.userId_,eventType:Vb,error:h.t0}),h.t0;case 12:case"end":return h.stop()}},S,this,[[2,8]])})),function(){return c.apply(this,arguments)})},{key:"getSystemResult",value:function(){return this.checkSystemResult_}},{key:"enableAudioVolumeEvaluation",value:function(){var S=this,h=arguments.length>0&&arguments[0]!==void 0?arguments[0]:2e3,y=arguments.length>1&&arguments[1]!==void 0&&arguments[1];if(!er(h))throw new ne({code:ee.INVALID_PARAMETER,message:ie({key:ZN})});if(this.log_.info("enableAudioVolumeEvaluation with interval: "+h),h<=0)return this.enableAudioVolumeEvaluation_=!1,_t.clearTask(this.audioVolumeIntervalId_),void(this.audioVolumeIntervalId_=null);h=Math.floor(Math.max(h,16)),Q.emit(Op,{interval:h}),this.audioVolumeIntervalId_&&(_t.clearTask(this.audioVolumeIntervalId_),this.audioVolumeIntervalId_=null),this.enableAudioVolumeEvaluation_=!0,this.audioVolumeIntervalId_=_t.run(Yu,function(){var A=[];if(S.localStream_){var D=Math.floor(100*S.localStream_.getAudioLevel());A.push({userId:S.userId_,audioVolume:D,stream:S.localStream_})}S.connections_.forEach(function(U){var K=U.getSubscribedMainStream();if(K){var J=Math.floor(100*K.getAudioLevel());A.push({userId:U.getUserId(),audioVolume:J,stream:K})}}),S.emitter_.emit(st.AUDIO_VOLUME,{result:A})},{fps:1e3/h,backgroundTask:y})}},{key:"callExperimentalAPI",value:function(S,h){return t7.call(S,q({client:this},h))}},{key:"setProperty",value:function(S,h){var y="".concat(S,"_");ge(this[y])||(this[y]=h)}},{key:"uploadAllCallStats",value:function(){var S=this;this.callDurationCalculator_.getDurationMap().forEach(function(h,y){var A={userId:h.userId,type:h.type,duration:S.callDurationCalculator_.getDuration(y,xe),dataFreeze:S.badCaseDetector_.getDataFreezeDuration(y).dataFreeze,renderFreeze:S.badCaseDetector_.getRenderFreezeDuration(y).renderFreeze};ke.uploadEvent({log:"callStats-"+JSON.stringify(A),userId:S.userId_})}),this.badCaseDetector_.stop(),this.callDurationCalculator_.reset()}},{key:"enableSmallStream",value:(o=H(f().mark(function S(){return f().wrap(function(h){for(;;)switch(h.prev=h.next){case 0:if(!this.isPublished()&&!this.isPublishing_){h.next=2;break}throw new ne({code:ee.INVALID_OPERATION,message:ie({key:e3})});case 2:if(!jk()){h.next=7;break}this.setIsEnableSmallStream(!0),this.log_.info("SmallStream successfully enabled"),h.next=8;break;case 7:throw new ne({code:ee.INVALID_OPERATION,message:ie({key:n3})});case 8:case"end":return h.stop()}},S,this)})),function(){return o.apply(this,arguments)})},{key:"disableSmallStream",value:(r=H(f().mark(function S(){return f().wrap(function(h){for(;;)switch(h.prev=h.next){case 0:if(!this.isPublished()&&!this.isPublishing_){h.next=2;break}throw new ne({code:ee.INVALID_OPERATION,message:ie({key:t3})});case 2:this.setIsEnableSmallStream(!1),this.log_.info("SmallStream successfully disabled");case 4:case"end":return h.stop()}},S,this)})),function(){return r.apply(this,arguments)})},{key:"setSmallStreamProfile",value:function(S){var h=this;S&&S.framerate&&(S.frameRate=S.framerate),S.width*S.height>307200&&(S.width=320,S.height=240,this.log_.info("Small stream resolution is beyond limitation, which is invalid. Reset to 320 * 240")),Object.keys(this.smallStreamConfig_).forEach(function(J){S[J]&&(h.smallStreamConfig_[J]=S[J])});var y=this.smallStreamConfig_,A=y.width,D=y.height,U=y.bitrate,K=y.frameRate;if(this.log_.info("setSmallStreamProfile: bitrate=".concat(U,", frameRate=").concat(K,", height=").concat(D,", width=").concat(A)),A<0||D<0||U<0||K<0)throw new ne({code:ee.INVALID_PARAMETER,message:ie({key:r3})})}},{key:"setRemoteVideoStreamType",value:(i=H(f().mark(function S(h,y){return f().wrap(function(A){for(;;)switch(A.prev=A.next){case 0:if(h instanceof jv){A.next=2;break}throw new ne({code:ee.INVALID_PARAMETER,message:ie({key:i3})});case 2:if(h.getConnection()){A.next=4;break}throw new ne({code:ee.INVALID_OPERATION,message:ie({key:$f})});case 4:if(h.getType()!==Dt){A.next=6;break}return A.abrupt("return");case 6:A.t0=y,A.next=A.t0===zb||A.t0===Wb?9:12;break;case 9:return A.next=11,this.changeVideoType(h,y);case 11:case 12:return A.abrupt("break",13);case 13:case"end":return A.stop()}},S,this)})),function(S,h){return i.apply(this,arguments)})},{key:"changeVideoType",value:(n=H(f().mark(function S(h,y){var A,D;return f().wrap(function(U){for(;;)switch(U.prev=U.next){case 0:A=h.getUserId(),D={stream:h,options:{video:y===zb,smallVideo:y===Wb},isSubscribing:!1,reSubscribeCount:10},this.changeBigSmallRecords_.set(A,D),this.log_.info("set [".concat(A,"] ").concat(h.getType()," stream video prefer type: ").concat(y));case 5:case"end":return U.stop()}},S,this)})),function(S,h){return n.apply(this,arguments)})},{key:"checkSubscribeBigSmallVideo",value:(t=H(f().mark(function S(h,y){var A,D,U,K,J,ce,ae,qe,Ue,Fe,lt;return f().wrap(function(ze){for(;;)switch(ze.prev=ze.next){case 0:if(h!=null&&h.isBigStreamSubscribed||h!=null&&h.isSmallStreamSubscribed){ze.next=2;break}return ze.abrupt("return");case 2:if(A=h.getUserId(),this.changeBigSmallRecords_.has(A)){ze.next=5;break}return ze.abrupt("return");case 5:if(D=this.changeBigSmallRecords_.get(A),U=h.getSubscribeState(),K=U.video,J=U.smallVideo,ce=D.stream,ae=D.options,qe=D.isSubscribing,Ue=D.reSubscribeCount,!(ae.video&&K||ae.smallVideo&&J&&y)){ze.next=10;break}return ze.abrupt("return");case 10:if(Fe={video:ae.video,smallVideo:ae.smallVideo},!(y&&h.isBigStreamSubscribed||h.isSmallStreamSubscribed)){ze.next=31;break}if(ze.prev=12,!(ae&&ce&&!qe&&Ue>=1)){ze.next=24;break}return D.isSubscribing=!0,D.reSubscribeCount=Ue-1,lt=ce.getConnection(),!y&<.isSmallStreamSubscribed&&(Fe={video:!0,smallVideo:!1}),Fe.emitEvent=!1,ze.next=21,lt==null?void 0:lt.subscribe(ce,Fe);case 21:this.log_.info("change [".concat(A,"] to ").concat(Fe.smallVideo?"small":"big"," video successfully. count ").concat(10-D.reSubscribeCount,".")),D.isSubscribing=!1,D.reSubscribeCount=10;case 24:ze.next=31;break;case 26:ze.prev=26,ze.t0=ze.catch(12),this.log_.info("change [".concat(A,"] to ").concat(Fe.smallVideo?"small":"big"," video failed. count ").concat(10-D.reSubscribeCount,".")),D.isSubscribing=!1,Ue===0&&this.changeBigSmallRecords_.delete(A);case 31:case"end":return ze.stop()}},S,this,[[12,26]])})),function(S,h){return t.apply(this,arguments)})},{key:"setIsEnableSmallStream",value:function(S){this.isEnableSmallStream_=S}},{key:"getIsEnableSmallStream",value:function(){return this.isEnableSmallStream_}},{key:"smallStreamConfig",get:function(){return this.smallStreamConfig_}},{key:"isPublished",value:function(){return!!this.localStream_}},{key:"getUplinkConnection",value:function(){return this.uplinkConnection_}},{key:"getLocalStream",value:function(){return this.localStream_}},{key:"getMode",value:function(){return this.mode_}},{key:"getBadCaseDetector",value:function(){return this.badCaseDetector_}},{key:"getCallDurationCalculator",value:function(){return this.callDurationCalculator_}},{key:"getIsJoined",value:function(){return this.isJoined_}},{key:"getAllConnections",value:function(){var S=Se(this.connections_.values());return this.uplinkConnection_&&S.push(this.uplinkConnection_),S}},{key:"isRelayMaybeFailed",value:function(){if(!this.signalChannel_.isOnline)return!1;var S=this.getAllConnections();if(S.length===0)return!1;for(var h=0;h<S.length;h++)if(S[h].getReconnectionCount()<6)return!1;return!0}},{key:"getUseStringRoomId",value:function(){return this.useStringRoomId_}},{key:"checkConnectionsToReconnect",value:function(){var S=this;this.getAllConnections().forEach(function(h){if(!h.getIsReconnecting()){var y=h.getPeerConnection();y&&y.connectionState===Vf&&(S.log_.warn("[".concat(h.getUserId(),"] pc is closed but not reconnect")),h.startReconnection())}})}},{key:"getEnableAutoPlayDialog",value:function(){return this.enableAutoPlayDialog_}},{key:"sendSEIMessage",value:function(S,h){this.uplinkConnection_.sendSEI(S,h)}},{key:"setProxyServer",value:function(S){if(this.log_.info("set proxy server: ".concat(JSON.stringify(S))),Bt(S)){if(!S.startsWith("wss://"))throw new ne({code:ee.INVALID_PARAMETER,message:ie({key:PN})});this.proxy_=S}else if(_i(S)){var h=S.websocketProxy,y=S.loggerProxy,A=S.scheduleProxy,D=S.unifiedProxy;h&&(this.proxy_=h),y&&Mf(y),A&&Jb(A),D&&(this.unifiedProxy_=D,Mf("https://".concat(D)),Jb(D))}}},{key:"setTurnServer",value:function(S){this.log_.info("set turn server: "+JSON.stringify(S));var h=[];Array.isArray(S)?S.forEach(function(y){return h.push(NS(y))}):_i(S)&&h.push(NS(S)),this.turnServers_=h}},{key:"get2k4kFlag",value:function(){var S,h;return((S=this.schedule_)===null||S===void 0||(h=S.trtcCapability)===null||h===void 0?void 0:h["2k4k"])||2}}]),e}(),Y(Pe.prototype,"join",[sI,cI,uI],Object.getOwnPropertyDescriptor(Pe.prototype,"join"),Pe.prototype),Y(Pe.prototype,"leave",[lI],Object.getOwnPropertyDescriptor(Pe.prototype,"leave"),Pe.prototype),Y(Pe.prototype,"getUserList",[dI],Object.getOwnPropertyDescriptor(Pe.prototype,"getUserList"),Pe.prototype),Y(Pe.prototype,"publish",[hI,fI,pI],Object.getOwnPropertyDescriptor(Pe.prototype,"publish"),Pe.prototype),Y(Pe.prototype,"unpublish",[mI,vI],Object.getOwnPropertyDescriptor(Pe.prototype,"unpublish"),Pe.prototype),Y(Pe.prototype,"subscribe",[gI],Object.getOwnPropertyDescriptor(Pe.prototype,"subscribe"),Pe.prototype),Y(Pe.prototype,"unsubscribe",[_I],Object.getOwnPropertyDescriptor(Pe.prototype,"unsubscribe"),Pe.prototype),Y(Pe.prototype,"switchRole",[yI,bI,SI],Object.getOwnPropertyDescriptor(Pe.prototype,"switchRole"),Pe.prototype),Y(Pe.prototype,"startPublishCDNStream",[kI,TI],Object.getOwnPropertyDescriptor(Pe.prototype,"startPublishCDNStream"),Pe.prototype),Y(Pe.prototype,"stopPublishCDNStream",[xI],Object.getOwnPropertyDescriptor(Pe.prototype,"stopPublishCDNStream"),Pe.prototype),Y(Pe.prototype,"startMixTranscode",[II,wI],Object.getOwnPropertyDescriptor(Pe.prototype,"startMixTranscode"),Pe.prototype),Y(Pe.prototype,"stopMixTranscode",[CI],Object.getOwnPropertyDescriptor(Pe.prototype,"stopMixTranscode"),Pe.prototype),Y(Pe.prototype,"enableAudioVolumeEvaluation",[EI],Object.getOwnPropertyDescriptor(Pe.prototype,"enableAudioVolumeEvaluation"),Pe.prototype),Y(Pe.prototype,"enableSmallStream",[RI],Object.getOwnPropertyDescriptor(Pe.prototype,"enableSmallStream"),Pe.prototype),Y(Pe.prototype,"disableSmallStream",[AI],Object.getOwnPropertyDescriptor(Pe.prototype,"disableSmallStream"),Pe.prototype),Y(Pe.prototype,"setSmallStreamProfile",[PI],Object.getOwnPropertyDescriptor(Pe.prototype,"setSmallStreamProfile"),Pe.prototype),Y(Pe.prototype,"setRemoteVideoStreamType",[DI],Object.getOwnPropertyDescriptor(Pe.prototype,"setRemoteVideoStreamType"),Pe.prototype),Y(Pe.prototype,"sendSEIMessage",[LI,OI,MI],Object.getOwnPropertyDescriptor(Pe.prototype,"sendSEIMessage"),Pe.prototype),Y(Pe.prototype,"setProxyServer",[NI],Object.getOwnPropertyDescriptor(Pe.prototype,"setProxyServer"),Pe.prototype),Y(Pe.prototype,"setTurnServer",[UI],Object.getOwnPropertyDescriptor(Pe.prototype,"setTurnServer"),Pe.prototype),Pe),r7=0,i7=0,a7=(VI=St($s),jI=St($s),BI=St($s),FI=Jl(Xt.TRTC.createClient),HI=St($s),GI=Jl(Xt.TRTC.createStream),Qt=function(){function e(){X(this,e),this.name_=$s,this.VERSION=Fi,this.Logger={loggerManager:_e,LogLevel:Nn,setLogLevel:function(n){_e.setLogLevel(n),n<=1&&I4()},enableUploadLog:function(){Ei.handleFunctionState({fnName:"TRTC.enableUploadLog"}),_e.enableUploadLog()},disableUploadLog:function(){_e.warn("disableUploadLog"),Ei.handleFunctionState({fnName:"TRTC.disableUploadLog"}),_e.disableUploadLog()}}}var t;return Ie(e,[{key:"checkSystemRequirements",value:(t=H(f().mark(function n(){return f().wrap(function(i){for(;;)switch(i.prev=i.next){case 0:return i.next=2,vm();case 2:return i.abrupt("return",i.sent);case 3:case"end":return i.stop()}},n)})),function(){return t.apply(this,arguments)})},{key:"isScreenShareSupported",value:function(){return Mk()}},{key:"isSmallStreamSupported",value:function(){return jk()}},{key:"getDevices",value:function(){return xm()}},{key:"getCameras",value:function(){return function(){return Tm.apply(this,arguments)}()}},{key:"getMicrophones",value:function(){return Gk()}},{key:"getSpeakers",value:function(){return zk()}},{key:"createClient",value:function(n){(function(){if(JS&&(JS=!1,_e.getLogLevel()!=xt.Logger.LogLevel.NONE&&(console.info("******************************************************************************"),console.info("* TRTC Web SDK"),console.info("* API Document: "+"".concat(Yf,"index.html")),console.info("* Changelog: https://cloud.tencent.com/document/product/647/38958"),console.info("* Report issues: https://github.com/LiteAVSDK/TRTC_Web/issues"),console.info("******************************************************************************")),_e.info("TRTC Web SDK Version: 4.15.15"),_e.info("UserAgent: "+navigator.userAgent),_e.info("URL of current page: "+location.href),navigator.userAgentData&&un(navigator.userAgentData.getHighEntropyValues)))try{navigator.userAgentData.getHighEntropyValues(["architecture","bitness","model","platformVersion","fullVersionList"]).then(function(o){var c="UAData: ".concat(o.platform,"/").concat(o.platformVersion);o.architecture&&o.bitness&&(c+=" ".concat(o.architecture,"/").concat(o.bitness)),o.mobile&&(c+=" mobile"),o.model&&(c+=" model: ".concat(o.model)),o.fullVersionList&&(c+=" ".concat(o.fullVersionList.filter(function(a){return a.brand!=="Not/A)Brand"}).map(function(a){return"".concat(a.brand,"/").concat(a.version)}).join(","))),_e.info(c)}).catch(function(){})}catch(o){}})();var i={version:this.VERSION},r=new n7(q(q(q({},i),n),{},{seq:++r7}));return Q.emit(GS,{client:r}),r}},{key:"createStream",value:function(n){return new _F(q(q({},n),{},{seq:++i7}))}}]),e}(),Y(Qt.prototype,"checkSystemRequirements",[VI],Object.getOwnPropertyDescriptor(Qt.prototype,"checkSystemRequirements"),Qt.prototype),Y(Qt.prototype,"isScreenShareSupported",[jI],Object.getOwnPropertyDescriptor(Qt.prototype,"isScreenShareSupported"),Qt.prototype),Y(Qt.prototype,"isSmallStreamSupported",[BI],Object.getOwnPropertyDescriptor(Qt.prototype,"isSmallStreamSupported"),Qt.prototype),Y(Qt.prototype,"createClient",[FI,HI],Object.getOwnPropertyDescriptor(Qt.prototype,"createClient"),Qt.prototype),Y(Qt.prototype,"createStream",[GI],Object.getOwnPropertyDescriptor(Qt.prototype,"createStream"),Qt.prototype),Qt),xt=new a7;return xt})});var rg=Zv((C7,ng)=>{"use strict";var Mo=typeof Reflect=="object"?Reflect:null,YI=Mo&&typeof Mo.apply=="function"?Mo.apply:function(q,f,G){return Function.prototype.apply.call(q,f,G)},fd;Mo&&typeof Mo.ownKeys=="function"?fd=Mo.ownKeys:Object.getOwnPropertySymbols?fd=function(q){return Object.getOwnPropertyNames(q).concat(Object.getOwnPropertySymbols(q))}:fd=function(q){return Object.getOwnPropertyNames(q)};function p7(te){console&&console.warn&&console.warn(te)}var QI=Number.isNaN||function(q){return q!==q};function ft(){ft.init.call(this)}ng.exports=ft;ng.exports.once=_7;ft.EventEmitter=ft;ft.prototype._events=void 0;ft.prototype._eventsCount=0;ft.prototype._maxListeners=void 0;var XI=10;function pd(te){if(typeof te!="function")throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof te)}Object.defineProperty(ft,"defaultMaxListeners",{enumerable:!0,get:function(){return XI},set:function(te){if(typeof te!="number"||te<0||QI(te))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+te+".");XI=te}});ft.init=function(){(this._events===void 0||this._events===Object.getPrototypeOf(this)._events)&&(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0};ft.prototype.setMaxListeners=function(q){if(typeof q!="number"||q<0||QI(q))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+q+".");return this._maxListeners=q,this};function $I(te){return te._maxListeners===void 0?ft.defaultMaxListeners:te._maxListeners}ft.prototype.getMaxListeners=function(){return $I(this)};ft.prototype.emit=function(q){for(var f=[],G=1;G<arguments.length;G++)f.push(arguments[G]);var $=q==="error",H=this._events;if(H!==void 0)$=$&&H.error===void 0;else if(!$)return!1;if($){var X;if(f.length>0&&(X=f[0]),X instanceof Error)throw X;var Re=new Error("Unhandled error."+(X?" ("+X.message+")":""));throw Re.context=X,Re}var Ie=H[q];if(Ie===void 0)return!1;if(typeof Ie=="function")YI(Ie,this,f);else for(var $e=Ie.length,Et=rw(Ie,$e),G=0;G<$e;++G)YI(Et[G],this,f);return!0};function ZI(te,q,f,G){var $,H,X;if(pd(f),H=te._events,H===void 0?(H=te._events=Object.create(null),te._eventsCount=0):(H.newListener!==void 0&&(te.emit("newListener",q,f.listener?f.listener:f),H=te._events),X=H[q]),X===void 0)X=H[q]=f,++te._eventsCount;else if(typeof X=="function"?X=H[q]=G?[f,X]:[X,f]:G?X.unshift(f):X.push(f),$=$I(te),$>0&&X.length>$&&!X.warned){X.warned=!0;var Re=new Error("Possible EventEmitter memory leak detected. "+X.length+" "+String(q)+" listeners added. Use emitter.setMaxListeners() to increase limit");Re.name="MaxListenersExceededWarning",Re.emitter=te,Re.type=q,Re.count=X.length,p7(Re)}return te}ft.prototype.addListener=function(q,f){return ZI(this,q,f,!1)};ft.prototype.on=ft.prototype.addListener;ft.prototype.prependListener=function(q,f){return ZI(this,q,f,!0)};function m7(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,arguments.length===0?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function ew(te,q,f){var G={fired:!1,wrapFn:void 0,target:te,type:q,listener:f},$=m7.bind(G);return $.listener=f,G.wrapFn=$,$}ft.prototype.once=function(q,f){return pd(f),this.on(q,ew(this,q,f)),this};ft.prototype.prependOnceListener=function(q,f){return pd(f),this.prependListener(q,ew(this,q,f)),this};ft.prototype.removeListener=function(q,f){var G,$,H,X,Re;if(pd(f),$=this._events,$===void 0)return this;if(G=$[q],G===void 0)return this;if(G===f||G.listener===f)--this._eventsCount===0?this._events=Object.create(null):(delete $[q],$.removeListener&&this.emit("removeListener",q,G.listener||f));else if(typeof G!="function"){for(H=-1,X=G.length-1;X>=0;X--)if(G[X]===f||G[X].listener===f){Re=G[X].listener,H=X;break}if(H<0)return this;H===0?G.shift():v7(G,H),G.length===1&&($[q]=G[0]),$.removeListener!==void 0&&this.emit("removeListener",q,Re||f)}return this};ft.prototype.off=ft.prototype.removeListener;ft.prototype.removeAllListeners=function(q){var f,G,$;if(G=this._events,G===void 0)return this;if(G.removeListener===void 0)return arguments.length===0?(this._events=Object.create(null),this._eventsCount=0):G[q]!==void 0&&(--this._eventsCount===0?this._events=Object.create(null):delete G[q]),this;if(arguments.length===0){var H=Object.keys(G),X;for($=0;$<H.length;++$)X=H[$],X!=="removeListener"&&this.removeAllListeners(X);return this.removeAllListeners("removeListener"),this._events=Object.create(null),this._eventsCount=0,this}if(f=G[q],typeof f=="function")this.removeListener(q,f);else if(f!==void 0)for($=f.length-1;$>=0;$--)this.removeListener(q,f[$]);return this};function tw(te,q,f){var G=te._events;if(G===void 0)return[];var $=G[q];return $===void 0?[]:typeof $=="function"?f?[$.listener||$]:[$]:f?g7($):rw($,$.length)}ft.prototype.listeners=function(q){return tw(this,q,!0)};ft.prototype.rawListeners=function(q){return tw(this,q,!1)};ft.listenerCount=function(te,q){return typeof te.listenerCount=="function"?te.listenerCount(q):nw.call(te,q)};ft.prototype.listenerCount=nw;function nw(te){var q=this._events;if(q!==void 0){var f=q[te];if(typeof f=="function")return 1;if(f!==void 0)return f.length}return 0}ft.prototype.eventNames=function(){return this._eventsCount>0?fd(this._events):[]};function rw(te,q){for(var f=new Array(q),G=0;G<q;++G)f[G]=te[G];return f}function v7(te,q){for(;q+1<te.length;q++)te[q]=te[q+1];te.pop()}function g7(te){for(var q=new Array(te.length),f=0;f<q.length;++f)q[f]=te[f].listener||te[f];return q}function _7(te,q){return new Promise(function(f,G){function $(X){te.removeListener(q,H),G(X)}function H(){typeof te.removeListener=="function"&&te.removeListener("error",$),f([].slice.call(arguments))}iw(te,q,H,{once:!0}),q!=="error"&&y7(te,$,{once:!0})})}function y7(te,q,f){typeof te.on=="function"&&iw(te,"error",q,f)}function iw(te,q,f,G){if(typeof te.on=="function")G.once?te.once(q,f):te.on(q,f);else if(typeof te.addEventListener=="function")te.addEventListener(q,function $(H){G.once&&te.removeEventListener(q,$),f(H)});else throw new TypeError('The "emitter" argument must be of type EventEmitter. Received type '+typeof te)}});var ow=Zv((ig,ag)=>{(function(te,q){typeof ig=="object"&&typeof ag!="undefined"?ag.exports=q(Er()):typeof define=="function"&&define.amd?define(["trtc-js-sdk"],q):(te=typeof globalThis!="undefined"?globalThis:te||self).RTCBeautyPlugin=q(te.TRTC)})(ig,function(te){function q(le){return le&&typeof le=="object"&&"default"in le?le:{default:le}}var f=q(te);function G(){G=function(){return le};var le={},Te=Object.prototype,Se=Te.hasOwnProperty,je=typeof Symbol=="function"?Symbol:{},He=je.iterator||"@@iterator",oe=je.asyncIterator||"@@asyncIterator",Y=je.toStringTag||"@@toStringTag";function se(he,de,Ne){return Object.defineProperty(he,de,{value:Ne,enumerable:!0,configurable:!0,writable:!0}),he[de]}try{se({},"")}catch(he){se=function(de,Ne,We){return de[Ne]=We}}function z(he,de,Ne,We){var De=de&&de.prototype instanceof ue?de:ue,ct=Object.create(De.prototype),rt=new Ze(We||[]);return ct._invoke=function(Ut,Zt,pe){var Lt="suspendedStart";return function(Jt,hr){if(Lt==="executing")throw new Error("Generator is already running");if(Lt==="completed"){if(Jt==="throw")throw hr;return qn()}for(pe.method=Jt,pe.arg=hr;;){var Ri=pe.delegate;if(Ri){var _n=dr(Ri,pe);if(_n){if(_n===be)continue;return _n}}if(pe.method==="next")pe.sent=pe._sent=pe.arg;else if(pe.method==="throw"){if(Lt==="suspendedStart")throw Lt="completed",pe.arg;pe.dispatchException(pe.arg)}else pe.method==="return"&&pe.abrupt("return",pe.arg);Lt="executing";var Rt=re(Ut,Zt,pe);if(Rt.type==="normal"){if(Lt=pe.done?"completed":"suspendedYield",Rt.arg===be)continue;return{value:Rt.arg,done:pe.done}}Rt.type==="throw"&&(Lt="completed",pe.method="throw",pe.arg=Rt.arg)}}}(he,Ne,rt),ct}function re(he,de,Ne){try{return{type:"normal",arg:he.call(de,Ne)}}catch(We){return{type:"throw",arg:We}}}le.wrap=z;var be={};function ue(){}function ye(){}function Me(){}var Wt={};se(Wt,He,function(){return this});var $t=Object.getPrototypeOf,Ke=$t&&$t($t(Gt([])));Ke&&Ke!==Te&&Se.call(Ke,He)&&(Wt=Ke);var qt=Me.prototype=ue.prototype=Object.create(Wt);function dt(he){["next","throw","return"].forEach(function(de){se(he,de,function(Ne){return this._invoke(de,Ne)})})}function Wn(he,de){function Ne(De,ct,rt,Ut){var Zt=re(he[De],he,ct);if(Zt.type!=="throw"){var pe=Zt.arg,Lt=pe.value;return Lt&&typeof Lt=="object"&&Se.call(Lt,"__await")?de.resolve(Lt.__await).then(function(Jt){Ne("next",Jt,rt,Ut)},function(Jt){Ne("throw",Jt,rt,Ut)}):de.resolve(Lt).then(function(Jt){pe.value=Jt,rt(pe)},function(Jt){return Ne("throw",Jt,rt,Ut)})}Ut(Zt.arg)}var We;this._invoke=function(De,ct){function rt(){return new de(function(Ut,Zt){Ne(De,ct,Ut,Zt)})}return We=We?We.then(rt,rt):rt()}}function dr(he,de){var Ne=he.iterator[de.method];if(Ne===void 0){if(de.delegate=null,de.method==="throw"){if(he.iterator.return&&(de.method="return",de.arg=void 0,dr(he,de),de.method==="throw"))return be;de.method="throw",de.arg=new TypeError("The iterator does not provide a 'throw' method")}return be}var We=re(Ne,he.iterator,de.arg);if(We.type==="throw")return de.method="throw",de.arg=We.arg,de.delegate=null,be;var De=We.arg;return De?De.done?(de[he.resultName]=De.value,de.next=he.nextLoc,de.method!=="return"&&(de.method="next",de.arg=void 0),de.delegate=null,be):De:(de.method="throw",de.arg=new TypeError("iterator result is not an object"),de.delegate=null,be)}function Ht(he){var de={tryLoc:he[0]};1 in he&&(de.catchLoc=he[1]),2 in he&&(de.finallyLoc=he[2],de.afterLoc=he[3]),this.tryEntries.push(de)}function En(he){var de=he.completion||{};de.type="normal",delete de.arg,he.completion=de}function Ze(he){this.tryEntries=[{tryLoc:"root"}],he.forEach(Ht,this),this.reset(!0)}function Gt(he){if(he){var de=he[He];if(de)return de.call(he);if(typeof he.next=="function")return he;if(!isNaN(he.length)){var Ne=-1,We=function De(){for(;++Ne<he.length;)if(Se.call(he,Ne))return De.value=he[Ne],De.done=!1,De;return De.value=void 0,De.done=!0,De};return We.next=We}}return{next:qn}}function qn(){return{value:void 0,done:!0}}return ye.prototype=Me,se(qt,"constructor",Me),se(Me,"constructor",ye),ye.displayName=se(Me,Y,"GeneratorFunction"),le.isGeneratorFunction=function(he){var de=typeof he=="function"&&he.constructor;return!!de&&(de===ye||(de.displayName||de.name)==="GeneratorFunction")},le.mark=function(he){return Object.setPrototypeOf?Object.setPrototypeOf(he,Me):(he.__proto__=Me,se(he,Y,"GeneratorFunction")),he.prototype=Object.create(qt),he},le.awrap=function(he){return{__await:he}},dt(Wn.prototype),se(Wn.prototype,oe,function(){return this}),le.AsyncIterator=Wn,le.async=function(he,de,Ne,We,De){De===void 0&&(De=Promise);var ct=new Wn(z(he,de,Ne,We),De);return le.isGeneratorFunction(de)?ct:ct.next().then(function(rt){return rt.done?rt.value:ct.next()})},dt(qt),se(qt,Y,"Generator"),se(qt,He,function(){return this}),se(qt,"toString",function(){return"[object Generator]"}),le.keys=function(he){var de=[];for(var Ne in he)de.push(Ne);return de.reverse(),function We(){for(;de.length;){var De=de.pop();if(De in he)return We.value=De,We.done=!1,We}return We.done=!0,We}},le.values=Gt,Ze.prototype={constructor:Ze,reset:function(he){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(En),!he)for(var de in this)de.charAt(0)==="t"&&Se.call(this,de)&&!isNaN(+de.slice(1))&&(this[de]=void 0)},stop:function(){this.done=!0;var he=this.tryEntries[0].completion;if(he.type==="throw")throw he.arg;return this.rval},dispatchException:function(he){if(this.done)throw he;var de=this;function Ne(Zt,pe){return ct.type="throw",ct.arg=he,de.next=Zt,pe&&(de.method="next",de.arg=void 0),!!pe}for(var We=this.tryEntries.length-1;We>=0;--We){var De=this.tryEntries[We],ct=De.completion;if(De.tryLoc==="root")return Ne("end");if(De.tryLoc<=this.prev){var rt=Se.call(De,"catchLoc"),Ut=Se.call(De,"finallyLoc");if(rt&&Ut){if(this.prev<De.catchLoc)return Ne(De.catchLoc,!0);if(this.prev<De.finallyLoc)return Ne(De.finallyLoc)}else if(rt){if(this.prev<De.catchLoc)return Ne(De.catchLoc,!0)}else{if(!Ut)throw new Error("try statement without catch or finally");if(this.prev<De.finallyLoc)return Ne(De.finallyLoc)}}}},abrupt:function(he,de){for(var Ne=this.tryEntries.length-1;Ne>=0;--Ne){var We=this.tryEntries[Ne];if(We.tryLoc<=this.prev&&Se.call(We,"finallyLoc")&&this.prev<We.finallyLoc){var De=We;break}}De&&(he==="break"||he==="continue")&&De.tryLoc<=de&&de<=De.finallyLoc&&(De=null);var ct=De?De.completion:{};return ct.type=he,ct.arg=de,De?(this.method="next",this.next=De.finallyLoc,be):this.complete(ct)},complete:function(he,de){if(he.type==="throw")throw he.arg;return he.type==="break"||he.type==="continue"?this.next=he.arg:he.type==="return"?(this.rval=this.arg=he.arg,this.method="return",this.next="end"):he.type==="normal"&&de&&(this.next=de),be},finish:function(he){for(var de=this.tryEntries.length-1;de>=0;--de){var Ne=this.tryEntries[de];if(Ne.finallyLoc===he)return this.complete(Ne.completion,Ne.afterLoc),En(Ne),be}},catch:function(he){for(var de=this.tryEntries.length-1;de>=0;--de){var Ne=this.tryEntries[de];if(Ne.tryLoc===he){var We=Ne.completion;if(We.type==="throw"){var De=We.arg;En(Ne)}return De}}throw new Error("illegal catch attempt")},delegateYield:function(he,de,Ne){return this.delegate={iterator:Gt(he),resultName:de,nextLoc:Ne},this.method==="next"&&(this.arg=void 0),be}},le}function $(le){return $=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(Te){return typeof Te}:function(Te){return Te&&typeof Symbol=="function"&&Te.constructor===Symbol&&Te!==Symbol.prototype?"symbol":typeof Te},$(le)}function H(le,Te,Se,je,He,oe,Y){try{var se=le[oe](Y),z=se.value}catch(re){return void Se(re)}se.done?Te(z):Promise.resolve(z).then(je,He)}function X(le){return function(){var Te=this,Se=arguments;return new Promise(function(je,He){var oe=le.apply(Te,Se);function Y(z){H(oe,je,He,Y,se,"next",z)}function se(z){H(oe,je,He,Y,se,"throw",z)}Y(void 0)})}}function Re(le,Te){if(!(le instanceof Te))throw new TypeError("Cannot call a class as a function")}function Ie(le,Te){for(var Se=0;Se<Te.length;Se++){var je=Te[Se];je.enumerable=je.enumerable||!1,je.configurable=!0,"value"in je&&(je.writable=!0),Object.defineProperty(le,je.key,je)}}function $e(le,Te,Se){return Te&&Ie(le.prototype,Te),Se&&Ie(le,Se),Object.defineProperty(le,"prototype",{writable:!1}),le}function Et(le,Te,Se){var je=function(re,be,ue){var ye=new RegExp("\\b".concat(be," \\w+ (\\w+)"),"ig");re.replace(ye,function(Me,Wt){return ue[Wt]=0,Me})},He=function(re,be,ue){var ye=re.createShader(ue);return re.shaderSource(ye,be),re.compileShader(ye),re.getShaderParameter(ye,re.COMPILE_STATUS)?ye:(console.log(re.getShaderInfoLog(ye)),null)};this.uniform={},this.attribute={};var oe=He(le,Te,le.VERTEX_SHADER),Y=He(le,Se,le.FRAGMENT_SHADER);for(var se in this.id=le.createProgram(),le.attachShader(this.id,oe),le.attachShader(this.id,Y),le.linkProgram(this.id),le.getProgramParameter(this.id,le.LINK_STATUS)||console.log(le.getProgramInfoLog(this.id)),le.useProgram(this.id),je(Te,"attribute",this.attribute),this.attribute)this.attribute[se]=le.getAttribLocation(this.id,se);for(var z in je(Te,"uniform",this.uniform),je(Se,"uniform",this.uniform),this.uniform)this.uniform[z]=le.getUniformLocation(this.id,z)}function Qe(le,Te,Se,je){for(var He=[],oe=0;oe<Te.length;++oe)He.push(Rc(le,Te[oe],le[lr[oe]]));return function(Y,se,z,re){var be=Y.createProgram();return se.forEach(function(ue){Y.attachShader(be,ue)}),z&&z.forEach(function(ue,ye){Y.bindAttribLocation(be,re?re[ye]:ye,ue)}),Y.linkProgram(be),Y.getProgramParameter(be,Y.LINK_STATUS)?be:(Y.deleteProgram(be),null)}(le,He,Se,je)}var lr=["VERTEX_SHADER","FRAGMENT_SHADER"];function Rc(le,Te,Se){var je=le.createShader(Se);return le.shaderSource(je,Te),le.compileShader(je),le.getShaderParameter(je,le.COMPILE_STATUS)?je:(le.deleteShader(je),null)}var Go=function(){function le(Te){Re(this,le),this.canvas=Te.canvas,this.video=Te.video,this.width=Te.width||640,this.height=Te.height||480,this.vertexBuffer=null,this.currentProgram=null,this.applied=!1,this.beautyParams={beauty:.5,brightness:.5,ruddy:.5},this.gl=this.createGL(Te.canvas),this.sourceTexture=this.gl.createTexture()}return $e(le,[{key:"setRect",value:function(Te,Se){this.width=Te,this.height=Se}},{key:"apply",value:function(Te){if(!this.vertexBuffer){var Se=new Float32Array([-1,-1,0,1,1,-1,1,1,-1,1,0,0,-1,1,0,0,1,-1,1,1,1,1,1,0]);this.vertexBuffer=this.gl.createBuffer(),this.gl.bindBuffer(this.gl.ARRAY_BUFFER,this.vertexBuffer),this.gl.bufferData(this.gl.ARRAY_BUFFER,Se,this.gl.STATIC_DRAW),this.gl.pixelStorei(this.gl.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!0)}this.gl.viewport(0,0,this.width,this.height),this.gl.bindTexture(this.gl.TEXTURE_2D,this.sourceTexture),this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_S,this.gl.CLAMP_TO_EDGE),this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_T,this.gl.CLAMP_TO_EDGE),this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_MIN_FILTER,this.gl.NEAREST),this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_MAG_FILTER,this.gl.NEAREST),this.applied?this.gl.texSubImage2D(this.gl.TEXTURE_2D,0,0,0,this.gl.RGB,this.gl.UNSIGNED_BYTE,Te):(this.gl.texImage2D(this.gl.TEXTURE_2D,0,this.gl.RGB,this.gl.RGB,this.gl.UNSIGNED_BYTE,Te),this.applied=!0);var je=this.beautyParams,He=je.beauty,oe=je.brightness,Y=je.ruddy,se=2/this.width,z=2/this.height,re=this.compileBeautyShader();this.gl.uniform2f(re.uniform.singleStepOffset,se,z);var be=new Float32Array([1-.8*He,1-.6*He,.1+.45*Y,.1+.45*Y]);this.gl.uniform4fv(re.uniform.params,be),this.gl.uniform1f(re.uniform.brightness,.12*oe),this.gl.bindTexture(this.gl.TEXTURE_2D,this.sourceTexture),this.gl.bindFramebuffer(this.gl.FRAMEBUFFER,null),this.gl.uniform1f(this.currentProgram.uniform.flipY,1),this.gl.drawArrays(this.gl.TRIANGLES,0,6)}},{key:"compileBeautyShader",value:function(){if(this.currentProgram)return this.currentProgram;this.currentProgram=new Et(this.gl,["precision highp float;","attribute vec2 pos;","attribute vec2 uv;","varying vec2 vUv;","uniform float flipY;","void main(void) {","vUv = uv;","gl_Position = vec4(pos.x, pos.y*flipY, 0.0, 1.);","}"].join(`
|
|
68
|
+
`)}},{key:"removeBandwidthRestriction",value:function(_){return _.replace(/b=AS:.*\r\n/,"").replace(/b=TIAS:.*\r\n/,"")}},{key:"removeVideoOrientation",value:function(_){return _.replace(/urn:3gpp:video-orientation/,"")}},{key:"connect",value:(o=H(p().mark(function _(){return p().wrap(function(b){for(;;)switch(b.prev=b.next){case 0:return b.prev=0,b.next=3,this.exchangeSDP();case 3:return b.next=5,this.waitForPeerConnectionConnected();case 5:b.next=11;break;case 7:throw b.prev=7,b.t0=b.catch(0),this.closePeerConnection(!0),b.t0;case 11:case"end":return b.stop()}},_,this,[[0,7]])})),function(){return o.apply(this,arguments)})},{key:"exchangeSDP",value:(r=H(p().mark(function _(){return p().wrap(function(b){for(;;)switch(b.prev=b.next){case 0:return b.prev=0,this.isSDPExchanging_=!0,b.next=4,this.createOffer();case 4:return this.log_.info("createOffer success, sending offer to remote server"),b.next=7,this.doExchangeSDP();case 7:this.isSDPExchanging_=!1,b.next=14;break;case 10:throw b.prev=10,b.t0=b.catch(0),this.isSDPExchanging_=!1,b.t0;case 14:case"end":return b.stop()}},_,this,[[0,10]])})),function(){return r.apply(this,arguments)})},{key:"createOffer",value:(i=H(p().mark(function _(){var b;return p().wrap(function(R){for(;;)switch(R.prev=R.next){case 0:return R.prev=0,R.next=3,this.peerConnection_.createOffer(Wx);case 3:return b=R.sent,R.next=6,this.peerConnection_.setLocalDescription(b);case 6:this.updateSSRC(b.sdp),ke.logSuccessEvent({userId:this.client_.getUserId(),eventType:qu,kind:"offer"}),R.next=14;break;case 10:throw R.prev=10,R.t0=R.catch(0),ke.logFailedEvent({userId:this.client_.getUserId(),eventType:qu,kind:"offer",error:R.t0}),R.t0;case 14:case"end":return R.stop()}},_,this,[[0,10]])})),function(){return i.apply(this,arguments)})},{key:"doExchangeSDP",value:function(){var _=this;return new Promise(function(b,R){_.exchangeSDPTimeout_=setTimeout(function(){_.signalChannel_.off(st.PUBLISH_RESULT,P),_.clearExchangeSDPTimeout();var k=new te({code:Z.API_CALL_TIMEOUT,message:ae({key:EN})});R(k)},1e4);var P=function(){var k=H(p().mark(function h(y){var A,D,j;return p().wrap(function(K){for(;;)switch(K.prev=K.next){case 0:if(K.prev=0,_.clearExchangeSDPTimeout(),A=y.data,D=A.code,j=A.message,D!==0){K.next=9;break}return K.next=6,_.acceptAnswer(y.data.data);case 6:b(),K.next=10;break;case 9:_.checkPublishResultCode(D,j);case 10:K.next=15;break;case 12:K.prev=12,K.t0=K.catch(0),R(K.t0);case 15:case"end":return K.stop()}},h,null,[[0,12]])}));return function(h){return k.apply(this,arguments)}}(),U={type:_.peerConnection_.localDescription.type,sdp:_.removeVideoOrientation(_.peerConnection_.localDescription.sdp),screen:(_.publishingStream_||_.localStream_).hasScreenTrack(),state:_.publishState,constraintConfig:_.mediaSettings_};_.signalChannel_.once(st.PUBLISH_RESULT,P),_.log_.debug("sending sdp offer: "+U.sdp),_.signalChannel_.send(RU,U)})}},{key:"setSDPDirection",value:function(_,b){var R=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"all",P=Fr(_);return P.media.forEach(function(U){R!=="all"&&U.type!==R||(U.direction=b)}),yo(P)}},{key:"acceptAnswer",value:(n=H(p().mark(function _(b){var R,P,U,k,h,y,A;return p().wrap(function(D){for(;;)switch(D.prev=D.next){case 0:if(D.prev=0,R=this.removeVideoOrientation(b.sdp),!(P=this.publishingStream_||this.localStream_)){D.next=15;break}if(U=P.getVideoBitrate(),k=P.getAudioBitrate(),!U){D.next=11;break}return h=this.isPublishingAuxStream_?gt:Bu,D.next=10,this.setBandwidth({sdp:R,videoType:h,type:xe,bandwidth:U,scaleResolutionDownBy:P.scaleResolutionDownBy});case 10:R=D.sent;case 11:if(!k){D.next=15;break}return D.next=14,this.setBandwidth({bandwidth:k,type:Ee,sdp:R});case 14:R=D.sent;case 15:if(!this.client_.getIsEnableSmallStream()){D.next=20;break}return y=this.client_.smallStreamConfig,D.next=19,this.setBandwidth({bandwidth:y.bitrate,type:xe,videoType:Mr,sdp:R});case 19:R=D.sent;case 20:return A={type:b.type,sdp:R},D.next=23,this.peerConnection_.setRemoteDescription(A);case 23:this.log_.debug("accepted answer: "+R),ke.logSuccessEvent({userId:this.client_.getUserId(),eventType:Ob,kind:"answer"}),D.next=32;break;case 27:throw D.prev=27,D.t0=D.catch(0),ke.logFailedEvent({userId:this.client_.getUserId(),eventType:Ob,kind:"answer",error:D.t0}),this.log_.error("failed to accept remote answer "+D.t0),D.t0;case 32:case"end":return D.stop()}},_,this,[[0,27]])})),function(_){return n.apply(this,arguments)})},{key:"sendMutedFlag",value:function(_,b){if(b!==this.localAuxStream_){var R={audio:_.audio,bigVideo:_.video,auxVideo:_.auxVideo};this.log_.info("send muted state: ".concat(JSON.stringify(R))),this.signalChannel_.send(EU,R)}}},{key:"getIsReconnecting",value:function(){return this.isReconnecting_}},{key:"reconnect",value:(t=H(p().mark(function _(){var b,R,P=this;return p().wrap(function(U){for(;;)switch(U.prev=U.next){case 0:if(this.reconnectionTimer_===-1){U.next=3;break}return this.log_.warn("reconnect() uplink is reconnecting, ignore current reconnection"),U.abrupt("return");case 3:if(!(this.reconnectionCount_>=30)){U.next=12;break}return this.log_.warn("SDK has tried reconnect uplink for ".concat(30," times, but all failed, please check your network")),this.stopReconnection(),b=new te({code:Z.UPLINK_RECONNECTION_FAILED,message:ae({key:PN})}),ke.logFailedEvent({userId:this.client_.getUserId(),eventType:Ab,error:b}),this.addEventInternal(mV,"uplink-connection reconnect fail"),this.emitConnectionStateChangedEvent(on),this.emitter_.emit(et.ERROR,b),U.abrupt("return");case 12:if(this.signalChannel_.getCurrentState()===oc){U.next=16;break}return this.log_.warn("reconnect() signal channel is not connected, suspend reconnection until signal is connected"),this.signalChannel_.once(ac,this.reconnect,this),U.abrupt("return");case 16:if(this.reconnectionCount_++,U.prev=17,this.log_.warn("reconnect() try to reconnect uplink [".concat(this.reconnectionCount_,"/").concat(30,"]")),R=xp(this.reconnectionCount_),this.reconnectionTimer_=setTimeout(function(){P.log_.warn("reconnect() uplink reconnect timeout(".concat(R/1e3,"s), try again")),P.clearReconnectionTimer(),P.reconnect()},R),!(this.isSDPExchanging_||this.peerConnection_&&this.peerConnection_.connectionState===Ju)){U.next=23;break}return U.abrupt("return");case 23:return U.next=25,this.signalChannel_.sendWaitForResponse({command:gk,responseCommand:st.UNPUBLISH_RESULT,enableLog:!1});case 25:if(this.reset(),this.initialize(),!this.localStream_){U.next=30;break}return U.next=30,this.publish(this.localStream_);case 30:if(!this.localAuxStream_){U.next=33;break}return U.next=33,this.publish(this.localAuxStream_,!0);case 33:ke.logSuccessEvent({userId:this.client_.getUserId(),eventType:Ab}),this.log_.warn("reconnect() uplink reconnect successfully"),this.addEventInternal(pV,"uplink-connection reconnect success"),this.stopReconnection(),this.localStream_.syncMuteState(),U.next=42;break;case 40:U.prev=40,U.t0=U.catch(17);case 42:case"end":return U.stop()}},_,this,[[17,40]])})),function(){return t.apply(this,arguments)})},{key:"clearExchangeSDPTimeout",value:function(){this.exchangeSDPTimeout_!==-1&&(clearTimeout(this.exchangeSDPTimeout_),this.exchangeSDPTimeout_=-1)}},{key:"clearReconnectionTimer",value:function(){this.reconnectionTimer_!==-1&&(clearTimeout(this.reconnectionTimer_),this.reconnectionTimer_=-1)}},{key:"handleError",value:function(_){_.getCode()===Z.ICE_TRANSPORT_ERROR&&(this.isFirstConnection_&&(this.isFirstConnection_=!1,ke.logFailedEvent({userId:this.client_.getUserId(),eventType:Rb,error:_})),this.isReconnecting_||this.startReconnection())}},{key:"handleConnectionStateChange",value:function(_){_.state===sn&&this.isFirstConnection_&&(this.isFirstConnection_=!1,ke.logSuccessEvent({userId:this.client_.getUserId(),eventType:Rb}),this.addEventInternal(cV,"uplink-connection is connected"))}},{key:"updateSSRC",value:function(_){var b=this;try{Fr(_).media.forEach(function(R,P){if(R.type===Ee){var U=R.ssrcs[0];U&&(b.ssrc_.audio=U.id)}else{if(b.sdpSemantics_===Wf)return void R.ssrcGroups.forEach(function(h,y){var A=Number(h.ssrcs.split(" ")[0]);y===0?b.ssrc_.video=A:y===1&&(b.ssrc_.small=A)});var k=R.ssrcs[0];if(!k)return;switch(P){case 1:b.ssrc_.video=k.id;break;case 2:b.ssrc_.small=k.id;break;case 3:b.ssrc_.auxiliary=k.id}}})}catch(R){}}},{key:"getVideoTrackId",value:function(){var _=arguments.length>0&&arguments[0]!==void 0?arguments[0]:xe;if(this.peerConnection_){var b=this.peerConnection_.getSenders();if(_===xe&&b[1]&&b[1].track)return b[1].track.id;if(_===Mr&&b[2]&&b[2].track)return b[2].track.id;if(_===gt&&b[3]&&b[3].track)return b[3].track.id}if(this.localStream_&&_===xe){var R=this.localStream_.getVideoTrack();if(R)return R.id}if(this.localAuxStream_&&_===gt){var P=this.localAuxStream_.getVideoTrack();if(P)return P.id}return""}},{key:"getSSRC",value:function(){return this.ssrc_}},{key:"checkPublishResultCode",value:function(_,b){if(_!==0)throw _===1028?(this.log_.error(vi.NOT_SUPPORTED_H264ENCODE),new te({code:Z.NOT_SUPPORTED_H264,message:ae({key:gS})})):new te({code:Z.UNKNOWN,message:ae({key:yS,data:{signalResponse:st.PUBLISH_RESULT,code:_,message:b}})})}},{key:"getLocalStream",value:function(){return this.localStream_}},{key:"sendSEI",value:function(_,b){this.sei_.push(_,b)}},{key:"mixAudioTrack",value:function(_,b){this.log_.info("mix audio track"),this.mixedAudioTrack_=function(R){var P=FS(),U=P.createMediaStreamDestination(),k=[];R.forEach(function(y){var A=new MediaStream;A.addTrack(y);var D=P.createMediaStreamSource(A);D.connect(U),k.push(D)});var h=U.stream.getAudioTracks()[0];return $l.set(h,{destination:U,track:h,mediaStreamSourceList:k}),h}([_,b])}},{key:"destroyMixedAudioTrack",value:function(){this.mixedAudioTrack_&&(this.log_.info("destroy audio track"),function(_){if($l.has(_)){var b=$l.get(_),R=b.destination,P=b.track,U=b.mediaStreamSourceList;P.stop(),R.disconnect(),U.forEach(function(k){k.disconnect()}),$l.delete(_)}}(this.mixedAudioTrack_),this.mixedAudioTrack_=null)}}]),V}(Bv),X(Tc.prototype,"publish",[Gx],Object.getOwnPropertyDescriptor(Tc.prototype,"publish"),Tc.prototype),Tc),LF=pe,Jx=As,Zl=ws.exports.getWeakData,MF=oi,NF=Tt,UF=Rt,Kv=at,VF=Rs,qx=kt,jF=Xe.set,BF=Xe.getterFor,FF=rn.find,HF=rn.findIndex,GF=LF([].splice),zF=0,ed=function(e){return e.frozen||(e.frozen=new Kx)},Kx=function(){this.entries=[]},Xv=function(e,t){return FF(e.entries,function(n){return n[0]===t})};Kx.prototype={get:function(e){var t=Xv(this,e);if(t)return t[1]},has:function(e){return!!Xv(this,e)},set:function(e,t){var n=Xv(this,e);n?n[1]=t:this.entries.push([e,t])},delete:function(e){var t=HF(this.entries,function(n){return n[0]===e});return~t&&GF(this.entries,t,1),!!~t}};var xc,WF={getConstructor:function(e,t,n,i){var r=e(function(s,l){MF(s,o),jF(s,{type:t,id:zF++,frozen:void 0}),UF(l)||VF(l,s[i],{that:s,AS_ENTRIES:n})}),o=r.prototype,c=BF(t),a=function(s,l,u){var f=c(s),S=Zl(NF(l),!0);return S===!0?ed(f).set(l,u):S[f.id]=u,s};return Jx(o,{delete:function(s){var l=c(this);if(!Kv(s))return!1;var u=Zl(s);return u===!0?ed(l).delete(s):u&&qx(u,l.id)&&delete u[l.id]},has:function(s){var l=c(this);if(!Kv(s))return!1;var u=Zl(s);return u===!0?ed(l).has(s):u&&qx(u,l.id)}}),Jx(o,n?{get:function(s){var l=c(this);if(Kv(s)){var u=Zl(s);return u===!0?ed(l).get(s):u?u[l.id]:void 0}},set:function(s,l){return a(this,s,l)}}:{add:function(s){return a(this,s,!0)}}),r}},Xx=re,td=pe,JF=As,qF=ws.exports,KF=fh,Qx=WF,nd=at,rd=Qg,id=Xe.enforce,XF=O,QF=!Xx.ActiveXObject&&"ActiveXObject"in Xx,Yx=function(e){return function(){return e(this,arguments.length?arguments[0]:void 0)}},YF=KF("WeakMap",Yx,Qx);if(XF&&QF){xc=Qx.getConstructor(Yx,"WeakMap",!0),qF.enable();var Ic=YF.prototype,$x=td(Ic.delete),ad=td(Ic.has),Zx=td(Ic.get),eI=td(Ic.set);JF(Ic,{delete:function(e){if(nd(e)&&!rd(e)){var t=id(this);return t.frozen||(t.frozen=new xc),$x(this,e)||t.frozen.delete(e)}return $x(this,e)},has:function(e){if(nd(e)&&!rd(e)){var t=id(this);return t.frozen||(t.frozen=new xc),ad(this,e)||t.frozen.has(e)}return ad(this,e)},get:function(e){if(nd(e)&&!rd(e)){var t=id(this);return t.frozen||(t.frozen=new xc),ad(this,e)?Zx(this,e):t.frozen.get(e)}return Zx(this,e)},set:function(e,t){if(nd(e)&&!rd(e)){var n=id(this);n.frozen||(n.frozen=new xc),ad(this,e)?eI(this,e,t):n.frozen.set(e,t)}else eI(this,e,t);return this}})}var $F=Le,od=Ws,ZF=ue,tI=An,nI=it,e7=Ou,rI=lb,t7=Qt,Qv=od&&od.prototype;if($F({target:"Promise",proto:!0,real:!0,forced:!!od&&ZF(function(){Qv.finally.call({then:function(){}},function(){})})},{finally:function(e){var t=e7(this,tI("Promise")),n=nI(e);return this.then(n?function(i){return rI(t,e()).then(function(){return i})}:e,n?function(i){return rI(t,e()).then(function(){throw i})}:e)}}),nI(od)){var iI=tI("Promise").prototype.finally;Qv.finally!==iI&&t7(Qv,"finally",iI,{unsafe:!0})}var aI,oI,sI,cI,ur,Mo=new WeakMap;function uI(){return function(e,t,n){var i=n.value,r=function o(c){var a=c.fn,s=c.args,l=c.context,u=c.resolve,f=c.reject;a.apply(l,s).then(u,f).finally(function(){var S=Mo.get(l);S&&(S.shift(),S[0]&&o(q({},S[0])))})};return n.value=function(){for(var o=this,c=arguments.length,a=new Array(c),s=0;s<c;s++)a[s]=arguments[s];return new Promise(function(l,u){if(Mo.has(o)){var f=Mo.get(o),S=f.length;f.push({fn:i,args:a,context:o,resolve:l,reject:u,name:t}),S===0&&r({fn:i,args:a,context:o,resolve:l,reject:u})}else Mo.set(o,[{fn:i,args:a,context:o,resolve:l,reject:u,name:t}]),r({fn:i,args:a,context:o,resolve:l,reject:u})})},n}}var n7=(aI=uI(),oI=Lo({retries:1,timeout:0,onRetrying:function(e){this.log_.warn("connection timeout, retrying [".concat(e,"]"))},onError:function(e,t,n){e.message.includes("timeout")?t():n(e)}}),sI=uI(),cI=function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:1e4;return function(t,n,i){var r=i.value;return i.value=function(){for(var o=this,c=arguments.length,a=new Array(c),s=0;s<c;s++)a[s]=arguments[s];return new Promise(function(l,u){var f=setTimeout(function(){return u(new Error("".concat(n," timeout")))},e);r.apply(o,a).then(l,u).finally(function(){clearTimeout(f)})})},i}}(),ur=function(e){Et(l,e);var t,n,i,r,o,c,a,s=Rr(l);function l(u){var f;return Q(this,l),(f=s.call(this,u)).remoteStreams_=new Map,f.autoSubscribe=u.autoSubscribe,f.trackState_={audio:u.trackState.audio,video:u.trackState.video,auxiliary:u.trackState.auxiliary,smallVideo:u.trackState.smallVideo},f.ssrc_={audio:0,video:0,auxiliary:0},f.subscribeState_={audio:u.autoSubscribe,video:u.autoSubscribe,auxiliary:u.autoSubscribe,smallVideo:!1},f.isSDPExchanging_=!1,f.installEvents(),f}return Ie(l,[{key:"getMixUserList",value:function(){return this.mixUserList_?this.mixUserList_.map(function(u){var f=u.userId,S=u.flag;return{userId:f,hasAudio:!!(8&S),hasVideo:!!(1&S),hasAuxiliary:!!(4&S)}}):void 0}},{key:"setMixUserList",value:function(u){(!this.mixUserList_||ho(this.mixUserList_)&&!function(f,S){if(S.length===f.length){var x,E=oe(S);try{var I=function(){var T=x.value,v=f.find(function(w){return w.userId===T.userId});if(!v||v.flag!==T.flag)return{v:!1}};for(E.s();!(x=E.n()).done;){var m=I();if(G(m)==="object")return m.v}}catch(T){E.e(T)}finally{E.f()}return!0}return!1}(this.mixUserList_,u))&&(this.mixUserList_=u,this.emitter_.emit(et.STREAM_UPDATED,{stream:this.getMainStream()}))}},{key:"isMainStreamSubscribed",get:function(){return(this.subscribeState_.audio||this.subscribeState_.video||this.subscribeState_.smallVideo)&&(this.trackState_.audio||this.trackState_.video||this.trackState_.smallVideo)}},{key:"isAuxStreamSubscribed",get:function(){return this.subscribeState_.auxiliary&&this.trackState_.auxiliary}},{key:"isSmallStreamSubscribed",get:function(){return this.subscribeState_.smallVideo&&this.trackState_.smallVideo}},{key:"isBigStreamSubscribed",get:function(){return this.subscribeState_.video&&this.trackState_.video}},{key:"isStreamUnpublished",value:function(u){return u.getType()===Qe?!this.trackState_.audio&&!this.trackState_.video:!this.trackState_.auxiliary}},{key:"initialize",value:function(){le(Ye(l.prototype),"initialize",this).call(this),this.peerConnection_.ontrack=this.onTrack.bind(this)}},{key:"close",value:function(){var u,f,S,x=this;le(Ye(l.prototype),"close",this).call(this),this.trackState_.audio=!1,this.trackState_.video=!1,this.trackState_.smallVideo=!1,this.trackState_.auxiliary=!1,this.emitConnectionStateChangedEvent(on),u=this,f=function(E){E.fn;var I=E.args,m=E.resolve,T=E.reject,v=E.name;if(v==="subscribe"){if(!x.client_.getIsJoined())return T(new te({code:Z.API_CALL_ABORTED,message:ae({key:ip,data:{message:"leave room",stream:I[0]}})}));if(x.isStreamUnpublished(I[0]))return T(new te({code:Z.API_CALL_ABORTED,message:ae({key:ip,data:{message:"remote user ".concat(x.userId_," unpublished stream"),stream:I[0]}})}))}else if(v==="unsubscribe")return m();m()},(S=Mo.get(u))===null||S===void 0||S.forEach(f),Mo.delete(u),this.remoteStreams_.forEach(function(E){var I=E;I.setConnection(null),I.uninstallEvents(),I.getIsStreamAddedEventEmitted()&&x.emitter_.emit(et.STREAM_REMOVED,{stream:I})}),this.remoteStreams_.clear(),this.uninstallEvents()}},{key:"installEvents",value:function(){var u=this;Y.on(jn,this.onRemoteStreamUpdate,this),this.emitter_.on(et.ERROR,function(f){f.getCode()===Z.ICE_TRANSPORT_ERROR&&(u.isFirstConnection_&&(u.isFirstConnection_=!1,ke.logFailedEvent({userId:u.client_.getUserId(),eventType:Pb,error:f})),u.isReconnecting_||u.startReconnection())}),this.emitter_.on(et.CONNECTION_STATE_CHANGED,function(f){f.state===sn&&u.isFirstConnection_&&(u.isFirstConnection_=!1,ke.logSuccessEvent({userId:u.client_.getUserId(),eventType:Pb}),u.addEventInternal(uV,"downlink-connection is connected"))})}},{key:"uninstallEvents",value:function(){Y.removeListener(jn,this.onRemoteStreamUpdate,this)}},{key:"onRemoteStreamUpdate",value:function(u){if(this.hitTest(u.tinyId)&&u.client===this.client_){this.updateTrackState(u.action,u.kind);var f=u.kind===gt?Xs:xr,S=this.remoteStreams_.get(f);if(!S)return;u.action===cn.ADD?this.handleRemoteAddTrack(u.kind,S):this.handleRemoteRemoveTrack(u.kind,S)}}},{key:"handleRemoteAddTrack",value:function(u,f){this.log_.info("remote add ".concat(u," track")),u===Ee?f.updateAudioPlayingState(this.subscribeState_.audio):f.updateVideoPlayingState(u===gt?this.subscribeState_.auxiliary:this.subscribeState_.video||this.subscribeState_.smallVideo),f.getIsStreamAddedEventEmitted()?this.emitter_.emit(et.STREAM_UPDATED,{stream:f}):(this.emitter_.emit(et.STREAM_ADDED,{stream:f}),this.currentState_===sn&&f.emitConnectionStateChanged({prevState:on,state:sn}))}},{key:"handleRemoteRemoveTrack",value:function(u,f){f.getIsStreamAddedEventEmitted()&&(this.log_.info("remote remove ".concat(u," track")),u===gt||!this.trackState_.audio&&!this.trackState_.video?(this.log_.info("remote stream ".concat(f.getType()," removed")),this.currentState_===sn&&f.emitConnectionStateChanged({prevState:sn,state:on}),this.emitter_.emit(et.STREAM_REMOVED,{stream:f})):(u===Ee?f.updateAudioPlayingState(!1):(u!==Fu||this.isSmallStreamSubscribed)&&f.updateVideoPlayingState(!1),this.emitter_.emit(et.STREAM_UPDATED,{stream:f})))}},{key:"updateTrackState",value:function(u,f){var S=u===cn.ADD;switch(f){case Ee:this.trackState_.audio=S;break;case xe:this.trackState_.video=S;break;case gt:this.trackState_.auxiliary=S;break;case Fu:this.trackState_.smallVideo=S}this.log_.info("trackState updated: ".concat(JSON.stringify(this.trackState_)))}},{key:"onTrack",value:function(u){var f=u.streams[0],S=u.track;if(this.log_.info("ontrack() kind: ".concat(S.kind," id: ").concat(S.id," streamId: ").concat(f.id)),this.sdpSemantics_===Ys){var x=function(v){var w=rr.parse(v),L={audio:[],video:[]};return w.media.forEach(function(N){if(N.ssrcs){var V=N.ssrcs[0].id>>16&255;if(N.type===Ee)L.audio.push(xr);else if(N.type==xe){var _=V===QM?xr:Xs;L.video.push(_)}}}),L}(this.peerConnection_.remoteDescription.sdp);if(S.kind===Ee){if(x.audio.length===0||f.id!==xr)return void this.log_.debug("skip this invalid audio track")}else if(x.video.indexOf(f.id)===-1)return void this.log_.debug("skip this invalid video track: ".concat(S.id," msid: ").concat(f.id))}ke.logEvent({eventType:"ontrack",kind:S.kind});var E=!1,I=this.remoteStreams_.get(f.id),m=f.id===xr?yt:Dt;if(ge(I)&&((I=new Gv({type:m,userId:this.userId_,client:this.client_})).setConnection(this),this.remoteStreams_.set(f.id,I),E=!0),I.setMediaStream(f),S.kind===Ee?I.updateAudioPlayingState(this.subscribeState_.audio):m===yt?I.updateVideoPlayingState(this.subscribeState_.video||this.subscribeState_.smallVideo):I.updateVideoPlayingState(this.subscribeState_.auxiliary),(m!==Dt||this.trackState_.auxiliary)&&(m!==yt||this.trackState_.audio||this.trackState_.video)){var T=this.client_.getSubscriptionManager();T&&T.hasAutoRecoveryFlag(this.userId_,m)||(E?this.emitter_.emit(et.STREAM_ADDED,{stream:I}):this.emitter_.emit(et.STREAM_UPDATED,{stream:I}))}}},{key:"addRRTRLine",value:function(u){var f=u.split(`\r
|
|
69
|
+
`),S=new Map;f.forEach(function(v,w){/^a=rtcp-fb:/.test(v)&&f[w+1]&&!/^a=rtcp-fb:/.test(f[w+1])&&v.match(/^a=rtcp-fb:\d+/)&&S.set(w+1,v.match(/^a=rtcp-fb:\d+/)[0]+" rrtr")});for(var x=Se(S),E=0;E<x.length;E++){var I=Te(x[E],2),m=I[0],T=I[1];f.splice(m+E,0,T)}return f.join(`\r
|
|
70
|
+
`)}},{key:"addSPSDescription",value:function(u){var f=Fr(u);return f.media.forEach(function(S){S.type===xe&&S.fmtp.forEach(function(x){x.config+=";sps-pps-idr-in-keyframe=1"})}),yo(f)}},{key:"removeSDESDescription",value:function(u){var f=["urn:ietf:params:rtp-hdrext:sdes:mid","urn:ietf:params:rtp-hdrext:sdes:rtp-stream-id","urn:ietf:params:rtp-hdrext:sdes:repaired-rtp-stream-id"],S=Fr(u);return S.media.forEach(function(x){x.ext=x.ext.filter(function(E){return!f.includes(E.uri)})}),yo(S)}},{key:"isSubscriptionStateNotChanged",value:function(u,f){return u.getType()===yt?(f==null?void 0:f.audio)===this.subscribeState_.audio&&(f==null?void 0:f.video)===this.subscribeState_.video&&this.isSubscribeSmall(f):u.getType()===Dt?!ge(f.video)&&this.subscribeState_.auxiliary===f.video:void 0}},{key:"isSubscribeSmall",value:function(u){return ge(u.smallVideo)&&!this.subscribeState_.smallVideo}},{key:"subscribe",value:(a=H(p().mark(function u(f,S){var x,E,I,m,T,v;return p().wrap(function(w){for(;;)switch(w.prev=w.next){case 0:if(w.prev=0,I=S.emitEvent,m=I===void 0||I,T=f.getType(),((x=this.peerConnection_)===null||x===void 0?void 0:x.connectionState)!==YM&&((E=this.peerConnection_)===null||E===void 0?void 0:E.connectionState)!==Ju){w.next=6;break}return w.next=6,this.waitForPeerConnectionConnected();case 6:if(!this.isSubscriptionStateNotChanged(f,S)){w.next=13;break}if(this.peerConnection_){w.next=11;break}return this.initialize(),w.next=11,this.connect();case 11:return m&&ge(S.smallVideo)&&this.emitter_.emit(et.STREAM_SUBSCRIBED,{stream:f,result:!0}),w.abrupt("return",f);case 13:if(T===Qe?(ge(S.audio)||(this.subscribeState_.audio=S.audio),ge(S.video)||(this.subscribeState_.video=S.video),this.subscribeState_.smallVideo=(S==null?void 0:S.smallVideo)||!1,this.addEventInternal(this.subscribeState_.audio?kk:om,this.subscribeState_.audio?"subscribe audio":"unsubscribe audio"),this.addEventInternal(this.subscribeState_.video?kk:om,this.subscribeState_.video?"subscribe video":"unsubscribe video"),this.addEventInternal(this.subscribeState_.smallVideo?yV:bV,this.subscribeState_.smallVideo?"subscribe smallVideo":"unsubscribe smallVideo")):ge(S.video)||(this.subscribeState_.auxiliary=S.video),this.log_.info("subscribe ".concat(T," stream with options ").concat(JSON.stringify(S)," current state: ").concat(JSON.stringify(this.subscribeState_))),!this.peerConnection_&&!this.isSDPExchanging_){w.next=23;break}return v=zf,this.isMainStreamSubscribed||this.isAuxStreamSubscribed||(v=Gf),w.next=20,this.sendSubscription(v);case 20:T===Qe?(f.updateAudioPlayingState(this.subscribeState_.audio),f.updateVideoPlayingState(this.subscribeState_.video||this.subscribeState_.smallVideo)):f.updateVideoPlayingState(this.subscribeState_.auxiliary),w.next=26;break;case 23:return this.initialize(),w.next=26,this.connect();case 26:return m&&this.emitter_.emit(et.STREAM_SUBSCRIBED,{stream:f,result:!0}),w.abrupt("return",f);case 30:if(w.prev=30,w.t0=w.catch(0),!this.client_.getIsJoined()||!this.isStreamUnpublished(f)){w.next=35;break}throw this.log_.warn("".concat(w.t0.message," ").concat(JSON.stringify(this.trackState_))),new te({code:Z.REMOTE_STREAM_NOT_EXIST,message:"remote user ".concat(this.userId_," unpublished stream")});case 35:throw w.t0;case 36:case"end":return w.stop()}},u,this,[[0,30]])})),function(u,f){return a.apply(this,arguments)})},{key:"checkTrackEnded",value:function(){try{var u=this.peerConnection_.getReceivers().map(function(f){return f.track}).find(function(f){return f.readyState==="ended"});u&&this.currentState_===sn&&!this.isReconnecting_&&(this.log_.warn("".concat(u.kind," track ended, start reconnect")),this.startReconnection())}catch(f){}}},{key:"unsubscribe",value:(c=H(p().mark(function u(f){var S,x,E;return p().wrap(function(I){for(;;)switch(I.prev=I.next){case 0:if((S=f.getType())!==Qe){I.next=10;break}if(this.isMainStreamSubscribed){I.next=5;break}return this.log_.info("main stream already unsubscribed"),I.abrupt("return",f);case 5:this.subscribeState_.audio=!1,this.subscribeState_.video=!1,this.subscribeState_.smallVideo=!1,I.next=14;break;case 10:if(this.isAuxStreamSubscribed){I.next=13;break}return this.log_.info("auxiliary stream already unsubscribed"),I.abrupt("return",f);case 13:this.subscribeState_.auxiliary=!1;case 14:return x=Gf,(S===yt&&this.isAuxStreamSubscribed||S===Dt&&this.isMainStreamSubscribed)&&(x=zf),this.log_.info("unsubscribe ".concat(S," stream with ").concat(JSON.stringify(this.subscribeState_))),I.next=19,this.sendSubscription(x);case 19:return f.updateVideoPlayingState(!1),f.updateAudioPlayingState(!1),x===Gf&&((E=f.getMediaStream())&&E.getTracks().forEach(function(m){return E.removeTrack(m)}),this.closePeerConnection(),this.emitConnectionStateChangedEvent(on)),this.addEventInternal(om,"unsubscribe audio"),this.addEventInternal(XU,"unsubscribe video"),I.abrupt("return",f);case 25:case"end":return I.stop()}},u,this)})),function(u){return c.apply(this,arguments)})},{key:"sendSubscription",value:function(u){var f=this,S={srcTinyId:this.tinyId_,srcUserId:this.userId_},x=PU,E=st.UNSUBSCRIBE_RESULT;return u===zf&&(S={audio:this.subscribeState_.audio,bigVideo:this.subscribeState_.video,auxVideo:this.subscribeState_.auxiliary,smallVideo:this.subscribeState_.smallVideo,srcTinyId:this.tinyId_},x=DU,E=st.SUBSCRIBE_CHANGE_RESULT),this.signalChannel_.sendWaitForResponse({command:x,data:S,responseCommand:E,timeout:1e4}).then(function(I){var m=I.data;if(m.code!==0){var T=new te({code:m.code,message:ae({key:CN,data:{type:u,message:m.message}})});throw f.log_.error(T),T}})}},{key:"connect",value:(o=H(p().mark(function u(){return p().wrap(function(f){for(;;)switch(f.prev=f.next){case 0:return f.prev=0,f.next=3,this.exchangeSDP();case 3:return f.next=5,this.waitForPeerConnectionConnected();case 5:f.next=11;break;case 7:throw f.prev=7,f.t0=f.catch(0),this.closePeerConnection(!0),f.t0;case 11:case"end":return f.stop()}},u,this,[[0,7]])})),function(){return o.apply(this,arguments)})},{key:"exchangeSDP",value:(r=H(p().mark(function u(){var f,S,x,E,I,m;return p().wrap(function(T){for(;;)switch(T.prev=T.next){case 0:return T.prev=0,this.isSDPExchanging_=!0,T.next=4,this.createOffer();case 4:return this.log_.info("createOffer success, sending offer to remote server"),f=this.peerConnection_.localDescription,S=f.type,x=f.sdp,E={type:S,sdp:x,srcUserId:this.userId_,srcTinyId:this.tinyId_,audio:this.subscribeState_.audio,bigVideo:this.subscribeState_.video,auxVideo:this.subscribeState_.auxiliary,smallVideo:this.subscribeState_.smallVideo},Y.emit(Qp,{client:this.client_,connection:this,userId:this.userId_,tinyId:this.tinyId_,role:so,subscribeState:this.subscribeState_,trackState:this.trackState_}),T.next=10,this.signalChannel_.sendWaitForResponse({command:AU,commandDesc:"exchange sdp",data:E,responseCommand:st.SUBSCRIBE_RESULT,timeout:1e4});case 10:if(I=T.sent,this.peerConnection_){T.next=15;break}throw m=new te({code:Z.INVALID_OPERATION,message:ae({key:X3})}),this.log_.warn(m),m;case 15:return T.next=17,this.onSubscribeResult(I);case 17:this.isSDPExchanging_=!1,T.next=24;break;case 20:throw T.prev=20,T.t0=T.catch(0),this.isSDPExchanging_=!1,T.t0;case 24:case"end":return T.stop()}},u,this,[[0,20]])})),function(){return r.apply(this,arguments)})},{key:"createOffer",value:(i=H(p().mark(function u(){var f,S;return p().wrap(function(x){for(;;)switch(x.prev=x.next){case 0:return f={voiceActivityDetection:!1},vl()&&this.sdpSemantics_===Ys?(this.peerConnection_.addTransceiver(Ee,{direction:"recvonly"}),this.peerConnection_.addTransceiver(xe,{direction:"recvonly"}),this.peerConnection_.addTransceiver(xe,{direction:"recvonly"})):(f.offerToReceiveAudio=!0,f.offerToReceiveVideo=!0),x.next=4,this.peerConnection_.createOffer(f);case 4:return S=x.sent,x.next=7,Vk();case 7:return x.sent.isH264DecodeSupported||(this.log_.warn("remove h264 desc from sdp"),S.sdp=(E=S.sdp,I=void 0,(I=Fr(E)).media.forEach(function(m){if(m.type===xe){var T=new Set;m.rtp.forEach(function(w){var L=w.payload;return w.codec==="H264"&&T.add(L)}),m.fmtp.forEach(function(w){var L=w.payload,N=w.config.match(/apt=(\d+)/);N&&N[1]&&T.has(Number(N[1]))&&T.add(L)});var v=function(w){var L=w.payload;return!T.has(L)};m.rtp=m.rtp.filter(v),m.rtcpFb=m.rtcpFb.filter(v),m.fmtp=m.fmtp.filter(v),m.payloads=m.payloads.split(" ").filter(function(w){return!T.has(Number(w))}).join(" ")}}),yo(I))),S.sdp=this.addRRTRLine(S.sdp),S.sdp=this.addSPSDescription(S.sdp),S.sdp=WV(S.sdp),this.sdpSemantics_===Ys&&(S.sdp=this.removeSDESDescription(S.sdp)),x.next=16,this.peerConnection_.setLocalDescription(S);case 16:case"end":return x.stop()}var E,I},u,this)})),function(){return i.apply(this,arguments)})},{key:"onSubscribeResult",value:(n=H(p().mark(function u(f){var S,x,E,I,m,T,v,w=this;return p().wrap(function(L){for(;;)switch(L.prev=L.next){case 0:if(S=f&&f.data||{},x=S.code,E=S.message,I=E===void 0?"":E,m=f&&f.data&&f.data.data||{},T=m.type,v=m.sdp,x!==77393){L.next=5;break}throw this.log_.error(vi.NOT_SUPPORTED_H264DECODE),new te({code:Z.NOT_SUPPORTED_H264,message:ae({key:_S})});case 5:if(L.prev=5,x===0){L.next=8;break}throw new te({code:x,message:ae({key:AN,data:{errMsg:I}})});case 8:return this.log_.debug("accept remote answer: "+v),L.next=11,this.peerConnection_.setRemoteDescription({type:T,sdp:v});case 11:this.sei_&&(this.sei_.handleEncodedStreams(),this.sei_.onSEIMessage=function(N){w.emitter_.emit(et.SEI_MESSAGE,q(q({},N),{},{userId:w.userId_}))}),this.updateSSRC(v),L.next=19;break;case 15:throw L.prev=15,L.t0=L.catch(5),this.log_.error(L.t0),L.t0;case 19:case"end":return L.stop()}},u,this,[[5,15]])})),function(u){return n.apply(this,arguments)})},{key:"updateSSRC",value:function(u){var f=this;try{Fr(u).media.forEach(function(S){if(S.type===Ee){var x=S.ssrcs.find(function(m){return m.value.includes(xr)});x&&(f.ssrc_.audio=x.id)}else{var E=S.ssrcs.find(function(m){return m.value.includes(xr)}),I=S.ssrcs.find(function(m){return m.value.includes(Xs)});E&&(f.ssrc_.video=E.id),I&&(f.ssrc_.auxiliary=I.id)}})}catch(S){}}},{key:"setRemoteStream",value:function(u,f){this.remoteStreams_.set(u,f)}},{key:"getSubscribeState",value:function(){return this.subscribeState_}},{key:"getTrackState",value:function(){return this.trackState_}},{key:"getSSRC",value:function(){return this.ssrc_}},{key:"getMainStream",value:function(){return this.remoteStreams_.get(xr)}},{key:"getAuxStream",value:function(){return this.remoteStreams_.get(Xs)}},{key:"getMainStreamVideoTrackId",value:function(){var u=this.getMainStream();if(u){var f=u.getVideoTrack();if(f)return f.id}return""}},{key:"getAuxStreamVideoTrackId",value:function(){var u=this.getAuxStream();if(u){var f=u.getVideoTrack();if(f)return f.id}return""}},{key:"reconnect",value:(t=H(p().mark(function u(){var f,S,x=this;return p().wrap(function(E){for(;;)switch(E.prev=E.next){case 0:if(this.reconnectionTimer_===-1){E.next=3;break}return this.log_.warn("reconnect() downlink is reconnecting, ignore current reconnection"),E.abrupt("return");case 3:if(!(this.reconnectionCount_>=30)){E.next=12;break}return this.log_.warn("SDK has tried reconnect downlink [".concat(this.userId_,"] for ").concat(30," times, but all failed, please check your network")),this.stopReconnection(),f=new te({code:Z.DOWNLINK_RECONNECTION_FAILED,message:ae({key:RN})}),ke.logFailedEvent({userId:this.client_.getUserId(),eventType:Db,error:f}),this.addEventInternal(_V,"downlink-connection reconnect fail"),this.emitConnectionStateChangedEvent(on),this.emitter_.emit(et.ERROR,f),E.abrupt("return");case 12:if(this.signalChannel_.getCurrentState()===oc){E.next=16;break}return this.log_.warn("reconnect() signal channel is not connected, suspend reconnection until signal is connected"),this.signalChannel_.once(ac,this.reconnect,this),E.abrupt("return");case 16:if(this.reconnectionCount_++,this.log_.warn("reconnect() try to reconnect downlink [".concat(this.reconnectionCount_,"/").concat(30,"]")),S=xp(this.reconnectionCount_),this.reconnectionTimer_=setTimeout(function(){x.log_.warn("reconnect() downlink [".concat(x.userId_,"] reconnect timeout(").concat(S/1e3,"s), try again")),x.clearReconnectionTimer(),x.reconnect()},S),!(this.isSDPExchanging_||this.peerConnection_&&this.peerConnection_.connectionState===Ju)){E.next=22;break}return E.abrupt("return");case 22:return E.prev=22,this.closePeerConnection(),this.initialize(),E.next=27,this.connect();case 27:this.stopReconnection(),this.log_.warn("reconnect() downlink reconnect successfully"),ke.logSuccessEvent({userId:this.client_.getUserId(),eventType:Db}),this.addEventInternal(gV,"downlink-connection reconnect success"),this.recoverSubscription(),E.next=36;break;case 34:E.prev=34,E.t0=E.catch(22);case 36:case"end":return E.stop()}},u,this,[[22,34]])})),function(){return t.apply(this,arguments)})},{key:"recoverSubscription",value:function(){var u=this,f=this.client_.getSubscriptionManager();f&&Se(this.remoteStreams_.values()).forEach(function(S){f.hasAutoRecoveryFlag(u.userId_,S.getType())&&f.recover(S)})}},{key:"getIsReconnecting",value:function(){return this.isReconnecting_}},{key:"getSubscribedMainStream",value:function(){var u=null;return this.isMainStreamSubscribed&&(u=this.remoteStreams_.get(xr)),u}},{key:"clearReconnectionTimer",value:function(){this.reconnectionTimer_!==-1&&(clearTimeout(this.reconnectionTimer_),this.reconnectionTimer_=-1)}},{key:"startReconnection",value:function(){var u=this.client_.getSubscriptionManager();if(u){var f,S=oe(this.remoteStreams_.values());try{for(S.s();!(f=S.n()).done;){var x=f.value,E=x.getType();(E===yt&&(this.trackState_.audio||this.trackState_.video)||E===Dt&&this.trackState_.auxiliary)&&u.setAutoRecoveryFlag(this.userId_,x.getType())}}catch(I){S.e(I)}finally{S.f()}}le(Ye(l.prototype),"startReconnection",this).call(this)}},{key:"getCurrentState",value:function(){return this.currentState_}},{key:"hasMainStream",value:function(){return this.trackState_.video||this.trackState_.audio||this.trackState_.smallVideo}},{key:"hasAuxStream",value:function(){return this.trackState_.auxiliary}}]),l}(Bv),X(ur.prototype,"subscribe",[aI,oI],Object.getOwnPropertyDescriptor(ur.prototype,"subscribe"),ur.prototype),X(ur.prototype,"unsubscribe",[sI],Object.getOwnPropertyDescriptor(ur.prototype,"unsubscribe"),ur.prototype),X(ur.prototype,"exchangeSDP",[cI],Object.getOwnPropertyDescriptor(ur.prototype,"exchangeSDP"),ur.prototype),ur),sd=function(){function e(){Q(this,e),this.startTime=0,this.endTime=0,this.start()}return Ie(e,[{key:"start",value:function(){this.startTime===0&&(this.startTime=Ct())}},{key:"stop",value:function(){this.endTime===0&&(this.endTime=Ct())}},{key:"getDuration",value:function(){return this.endTime===0?Ct()-this.startTime:this.endTime-this.startTime}}]),e}(),r7=function(){function e(r){Q(this,e),this.client_=r.client,this.intervalId_=-1,this.statsCalculator_=r.stats,this.prevStats_=null,this.renderFreezeMap_=new Map,this.remoteStreamMap_=new Map,this.dataFreezeMap_=new Map,this.monitorFreezeData_=new Map}var t,n,i;return Ie(e,[{key:"installEvents",value:function(){Y.on(Jp,this.handlePlayVideoStart,this),Y.on(nc,this.onVideoTrackMuted,this),Y.on(Gp,this.onVideoTrackUnmuted,this),Y.on(ca,this.handleStreamStopped,this),Y.on(Vr,this.handleStreamStopped,this),Y.on(tc,this.handleVideoPlaying,this)}},{key:"uninstallEvents",value:function(){Y.off(Jp,this.handlePlayVideoStart,this),Y.off(nc,this.onVideoTrackMuted,this),Y.off(Gp,this.onVideoTrackUnmuted,this),Y.off(ca,this.handleStreamStopped,this),Y.off(Vr,this.handleStreamStopped,this),Y.off(tc,this.handleVideoPlaying,this)}},{key:"start",value:function(){var r=this;this.intervalId_===-1&&(this.installEvents(),this.intervalId_=mt.run(H(p().mark(function o(){return p().wrap(function(c){for(;;)switch(c.prev=c.next){case 0:return c.prev=0,c.next=3,r.detectFPS();case 3:c.next=7;break;case 5:c.prev=5,c.t0=c.catch(0);case 7:case"end":return c.stop()}},o,null,[[0,5]])})),{delay:1e3}))}},{key:"stop",value:function(){this.intervalId_!==-1&&(this.uninstallEvents(),mt.clearTask(this.intervalId_),this.intervalId_=-1,this.renderFreezeMap_.clear(),this.dataFreezeMap_.clear(),this.remoteStreamMap_.clear())}},{key:"onVideoTrackMuted",value:function(r){var o=r.stream;if(o.getClient()===this.client_&&o.isRemote()){var c=o.userId_,a=o.type_,s="".concat(c,"_").concat(a),l=this.dataFreezeMap_.get(s),u=new sd;l?l.durationItemList.push(u):this.dataFreezeMap_.set(s,{userId:c,type:a,durationItemList:[u],isFreezing:function(){var f=this.durationItemList[this.durationItemList.length-1];return f&&f.endTime===0}})}}},{key:"onVideoTrackUnmuted",value:function(r){var o=r.stream;if(o.getClient()===this.client_&&o.isRemote()){var c=o.userId_,a=o.type_,s="".concat(c,"_").concat(a);this.stopDataFreeze({key:s,userId:c,type:a})}}},{key:"handleStreamStopped",value:function(r){var o=r.client,c=r.stream;if(o===this.client_){var a=c.getUserId(),s=c.getType(),l="".concat(a,"_").concat(s);this.stopDataFreeze({key:l,userId:a,type:s})}}},{key:"stopDataFreeze",value:function(r){var o=r.key,c=r.userId,a=r.type,s=this.dataFreezeMap_.get(o);if(s&&s.isFreezing()){var l=s.durationItemList[s.durationItemList.length-1];l.stop();var u=l.getDuration();u>500?(ke.logEvent({eventType:"videoFrozenCount",delta:u}),this.monitorFreezeData_.set(o,{userId:c,type:a,duration:u})):s.durationItemList.pop()}}},{key:"getTotalDuration",value:function(r){return r.reduce(function(o,c){var a=c.getDuration();return o+Math.min(a,5e3)},0)}},{key:"getStats",value:(i=H(p().mark(function r(){var o,c,a,s,l,u,f,S,x,E,I;return p().wrap(function(m){for(;;)switch(m.prev=m.next){case 0:o=this.client_.getConnections(),c={},a=oe(o),m.prev=3,a.s();case 5:if((s=a.n()).done){m.next=20;break}if(l=Te(s.value,2),u=l[0],(f=l[1]).getPeerConnection()){m.next=9;break}return m.abrupt("continue",18);case 9:return S=f.getSubscribeState(),x=f.getTrackState(),m.next=13,this.statsCalculator_.getReceiverStats(f);case 13:E=m.sent,(I={userId:E.userId,tinyId:u,hasVideo:x.video&&S.video,hasAuxiliary:x.auxiliary&&S.auxiliary,video:{framesDecoded:0},auxiliary:{framesDecoded:0}}).hasVideo&&(I.video.framesDecoded=E.video.framesDecoded),I.hasAuxiliary&&(I.auxiliary.framesDecoded=E.auxiliary.framesDecoded),c[E.userId]=I;case 18:m.next=5;break;case 20:m.next=25;break;case 22:m.prev=22,m.t0=m.catch(3),a.e(m.t0);case 25:return m.prev=25,a.f(),m.finish(25);case 28:return m.abrupt("return",c);case 29:case"end":return m.stop()}},r,this,[[3,22,25,28]])})),function(){return i.apply(this,arguments)})},{key:"detectFPS",value:(n=H(p().mark(function r(){var o,c,a,s,l,u;return p().wrap(function(f){for(;;)switch(f.prev=f.next){case 0:return f.next=2,this.getStats();case 2:if(o=f.sent,this.prevStats_){f.next=6;break}return this.prevStats_=o,f.abrupt("return");case 6:f.t0=p().keys(o);case 7:if((f.t1=f.t0()).done){f.next=17;break}if(c=f.t1.value,this.prevStats_[c]){f.next=11;break}return f.abrupt("continue",7);case 11:a=o[c].tinyId,s=this.client_.getMutedStates(),o[c].hasVideo&&this.prevStats_[c].hasVideo&&s.has(a)&&!s.get(a).videoMuted&&(l=o[c].video.framesDecoded-this.prevStats_[c].video.framesDecoded,this.handleRenderFreeze({userId:c,type:yt,fps:l})),o[c].hasAuxiliary&&this.prevStats_[c].hasAuxiliary&&(u=o[c].auxiliary.framesDecoded-this.prevStats_[c].auxiliary.framesDecoded,this.handleRenderFreeze({userId:c,type:Dt,fps:u})),f.next=7;break;case 17:this.prevStats_=o;case 18:case"end":return f.stop()}},r,this)})),function(){return n.apply(this,arguments)})},{key:"handleRenderFreeze",value:(t=H(p().mark(function r(o){var c,a,s,l,u,f,S,x;return p().wrap(function(E){for(;;)switch(E.prev=E.next){case 0:c=o.userId,a=o.fps,s=o.type,l="".concat(c,"_").concat(s),u=this.renderFreezeMap_.get(l),a<=2?(f=Ct(),u&&!u.isFreeze&&(u.freezeTimeline.push({startTime:f,endTime:void 0}),u.isFreeze=!0),u||this.renderFreezeMap_.set(l,{userId:c,type:s,isFreeze:!0,freezeTimeline:[{startTime:f,endTime:void 0}],renderFreezeTotal:0})):u&&u.isFreeze&&(u.isFreeze=!1,(S=u.freezeTimeline.pop()).endTime=Ct(),x=S.endTime-S.startTime,u.freezeTimeline.push(S),u.renderFreezeTotal+=Math.min(5e3,x));case 4:case"end":return E.stop()}},r,this)})),function(r){return t.apply(this,arguments)})},{key:"handlePlayVideoStart",value:function(r){var o=r.stream;if(o.getClient()===this.client_&&o.isRemote()&&o.hasVideo()){var c="".concat(o.getUserId(),"_").concat(o.getType());this.remoteStreamMap_.has(c)||this.remoteStreamMap_.set(c,{isPlayingFired:!1})}}},{key:"handleVideoPlaying",value:function(r){var o=r.stream;if(o.isRemote()&&o.getClient()===this.client_){var c="".concat(o.getUserId(),"_").concat(o.getType());this.remoteStreamMap_.has(c)&&(this.remoteStreamMap_.get(c).isPlayingFired=!0)}}},{key:"getDataFreezeDuration",value:function(r){var o={dataFreeze:0,count:0},c=this.dataFreezeMap_.get(r);if(c){if(c.isFreezing()){var a=c.durationItemList[c.durationItemList.length-1];a.stop(),a.getDuration()<500&&c.durationItemList.pop()}o.dataFreeze=this.getTotalDuration(c.durationItemList),o.count=c.durationItemList.length}return o}},{key:"getRenderFreezeDuration",value:function(r){var o=this.renderFreezeMap_.get(r),c=0,a=0;if(o)if(o.isFreeze){var s=Ct()-o.freezeTimeline[o.freezeTimeline.length-1].startTime;c=o.renderFreezeTotal+Math.min(s,5e3),a=o.freezeTimeline.length}else c=o.renderFreezeTotal;return{renderFreeze:c,count:a}}},{key:"getMonitorFreeze",value:function(){return this.monitorFreezeData_}},{key:"isBlackStream",value:function(r){return!!this.remoteStreamMap_.has(r)&&!this.remoteStreamMap_.get(r).isPlayingFired}},{key:"resetMonitor",value:function(){this.monitorFreezeData_.clear()}}]),e}(),Yv=Ie(function e(t){Q(this,e),this.userId=t.userId,this.tinyId=t.tinyId,this.role=t.role===so?Tr:Zi}),lI={exports:{}};(function(e){(function(t){function n(m,T){var v=(65535&m)+(65535&T);return(m>>16)+(T>>16)+(v>>16)<<16|65535&v}function i(m,T,v,w,L,N){return n((V=n(n(T,m),n(w,N)))<<(_=L)|V>>>32-_,v);var V,_}function r(m,T,v,w,L,N,V){return i(T&v|~T&w,m,T,L,N,V)}function o(m,T,v,w,L,N,V){return i(T&w|v&~w,m,T,L,N,V)}function c(m,T,v,w,L,N,V){return i(T^v^w,m,T,L,N,V)}function a(m,T,v,w,L,N,V){return i(v^(T|~w),m,T,L,N,V)}function s(m,T){var v,w,L,N,V;m[T>>5]|=128<<T%32,m[14+(T+64>>>9<<4)]=T;var _=1732584193,b=-271733879,R=-1732584194,P=271733878;for(v=0;v<m.length;v+=16)w=_,L=b,N=R,V=P,_=r(_,b,R,P,m[v],7,-680876936),P=r(P,_,b,R,m[v+1],12,-389564586),R=r(R,P,_,b,m[v+2],17,606105819),b=r(b,R,P,_,m[v+3],22,-1044525330),_=r(_,b,R,P,m[v+4],7,-176418897),P=r(P,_,b,R,m[v+5],12,1200080426),R=r(R,P,_,b,m[v+6],17,-1473231341),b=r(b,R,P,_,m[v+7],22,-45705983),_=r(_,b,R,P,m[v+8],7,1770035416),P=r(P,_,b,R,m[v+9],12,-1958414417),R=r(R,P,_,b,m[v+10],17,-42063),b=r(b,R,P,_,m[v+11],22,-1990404162),_=r(_,b,R,P,m[v+12],7,1804603682),P=r(P,_,b,R,m[v+13],12,-40341101),R=r(R,P,_,b,m[v+14],17,-1502002290),_=o(_,b=r(b,R,P,_,m[v+15],22,1236535329),R,P,m[v+1],5,-165796510),P=o(P,_,b,R,m[v+6],9,-1069501632),R=o(R,P,_,b,m[v+11],14,643717713),b=o(b,R,P,_,m[v],20,-373897302),_=o(_,b,R,P,m[v+5],5,-701558691),P=o(P,_,b,R,m[v+10],9,38016083),R=o(R,P,_,b,m[v+15],14,-660478335),b=o(b,R,P,_,m[v+4],20,-405537848),_=o(_,b,R,P,m[v+9],5,568446438),P=o(P,_,b,R,m[v+14],9,-1019803690),R=o(R,P,_,b,m[v+3],14,-187363961),b=o(b,R,P,_,m[v+8],20,1163531501),_=o(_,b,R,P,m[v+13],5,-1444681467),P=o(P,_,b,R,m[v+2],9,-51403784),R=o(R,P,_,b,m[v+7],14,1735328473),_=c(_,b=o(b,R,P,_,m[v+12],20,-1926607734),R,P,m[v+5],4,-378558),P=c(P,_,b,R,m[v+8],11,-2022574463),R=c(R,P,_,b,m[v+11],16,1839030562),b=c(b,R,P,_,m[v+14],23,-35309556),_=c(_,b,R,P,m[v+1],4,-1530992060),P=c(P,_,b,R,m[v+4],11,1272893353),R=c(R,P,_,b,m[v+7],16,-155497632),b=c(b,R,P,_,m[v+10],23,-1094730640),_=c(_,b,R,P,m[v+13],4,681279174),P=c(P,_,b,R,m[v],11,-358537222),R=c(R,P,_,b,m[v+3],16,-722521979),b=c(b,R,P,_,m[v+6],23,76029189),_=c(_,b,R,P,m[v+9],4,-640364487),P=c(P,_,b,R,m[v+12],11,-421815835),R=c(R,P,_,b,m[v+15],16,530742520),_=a(_,b=c(b,R,P,_,m[v+2],23,-995338651),R,P,m[v],6,-198630844),P=a(P,_,b,R,m[v+7],10,1126891415),R=a(R,P,_,b,m[v+14],15,-1416354905),b=a(b,R,P,_,m[v+5],21,-57434055),_=a(_,b,R,P,m[v+12],6,1700485571),P=a(P,_,b,R,m[v+3],10,-1894986606),R=a(R,P,_,b,m[v+10],15,-1051523),b=a(b,R,P,_,m[v+1],21,-2054922799),_=a(_,b,R,P,m[v+8],6,1873313359),P=a(P,_,b,R,m[v+15],10,-30611744),R=a(R,P,_,b,m[v+6],15,-1560198380),b=a(b,R,P,_,m[v+13],21,1309151649),_=a(_,b,R,P,m[v+4],6,-145523070),P=a(P,_,b,R,m[v+11],10,-1120210379),R=a(R,P,_,b,m[v+2],15,718787259),b=a(b,R,P,_,m[v+9],21,-343485551),_=n(_,w),b=n(b,L),R=n(R,N),P=n(P,V);return[_,b,R,P]}function l(m){var T,v="",w=32*m.length;for(T=0;T<w;T+=8)v+=String.fromCharCode(m[T>>5]>>>T%32&255);return v}function u(m){var T,v=[];for(v[(m.length>>2)-1]=void 0,T=0;T<v.length;T+=1)v[T]=0;var w=8*m.length;for(T=0;T<w;T+=8)v[T>>5]|=(255&m.charCodeAt(T/8))<<T%32;return v}function f(m){var T,v,w="0123456789abcdef",L="";for(v=0;v<m.length;v+=1)T=m.charCodeAt(v),L+=w.charAt(T>>>4&15)+w.charAt(15&T);return L}function S(m){return unescape(encodeURIComponent(m))}function x(m){return function(T){return l(s(u(T),8*T.length))}(S(m))}function E(m,T){return function(v,w){var L,N,V=u(v),_=[],b=[];for(_[15]=b[15]=void 0,V.length>16&&(V=s(V,8*v.length)),L=0;L<16;L+=1)_[L]=909522486^V[L],b[L]=1549556828^V[L];return N=s(_.concat(u(w)),512+8*w.length),l(s(b.concat(N),640))}(S(m),S(T))}function I(m,T,v){return T?v?E(T,m):f(E(T,m)):v?x(m):f(x(m))}e.exports?e.exports=I:t.md5=I})(ce)})(lI);var dI,hI,Ai,cd=lI.exports,i7=function(){function e(o){Q(this,e),this.client_=o.client,this.signalChannel_=o.signalChannel,this.log_=_e.createLogger({id:"mix|"+this.client_.getUserId(),userId:o.client.getUserId(),sdkAppId:o.client.getSDKAppId()}),this.isMixing_=!1,this.config_=null,this.data_=null,this.remoteStreamMap_=new Map,this.installEvents()}var t,n,i,r;return Ie(e,[{key:"isPresetLayoutMode",get:function(){return this.config_&&this.config_.mode===Jf.PRESET_LAYOUT}},{key:"installEvents",value:function(){Y.on(Ur,this.onStreamSubscribed,this),Y.on(Vr,this.onStreamUnsubscribed,this),this.client_.on("stream-removed",this.onStreamRemoved,this)}},{key:"uninstallEvents",value:function(){Y.off(Ur,this.onStreamSubscribed,this),Y.off(Vr,this.onStreamUnsubscribed,this),this.client_.off("stream-removed",this.onStreamRemoved,this)}},{key:"reset",value:function(){this.uninstallEvents(),this.isMixing_=!1,this.config_=null}},{key:"onStreamSubscribed",value:function(o){var c=o.client,a=o.stream;c===this.client_&&(this.remoteStreamMap_.set(a.getId(),{remoteStream:a,isUsed:!1}),this.isMixing_&&this.hasAvailablePlaceHolder()&&this.startMixTranscode(this.config_))}},{key:"onStreamUnsubscribed",value:function(o){var c=o.client,a=o.stream;c===this.client_&&this.onStreamRemoved({stream:a})}},{key:"onStreamRemoved",value:function(o){var c=o.stream;if(this.remoteStreamMap_.has(c.getId())){var a=this.remoteStreamMap_.get(c.getId()).isUsed;this.remoteStreamMap_.delete(c.getId()),this.isMixing_&&this.isPresetLayoutMode&&a&&this.startMixTranscode(this.config_)}}},{key:"startMixTranscode",value:(r=H(p().mark(function o(c){var a,s,l;return p().wrap(function(u){for(;;)switch(u.prev=u.next){case 0:if(u.prev=0,this.resetIsUsedFlag(),this.config_=c,a=this.getInputParam(c,this.remoteStreamMap_),s=this.getOutputParam(c),l=this.getOutputSessionId({config:c,roomId:this.client_.getRoomId(),userId:this.client_.getUserId()}),!this.isMixing_||!this.data_||l===this.data_.outputSessionId){u.next=10;break}return this.log_.info("startMixTranscode() streamId changed, stop mixing before start"),u.next=10,this.doStopMixTranscode();case 10:return u.next=12,this.doStartMixTranscode({outputSessionId:l,inputParam:a,outputParam:s});case 12:u.next=18;break;case 14:throw u.prev=14,u.t0=u.catch(0),this.resetIsUsedFlag(),u.t0;case 18:case"end":return u.stop()}},o,this,[[0,14]])})),function(o){return r.apply(this,arguments)})},{key:"doStartMixTranscode",value:(i=H(p().mark(function o(c){var a,s,l,u,f,S,x,E;return p().wrap(function(I){for(;;)switch(I.prev=I.next){case 0:return a=c.outputSessionId,s=c.inputParam,l=c.outputParam,u={roomId:String(this.client_.getRoomId()),mcuRequestTime:Date.now(),outputSessionId:a,inputParam:s,outputParam:l},this.data_=u,this.log_.info("startMixTranscode: ".concat(JSON.stringify(u))),this.isMixing_=!0,I.prev=5,I.next=8,this.signalChannel_.sendWaitForResponse({command:UU,data:u,timeout:5e3,responseCommand:st.START_MIX_TRANSCODE_RES,commandDesc:"startMixTranscode"});case 8:if(f=I.sent,S=f.data,x=S.code,E=S.message,x===0){I.next=15;break}throw x===-102083&&(E="Please enable relayed-push in ".concat($b," and try later, refer to ").concat(Yf,"tutorial-26-advanced-publish-cdn-stream.html")),this.log_.error("startMixTranscode failed, errCode: ".concat(x," errMsg: ").concat(E)),this.isMixing_=!1,new te({code:Z.START_MIX_TRANSCODE_FAILED,message:ae({key:I3,data:{message:E},link:{className:"Client",fnName:"startMixTranscode"}})});case 15:I.next=21;break;case 17:throw I.prev=17,I.t0=I.catch(5),this.isMixing_=!1,I.t0;case 21:case"end":return I.stop()}},o,this,[[5,17]])})),function(o){return i.apply(this,arguments)})},{key:"reStartMixTranscode",value:function(){this.isMixing_&&this.startMixTranscode(this.config_)}},{key:"stopMixTranscode",value:(n=H(p().mark(function o(){return p().wrap(function(c){for(;;)switch(c.prev=c.next){case 0:if(this.isMixing_){c.next=2;break}throw new te({code:Z.INVALID_OPERATION,message:ae({key:C3})});case 2:return c.next=4,this.doStopMixTranscode();case 4:this.resetIsUsedFlag();case 5:case"end":return c.stop()}},o,this)})),function(){return n.apply(this,arguments)})},{key:"doStopMixTranscode",value:(t=H(p().mark(function o(){var c,a,s,l,u;return p().wrap(function(f){for(;;)switch(f.prev=f.next){case 0:return c={mcuRequestTime:Date.now(),outputSessionId:this.data_.outputSessionId,streamType:this.data_.outputParam.streamType},this.log_.info("stopMixTranscode: ".concat(JSON.stringify(c))),f.next=4,this.signalChannel_.sendWaitForResponse({command:VU,data:c,timeout:5e3,responseCommand:st.STOP_MIX_TRANSCODE_RES,commandDesc:"stopMixTranscode"});case 4:if(a=f.sent,s=a.data,l=s.code,u=s.message,l!==0){f.next=10;break}this.isMixing_=!1,f.next=12;break;case 10:throw this.log_.error("stopMixTranscode failed, errCode: ".concat(l," errMsg: ").concat(u)),new te({code:Z.STOP_MIX_TRANSCODE_FAILED,message:ae({key:w3,data:{message:u},link:{className:"Client",fnName:"stopMixTranscode"}})});case 12:case"end":return f.stop()}},o,this)})),function(){return t.apply(this,arguments)})},{key:"getOutputSessionId",value:function(o){var c=o.config,a=o.userId,s=o.roomId;return Bt(c.streamId)&&c.streamId.length>0?c.streamId:cd("".concat(s,"_").concat(a,"_main"))}},{key:"getInputParam",value:function(o,c){var a=this,s=o.mixUsers.map(function(l){return{userId:l.userId,roomId:String(l.roomId||a.client_.getRoomId()),width:l.width||0,height:l.height||0,locationX:l.locationX||0,locationY:l.locationY||0,zOrder:l.zOrder,streamType:ge(l.streamType)||l.streamType!==Dt?0:1,inputType:l.pureAudio?Gb.IT_PURE_AUDIO:Gb.IT_AUDIO_VIDEO,renderMode:l.renderMode||0}});return o.mode===Jf.PRESET_LAYOUT&&(s.forEach(function(l){if(l.userId===Hb.REMOTE){var u=Se(c.values()).find(function(f){return!f.isUsed});u&&(l.userId=u.remoteStream.getUserId(),l.streamType=u.remoteStream.getType()===Dt?1:0,u.isUsed=!0)}}),s=s.filter(function(l){return l.userId!==Hb.REMOTE})),s}},{key:"getOutputParam",value:function(o){var c=o.streamId||"";return{streamId:c,streamType:c.length>0?1:0,width:ge(o.videoWidth)?640:o.videoWidth,height:ge(o.videoHeight)?480:o.videoHeight,videoBps:o.videoBitrate||0,fps:o.videoFramerate||15,gop:o.videoGOP||2,audioSampleRate:o.audioSampleRate||48e3,audioBps:o.audioBitrate||64,audioChannels:o.audioChannels||1,backgroundColor:o.backgroundColor||0,backgroundImg:o.backgroundImage||"",extraInfo:"",videoCodec:2,audioCodec:0}}},{key:"hasAvailablePlaceHolder",value:function(){return!!this.isPresetLayoutMode&&this.data_.inputParam.length!==this.config_.mixUsers.length}},{key:"resetIsUsedFlag",value:function(){this.remoteStreamMap_.forEach(function(o){return o.isUsed=!1})}}]),e}(),a7=function(){function e(a){Q(this,e),this.client_=a.client,this.signalChannel_=a.signalChannel,this.publishTencentMainStreamObj_={params_:null,streamId_:void 0,isPublishing_:!1},this.publishTencentAuxStreamObj_={params_:null,streamId_:void 0,isPublishing_:!1},this.publishGivenCDNData_=null,this.isPublishingGivenCDN_=!1}var t,n,i,r,o,c;return Ie(e,[{key:"setSignalChannel",value:function(a){this.signalChannel_=a.signalChannel}},{key:"getIsPublishingTencentCDN",value:function(){return this.publishTencentMainStreamObj_.isPublishing_||this.publishTencentAuxStreamObj_.isPublishing_}},{key:"getIsPublishingGivenCDN",value:function(){return this.isPublishingGivenCDN_}},{key:"generatePublishCDNStreamId",value:function(a,s){if(!a){var l="".concat(this.client_.getRoomId(),"_").concat(this.client_.getUserId(),"_").concat(s);return/^[A-Za-z\d_-]*$/.test(l)||(l=cd(l)),"".concat(this.client_.getSDKAppId(),"_").concat(l)}return a}},{key:"generatePublishCDNSessionId",value:function(a){return cd("".concat(this.client_.getRoomId(),"_").concat(this.client_.getUserId(),"_").concat(a))}},{key:"startPublishTencentCDN",value:(c=H(p().mark(function a(s){var l,u,f,S;return p().wrap(function(x){for(;;)switch(x.prev=x.next){case 0:if(s.streamType===Nn?(this.publishTencentAuxStreamObj_.params_=s,this.publishTencentAuxStreamObj_.isPublishing_=!0):(this.publishTencentMainStreamObj_.params_=s,this.publishTencentMainStreamObj_.isPublishing_=!0),this.client_.isJoined_){x.next=3;break}return x.abrupt("return");case 3:return l=this.generatePublishCDNStreamId(s.streamId,s.streamType),u=this.generatePublishCDNSessionId(s.streamType),f=s.streamType===Nn?1:0,S={requestTime:Date.now(),sessionId:u,streamId:l,streamType:f},x.next=9,this.doStartPublishTencentCDN(S,s.streamType);case 9:case"end":return x.stop()}},a,this)})),function(a){return c.apply(this,arguments)})},{key:"doStartPublishTencentCDN",value:(o=H(p().mark(function a(s,l){var u,f,S,x;return p().wrap(function(E){for(;;)switch(E.prev=E.next){case 0:return E.prev=0,_e.info("startPublishTencentCDN: "+JSON.stringify(s)),E.next=4,this.signalChannel_.sendWaitForResponseWithRetry({command:OU,data:s,timeout:2e3,responseCommand:st.START_PUBLISH_TENCENT_CDN_RES,commandDesc:"startPublishCDNStream",retries:2});case 4:if(u=E.sent,f=u.data,S=f.code,x=f.message,S!==0){E.next=10;break}l===Nn?this.publishTencentAuxStreamObj_.streamId_=s.streamId:this.publishTencentMainStreamObj_.streamId_=s.streamId,E.next=14;break;case 10:throw l===Nn?this.publishTencentAuxStreamObj_.isPublishing_=!1:this.publishTencentMainStreamObj_.isPublishing_=!1,S===-102083&&(x="Please enable relayed-push in ".concat($b," and try later, refer to ").concat(Yf,"tutorial-26-advanced-publish-cdn-stream.html")),_e.error("startPublishTencentCDN failed, errCode: ".concat(S,", errMsg: ").concat(x)),new te({code:Z.START_PUBLISH_CDN_FAILED,message:ae({key:dS,data:{message:x},link:{className:"Client",fnName:"startPublishCDNStream"}})});case 14:E.next=20;break;case 16:throw E.prev=16,E.t0=E.catch(0),l===Nn?this.publishTencentAuxStreamObj_.isPublishing_=!1:this.publishTencentMainStreamObj_.isPublishing_=!1,E.t0;case 20:case"end":return E.stop()}},a,this,[[0,16]])})),function(a,s){return o.apply(this,arguments)})},{key:"resetPublishTencentParam",value:function(a){a===Qe&&(this.publishTencentMainStreamObj_={params_:null,streamId_:void 0,isPublishing_:!1}),a===Nn&&(this.publishTencentAuxStreamObj_={params_:null,streamId_:void 0,isPublishing_:!1})}},{key:"stopPublishTencentCDN",value:(r=H(p().mark(function a(){return p().wrap(function(s){for(;;)switch(s.prev=s.next){case 0:if(this.client_.isJoined_){s.next=4;break}return this.resetPublishTencentParam(Qe),this.resetPublishTencentParam(Nn),s.abrupt("return");case 4:if(!this.publishTencentMainStreamObj_.isPublishing_){s.next=7;break}return s.next=7,this.doStopPublishTencentCDN(Qe);case 7:if(!this.publishTencentAuxStreamObj_.isPublishing_){s.next=10;break}return s.next=10,this.doStopPublishTencentCDN(Nn);case 10:case"end":return s.stop()}},a,this)})),function(){return r.apply(this,arguments)})},{key:"doStopPublishTencentCDN",value:(i=H(p().mark(function a(s){var l,u,f,S,x;return p().wrap(function(E){for(;;)switch(E.prev=E.next){case 0:return l={requestTime:Date.now(),sessionId:cd("".concat(this.client_.getRoomId(),"_").concat(this.client_.getUserId(),"_").concat(s))},_e.info("stopPublishTencentCDN: "+JSON.stringify(l)),E.next=4,this.signalChannel_.sendWaitForResponse({command:LU,data:l,timeout:5e3,responseCommand:st.STOP_PUBLISH_TENCENT_CDN_RES,commandDesc:"stopPublishCDNStream"});case 4:if(u=E.sent,f=u.data,S=f.code,x=f.message,S!==0){E.next=10;break}this.resetPublishTencentParam(s),E.next=17;break;case 10:if(S!==-102069){E.next=15;break}_e.warn("stopPublishTencentCDN failed, can not stopPublishTencentCDN in auto relayed-push mode"),this.resetPublishTencentParam(s),E.next=17;break;case 15:throw _e.error("stopPublishTencentCDN failed, errCode: ".concat(S," errMsg: ").concat(x)),new te({code:Z.STOP_PUBLISH_CDN_FAILED,message:ae({key:hS,data:{message:x},link:{className:"Client",fnName:"stopPublishCDNStream"}})});case 17:case"end":return E.stop()}},a,this)})),function(a){return i.apply(this,arguments)})},{key:"startPublishGivenCDN",value:(n=H(p().mark(function a(s){var l,u,f,S,x,E;return p().wrap(function(I){for(;;)switch(I.prev=I.next){case 0:if(l=s.streamType===Qe?this.publishTencentMainStreamObj_.streamId_:this.publishTencentAuxStreamObj_.streamId_,u={pushRequestTime:Date.now(),pushAppId:s.appId,pushBizId:s.bizId,pushCdnUrl:s.url,pushStreamType:s.streamType,pushStreamId:l},_e.info("startPublishGivenCDN: "+JSON.stringify(u)),this.publishGivenCDNData_=u,this.isPublishingGivenCDN_=!0,this.client_.isJoined_){I.next=7;break}return I.abrupt("return");case 7:return I.prev=7,I.next=10,this.signalChannel_.sendWaitForResponse({command:MU,data:u,timeout:5e3,responseCommand:st.START_PUBLISH_GIVEN_CDN_RES,commandDesc:"startPublishCDNStream"});case 10:if(f=I.sent,S=f.data,x=S.code,E=S.message,x===0){I.next=17;break}throw _e.error("startPublishGivenCDN failed, errCode: ".concat(x,", errMsg: ").concat(E)),this.publishGivenCDNData_=null,this.isPublishingGivenCDN_=!1,new te({code:Z.START_PUBLISH_CDN_FAILED,message:ae({key:dS,data:{message:E},link:{className:"Client",fnName:"startPublishCDNStream"}})});case 17:I.next=24;break;case 19:throw I.prev=19,I.t0=I.catch(7),this.publishGivenCDNData_=null,this.isPublishingGivenCDN_=!1,I.t0;case 24:case"end":return I.stop()}},a,this,[[7,19]])})),function(a){return n.apply(this,arguments)})},{key:"stopPublishGivenCDN",value:(t=H(p().mark(function a(){var s,l,u,f,S,x,E,I,m,T;return p().wrap(function(v){for(;;)switch(v.prev=v.next){case 0:if(this.client_.isJoined_){v.next=4;break}return this.publishGivenCDNData_=null,this.isPublishingGivenCDN_=!1,v.abrupt("return");case 4:return s=this.publishGivenCDNData_,l=s.pushAppId,u=s.pushBizId,f=s.pushCdnUrl,S=s.pushStreamType,x={pushRequestTime:Date.now(),pushAppId:l,pushBizId:u,pushCdnUrl:f,pushStreamType:S},_e.info("stopPublishGivenCDN: "+JSON.stringify(x)),v.next=9,this.signalChannel_.sendWaitForResponse({command:NU,data:x,timeout:5e3,responseCommand:st.STOP_PUBLISH_GIVEN_CDN_RES,commandDesc:"stopPublishCDNStream"});case 9:if(E=v.sent,I=E.data,m=I.code,T=I.message,m!==0){v.next=16;break}this.publishGivenCDNData_=null,this.isPublishingGivenCDN_=!1,v.next=18;break;case 16:throw _e.error("stopPublishGivenCDN failed, errCode: ".concat(m," errMsg: ").concat(T)),new te({code:Z.STOP_PUBLISH_CDN_FAILED,message:ae({key:hS,data:{message:T},link:{className:"Client",fnName:"stopPublishCDNStream"}})});case 18:case"end":return v.stop()}},a,this)})),function(){return t.apply(this,arguments)})},{key:"handleCDNConfigForJoinData",value:function(a){var s,l=a;if(this.publishTencentMainStreamObj_.isPublishing_||this.publishTencentAuxStreamObj_.isPublishing_){var u={};Bt(l)&&(u=JSON.parse(l)),u.Str_uc_params||(u.Str_uc_params={}),this.publishTencentMainStreamObj_.isPublishing_&&(this.publishTencentMainStreamObj_.streamId_?u.Str_uc_params.userdefine_streamid_main=this.publishTencentMainStreamObj_.streamId_:this.publishTencentMainStreamObj_.params_&&(u.Str_uc_params.userdefine_streamid_main=this.generatePublishCDNStreamId(this.publishTencentMainStreamObj_.params_.streamId,Qe))),this.publishTencentAuxStreamObj_.isPublishing_&&(this.publishTencentAuxStreamObj_.streamId_?u.Str_uc_params.userdefine_streamid_aux=this.publishTencentAuxStreamObj_.streamId_:this.publishTencentAuxStreamObj_.params_&&(u.Str_uc_params.userdefine_streamid_aux=this.generatePublishCDNStreamId(this.publishTencentAuxStreamObj_.params_.streamId,Nn))),l=JSON.stringify(u)}if(this.isPublishingGivenCDN_){var f=this.publishGivenCDNData_,S=f.pushAppId,x=f.pushBizId,E=f.pushCdnUrl,I=f.pushStreamType,m=f.pushStreamId;s={pushRequestTime:Date.now(),pushAppId:S,pushBizId:x,pushCdnUrl:E,pushStreamType:I,pushStreamId:m}}return{bussinessInfo:l,pushUserCdnInfo:s}}},{key:"reset",value:function(){this.resetPublishTencentParam(Qe),this.resetPublishTencentParam(Nn),this.publishGivenCDNData_=null,this.isPublishingGivenCDN_=!1}}]),e}(),o7=function(){function e(t){Q(this,e),this.client_=t.client,this.durationMap_=new Map,this.installEvents()}return Ie(e,[{key:"installEvents",value:function(){Y.on(Ur,this.handleSubscribed,this),Y.on(jn,this.handleStreamTrackUpdated,this),Y.on(Vr,this.handleStreamStopped,this),Y.on(ca,this.handleStreamStopped,this)}},{key:"uninstallEvents",value:function(){Y.off(Ur,this.handleSubscribed,this),Y.off(jn,this.handleStreamTrackUpdated,this),Y.off(Vr,this.handleStreamStopped,this),Y.off(ca,this.handleStreamStopped,this)}},{key:"handleSubscribed",value:function(t){var n=t.client,i=t.stream;if(n===this.client_){var r=i.getUserId(),o=i.getType(),c="".concat(r,"_").concat(o);if(i.hasAudio())if(i.isMainAudioSubscribed){var a=new sd,s=this.durationMap_.get(c);s?this.isRecording(s.audio)||s.audio.push(a):this.durationMap_.set(c,{userId:r,type:o,audio:[a],video:[]})}else this.stopDurationItem(c,Ee);if(i.hasVideo())if(o===yt&&i.isMainVideoSubscribed||o===Dt&&i.isAuxVideoSubscribed){var l=new sd,u=this.durationMap_.get(c);u?this.isRecording(u.video)||u.video.push(l):this.durationMap_.set(c,{userId:r,type:o,audio:[],video:[l]})}else this.stopDurationItem(c,xe)}}},{key:"handleStreamStopped",value:function(t){var n=t.client,i=t.stream;if(this.clientHitTest(n)){var r=i.getUserId(),o=i.getType(),c="".concat(r,"_").concat(o);this.stopDurationItem(c,Ee),this.stopDurationItem(c,xe)}}},{key:"handleStreamTrackUpdated",value:function(t){var n=t.client,i=t.userId,r=t.tinyId,o=t.kind,c=t.action;if(this.clientHitTest(n)&&this.client_.getConnections().has(r)){var a=o===gt?o:yt,s="".concat(i,"_").concat(a);if(c===cn.ADD){var l=this.client_.getConnections().get(r).getSubscribeState();if(o===Ee&&!l.audio||o===xe&&!l.video||o===gt&&!l.auxiliary)return;var u=new sd,f=this.durationMap_.get(s);f?(o!==Ee||this.isRecording(f.audio)||f.audio.push(u),o===Ee||this.isRecording(f.video)||f.video.push(u)):this.durationMap_.set(s,{userId:i,type:a,audio:o===Ee?[u]:[],video:o===Ee?[]:[u]})}else this.stopDurationItem(s,o===Ee?Ee:xe)}}},{key:"isRecording",value:function(t){return t.findIndex(function(n){return n.endTime===0})>=0}},{key:"stopDurationItem",value:function(t,n){if(this.durationMap_.has(t)){var i=this.durationMap_.get(t)[n].find(function(r){return r.endTime===0});i&&i.stop()}}},{key:"clientHitTest",value:function(t){return this.client_===t}},{key:"getDuration",value:function(t,n){return this.durationMap_.has(t)?this.durationMap_.get(t)[n].reduce(function(i,r){return i+r.getDuration()},0):0}},{key:"getDurationMap",value:function(){return this.durationMap_}},{key:"reset",value:function(){this.durationMap_.clear()}},{key:"destroy",value:function(){this.client_=null,this.uninstallEvents()}}]),e}();function wc(){return function(e,t,n){var i=n.value,r=new Set;return n.value=H(p().mark(function o(){var c,a,s,l,u=arguments;return p().wrap(function(f){for(;;)switch(f.prev=f.next){case 0:if(!r.has(this)){f.next=2;break}throw new te({code:Z.INVALID_OPERATION,message:ae({key:bN,data:{name:t}})});case 2:for(f.prev=2,r.add(this),c=u.length,a=new Array(c),s=0;s<c;s++)a[s]=u[s];return f.next=7,i.apply(this,a);case 7:return l=f.sent,r.delete(this),f.abrupt("return",l);case 12:throw f.prev=12,f.t0=f.catch(2),r.delete(this),f.t0;case 16:case"end":return f.stop()}},o,this,[[2,12]])})),n}}var fI,pI,mI,vI,gI,_I,yI,bI,SI,kI,TI,xI,II,wI,CI,EI,RI,AI,PI,DI,OI,LI,MI,NI,UI,VI,jI,BI,FI,HI,GI,Pe,s7=(dI=fn({name:"options",type:In,required:!0,properties:{roomId:{type:dt,required:!0},userId:{type:dt,required:!1}}}),hI=fn({name:"options",type:In,required:!0,properties:{updateList:{type:zb,required:!0,arrayItem:{require:!0,type:In,properties:{roomId:{required:!0,type:dt},userId:{required:!1,type:dt},muteAudio:{type:Wt},muteVideo:{type:Wt},muteAuxiliary:{type:Wt}}},validate:function(e){if(e.find(function(t){return t.userId})&&e.find(function(t){return!t.userId}))throw new te({code:Z.INVALID_PARAMETER,message:"you can not update both userId and all"})}}}}),Ai=function(){function e(){Q(this,e),this.crossRoomSeq=0}var t,n,i;return Ie(e,[{key:"call",value:function(r,o){return ln(this[r])?this[r](o):Promise.reject(new te({code:Z.INVALID_PARAMETER,message:ae({key:K3,data:{name:r}})}))}},{key:"updatePrivateMapKey",value:function(r){var o=r.privateMapKey;return r.client.setProperty("privateMapKey",o),Promise.resolve()}},{key:"connectOtherRoom",value:(i=H(p().mark(function r(o){var c,a,s,l;return p().wrap(function(u){for(;;)switch(u.prev=u.next){case 0:if(c=o.client,a=o.roomId,s=o.userId,c.signalChannel_){u.next=3;break}return u.abrupt("return",Promise.reject(new te({code:Z.INVALID_OPERATION,message:"you did not joined room"})));case 3:return u.next=5,c.signalChannel_.sendWaitForResponseWithRetry({command:HU,responseCommand:st.CONNECT_OTHER_ROOM_RES,data:{roomId:a,userId:s,localRoomId:s?void 0:c.getRoomId()},retries:3});case 5:if((l=u.sent).data.code===0){u.next=8;break}throw new te({code:l.data.code,message:l.data.message});case 8:case"end":return u.stop()}},r)})),function(r){return i.apply(this,arguments)})},{key:"updateOtherRoomForwardMode",value:(n=H(p().mark(function r(o){var c,a,s,l,u;return p().wrap(function(f){for(;;)switch(f.prev=f.next){case 0:if(a=o.client,s=o.updateList,a.signalChannel_){f.next=3;break}return f.abrupt("return",Promise.reject(new te({code:Z.INVALID_OPERATION,message:"you did not joined room"})));case 3:return l=s.find(function(S){return S.userId})?0:1,f.next=6,a.signalChannel_.sendWaitForResponseWithRetry({command:GU,responseCommand:st.UPDATE_OTHER_ROOM_FORWARD_MODE_RES,data:{seq:++this.crossRoomSeq,operationType:l,updateList:s.map(function(S){return{roomId:S.roomId,userId:S.userId,muteAudio:S.muteAudio,muteVideo:S.muteVideo,muteSubStream:S.muteAuxiliary}})},retries:3});case 6:if(!(u=f.sent).data.data.expectSeq){f.next=10;break}return this.crossRoomSeq=u.data.data.expectSeq,f.abrupt("return",this.updateOtherRoomForwardMode({client:a,updateList:s}));case 10:if(u.data.code===0){f.next=14;break}throw new te({code:u.data.code,message:u.data.message});case 14:if(!(((c=u.data.errorList)===null||c===void 0?void 0:c.length)>0)){f.next=16;break}throw new te({code:Z.UNKNOWN,message:u.data.errorList[0].message});case 16:case"end":return f.stop()}},r,this)})),function(r){return n.apply(this,arguments)})},{key:"disconnectOtherRoom",value:(t=H(p().mark(function r(o){var c,a,s;return p().wrap(function(l){for(;;)switch(l.prev=l.next){case 0:if(c=o.client,a=o.roomId,c.signalChannel_){l.next=3;break}return l.abrupt("return",Promise.resolve());case 3:return l.next=5,c.signalChannel_.sendWaitForResponseWithRetry({command:zU,responseCommand:st.DISCONNECT_OTHER_ROOM_RES,data:{roomId:a,localRoomId:a?c.getRoomId():void 0},retries:3});case 5:if((s=l.sent).data.code===0){l.next=8;break}throw new te({code:s.data.code,message:s.data.message});case 8:case"end":return l.stop()}},r)})),function(r){return t.apply(this,arguments)})}]),e}(),X(Ai.prototype,"connectOtherRoom",[dI],Object.getOwnPropertyDescriptor(Ai.prototype,"connectOtherRoom"),Ai.prototype),X(Ai.prototype,"updateOtherRoomForwardMode",[hI],Object.getOwnPropertyDescriptor(Ai.prototype,"updateOtherRoomForwardMode"),Ai.prototype),Ai),c7=new s7,ud,ld,dd,$v,zI,WI,JI,qI,KI,XI,$t,u7=(fI=wc(),pI=fn(Yt.CLIENT.join),mI=Lo({retries:1,timeout:0,onError:function(e,t,n){this.isUsingCachedSchedule_?(this.log_.warn("is using cached schedule, retry join"),ki(!0),this.reset(),t()):(Y.emit(sa,{client:this,error:e}),ke.logFailedEvent({userId:this.userId_,eventType:Tb,error:e}),this.reset(),this.log_.error(e),n(e))}}),vI=wc(),gI=Lo({retries:3}),_I=wc(),yI=fn.apply(void 0,Se(Yt.CLIENT.publish)),bI=St(un),SI=wc(),kI=fn(Yt.CLIENT.unpublish),TI=fn.apply(void 0,Se(Yt.CLIENT.subscribe)),xI=fn(Yt.CLIENT.unsubscribe),II=wc(),wI=fn(Yt.CLIENT.switchRole),CI=St(un),EI=fn(Yt.CLIENT.startPublishCDNStream),RI=St(un),AI=St(un),PI=fn(Yt.CLIENT.startMixTranscode),DI=St(un),OI=St(un),LI=St(un),MI=St(un),NI=St(un),UI=St(un),VI=St(un),jI=Ql.apply(void 0,Se(Yt.CLIENT.sendSEIMessage)),BI=St(un),ud={timesInSecond:30,maxSizeInSecond:8e3,getSize:function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return t[0].byteLength}},ld=ud.timesInSecond,dd=ud.maxSizeInSecond,$v=ud.getSize,FI=function(e,t,n){var i=n.value,r=new Map;return Y.on(Up,function(o){var c=o.client;return r.delete(c)}),n.value=function(){var o=r.get(this);o||(o={callCountInSecond:0,timestamp:0,totalSizeInSecond:0},r.set(this,o)),o.timestamp===0?o.timestamp=Date.now():Date.now()-o.timestamp>1e3&&(o.timestamp=Date.now(),o.callCountInSecond=0,o.totalSizeInSecond=0);for(var c=arguments.length,a=new Array(c),s=0;s<c;s++)a[s]=arguments[s];if($v&&(o.totalSizeInSecond+=$v.apply(void 0,a)),o.timestamp!==0&&Date.now()-o.timestamp<1e3&&(o.callCountInSecond>=ld||o.totalSizeInSecond>dd))throw new te({code:Z.INVALID_OPERATION,message:ae({key:n4,data:{isTimes:o.callCountInSecond>=ld,isSize:o.totalSizeInSecond>dd,name:t,timesInSecond:ld,maxSizeInSecond:dd}})});return o.callCountInSecond++,i.apply(this,a)},n},HI=St(un),GI=St(un),Pe=function(){function e(k){var h,y;Q(this,e),this.name_=un,this.mode_=k.mode,this.sdpSemantics_=Wf,ge(k.sdpSemantics)?function(){var A;if(ge(window.RTCRtpTransceiver)||!("currentDirection"in RTCRtpTransceiver.prototype))return!1;var D=null,j=!1;try{(D=new RTCPeerConnection({sdpSemantics:Ys})).addTransceiver(Ee),j=!0}catch(K){}return(A=D)===null||A===void 0||A.close(),j}()&&(this.sdpSemantics_=Ys):this.sdpSemantics_=k.sdpSemantics,this.sdkAppId_=k.sdkAppId,this.userId_=k.userId,this.log_=_e.createLogger({id:"c".concat(k.seq,"|").concat(this.userId_),userId:this.userId_,sdkAppId:this.sdkAppId_}),this.userSig_=k.userSig,this.roomId_=0,this.useStringRoomId_=k.useStringRoomId||!1,this.pureAudioPushMode_=null,this.version_=k.version,this.log_.info("using sdpSemantics: "+this.sdpSemantics_),this.signalChannel_=null,this.role_=Tr,this.privateMapKey_="",this.tinyId_=0,this.env_="",this.proxy_=null,this.unifiedProxy_=null,this.connections_=new Map,this.mutedStates_=new Map,this.userMap_=new Map,this.syncUserListInterval_=-1,this.localStream_=null,this.localAuxStream_=null,this.uplinkConnection_=null,this.emitter_=GS(new Si,this.name_),this.isJoined_=!1,this.heartbeat_=-1,this.lastHeartBeatTime_=-1,this.stats_=new c6(this),this.joinTimeout_=-1,this.changeBigSmallRecords_=new Map,this.networkQuality_=null,this.badCaseDetector_=null,this.networkType_=Tp(),this.autoSubscribe_=!!ge(k.autoSubscribe)||k.autoSubscribe,this.joinedTimestamp_=0,this.joinOptions_={},this.basis_=(y={browser:aa().name+"/"+aa().version,os:Im(),displayResolution:ZV(),isScreenShareSupported:Bk(),isWebRTCSupported:ym(),isGetUserMediaSupported:e6(),isWebAudioSupported:t6(),isWebSocketsSupported:"WebSocket"in window&&window.WebSocket.CLOSING===2,isWebCodecSupported:(h={AudioDecoder:!1,AudioEncoder:!1,VideoDecoder:!1,VideoEncoder:!1,ImageDecoder:!1},ge(window.AudioDecoder)||(h.AudioDecoder=!0),ge(window.AudioEncoder)||(h.AudioEncoder=!0),ge(window.VideoDecoder)||(h.VideoDecoder=!0),ge(window.VideoEncoder)||(h.VideoEncoder=!0),ge(window.ImageDecoder)||(h.ImageDecoder=!0),h),isMediaSessionSupported:"mediaSession"in navigator&&!ge(navigator.mediaSession.setActionHandler),isWebTransportSupported:!ge(window.WebTransport)},navigator.userAgent.includes("miniProgram")&&(y.browser="mini/".concat(y.browser)),y),this.initBussinessInfo_(k),this.publishedCDN_=!1,this.publishCDNData_=null,this.mixedMCU_=!1,this.mixTranscodeData_=null,this.checkSystemResult_=null,this.enableAudioVolumeEvaluation_=!1,this.audioVolumeIntervalId_=null,this.mixTranscodeManager_=null,this.publishCDNManager_=new a7({client:this}),this.keyPointManager_=new kF({client:this,frameWorkType:k.frameWorkType,component:k.component}),this.isPublishing_=!1,this.isEnableSmallStream_=!1,this.smallStreamConfig_={bitrate:100,frameRate:15,height:120,width:160},this.turnServers_=[],this.iceTransportPolicy_=k.iceTransportPolicy,this.schedule_={domains:null,iceServers:null,iceTransportPolicy:null,trtcCapability:null},this.isUsingCachedSchedule_=!1,this.enableAutoPlayDialog_=!!ge(k.enableAutoPlayDialog)||k.enableAutoPlayDialog,this.enableMultiAuxStream_=!ge(k.enableMultiAuxStream)&&k.enableMultiAuxStream,this.signalInfo_={},this.enableSEI_=!ge(k.enableSEI)&&k.enableSEI,this.isDestroyed_=!1}var t,n,i,r,o,c,a,s,l,u,f,S,x,E,I,m,T,v,w,L,N,V,_,b,R,P,U;return Ie(e,[{key:"initBussinessInfo_",value:function(k){this.bussinessInfo_=k.bussinessInfo;var h={};if(Bt(k.bussinessInfo)&&(h=JSON.parse(k.bussinessInfo)),!ge(k.pureAudioPushMode)){if(!Number.isInteger(Number(k.pureAudioPushMode)))throw new te({code:Z.INVALID_PARAMETER,message:ae({key:DN})});this.pureAudioPushMode_=k.pureAudioPushMode,h.Str_uc_params||(h.Str_uc_params={}),h.Str_uc_params.pure_audio_push_mod=this.pureAudioPushMode_}if(!ge(k.streamId)){if(!(Bt(k.streamId)&&String(k.streamId)&&String(k.streamId).length<=64))throw new te({code:Z.INVALID_PARAMETER,message:ae({key:ON})});h.Str_uc_params||(h.Str_uc_params={}),h.Str_uc_params.userdefine_streamid_main=k.streamId}if(!ge(k.userDefineRecordId)){if(k.userDefineRecordId.match(/^[A-Za-z0-9_-]{1,64}$/gi)===null)throw new te({code:Z.INVALID_PARAMETER,message:ae({key:LN})});h.Str_uc_params||(h.Str_uc_params={}),h.Str_uc_params.userdefine_record_id=k.userDefineRecordId}if(!ge(k.userDefinePushArgs)){if(!(Bt(k.userDefinePushArgs)&&String(k.userDefinePushArgs)&&String(k.userDefinePushArgs).length<=256))throw new te({code:Z.INVALID_PARAMETER,message:ae({key:MN})});h.Str_uc_params||(h.Str_uc_params={}),h.Str_uc_params.userdefine_push_args=k.userDefinePushArgs}k.enableServerAudioMix&&(h.Str_uc_params||(h.Str_uc_params={}),h.Str_uc_params.enable_server_audio_mix=1,h.Str_uc_params.uc_biz_type=1e3),Br(h)||(this.bussinessInfo_=JSON.stringify(h))}},{key:"schedule",value:(U=H(p().mark(function k(h){var y,A,D;return p().wrap(function(j){for(;;)switch(j.prev=j.next){case 0:return j.next=2,OV({userId:this.userId_,sdkAppId:this.sdkAppId_,roomId:h,useStringRoomId:this.useStringRoomId_,version:this.version_,userSig:this.userSig_});case 2:y=j.sent,A=y.result,D=y.isCached,this.isUsingCachedSchedule_=D,A&&(this.log_.info("schedule with cache:".concat(D," : ").concat(JSON.stringify(A))),A.trtcCapability=A==null?void 0:A.trtcAutoConf,this.schedule_=q(q({},this.schedule_),A),Y.emit(qS,this.schedule_));case 7:case"end":return j.stop()}},k,this)})),function(k){return U.apply(this,arguments)})},{key:"getSignalChannelUrl",value:function(){var k={mainUrl:"",backupUrl:""},h=MS();return h?k.mainUrl=k.backupUrl="wss://".concat(h,".rtc.qq.com"):this.proxy_?k.mainUrl=k.backupUrl=this.proxy_:this.unifiedProxy_?k.mainUrl=k.backupUrl="wss://".concat(this.unifiedProxy_):Array.isArray(this.schedule_.domains)&&this.schedule_.domains.length>0&&(k.mainUrl=k.backupUrl="wss://".concat(this.schedule_.domains[0]),this.schedule_.domains[1]&&(k.backupUrl="wss://".concat(this.schedule_.domains[1]))),k}},{key:"getUserId",value:function(){return this.userId_}},{key:"getUserSig",value:function(){return this.userSig_}},{key:"getRole",value:function(){return this.role_}},{key:"getSignalInfo",value:function(){return this.signalInfo_}},{key:"getRoomId",value:function(){return this.roomId_}},{key:"getSDKAppId",value:function(){return this.sdkAppId_}},{key:"getTinyId",value:function(){return this.tinyId_}},{key:"getIceTransportPolicy",value:function(){return this.iceTransportPolicy_||this.schedule_.iceTransportPolicy||"all"}},{key:"initialize",value:function(k){var h=this;this.log_.info("setup signal channel");var y=this.getSignalChannelUrl(),A=y.mainUrl,D=y.backupUrl;return this.signalChannel_=new NV({sdkAppId:this.sdkAppId_,userId:this.userId_,userSig:this.userSig_,roomId:k.roomId,url:A,backupUrl:D,signalDomainWhenUnifiedProxy:this.unifiedProxy_?this.schedule_.domains[0]:void 0,client:this}),this.networkQuality_||(this.networkQuality_=new u6({connections:this.connections_,signalChannel:this.signalChannel_,userId:this.userId_,client:this}),this.networkQuality_.on(ct.NETWORK_QUALITY,function(j){h.emitter_.emit(ct.NETWORK_QUALITY,j)})),this.deviceDetector_||(this.deviceDetector_=new l6({client:this})),this.subscriptionManager_||(this.subscriptionManager_=new TF({client:this})),this.badCaseDetector_||(this.badCaseDetector_=new r7({client:this,stats:this.stats_})),this.callDurationCalculator_||(this.callDurationCalculator_=new o7({client:this})),this.mixTranscodeManager_||(this.mixTranscodeManager_=new i7({client:this,signalChannel:this.signalChannel_})),this.publishCDNManager_&&this.publishCDNManager_.setSignalChannel({signalChannel:this.signalChannel_}),this.signalChannel_.on(rm,function(j){h.log_.info("SignalChannel state changed from ".concat(j.prevState," to ").concat(j.state)),h.emitter_.emit(ct.CONNECTION_STATE_CHANGED,j)}),this.signalChannel_.on(im,function(j){h.reset(),h.emitter_.emit(ct.ERROR,j)}),this.signalChannel_.once(pk,function(j){h.tinyId_=j.signalInfo.tinyId,Y.emit(ll,{client:h})}),this.signalChannel_.on(st.PEER_JOIN,this.onPeerJoin,this),this.signalChannel_.on(st.PEER_LEAVE,this.onPeerLeave,this),this.signalChannel_.on(st.UPDATE_REMOTE_MUTE_STAT,function(j){Date.now()-h.lastHeartBeatTime_>=1e4&&h.doHeartbeat(),Y.emit(Op,{client:h,data:j.data}),h.onPublishedUserList(j.data),h.onUpdateRemoteMuteStat(j.data)}),this.signalChannel_.on(st.CLIENT_BANNED,function(j){var K,J=j.data.data.reason;if(ke.uploadEvent({log:"stat-banned:".concat(J),userId:h.userId_}),J===UM)K="you got banned by the admin";else if(J===VM)K="duplicated userId joining the room";else if(J===BM)K="the room has been disbanded by the admin",J=J.replace("_","-");else if(J===jM)return h.log_.warn("".concat(J," last heart beat time: ").concat(h.lastHeartBeatTime_," interval: ").concat(Date.now()-h.lastHeartBeatTime_,", visibility: ").concat(document.visibilityState)),void h.reJoin();h.log_[J==="kick"?"error":"info"]("user was banned because of [".concat(J,"]")),h.reset(),h.emitter_.emit(ct.CLIENT_BANNED,{reason:J,message:ae({key:ZN,data:{message:K,reason:J}})||J})}),Y.emit(Mp,{client:this}),this.signalChannel_.connect()}},{key:"preJoin",value:(P=H(p().mark(function k(h){var y,A,D,j;return p().wrap(function(K){for(;;)switch(K.prev=K.next){case 0:return this.joinOptions_=h,K.next=3,Sm();case 3:if(this.checkSystemResult_=K.sent,this.checkDestroy(),(y=MS())||(y=Gu,this.proxy_&&(this.proxy_.startsWith(HM)?y=zM:this.proxy_.startsWith(GM)&&(y=WM))),this.env_=y,ke.setConfig({env:y,sdkAppId:this.sdkAppId_,userId:this.userId_,roomId:h.roomId}),this.uploadTrtcStats(),A=this.checkSystemResult_.detail,D=A.isH264EncodeSupported,j=A.isVp8EncodeSupported,ym()&&(D||j)){K.next=13;break}throw new te({code:Z.NOT_SUPPORTED,message:ae({key:vS})});case 13:case"end":return K.stop()}},k,this)})),function(k){return P.apply(this,arguments)})},{key:"join",value:(R=H(p().mark(function k(h){var y,A=this;return p().wrap(function(D){for(;;)switch(D.prev=D.next){case 0:return this.roomId_=h.roomId,ge(h.role)||(this.role_=h.role),ge(h.privateMapKey)||(this.privateMapKey_=h.privateMapKey),y=Ct(),Y.emit(ul,{client:this}),vn(this.userId_,{eventId:iV,eventDesc:"joining room",timestamp:an(),userId:this.userId_,tinyId:this.tinyId_}),D.next=8,this.preJoin(h);case 8:return D.abrupt("return",new Promise(function(){var j=H(p().mark(function K(J,se){return p().wrap(function(ie){for(;;)switch(ie.prev=ie.next){case 0:if(A.joinReject_=se,ie.prev=1,A.proxy_||A.schedule_.domains){ie.next=5;break}return ie.next=5,A.schedule(h.roomId);case 5:return A.checkDestroy(),ie.next=8,A.initialize(h);case 8:return ie.next=10,A.doJoin(h);case 10:A.signalInfo_=A.signalChannel_.getSignalInfo(),Y.emit(po,{client:A}),A.joinedTimestamp_=Ct(),ke.logSuccessEvent({userId:A.userId_,eventType:eN,delta:A.joinedTimestamp_-y}),ke.logSuccessEvent({userId:A.userId_,eventType:Tb}),ke.uploadEvent({log:"stat-autoplay-dialog:".concat(A.enableAutoPlayDialog_),userId:A.userId_}),ke.uploadEvent({log:"stat-conv-".concat(ra,"-").concat(location.hostname),userId:A.userId_}),J(),ie.next=23;break;case 20:ie.prev=20,ie.t0=ie.catch(1),se(ie.t0);case 23:A.joinReject_=null;case 24:case"end":return ie.stop()}},K,null,[[1,20]])}));return function(K,J){return j.apply(this,arguments)}}()));case 9:case"end":return D.stop()}},k,this)})),function(k){return R.apply(this,arguments)})},{key:"checkDestroy",value:function(){if(this.isDestroyed_)throw new te({code:Z.INVALID_OPERATION,message:ae({key:tp,data:{funName:"join"}})})}},{key:"uploadTrtcStats",value:(b=H(p().mark(function k(){var h,y,A,D,j,K,J,se,ie,Je,Ue,Fe,ht;return p().wrap(function(ze){for(;;)switch(ze.prev=ze.next){case 0:return ze.prev=0,ze.next=3,xt.getMicrophones();case 3:A=ze.sent,h=A&&A.length,ze.next=9;break;case 7:ze.prev=7,ze.t0=ze.catch(0);case 9:return ze.prev=9,ze.next=12,xt.getCameras();case 12:D=ze.sent,y=D&&D.length,ze.next=18;break;case 16:ze.prev=16,ze.t1=ze.catch(9);case 18:j={microphone:h,camera:y},K=this.checkSystemResult_.detail,J=K.isH264EncodeSupported,se=K.isVp8EncodeSupported,ie=K.isH264DecodeSupported,Je=K.isVp8DecodeSupported,Ue={webRTC:this.basis_.isWebRTCSupported,getUserMedia:this.basis_.isGetUserMediaSupported,webSocket:this.basis_.isWebSocketsSupported,screenShare:this.basis_.isScreenShareSupported,webAudio:this.basis_.isWebAudioSupported,h264Encode:J,h264Decode:ie,vp8Encode:se,vp8Decode:Je},Fe={browser:this.basis_.browser,os:this.basis_.os,trtc:Ue,devices:j},ht={isWebCodecSupported:this.basis_.isWebCodecSupported,isMediaSessionSupported:this.basis_.isMediaSessionSupported,isWebTransportSupported:this.basis_.isWebTransportSupported},ke.uploadEvent({log:"trtcstats-"+JSON.stringify(Fe),userId:this.userId_}),this.log_.info("TrtcStats-"+JSON.stringify(Fe)),ke.uploadEvent({log:"trtcadvancedstats-"+JSON.stringify(ht),userId:this.userId_});case 26:case"end":return ze.stop()}},k,this,[[0,7],[9,16]])})),function(){return b.apply(this,arguments)})},{key:"doJoin",value:function(k){var h=this;return new Promise(function(y,A){h.log_.info("Join() => joining room: ".concat(h.roomId_," useStringRoomId: ").concat(h.useStringRoomId_," mode: ").concat(h.mode_," role: ").concat(h.role_));var D={roomId:String(h.roomId_),useStringRoomId:h.useStringRoomId_,privateMapKey:h.privateMapKey_,trtcRole:h.role_===Tr?so:Vf,trtcScene:h.mode_===zu?XM:KM,sdpSemantics:h.sdpSemantics_,version:P4(h.version_),ua:navigator&&navigator.userAgent||"",autoSubscribe:h.autoSubscribe_,terminalType:ta?4:op?2:ap?3:ec?12:AS?5:PS?13:1,netType:qf[Tp()],bussinessInfo:h.bussinessInfo_,receiveMix:!0};if(h.publishCDNManager_){var j=h.publishCDNManager_.handleCDNConfigForJoinData(h.bussinessInfo_),K=j.bussinessInfo,J=j.pushUserCdnInfo;Object.assign(D,{bussinessInfo:K,pushUserCdnInfo:J})}h.log_.debug("join room signal data: ".concat(JSON.stringify(D))),h.joinTimeout_=setTimeout(function(){A(new te({code:Z.JOIN_ROOM_FAILED,message:ae({key:BN})}))},5e3),Y.emit(Ep,{client:h}),h.signalChannel_.once(mk,function(se){h.clearJoinTimeout(),Y.emit(ll,{client:h,error:se}),A(se)}),h.signalChannel_.send(IU,D),h.signalChannel_.once(st.JOIN_ROOM_RESULT,function(se){h.clearJoinTimeout();var ie=se.data,Je=ie.code,Ue=ie.message,Fe=ie.data;h.onPublishedUserList({data:{userList:Fe.publishers}}),Y.emit(Rp,{client:h,code:Je}),Je===0?(h.isJoined_=!0,h.log_.info("Join room success, start heartbeat"),h.startHeartbeat(),h.badCaseDetector_&&h.badCaseDetector_.start(),h.syncUserList(),h.startSyncUserListInterval(),y()):(h.log_.error("Join room failed result: "+Je+" error: "+Ue),A(new te({code:Z.JOIN_ROOM_FAILED,extraCode:Je,message:ae({key:uS,data:{error:Ue,code:Je}})})))})})}},{key:"reJoin",value:(_=H(p().mark(function k(){return p().wrap(function(h){for(;;)switch(h.prev=h.next){case 0:if(this.isJoined_){h.next=3;break}return this.log_.warn("reJoin abort"),h.abrupt("return");case 3:return this.isJoined_=!1,h.prev=4,this.log_.warn("reJoin pending: ".concat(this.joinOptions_.roomId)),this.subscriptionManager_&&this.subscriptionManager_.markAllStream(),this.signalChannel_.close(),h.next=10,this.signalChannel_.connect();case 10:return h.next=12,this.doJoin(q(q({},this.joinOptions_),{},{role:this.role_,privateMapKey:this.privateMapKey_}));case 12:this.log_.warn("reJoin success"),ke.logSuccessEvent({userId:this.userId_,eventType:xb}),this.checkConnectionsToReconnect(),this.uplinkConnection_&&!this.uplinkConnection_.getIsReconnecting()&&this.uplinkConnection_.startReconnection(),this.mixTranscodeManager_&&this.mixTranscodeManager_.reStartMixTranscode(),h.next=25;break;case 19:h.prev=19,h.t0=h.catch(4),this.log_.warn("reJoin fail "+h.t0),this.reset(),ke.logFailedEvent({userId:this.userId_,eventType:xb,error:h.t0}),this.emitter_.emit(ct.ERROR,new te({code:Z.JOIN_ROOM_FAILED,message:ae({key:FN,data:{roomId:this.joinOptions_.roomId}})}));case 25:case"end":return h.stop()}},k,this,[[4,19]])})),function(){return _.apply(this,arguments)})},{key:"leave",value:(V=H(p().mark(function k(){var h;return p().wrap(function(y){for(;;)switch(y.prev=y.next){case 0:return Y.emit(Ap,{client:this}),vn(this.userId_,{eventId:aV,eventDesc:"leaving room",timestamp:an(),userId:this.userId_,tinyId:this.tinyId_}),y.prev=2,y.next=5,this.doHeartbeat();case 5:y.next=9;break;case 7:y.prev=7,y.t0=y.catch(2);case 9:this.doLeave(),Y.emit(mo,{client:this}),ke.logSuccessEvent({userId:this.userId_,eventType:tN}),h=Math.floor((Ct()-this.joinedTimestamp_)/1e3),ke.logSuccessEvent({userId:this.userId_,eventType:nN,delta:h});case 14:case"end":return y.stop()}},k,this,[[2,7]])})),function(){return V.apply(this,arguments)})},{key:"doLeave",value:function(){this.isJoined_&&(Y.emit(Pp,{client:this}),this.log_.info("leave() => leaving room"),this.signalChannel_.send(wU),this.reset())}},{key:"clearNetworkQuality",value:function(){this.networkQuality_&&(this.networkQuality_.stop(),this.networkQuality_=null)}},{key:"closeConnections",value:function(){var k=this;this.connections_.forEach(function(h){k.closeDownLink(h.getTinyId())})}},{key:"clearJoinTimeout",value:function(){clearTimeout(this.joinTimeout_),this.joinTimeout_=-1}},{key:"destroy",value:function(){var k,h,y;if(this.isJoined_)throw this.log_.warn(vi.INVALID_DESTROY),new te({code:Z.INVALID_OPERATION,message:ae({key:HN})});this.isDestroyed_||(this.log_.info("destroy client"),this.joinReject_&&(this.joinReject_(new te({code:Z.INVALID_OPERATION,message:ae({key:tp,data:{funName:"join"}})})),this.clearJoinTimeout(),this.reset()),this.off("*"),(k=this.callDurationCalculator_)===null||k===void 0||k.destroy(),(h=this.keyPointManager_)===null||h===void 0||h.destroy(),(y=this.deviceDetector_)===null||y===void 0||y.destroy(),this.callDurationCalculator_=null,this.keyPointManager_=null,this.deviceDetector_=null,this.badCaseDetector_=null,this.publishCDNManager_=null,this.isDestroyed_=!0,Y.emit(Up,{client:this}))}},{key:"reset",value:function(){this.isJoined_=!1,this.schedule_={domains:null,iceServers:null,iceTransportPolicy:null,trtcCapability:null},this.keyPointManager_&&this.keyPointManager_.prepareReport(),this.mixTranscodeManager_&&(this.mixTranscodeManager_.reset(),this.mixTranscodeManager_=null),this.publishCDNManager_&&this.publishCDNManager_.reset(),this.userMap_.clear(),this.stopSyncUserListInterval(),this.stopHeartbeat(),this.closeConnections(),this.mutedStates_.clear(),this.clearNetworkQuality(),this.badCaseDetector_&&this.callDurationCalculator_&&this.uploadAllCallStats(),this.closeUplink(),this.signalChannel_&&(this.log_.info("destroying SignalChannel"),this.signalChannel_.close(),this.signalChannel_=null),this.stats_.reset()}},{key:"startSyncUserListInterval",value:function(){this.syncUserListInterval_===-1&&(this.syncUserListInterval_=mt.run(uo,this.syncUserList.bind(this)))}},{key:"stopSyncUserListInterval",value:function(){mt.clearTask(this.syncUserListInterval_),this.syncUserListInterval_=-1}},{key:"syncUserList",value:(N=H(p().mark(function k(){var h,y=this;return p().wrap(function(A){for(;;)switch(A.prev=A.next){case 0:return A.prev=0,A.next=3,this.getUserList();case 3:h=A.sent,this.userMap_.size!==0&&this.userMap_.forEach(function(D){h.findIndex(function(j){return j.userId===D.userId})<0&&(y.log_.info("peer leave detected: ".concat(D.userId)),y.cleanUser({userId:D.userId,tinyId:D.tinyId}))}),h.forEach(function(D){var j=D.userId;y.userMap_.has(j)||j===y.userId_||(y.userMap_.set(j,D),y.emitter_.emit(ct.PEER_JOIN,{userId:j}))}),A.next=11;break;case 8:A.prev=8,A.t0=A.catch(0),this.log_.warn("sync user list failed: "+A.t0);case 11:case"end":return A.stop()}},k,this,[[0,8]])})),function(){return N.apply(this,arguments)})},{key:"getUserList",value:function(){return this.signalChannel_?this.signalChannel_.sendWaitForResponse({command:jU,responseCommand:st.USER_LIST_RES,enableLog:!1,timeout:2e3}).then(function(k){var h=k.data,y=h.code,A=h.message;if(y===0)return(h.data&&h.data.userList||[]).map(function(D){var j=D.userId,K=D.srcTinyId,J=D.role;return new Yv({userId:j,tinyId:K,role:J})});throw ae({key:yS,data:{signalResponse:st.USER_LIST_RES,code:y,message:A}})}):[]}},{key:"publish",value:(L=H(p().mark(function k(h){var y,A,D,j,K,J,se,ie,Je=this,Ue=arguments;return p().wrap(function(Fe){for(;;)switch(Fe.prev=Fe.next){case 0:return y=Ue.length>1&&Ue[1]!==void 0?Ue[1]:{isAuxiliary:!1},h.setPublishState($s),this.isPublishing_=!0,A=Ct(),Y.emit(Lp,{client:this,stream:h}),D=y.isAuxiliary,j=D?gt:Qe,K=h.getScreen(),this.log_.info("publish() => publishing ".concat(K?Of+" ":"").concat(j," stream ").concat(h.getId())),J=this.uplinkConnection_,Fe.prev=10,J||((J=new OF({userId:this.userId_,tinyId:this.tinyId_,client:this,isUplink:!0,signalChannel:this.signalChannel_,enableSEI:this.enableSEI_})).initialize(),J.on(et.ERROR,function(ht){var ze=ht.getCode();ze!==Z.ICE_TRANSPORT_ERROR&&(ze===Z.UPLINK_RECONNECTION_FAILED&&Je.closeUplink(),Je.emitter_.emit(ct.ERROR,ht))})),h.setConnection(J),Fe.next=15,J.publish(h,D);case 15:this.log_.info("local ".concat(K?Of+" ":"").concat(j," stream is published")),this.isPublishing_=!1,D?this.localAuxStream_=h:(this.localStream_=h,this.deviceDetector_&&this.deviceDetector_.setLocalStream(this.localStream_),this.localStream_.getBeautyStatus()&&this.log_.info("beauty stream is published successfully")),h.setPublishState(iN),h.setClient(this,D),this.uplinkConnection_=J,se=Ct(),ie=se-A,ke.logSuccessEvent({userId:this.userId_,eventType:Ib}),ke.logSuccessEvent({userId:this.userId_,eventType:rN,delta:ie}),h.hasAudio()&&vn(this.userId_,{eventId:yk,eventDesc:"publish audio track",timestamp:an(),userId:this.userId_,tinyId:this.tinyId_}),h.hasVideo()&&vn(this.userId_,{eventId:_k,eventDesc:"publish video track",timestamp:an(),userId:this.userId_,tinyId:this.tinyId_}),this.networkQuality_&&this.networkQuality_.setUplinkConnection(this.uplinkConnection_),Y.emit(N4,{localStream:h,isAuxiliary:D,client:this}),this.notPublishWithoutH264Supported_=!1,h.isAIDenoiser&&Ri.handleFunctionState({fnName:"AI_DENOISER"}),Fe.next=42;break;case 33:throw Fe.prev=33,Fe.t0=Fe.catch(10),Fe.t0 instanceof te&&Fe.t0.getCode()===Z.NOT_SUPPORTED_H264&&(this.notPublishWithoutH264Supported_=!0),h.setPublishState(Wb),J.close(),this.log_.error("failed to publish stream "+Fe.t0),this.isPublishing_=!1,ke.logFailedEvent({userId:this.userId_,eventType:Ib,error:Fe.t0}),Fe.t0;case 42:case"end":return Fe.stop()}},k,this,[[10,33]])})),function(k){return L.apply(this,arguments)})},{key:"unpublish",value:(w=H(p().mark(function k(h){var y,A;return p().wrap(function(D){for(;;)switch(D.prev=D.next){case 0:if(this.uplinkConnection_){D.next=2;break}return D.abrupt("return");case 2:return y=h===this.localAuxStream_,A=h.getScreen(),this.log_.info("unpublish() => unpublishing local ".concat(A?Of+" ":"").concat(y?gt:Qe," stream")),D.prev=5,D.next=8,this.uplinkConnection_.unpublish(h);case 8:ke.logSuccessEvent({userId:this.userId_,eventType:wb}),D.next=15;break;case 11:D.prev=11,D.t0=D.catch(5),this.log_.warn("unpublish error ".concat(D.t0)),ke.logFailedEvent({userId:this.userId_,eventType:wb,error:D.t0});case 15:h.setClient(null),h.setConnection(null),y?this.localAuxStream_=null:(this.localStream_=null,h.hasAudio()&&vn(this.userId_,{eventId:Sk,eventDesc:"unpublish audio track",timestamp:an(),userId:this.userId_,tinyId:this.tinyId_}),h.hasVideo()&&vn(this.userId_,{eventId:bk,eventDesc:"unpublish video track",timestamp:an(),userId:this.userId_,tinyId:this.tinyId_})),this.localStream_||this.localAuxStream_||this.closeUplink();case 19:case"end":return D.stop()}},k,this,[[5,11]])})),function(k){return w.apply(this,arguments)})},{key:"closeUplink",value:function(){this.uplinkConnection_&&(this.uplinkConnection_.close(),this.uplinkConnection_=null,this.networkQuality_&&this.networkQuality_.setUplinkConnection(null),this.localStream_&&(this.localStream_.setClient(null),this.localStream_.setConnection(null),this.localStream_=null),this.localAuxStream_&&(this.localAuxStream_.setClient(null),this.localAuxStream_.setConnection(null),this.localAuxStream_=null),this.deviceDetector_&&this.deviceDetector_.setLocalStream(null))}},{key:"closeDownLink",value:function(k){var h=this.connections_.get(k);h&&(h.getIsReconnecting()&&h.stopReconnection(),this.subscriptionManager_&&this.subscriptionManager_.delete(h.getUserId()),h.close(),this.connections_.delete(k),this.mutedStates_.delete(k))}},{key:"subscribe",value:(v=H(p().mark(function k(h,y){var A,D,j;return p().wrap(function(K){for(;;)switch(K.prev=K.next){case 0:return this.log_.info("subscribe() => subscribe to [".concat(h.getUserId(),"] ").concat(h.getType()," stream with options: ").concat(JSON.stringify(y))),ge(y)&&(y={audio:!0,video:!0}),ge(y.audio)&&(y.audio=!0),ge(y.smallVideo)?ge(y.video)&&(y.video=!0):y.smallVideo?ge(y.video)?(y.video=!1,y.smallVideo=!0):y.video&&(y.video=!0,delete y.smallVideo,this.log_.warn("options.video and options.smallVideo can't be both true")):ge(y.video)&&(y.video=!0,delete y.smallVideo),y.video&&this.changeBigSmallRecords_.delete(h.getUserId()),A=h.getConnection(),y.smallVideo&&(A.getTrackState().smallVideo||(this.setRemoteVideoStreamType(h,"small"),y.video=!0,delete y.smallVideo)),K.prev=7,Y.emit(jp,{client:this,stream:h}),K.next=11,A.subscribe(h,y);case 11:this.subscriptionManager_&&this.subscriptionManager_.addSubscriptionRecord(h.getUserId(),h,y),this.notSubscribeWithoutH264Supported_=!1,ke.logSuccessEvent({userId:this.userId_,eventType:Cb}),A.checkTrackEnded(),K.next=25;break;case 17:throw K.prev=17,K.t0=K.catch(7),(D=K.t0 instanceof te?K.t0.getCode():Z.UNKNOWN)===Z.NOT_SUPPORTED_H264&&(this.notSubscribeWithoutH264Supported_=!0),(j=new te(D===Z.REMOTE_STREAM_NOT_EXIST?{code:Z.API_CALL_ABORTED,message:ae({key:ip,data:{message:K.t0.message,stream:h}})}:{code:D,message:ae({key:KN,data:{message:K.t0.message,stream:h}})})).getCode()===Z.API_CALL_ABORTED?this.log_.warn(j):this.log_.error(j),ke.logFailedEvent({userId:this.userId_,eventType:Cb,error:j}),j;case 25:case"end":return K.stop()}},k,this,[[7,17]])})),function(k,h){return v.apply(this,arguments)})},{key:"unsubscribe",value:(T=H(p().mark(function k(h){var y;return p().wrap(function(A){for(;;)switch(A.prev=A.next){case 0:return this.log_.info("unsubscribe() => unsubscribe to [".concat(h.getUserId(),"] ").concat(h.getType()," stream")),A.prev=1,y=h.getConnection(),A.next=5,y.unsubscribe(h);case 5:this.subscriptionManager_&&this.subscriptionManager_.addUnsubscriptionRecord(h.getUserId(),h),Y.emit(Vr,{client:this,stream:h}),ke.logSuccessEvent({userId:this.userId_,eventType:Eb}),A.next=14;break;case 10:throw A.prev=10,A.t0=A.catch(1),ke.logFailedEvent({userId:this.userId_,eventType:Eb,error:A.t0}),A.t0;case 14:case"end":return A.stop()}},k,this,[[1,10]])})),function(k){return T.apply(this,arguments)})},{key:"switchRole",value:(m=H(p().mark(function k(h){return p().wrap(function(y){for(;;)switch(y.prev=y.next){case 0:if(this.role_!==h){y.next=2;break}return y.abrupt("return");case 2:return h===Zi&&this.uplinkConnection_&&this.closeUplink(),this.log_.info("switchRole() => switch role to: "+h),y.next=6,this.doSwitchRole(h);case 6:case"end":return y.stop()}},k,this)})),function(k){return m.apply(this,arguments)})},{key:"doSwitchRole",value:function(k){var h,y,A=this,D={command:BU,data:{role:k===Tr?so:Vf,privateMapKey:this.privateMapKey_},responseCommand:st.SWITCH_ROLE_RES,retries:((h=this.schedule_.config)===null||h===void 0||(y=h.retries)===null||y===void 0?void 0:y.switchRole)||1};return this.log_.info("switchRole signal data: "+JSON.stringify(D.data)),this.signalChannel_.sendWaitForResponseWithRetry(D).then(function(j){var K=j.data,J=K.code,se=K.message;if(J!==0)throw new te({code:Z.SWITCH_ROLE_FAILED,message:ae({key:$N,data:{errMsg:se,errCode:J}})});A.role_=k}).catch(function(j){throw j instanceof te&&j.getCode()===Z.API_CALL_TIMEOUT&&(j=new te({code:Z.SWITCH_ROLE_FAILED,message:ae({key:YN})})),A.log_.error(j),j})}},{key:"on",value:function(k,h,y){this.emitter_.on(k,h,y)}},{key:"off",value:function(k,h,y){k==="*"?this.emitter_.removeAllListeners():this.emitter_.off(k,h,y)}},{key:"getRemoteMutedState",value:function(){var k=this,h=[];return this.mutedStates_.forEach(function(y,A,D){var j=k.connections_.get(A);j&&h.push(q({userId:j.getUserId()},y))}),h}},{key:"getTransportStats",value:(I=H(p().mark(function k(){var h,y,A,D,j,K,J;return p().wrap(function(se){for(;;)switch(se.prev=se.next){case 0:if(h={rtt:0,downlinksRTT:{}},!this.uplinkConnection_){se.next=6;break}return se.next=4,this.stats_.getSenderStats(this.uplinkConnection_);case 4:y=se.sent,h.rtt=y.rtt;case 6:A=oe(this.connections_),se.prev=7,A.s();case 9:if((D=A.n()).done){se.next=17;break}return(j=Te(D.value,2))[0],K=j[1],se.next=13,this.stats_.getReceiverStats(K);case 13:J=se.sent,h.downlinksRTT[J.userId]=J.rtt;case 15:se.next=9;break;case 17:se.next=22;break;case 19:se.prev=19,se.t0=se.catch(7),A.e(se.t0);case 22:return se.prev=22,A.f(),se.finish(22);case 25:return se.abrupt("return",h);case 26:case"end":return se.stop()}},k,this,[[7,19,22,25]])})),function(){return I.apply(this,arguments)})},{key:"getLocalAudioStats",value:(E=H(p().mark(function k(){var h,y;return p().wrap(function(A){for(;;)switch(A.prev=A.next){case 0:if((h={})[this.userId_]={bytesSent:0,packetsSent:0},!this.uplinkConnection_){A.next=7;break}return A.next=5,this.stats_.getSenderStats(this.uplinkConnection_);case 5:y=A.sent,h[this.userId_]={bytesSent:y.audio.bytesSent,packetsSent:y.audio.packetsSent};case 7:return A.abrupt("return",h);case 8:case"end":return A.stop()}},k,this)})),function(){return E.apply(this,arguments)})},{key:"getLocalVideoStats",value:(x=H(p().mark(function k(){var h,y;return p().wrap(function(A){for(;;)switch(A.prev=A.next){case 0:if((h={})[this.userId_]={bytesSent:0,packetsSent:0,framesEncoded:0,framesSent:0,frameWidth:0,frameHeight:0},!this.uplinkConnection_){A.next=7;break}return A.next=5,this.stats_.getSenderStats(this.uplinkConnection_);case 5:y=A.sent,h[this.userId_]={bytesSent:y.video.bytesSent,packetsSent:y.video.packetsSent,framesEncoded:y.video.framesEncoded,framesSent:y.video.framesSent,frameWidth:y.video.frameWidth,frameHeight:y.video.frameHeight};case 7:return A.abrupt("return",h);case 8:case"end":return A.stop()}},k,this)})),function(){return x.apply(this,arguments)})},{key:"getRemoteAudioStats",value:(S=H(p().mark(function k(){var h,y,A,D,j,K,J,se;return p().wrap(function(ie){for(;;)switch(ie.prev=ie.next){case 0:h={},y=oe(this.connections_),ie.prev=2,y.s();case 4:if((A=y.n()).done){ie.next=13;break}return(D=Te(A.value,2))[0],j=D[1],K=j.getDelay(),J=K.audioDelay,ie.next=9,this.stats_.getReceiverStats(j);case 9:(se=ie.sent).hasAudio&&(h[se.userId]={bytesReceived:se.audio.bytesReceived,packetsReceived:se.audio.packetsReceived,packetsLost:se.audio.packetsLost,end2EndDelay:J});case 11:ie.next=4;break;case 13:ie.next=18;break;case 15:ie.prev=15,ie.t0=ie.catch(2),y.e(ie.t0);case 18:return ie.prev=18,y.f(),ie.finish(18);case 21:return ie.abrupt("return",h);case 22:case"end":return ie.stop()}},k,this,[[2,15,18,21]])})),function(){return S.apply(this,arguments)})},{key:"getRemoteVideoStats",value:(f=H(p().mark(function k(){var h,y,A,D,j,K,J,se,ie,Je=arguments;return p().wrap(function(Ue){for(;;)switch(Ue.prev=Ue.next){case 0:h=Je.length>0&&Je[0]!==void 0?Je[0]:yt,y={},A=oe(this.connections_),Ue.prev=3,A.s();case 5:if((D=A.n()).done){Ue.next=15;break}return(j=Te(D.value,2))[0],K=j[1],Ue.next=9,this.stats_.getReceiverStats(K);case 9:J=Ue.sent,se=K.getDelay(),ie=se.videoDelay,h===yt&&J.hasVideo&&(y[J.userId]={bytesReceived:J.video.bytesReceived,packetsReceived:J.video.packetsReceived,packetsLost:J.video.packetsLost,framesDecoded:J.video.framesDecoded,frameWidth:J.video.frameWidth,frameHeight:J.video.frameHeight,end2EndDelay:ie}),h===Dt&&J.hasAuxiliary&&(y[J.userId]={bytesReceived:J.auxiliary.bytesReceived,packetsReceived:J.auxiliary.packetsReceived,packetsLost:J.auxiliary.packetsLost,framesDecoded:J.auxiliary.framesDecoded,frameWidth:J.auxiliary.frameWidth,frameHeight:J.auxiliary.frameHeight,end2EndDelay:ie});case 13:Ue.next=5;break;case 15:Ue.next=20;break;case 17:Ue.prev=17,Ue.t0=Ue.catch(3),A.e(Ue.t0);case 20:return Ue.prev=20,A.f(),Ue.finish(20);case 23:return Ue.abrupt("return",y);case 24:case"end":return Ue.stop()}},k,this,[[3,17,20,23]])})),function(){return f.apply(this,arguments)})},{key:"getSdpSemantics",value:function(){return this.sdpSemantics_}},{key:"getIceServers",value:function(){return this.turnServers_.length===0&&this.schedule_.iceServers?this.schedule_.iceServers:this.turnServers_}},{key:"getConnections",value:function(){return this.connections_}},{key:"getMutedStates",value:function(){return this.mutedStates_}},{key:"startHeartbeat",value:function(){this.heartbeat_===-1&&(this.log_.info("startHeartbeat..."),this.heartbeat_=mt.run(uo,this.doHeartbeat.bind(this),{delay:2e3}))}},{key:"stopHeartbeat",value:function(){this.heartbeat_!==-1&&(this.log_.info("stopHeartbeat"),mt.clearTask(this.heartbeat_),this.heartbeat_=-1,this.lastHeartBeatTime_=-1)}},{key:"doHeartbeat",value:(u=H(p().mark(function k(){var h,y,A,D,j,K;return p().wrap(function(J){for(;;)switch(J.prev=J.next){case 0:return y=this.badCaseDetector_.getMonitorFreeze(),J.next=3,this.stats_.getStatsReport({uplinkConnection:this.uplinkConnection_,downlinkConnections:this.connections_,freezeMap:y});case 3:if(A=J.sent,Y.emit(Dp,{client:this,stats:A}),(h=this.badCaseDetector_)===null||h===void 0||h.resetMonitor(),this.signalChannel_){J.next=8;break}return J.abrupt("return");case 8:D=this.signalChannel_.isConnected()?SV(this.userId_):[],j=q(q({str_sdk_version:this.version_,uint64_datetime:new Date().getTime(),msg_user_info:{str_identifier:this.userId_,uint64_tinyid:this.tinyId_},msg_device_info:{uint32_terminal_type:15,str_device_name:navigator.platform,str_os_version:"",uint32_net_type:qf[this.networkType_]}},A),{},{msg_event_msg:D}),this.signalChannel_.send(CU,j),K=Date.now(),this.lastHeartBeatTime_>0&&K-this.lastHeartBeatTime_>1e4&&this.log_.warn("heartbeat took ".concat(K-this.lastHeartBeatTime_)),this.lastHeartBeatTime_=K,!this.isRelayChanged_&&this.isRelayMaybeFailed()&&(this.reJoin(),this.isRelayChanged_=!0);case 15:case"end":return J.stop()}},k,this)})),function(){return u.apply(this,arguments)})},{key:"onRemoteStreamAdded",value:function(k){var h=k.content,y=h.userId,A=h.tinyId,D=h.audio,j=h.bigVideo,K=h.auxVideo,J=h.smallVideo;if(y!==null){this.userMap_.has(y)||(this.userMap_.set(y,new Yv({userId:y,tinyId:A,role:Tr})),this.emitter_.emit(ct.PEER_JOIN,{userId:y}));var se=this.connections_.get(A);if(se){if(se.getIsReconnecting())return;this.log_.warn("duplicated stream-added observed, rebuild the connection"),se.close(),this.connections_.delete(A)}var ie={audio:D,video:j,auxiliary:K,smallVideo:J};this.log_.info("remote peer [".concat(y,"] published stream. trackState: ").concat(JSON.stringify(ie))),this.createDownlinkConnection({userId:y,tinyId:A,trackState:ie})}else this.log_.warn("received null userId on stream added")}},{key:"createDownlinkConnection",value:function(k){var h=this,y=k.userId,A=k.tinyId,D=k.trackState,j=new n7({userId:y,tinyId:A,client:this,isUplink:!1,signalChannel:this.signalChannel_,autoSubscribe:this.autoSubscribe_,trackState:D,enableSEI:this.enableSEI_});this.connections_.set(A,j),this.installDownlinkEvents(j,y,A),this.autoSubscribe_?(j.initialize(),j.connect().catch(function(){!j.getMainStream()&&j.hasMainStream()&&h.initRemoteStream({type:yt,userId:y,downlinkConnection:j}),!j.getAuxStream()&&j.hasAuxStream()&&h.initRemoteStream({type:Dt,userId:y,downlinkConnection:j})})):(j.hasMainStream()&&this.initRemoteStream({type:yt,userId:y,downlinkConnection:j}),j.hasAuxStream()&&this.initRemoteStream({type:Dt,userId:y,downlinkConnection:j}))}},{key:"initRemoteStream",value:function(k){var h=k.type,y=k.userId,A=k.downlinkConnection,D=new Gv({type:h,userId:y,client:this});D.setConnection(A),A.setRemoteStream(h===yt?xr:Xs,D),D.setIsStreamAddedEventEmitted(!0),Y.emit(dl,{client:this,stream:D}),this.emitter_.emit(ct.STREAM_ADDED,{stream:D})}},{key:"installDownlinkEvents",value:function(k,h,y){var A=this;k.on(et.SEI_MESSAGE,function(D){A.emitter_.emit(ct.SEI_MESSAGE,D)}),k.on(et.STREAM_ADDED,function(D){D.stream.setIsStreamAddedEventEmitted(!0),Y.emit(dl,{client:A,stream:D.stream}),A.emitter_.emit(ct.STREAM_ADDED,{stream:D.stream})}),k.on(et.STREAM_REMOVED,function(D){A.changeBigSmallRecords_.delete(D.stream.getUserId()),D.stream.stop(),D.stream.setIsStreamAddedEventEmitted(!1),A.subscriptionManager_&&A.subscriptionManager_.deleteAutoRecoveryFlag(D.stream.getUserId(),D.stream.getType()),Y.emit(ca,{client:A,stream:D.stream}),A.emitter_.emit(ct.STREAM_REMOVED,{stream:D.stream})}),k.on(et.STREAM_UPDATED,function(D){Y.emit(M4,{client:A,stream:D.stream});var j=k.getMixUserList();j&&(D.mixUserList=j),A.emitter_.emit(ct.STREAM_UPDATED,D)}),k.on(et.STREAM_SUBSCRIBED,function(D){Y.emit(Ur,{client:A,stream:D.stream}),A.emitter_.emit(ct.STREAM_SUBSCRIBED,{stream:D.stream})}),k.on(et.ERROR,function(D){var j=D.getCode();j!==Z.ICE_TRANSPORT_ERROR&&(j===Z.DOWNLINK_RECONNECTION_FAILED&&A.closeDownLink(y),A.emitter_.emit(ct.ERROR,D))})}},{key:"onPeerJoin",value:function(k){var h=k.data.data,y=h.srcTinyId,A=h.userId,D=h.role;this.userMap_.has(A)||(this.userMap_.set(A,new Yv({userId:A,tinyId:y,role:D})),this.emitter_.emit(ct.PEER_JOIN,{userId:A}))}},{key:"onPeerLeave",value:function(k){var h=k.data.data,y=h.srcTinyId,A=h.userId,D=h.reason,j=D===void 0?0:D;this.log_.info("peer leave [".concat(A,"]: ").concat(hN[j])),this.cleanUser({userId:A,tinyId:y})}},{key:"cleanUser",value:function(k){var h=k.userId,y=k.tinyId;this.userMap_.delete(h),this.closeDownLink(y),this.emitter_.emit(ct.PEER_LEAVE,{userId:h})}},{key:"onPublishedUserList",value:function(k){var h=this;try{var y=Se(k.data.userList);k.data.mixRobotList&&y.push.apply(y,Se(k.data.mixRobotList)),k.data.fakeMixUser&&y.push(k.data.fakeMixUser);var A=y.map(function(D){return D.userId});this.connections_.forEach(function(D){var j=D.getUserId(),K=D.getTinyId();A.findIndex(function(J){return J===j})<0&&(h.log_.info("peer unpublished detected [".concat(j,"]")),h.closeDownLink(K))}),y.forEach(function(D){var j=D.userId,K=D.srcTinyId,J=D.flag,se=D.mixUserList;if(j!==h.userId_){var ie=!!(1&J),Je=!!(8&J),Ue=!!(4&J),Fe=!!(2&J),ht=h.connections_.get(K);if((Fe||ie)&&h.checkSubscribeBigSmallVideo(ht,Fe),ht){var ze=ht.getTrackState(),Cc=ze.audio,hd=ze.video,Ec=ze.auxiliary,QI=ze.smallVideo;ho(se)&&ht.setMixUserList(se),!hd&&ie&&Y.emit(jn,{client:h,tinyId:K,userId:j,action:cn.ADD,kind:xe}),!Cc&&Je&&Y.emit(jn,{client:h,tinyId:K,userId:j,action:cn.ADD,kind:Ee}),!Ec&&Ue&&Y.emit(jn,{client:h,tinyId:K,userId:j,action:cn.ADD,kind:gt}),!QI&&Fe&&Y.emit(jn,{client:h,tinyId:K,userId:j,action:cn.ADD,kind:Fu}),hd&&!ie&&Y.emit(jn,{client:h,tinyId:K,userId:j,action:cn.REMOVE,kind:xe}),Cc&&!Je&&Y.emit(jn,{client:h,tinyId:K,userId:j,action:cn.REMOVE,kind:Ee}),Ec&&!Ue&&Y.emit(jn,{client:h,tinyId:K,userId:j,action:cn.REMOVE,kind:gt}),QI&&!Fe&&Y.emit(jn,{client:h,tinyId:K,userId:j,action:cn.REMOVE,kind:Fu})}else h.log_.info("peer published detected [".concat(j,"]")),h.onRemoteStreamAdded({content:{audio:Je,bigVideo:ie,auxVideo:Ue,smallVideo:Fe,userId:j,tinyId:K}})}})}catch(D){}}},{key:"onUpdateRemoteMuteStat",value:function(k){var h=this,y=k.data;(y&&y.userList||[]).forEach(function(A){var D=A.srcTinyId,j=A.userId;if(D!==0&&D!==h.tinyId_){var K=h.connections_.get(D);if(K){var J=K.getMainStream();if(J&&J.getIsStreamAddedEventEmitted()){var se=!!(1&A.flag),ie=!!(8&A.flag),Je=!!(2&A.flag),Ue=!!(64&A.flag),Fe=!!(16&A.flag),ht=h.mutedStates_.get(D);if(ht===void 0)return h.mutedStates_.set(D,{hasAudio:ie,hasVideo:se,hasSmall:Je,audioMuted:Ue,videoMuted:Fe}),se?Fe?h.emitter_.emit(ct.MUTE_VIDEO,{userId:j}):h.emitter_.emit(ct.UNMUTE_VIDEO,{userId:j}):h.emitter_.emit(ct.MUTE_VIDEO,{userId:j}),void(ie?Ue?h.emitter_.emit(ct.MUTE_AUDIO,{userId:j}):h.emitter_.emit(ct.UNMUTE_AUDIO,{userId:j}):h.emitter_.emit(ct.MUTE_AUDIO,{userId:j}));var ze=!ht.audioMuted&&ht.hasAudio,Cc=!Ue&&ie,hd=!ht.videoMuted&&ht.hasVideo,Ec=!Fe&&se;h.mutedStates_.set(D,{hasAudio:ie,hasVideo:se,hasSmall:Je,audioMuted:Ue,videoMuted:Fe}),ze!==Cc&&(Cc?h.emitter_.emit(ct.UNMUTE_AUDIO,{userId:j}):h.emitter_.emit(ct.MUTE_AUDIO,{userId:j})),hd!==Ec&&(Ec?h.emitter_.emit(ct.UNMUTE_VIDEO,{userId:j}):h.emitter_.emit(ct.MUTE_VIDEO,{userId:j}))}}else h.mutedStates_.delete(D)}})}},{key:"getEnv",value:function(){return this.env_}},{key:"getSubscriptionManager",value:function(){return this.subscriptionManager_}},{key:"startPublishCDNStream",value:(l=H(p().mark(function k(){var h,y=arguments;return p().wrap(function(A){for(;;)switch(A.prev=A.next){case 0:if(h=y.length>0&&y[0]!==void 0?y[0]:{},this.log_.info("startPublishCDNStream with params: ".concat(JSON.stringify(h),"; isJoined: ").concat(this.isJoined_,"; hasMainStream: ").concat(!!this.localStream_,"; hasAuxStream: ").concat(!!this.localAuxStream_,";")),h.streamType=h.streamType||Qe,h.streamType===gt&&(h.streamType=Nn),h.streamId=h.streamId||"",!this.isJoined_){A.next=10;break}if(h.streamType!==Qe||this.localStream_){A.next=8;break}throw new te({code:Z.INVALID_OPERATION,message:ae({key:lS})});case 8:if(h.streamType!==Nn||this.localAuxStream_){A.next=10;break}throw new te({code:Z.INVALID_OPERATION,message:ae({key:lS})});case 10:return A.next=12,this.publishCDNManager_.startPublishTencentCDN(h);case 12:if(!(h.appId&&h.bizId&&h.url)){A.next=15;break}return A.next=15,this.publishCDNManager_.startPublishGivenCDN(h);case 15:case"end":return A.stop()}},k,this)})),function(){return l.apply(this,arguments)})},{key:"stopPublishCDNStream",value:(s=H(p().mark(function k(){return p().wrap(function(h){for(;;)switch(h.prev=h.next){case 0:if(this.publishCDNManager_.getIsPublishingTencentCDN()){h.next=2;break}throw new te({code:Z.INVALID_OPERATION,message:ae({key:e3})});case 2:return this.log_.info("stopPublishCDNStream"),h.next=5,this.publishCDNManager_.stopPublishTencentCDN();case 5:if(!this.publishCDNManager_.getIsPublishingGivenCDN()){h.next=8;break}return h.next=8,this.publishCDNManager_.stopPublishGivenCDN();case 8:case"end":return h.stop()}},k,this)})),function(){return s.apply(this,arguments)})},{key:"startMixTranscode",value:(a=H(p().mark(function k(h){return p().wrap(function(y){for(;;)switch(y.prev=y.next){case 0:if(this.isJoined_&&this.mixTranscodeManager_){y.next=2;break}throw new te({code:Z.INVALID_OPERATION,message:ae({key:n3})});case 2:return ge(h.mode)&&(h.mode=Jf.MANUAL),y.prev=3,this.log_.info("startMixTranscode with config ".concat(JSON.stringify(h))),ke.uploadEvent({log:"mix-transcode-mode:".concat(h.mode),userId:this.userId_}),y.next=8,this.mixTranscodeManager_.startMixTranscode(h);case 8:ke.logSuccessEvent({userId:this.userId_,eventType:Vb}),y.next=15;break;case 11:throw y.prev=11,y.t0=y.catch(3),ke.logFailedEvent({userId:this.userId_,eventType:Vb,error:y.t0}),y.t0;case 15:case"end":return y.stop()}},k,this,[[3,11]])})),function(k){return a.apply(this,arguments)})},{key:"stopMixTranscode",value:(c=H(p().mark(function k(){return p().wrap(function(h){for(;;)switch(h.prev=h.next){case 0:if(this.isJoined_&&this.mixTranscodeManager_){h.next=2;break}throw new te({code:Z.INVALID_OPERATION,message:ae({key:r3})});case 2:return h.prev=2,h.next=5,this.mixTranscodeManager_.stopMixTranscode();case 5:ke.logSuccessEvent({userId:this.userId_,eventType:jb}),h.next=12;break;case 8:throw h.prev=8,h.t0=h.catch(2),ke.logFailedEvent({userId:this.userId_,eventType:jb,error:h.t0}),h.t0;case 12:case"end":return h.stop()}},k,this,[[2,8]])})),function(){return c.apply(this,arguments)})},{key:"getSystemResult",value:function(){return this.checkSystemResult_}},{key:"enableAudioVolumeEvaluation",value:function(){var k=this,h=arguments.length>0&&arguments[0]!==void 0?arguments[0]:2e3,y=arguments.length>1&&arguments[1]!==void 0&&arguments[1];if(!tr(h))throw new te({code:Z.INVALID_PARAMETER,message:ae({key:i3})});if(this.log_.info("enableAudioVolumeEvaluation with interval: "+h),h<=0)return this.enableAudioVolumeEvaluation_=!1,mt.clearTask(this.audioVolumeIntervalId_),void(this.audioVolumeIntervalId_=null);h=Math.floor(Math.max(h,16)),Y.emit(Np,{interval:h}),this.audioVolumeIntervalId_&&(mt.clearTask(this.audioVolumeIntervalId_),this.audioVolumeIntervalId_=null),this.enableAudioVolumeEvaluation_=!0,this.audioVolumeIntervalId_=mt.run(Qu,function(){var A=[];if(k.localStream_){var D=Math.floor(100*k.localStream_.getAudioLevel());A.push({userId:k.userId_,audioVolume:D,stream:k.localStream_})}k.connections_.forEach(function(j){var K=j.getSubscribedMainStream();if(K){var J=Math.floor(100*K.getAudioLevel());A.push({userId:j.getUserId(),audioVolume:J,stream:K})}}),k.emitter_.emit(ct.AUDIO_VOLUME,{result:A})},{fps:1e3/h,backgroundTask:y})}},{key:"callExperimentalAPI",value:function(k,h){return this.log_.info("callExperimentalAPI(".concat(k,", ").concat(JSON.stringify(h),")")),c7.call(k,q({client:this},h))}},{key:"setProperty",value:function(k,h){var y="".concat(k,"_");ge(this[y])||(this[y]=h)}},{key:"uploadAllCallStats",value:function(){var k=this;this.callDurationCalculator_.getDurationMap().forEach(function(h,y){var A={userId:h.userId,type:h.type,duration:k.callDurationCalculator_.getDuration(y,xe),dataFreeze:k.badCaseDetector_.getDataFreezeDuration(y).dataFreeze,renderFreeze:k.badCaseDetector_.getRenderFreezeDuration(y).renderFreeze};ke.uploadEvent({log:"callStats-"+JSON.stringify(A),userId:k.userId_})}),this.badCaseDetector_.stop(),this.callDurationCalculator_.reset()}},{key:"enableSmallStream",value:(o=H(p().mark(function k(){return p().wrap(function(h){for(;;)switch(h.prev=h.next){case 0:if(!this.isPublished()&&!this.isPublishing_){h.next=2;break}throw new te({code:Z.INVALID_OPERATION,message:ae({key:a3})});case 2:if(!zk()){h.next=7;break}this.setIsEnableSmallStream(!0),this.log_.info("SmallStream successfully enabled"),h.next=8;break;case 7:throw new te({code:Z.INVALID_OPERATION,message:ae({key:s3})});case 8:case"end":return h.stop()}},k,this)})),function(){return o.apply(this,arguments)})},{key:"disableSmallStream",value:(r=H(p().mark(function k(){return p().wrap(function(h){for(;;)switch(h.prev=h.next){case 0:if(!this.isPublished()&&!this.isPublishing_){h.next=2;break}throw new te({code:Z.INVALID_OPERATION,message:ae({key:o3})});case 2:this.setIsEnableSmallStream(!1),this.log_.info("SmallStream successfully disabled");case 4:case"end":return h.stop()}},k,this)})),function(){return r.apply(this,arguments)})},{key:"setSmallStreamProfile",value:function(k){var h=this;k&&k.framerate&&(k.frameRate=k.framerate),k.width*k.height>307200&&(k.width=320,k.height=240,this.log_.info("Small stream resolution is beyond limitation, which is invalid. Reset to 320 * 240")),Object.keys(this.smallStreamConfig_).forEach(function(J){k[J]&&(h.smallStreamConfig_[J]=k[J])});var y=this.smallStreamConfig_,A=y.width,D=y.height,j=y.bitrate,K=y.frameRate;if(this.log_.info("setSmallStreamProfile: bitrate=".concat(j,", frameRate=").concat(K,", height=").concat(D,", width=").concat(A)),A<0||D<0||j<0||K<0)throw new te({code:Z.INVALID_PARAMETER,message:ae({key:c3})})}},{key:"setRemoteVideoStreamType",value:(i=H(p().mark(function k(h,y){return p().wrap(function(A){for(;;)switch(A.prev=A.next){case 0:if(h instanceof Gv){A.next=2;break}throw new te({code:Z.INVALID_PARAMETER,message:ae({key:u3})});case 2:if(h.getConnection()){A.next=4;break}throw new te({code:Z.INVALID_OPERATION,message:ae({key:ep})});case 4:if(h.getType()!==Dt){A.next=6;break}return A.abrupt("return");case 6:A.t0=y,A.next=A.t0===Jb||A.t0===qb?9:12;break;case 9:return A.next=11,this.changeVideoType(h,y);case 11:case 12:return A.abrupt("break",13);case 13:case"end":return A.stop()}},k,this)})),function(k,h){return i.apply(this,arguments)})},{key:"changeVideoType",value:(n=H(p().mark(function k(h,y){var A,D;return p().wrap(function(j){for(;;)switch(j.prev=j.next){case 0:A=h.getUserId(),D={stream:h,options:{video:y===Jb,smallVideo:y===qb},isSubscribing:!1,reSubscribeCount:10},this.changeBigSmallRecords_.set(A,D),this.log_.info("set [".concat(A,"] ").concat(h.getType()," stream video prefer type: ").concat(y));case 5:case"end":return j.stop()}},k,this)})),function(k,h){return n.apply(this,arguments)})},{key:"checkSubscribeBigSmallVideo",value:(t=H(p().mark(function k(h,y){var A,D,j,K,J,se,ie,Je,Ue,Fe,ht;return p().wrap(function(ze){for(;;)switch(ze.prev=ze.next){case 0:if(h!=null&&h.isBigStreamSubscribed||h!=null&&h.isSmallStreamSubscribed){ze.next=2;break}return ze.abrupt("return");case 2:if(A=h.getUserId(),this.changeBigSmallRecords_.has(A)){ze.next=5;break}return ze.abrupt("return");case 5:if(D=this.changeBigSmallRecords_.get(A),j=h.getSubscribeState(),K=j.video,J=j.smallVideo,se=D.stream,ie=D.options,Je=D.isSubscribing,Ue=D.reSubscribeCount,!(ie.video&&K||ie.smallVideo&&J&&y)){ze.next=10;break}return ze.abrupt("return");case 10:if(Fe={video:ie.video,smallVideo:ie.smallVideo},!(y&&h.isBigStreamSubscribed||h.isSmallStreamSubscribed)){ze.next=31;break}if(ze.prev=12,!(ie&&se&&!Je&&Ue>=1)){ze.next=24;break}return D.isSubscribing=!0,D.reSubscribeCount=Ue-1,ht=se.getConnection(),!y&&ht.isSmallStreamSubscribed&&(Fe={video:!0,smallVideo:!1}),Fe.emitEvent=!1,ze.next=21,ht==null?void 0:ht.subscribe(se,Fe);case 21:this.log_.info("change [".concat(A,"] to ").concat(Fe.smallVideo?"small":"big"," video successfully. count ").concat(10-D.reSubscribeCount,".")),D.isSubscribing=!1,D.reSubscribeCount=10;case 24:ze.next=31;break;case 26:ze.prev=26,ze.t0=ze.catch(12),this.log_.info("change [".concat(A,"] to ").concat(Fe.smallVideo?"small":"big"," video failed. count ").concat(10-D.reSubscribeCount,".")),D.isSubscribing=!1,Ue===0&&this.changeBigSmallRecords_.delete(A);case 31:case"end":return ze.stop()}},k,this,[[12,26]])})),function(k,h){return t.apply(this,arguments)})},{key:"setIsEnableSmallStream",value:function(k){this.isEnableSmallStream_=k}},{key:"getIsEnableSmallStream",value:function(){return this.isEnableSmallStream_}},{key:"smallStreamConfig",get:function(){return this.smallStreamConfig_}},{key:"isPublished",value:function(){return!!this.localStream_}},{key:"getUplinkConnection",value:function(){return this.uplinkConnection_}},{key:"getLocalStream",value:function(){return this.localStream_}},{key:"getMode",value:function(){return this.mode_}},{key:"getBadCaseDetector",value:function(){return this.badCaseDetector_}},{key:"getCallDurationCalculator",value:function(){return this.callDurationCalculator_}},{key:"getIsJoined",value:function(){return this.isJoined_}},{key:"getAllConnections",value:function(){var k=Se(this.connections_.values());return this.uplinkConnection_&&k.push(this.uplinkConnection_),k}},{key:"isRelayMaybeFailed",value:function(){if(!this.signalChannel_.isOnline)return!1;var k=this.getAllConnections();if(k.length===0)return!1;for(var h=0;h<k.length;h++)if(k[h].getReconnectionCount()<6)return!1;return!0}},{key:"getUseStringRoomId",value:function(){return this.useStringRoomId_}},{key:"checkConnectionsToReconnect",value:function(){var k=this;this.getAllConnections().forEach(function(h){if(!h.getIsReconnecting()){var y=h.getPeerConnection();y&&y.connectionState===Bf&&(k.log_.warn("[".concat(h.getUserId(),"] pc is closed but not reconnect")),h.startReconnection())}})}},{key:"getEnableAutoPlayDialog",value:function(){return this.enableAutoPlayDialog_}},{key:"sendSEIMessage",value:function(k,h){this.uplinkConnection_.sendSEI(k,h)}},{key:"setProxyServer",value:function(k){if(this.log_.info("set proxy server: ".concat(JSON.stringify(k))),Bt(k)){if(!k.startsWith("wss://"))throw new te({code:Z.INVALID_PARAMETER,message:ae({key:NN})});this.proxy_=k}else if(yi(k)){var h=k.websocketProxy,y=k.loggerProxy,A=k.scheduleProxy,D=k.unifiedProxy;h&&(this.proxy_=h),y&&Uf(y),A&&Xb(A),D&&(this.unifiedProxy_=D,Uf("https://".concat(D)),Xb(D))}}},{key:"setTurnServer",value:function(k){this.log_.info("set turn server: "+JSON.stringify(k));var h=[];Array.isArray(k)?k.forEach(function(y){return h.push(jS(y))}):yi(k)&&h.push(jS(k)),this.turnServers_=h}},{key:"get2k4kFlag",value:function(){var k,h;return((k=this.schedule_)===null||k===void 0||(h=k.trtcCapability)===null||h===void 0?void 0:h["2k4k"])||2}},{key:"getWSProxy",value:function(){return this.proxy_}},{key:"getUnifiedProxy",value:function(){return this.unifiedProxy_}}]),e}(),X(Pe.prototype,"join",[fI,pI,mI],Object.getOwnPropertyDescriptor(Pe.prototype,"join"),Pe.prototype),X(Pe.prototype,"leave",[vI],Object.getOwnPropertyDescriptor(Pe.prototype,"leave"),Pe.prototype),X(Pe.prototype,"getUserList",[gI],Object.getOwnPropertyDescriptor(Pe.prototype,"getUserList"),Pe.prototype),X(Pe.prototype,"publish",[_I,yI,bI],Object.getOwnPropertyDescriptor(Pe.prototype,"publish"),Pe.prototype),X(Pe.prototype,"unpublish",[SI,kI],Object.getOwnPropertyDescriptor(Pe.prototype,"unpublish"),Pe.prototype),X(Pe.prototype,"subscribe",[TI],Object.getOwnPropertyDescriptor(Pe.prototype,"subscribe"),Pe.prototype),X(Pe.prototype,"unsubscribe",[xI],Object.getOwnPropertyDescriptor(Pe.prototype,"unsubscribe"),Pe.prototype),X(Pe.prototype,"switchRole",[II,wI,CI],Object.getOwnPropertyDescriptor(Pe.prototype,"switchRole"),Pe.prototype),X(Pe.prototype,"startPublishCDNStream",[EI,RI],Object.getOwnPropertyDescriptor(Pe.prototype,"startPublishCDNStream"),Pe.prototype),X(Pe.prototype,"stopPublishCDNStream",[AI],Object.getOwnPropertyDescriptor(Pe.prototype,"stopPublishCDNStream"),Pe.prototype),X(Pe.prototype,"startMixTranscode",[PI,DI],Object.getOwnPropertyDescriptor(Pe.prototype,"startMixTranscode"),Pe.prototype),X(Pe.prototype,"stopMixTranscode",[OI],Object.getOwnPropertyDescriptor(Pe.prototype,"stopMixTranscode"),Pe.prototype),X(Pe.prototype,"enableAudioVolumeEvaluation",[LI],Object.getOwnPropertyDescriptor(Pe.prototype,"enableAudioVolumeEvaluation"),Pe.prototype),X(Pe.prototype,"enableSmallStream",[MI],Object.getOwnPropertyDescriptor(Pe.prototype,"enableSmallStream"),Pe.prototype),X(Pe.prototype,"disableSmallStream",[NI],Object.getOwnPropertyDescriptor(Pe.prototype,"disableSmallStream"),Pe.prototype),X(Pe.prototype,"setSmallStreamProfile",[UI],Object.getOwnPropertyDescriptor(Pe.prototype,"setSmallStreamProfile"),Pe.prototype),X(Pe.prototype,"setRemoteVideoStreamType",[VI],Object.getOwnPropertyDescriptor(Pe.prototype,"setRemoteVideoStreamType"),Pe.prototype),X(Pe.prototype,"sendSEIMessage",[jI,BI,FI],Object.getOwnPropertyDescriptor(Pe.prototype,"sendSEIMessage"),Pe.prototype),X(Pe.prototype,"setProxyServer",[HI],Object.getOwnPropertyDescriptor(Pe.prototype,"setProxyServer"),Pe.prototype),X(Pe.prototype,"setTurnServer",[GI],Object.getOwnPropertyDescriptor(Pe.prototype,"setTurnServer"),Pe.prototype),Pe),l7=0,d7=0,h7=(zI=St(Zs),WI=St(Zs),JI=St(Zs),qI=Ql(Yt.TRTC.createClient),KI=St(Zs),XI=Ql(Yt.TRTC.createStream),$t=function(){function e(){Q(this,e),this.name_=Zs,this.VERSION=Gi,this.Logger={loggerManager:_e,LogLevel:Un,setLogLevel:function(n){_e.setLogLevel(n),n<=1&&R4()},enableUploadLog:function(){Ri.handleFunctionState({fnName:"TRTC.enableUploadLog"}),_e.enableUploadLog()},disableUploadLog:function(){_e.warn("disableUploadLog"),Ri.handleFunctionState({fnName:"TRTC.disableUploadLog"}),_e.disableUploadLog()}}}var t;return Ie(e,[{key:"checkSystemRequirements",value:(t=H(p().mark(function n(){return p().wrap(function(i){for(;;)switch(i.prev=i.next){case 0:return i.next=2,Sm();case 2:return i.abrupt("return",i.sent);case 3:case"end":return i.stop()}},n)})),function(){return t.apply(this,arguments)})},{key:"isScreenShareSupported",value:function(){return Bk()}},{key:"isSmallStreamSupported",value:function(){return zk()}},{key:"getDevices",value:function(){return Em()}},{key:"getCameras",value:function(){return function(){return Cm.apply(this,arguments)}()}},{key:"getMicrophones",value:function(){return Xk()}},{key:"getSpeakers",value:function(){return Qk()}},{key:"createClient",value:function(n){(function(){if(QS&&(QS=!1,_e.getLogLevel()!=xt.Logger.LogLevel.NONE&&(console.info("******************************************************************************"),console.info("* TRTC Web SDK"),console.info("* API Document: "+"".concat(Yf,"index.html")),console.info("* Changelog: https://cloud.tencent.com/document/product/647/38958"),console.info("* Report issues: https://github.com/LiteAVSDK/TRTC_Web/issues"),console.info("******************************************************************************")),_e.info("TRTC Web SDK Version: 4.15.21"),_e.info("UserAgent: "+navigator.userAgent),_e.info("URL of current page: "+location.href),navigator.userAgentData&&ln(navigator.userAgentData.getHighEntropyValues)))try{navigator.userAgentData.getHighEntropyValues(["architecture","bitness","model","platformVersion","fullVersionList"]).then(function(o){var c="UAData: ".concat(o.platform,"/").concat(o.platformVersion);o.architecture&&o.bitness&&(c+=" ".concat(o.architecture,"/").concat(o.bitness)),o.mobile&&(c+=" mobile"),o.model&&(c+=" model: ".concat(o.model)),o.fullVersionList&&(c+=" ".concat(o.fullVersionList.filter(function(a){return a.brand!=="Not/A)Brand"}).map(function(a){return"".concat(a.brand,"/").concat(a.version)}).join(","))),_e.info(c)}).catch(function(){})}catch(o){}})();var i={version:this.VERSION},r=new u7(q(q(q({},i),n),{},{seq:++l7}));return Y.emit(JS,{client:r}),r}},{key:"createStream",value:function(n){return new DF(q(q({},n),{},{seq:++d7}))}}]),e}(),X($t.prototype,"checkSystemRequirements",[zI],Object.getOwnPropertyDescriptor($t.prototype,"checkSystemRequirements"),$t.prototype),X($t.prototype,"isScreenShareSupported",[WI],Object.getOwnPropertyDescriptor($t.prototype,"isScreenShareSupported"),$t.prototype),X($t.prototype,"isSmallStreamSupported",[JI],Object.getOwnPropertyDescriptor($t.prototype,"isSmallStreamSupported"),$t.prototype),X($t.prototype,"createClient",[qI,KI],Object.getOwnPropertyDescriptor($t.prototype,"createClient"),$t.prototype),X($t.prototype,"createStream",[XI],Object.getOwnPropertyDescriptor($t.prototype,"createStream"),$t.prototype),$t),xt=new h7;return xt})});var ig=eg((L7,rg)=>{"use strict";var No=typeof Reflect=="object"?Reflect:null,tw=No&&typeof No.apply=="function"?No.apply:function(q,p,G){return Function.prototype.apply.call(q,p,G)},md;No&&typeof No.ownKeys=="function"?md=No.ownKeys:Object.getOwnPropertySymbols?md=function(q){return Object.getOwnPropertyNames(q).concat(Object.getOwnPropertySymbols(q))}:md=function(q){return Object.getOwnPropertyNames(q)};function S7(ne){console&&console.warn&&console.warn(ne)}var rw=Number.isNaN||function(q){return q!==q};function vt(){vt.init.call(this)}rg.exports=vt;rg.exports.once=I7;vt.EventEmitter=vt;vt.prototype._events=void 0;vt.prototype._eventsCount=0;vt.prototype._maxListeners=void 0;var nw=10;function vd(ne){if(typeof ne!="function")throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof ne)}Object.defineProperty(vt,"defaultMaxListeners",{enumerable:!0,get:function(){return nw},set:function(ne){if(typeof ne!="number"||ne<0||rw(ne))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+ne+".");nw=ne}});vt.init=function(){(this._events===void 0||this._events===Object.getPrototypeOf(this)._events)&&(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0};vt.prototype.setMaxListeners=function(q){if(typeof q!="number"||q<0||rw(q))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+q+".");return this._maxListeners=q,this};function iw(ne){return ne._maxListeners===void 0?vt.defaultMaxListeners:ne._maxListeners}vt.prototype.getMaxListeners=function(){return iw(this)};vt.prototype.emit=function(q){for(var p=[],G=1;G<arguments.length;G++)p.push(arguments[G]);var $=q==="error",H=this._events;if(H!==void 0)$=$&&H.error===void 0;else if(!$)return!1;if($){var Q;if(p.length>0&&(Q=p[0]),Q instanceof Error)throw Q;var Re=new Error("Unhandled error."+(Q?" ("+Q.message+")":""));throw Re.context=Q,Re}var Ie=H[q];if(Ie===void 0)return!1;if(typeof Ie=="function")tw(Ie,this,p);else for(var $e=Ie.length,Et=uw(Ie,$e),G=0;G<$e;++G)tw(Et[G],this,p);return!0};function aw(ne,q,p,G){var $,H,Q;if(vd(p),H=ne._events,H===void 0?(H=ne._events=Object.create(null),ne._eventsCount=0):(H.newListener!==void 0&&(ne.emit("newListener",q,p.listener?p.listener:p),H=ne._events),Q=H[q]),Q===void 0)Q=H[q]=p,++ne._eventsCount;else if(typeof Q=="function"?Q=H[q]=G?[p,Q]:[Q,p]:G?Q.unshift(p):Q.push(p),$=iw(ne),$>0&&Q.length>$&&!Q.warned){Q.warned=!0;var Re=new Error("Possible EventEmitter memory leak detected. "+Q.length+" "+String(q)+" listeners added. Use emitter.setMaxListeners() to increase limit");Re.name="MaxListenersExceededWarning",Re.emitter=ne,Re.type=q,Re.count=Q.length,S7(Re)}return ne}vt.prototype.addListener=function(q,p){return aw(this,q,p,!1)};vt.prototype.on=vt.prototype.addListener;vt.prototype.prependListener=function(q,p){return aw(this,q,p,!0)};function k7(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,arguments.length===0?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function ow(ne,q,p){var G={fired:!1,wrapFn:void 0,target:ne,type:q,listener:p},$=k7.bind(G);return $.listener=p,G.wrapFn=$,$}vt.prototype.once=function(q,p){return vd(p),this.on(q,ow(this,q,p)),this};vt.prototype.prependOnceListener=function(q,p){return vd(p),this.prependListener(q,ow(this,q,p)),this};vt.prototype.removeListener=function(q,p){var G,$,H,Q,Re;if(vd(p),$=this._events,$===void 0)return this;if(G=$[q],G===void 0)return this;if(G===p||G.listener===p)--this._eventsCount===0?this._events=Object.create(null):(delete $[q],$.removeListener&&this.emit("removeListener",q,G.listener||p));else if(typeof G!="function"){for(H=-1,Q=G.length-1;Q>=0;Q--)if(G[Q]===p||G[Q].listener===p){Re=G[Q].listener,H=Q;break}if(H<0)return this;H===0?G.shift():T7(G,H),G.length===1&&($[q]=G[0]),$.removeListener!==void 0&&this.emit("removeListener",q,Re||p)}return this};vt.prototype.off=vt.prototype.removeListener;vt.prototype.removeAllListeners=function(q){var p,G,$;if(G=this._events,G===void 0)return this;if(G.removeListener===void 0)return arguments.length===0?(this._events=Object.create(null),this._eventsCount=0):G[q]!==void 0&&(--this._eventsCount===0?this._events=Object.create(null):delete G[q]),this;if(arguments.length===0){var H=Object.keys(G),Q;for($=0;$<H.length;++$)Q=H[$],Q!=="removeListener"&&this.removeAllListeners(Q);return this.removeAllListeners("removeListener"),this._events=Object.create(null),this._eventsCount=0,this}if(p=G[q],typeof p=="function")this.removeListener(q,p);else if(p!==void 0)for($=p.length-1;$>=0;$--)this.removeListener(q,p[$]);return this};function sw(ne,q,p){var G=ne._events;if(G===void 0)return[];var $=G[q];return $===void 0?[]:typeof $=="function"?p?[$.listener||$]:[$]:p?x7($):uw($,$.length)}vt.prototype.listeners=function(q){return sw(this,q,!0)};vt.prototype.rawListeners=function(q){return sw(this,q,!1)};vt.listenerCount=function(ne,q){return typeof ne.listenerCount=="function"?ne.listenerCount(q):cw.call(ne,q)};vt.prototype.listenerCount=cw;function cw(ne){var q=this._events;if(q!==void 0){var p=q[ne];if(typeof p=="function")return 1;if(p!==void 0)return p.length}return 0}vt.prototype.eventNames=function(){return this._eventsCount>0?md(this._events):[]};function uw(ne,q){for(var p=new Array(q),G=0;G<q;++G)p[G]=ne[G];return p}function T7(ne,q){for(;q+1<ne.length;q++)ne[q]=ne[q+1];ne.pop()}function x7(ne){for(var q=new Array(ne.length),p=0;p<q.length;++p)q[p]=ne[p].listener||ne[p];return q}function I7(ne,q){return new Promise(function(p,G){function $(Q){ne.removeListener(q,H),G(Q)}function H(){typeof ne.removeListener=="function"&&ne.removeListener("error",$),p([].slice.call(arguments))}lw(ne,q,H,{once:!0}),q!=="error"&&w7(ne,$,{once:!0})})}function w7(ne,q,p){typeof ne.on=="function"&&lw(ne,"error",q,p)}function lw(ne,q,p,G){if(typeof ne.on=="function")G.once?ne.once(q,p):ne.on(q,p);else if(typeof ne.addEventListener=="function")ne.addEventListener(q,function $(H){G.once&&ne.removeEventListener(q,$),p(H)});else throw new TypeError('The "emitter" argument must be of type EventEmitter. Received type '+typeof ne)}});var hw=eg((ag,og)=>{(function(ne,q){typeof ag=="object"&&typeof og!="undefined"?og.exports=q(Er()):typeof define=="function"&&define.amd?define(["trtc-js-sdk"],q):(ne=typeof globalThis!="undefined"?globalThis:ne||self).RTCBeautyPlugin=q(ne.TRTC)})(ag,function(ne){function q(le){return le&&typeof le=="object"&&"default"in le?le:{default:le}}var p=q(ne);function G(){G=function(){return le};var le={},Te=Object.prototype,Se=Te.hasOwnProperty,je=typeof Symbol=="function"?Symbol:{},He=je.iterator||"@@iterator",oe=je.asyncIterator||"@@asyncIterator",X=je.toStringTag||"@@toStringTag";function ce(he,de,Ne){return Object.defineProperty(he,de,{value:Ne,enumerable:!0,configurable:!0,writable:!0}),he[de]}try{ce({},"")}catch(he){ce=function(de,Ne,We){return de[Ne]=We}}function z(he,de,Ne,We){var De=de&&de.prototype instanceof ue?de:ue,ut=Object.create(De.prototype),rt=new Ze(We||[]);return ut._invoke=function(Ut,en,pe){var Ot="suspendedStart";return function(Kt,fr){if(Ot==="executing")throw new Error("Generator is already running");if(Ot==="completed"){if(Kt==="throw")throw fr;return qn()}for(pe.method=Kt,pe.arg=fr;;){var Pi=pe.delegate;if(Pi){var yn=hr(Pi,pe);if(yn){if(yn===be)continue;return yn}}if(pe.method==="next")pe.sent=pe._sent=pe.arg;else if(pe.method==="throw"){if(Ot==="suspendedStart")throw Ot="completed",pe.arg;pe.dispatchException(pe.arg)}else pe.method==="return"&&pe.abrupt("return",pe.arg);Ot="executing";var Rt=re(Ut,en,pe);if(Rt.type==="normal"){if(Ot=pe.done?"completed":"suspendedYield",Rt.arg===be)continue;return{value:Rt.arg,done:pe.done}}Rt.type==="throw"&&(Ot="completed",pe.method="throw",pe.arg=Rt.arg)}}}(he,Ne,rt),ut}function re(he,de,Ne){try{return{type:"normal",arg:he.call(de,Ne)}}catch(We){return{type:"throw",arg:We}}}le.wrap=z;var be={};function ue(){}function ye(){}function Me(){}var Jt={};ce(Jt,He,function(){return this});var Zt=Object.getPrototypeOf,Ke=Zt&&Zt(Zt(Gt([])));Ke&&Ke!==Te&&Se.call(Ke,He)&&(Jt=Ke);var qt=Me.prototype=ue.prototype=Object.create(Jt);function ft(he){["next","throw","return"].forEach(function(de){ce(he,de,function(Ne){return this._invoke(de,Ne)})})}function Jn(he,de){function Ne(De,ut,rt,Ut){var en=re(he[De],he,ut);if(en.type!=="throw"){var pe=en.arg,Ot=pe.value;return Ot&&typeof Ot=="object"&&Se.call(Ot,"__await")?de.resolve(Ot.__await).then(function(Kt){Ne("next",Kt,rt,Ut)},function(Kt){Ne("throw",Kt,rt,Ut)}):de.resolve(Ot).then(function(Kt){pe.value=Kt,rt(pe)},function(Kt){return Ne("throw",Kt,rt,Ut)})}Ut(en.arg)}var We;this._invoke=function(De,ut){function rt(){return new de(function(Ut,en){Ne(De,ut,Ut,en)})}return We=We?We.then(rt,rt):rt()}}function hr(he,de){var Ne=he.iterator[de.method];if(Ne===void 0){if(de.delegate=null,de.method==="throw"){if(he.iterator.return&&(de.method="return",de.arg=void 0,hr(he,de),de.method==="throw"))return be;de.method="throw",de.arg=new TypeError("The iterator does not provide a 'throw' method")}return be}var We=re(Ne,he.iterator,de.arg);if(We.type==="throw")return de.method="throw",de.arg=We.arg,de.delegate=null,be;var De=We.arg;return De?De.done?(de[he.resultName]=De.value,de.next=he.nextLoc,de.method!=="return"&&(de.method="next",de.arg=void 0),de.delegate=null,be):De:(de.method="throw",de.arg=new TypeError("iterator result is not an object"),de.delegate=null,be)}function Ht(he){var de={tryLoc:he[0]};1 in he&&(de.catchLoc=he[1]),2 in he&&(de.finallyLoc=he[2],de.afterLoc=he[3]),this.tryEntries.push(de)}function Rn(he){var de=he.completion||{};de.type="normal",delete de.arg,he.completion=de}function Ze(he){this.tryEntries=[{tryLoc:"root"}],he.forEach(Ht,this),this.reset(!0)}function Gt(he){if(he){var de=he[He];if(de)return de.call(he);if(typeof he.next=="function")return he;if(!isNaN(he.length)){var Ne=-1,We=function De(){for(;++Ne<he.length;)if(Se.call(he,Ne))return De.value=he[Ne],De.done=!1,De;return De.value=void 0,De.done=!0,De};return We.next=We}}return{next:qn}}function qn(){return{value:void 0,done:!0}}return ye.prototype=Me,ce(qt,"constructor",Me),ce(Me,"constructor",ye),ye.displayName=ce(Me,X,"GeneratorFunction"),le.isGeneratorFunction=function(he){var de=typeof he=="function"&&he.constructor;return!!de&&(de===ye||(de.displayName||de.name)==="GeneratorFunction")},le.mark=function(he){return Object.setPrototypeOf?Object.setPrototypeOf(he,Me):(he.__proto__=Me,ce(he,X,"GeneratorFunction")),he.prototype=Object.create(qt),he},le.awrap=function(he){return{__await:he}},ft(Jn.prototype),ce(Jn.prototype,oe,function(){return this}),le.AsyncIterator=Jn,le.async=function(he,de,Ne,We,De){De===void 0&&(De=Promise);var ut=new Jn(z(he,de,Ne,We),De);return le.isGeneratorFunction(de)?ut:ut.next().then(function(rt){return rt.done?rt.value:ut.next()})},ft(qt),ce(qt,X,"Generator"),ce(qt,He,function(){return this}),ce(qt,"toString",function(){return"[object Generator]"}),le.keys=function(he){var de=[];for(var Ne in he)de.push(Ne);return de.reverse(),function We(){for(;de.length;){var De=de.pop();if(De in he)return We.value=De,We.done=!1,We}return We.done=!0,We}},le.values=Gt,Ze.prototype={constructor:Ze,reset:function(he){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(Rn),!he)for(var de in this)de.charAt(0)==="t"&&Se.call(this,de)&&!isNaN(+de.slice(1))&&(this[de]=void 0)},stop:function(){this.done=!0;var he=this.tryEntries[0].completion;if(he.type==="throw")throw he.arg;return this.rval},dispatchException:function(he){if(this.done)throw he;var de=this;function Ne(en,pe){return ut.type="throw",ut.arg=he,de.next=en,pe&&(de.method="next",de.arg=void 0),!!pe}for(var We=this.tryEntries.length-1;We>=0;--We){var De=this.tryEntries[We],ut=De.completion;if(De.tryLoc==="root")return Ne("end");if(De.tryLoc<=this.prev){var rt=Se.call(De,"catchLoc"),Ut=Se.call(De,"finallyLoc");if(rt&&Ut){if(this.prev<De.catchLoc)return Ne(De.catchLoc,!0);if(this.prev<De.finallyLoc)return Ne(De.finallyLoc)}else if(rt){if(this.prev<De.catchLoc)return Ne(De.catchLoc,!0)}else{if(!Ut)throw new Error("try statement without catch or finally");if(this.prev<De.finallyLoc)return Ne(De.finallyLoc)}}}},abrupt:function(he,de){for(var Ne=this.tryEntries.length-1;Ne>=0;--Ne){var We=this.tryEntries[Ne];if(We.tryLoc<=this.prev&&Se.call(We,"finallyLoc")&&this.prev<We.finallyLoc){var De=We;break}}De&&(he==="break"||he==="continue")&&De.tryLoc<=de&&de<=De.finallyLoc&&(De=null);var ut=De?De.completion:{};return ut.type=he,ut.arg=de,De?(this.method="next",this.next=De.finallyLoc,be):this.complete(ut)},complete:function(he,de){if(he.type==="throw")throw he.arg;return he.type==="break"||he.type==="continue"?this.next=he.arg:he.type==="return"?(this.rval=this.arg=he.arg,this.method="return",this.next="end"):he.type==="normal"&&de&&(this.next=de),be},finish:function(he){for(var de=this.tryEntries.length-1;de>=0;--de){var Ne=this.tryEntries[de];if(Ne.finallyLoc===he)return this.complete(Ne.completion,Ne.afterLoc),Rn(Ne),be}},catch:function(he){for(var de=this.tryEntries.length-1;de>=0;--de){var Ne=this.tryEntries[de];if(Ne.tryLoc===he){var We=Ne.completion;if(We.type==="throw"){var De=We.arg;Rn(Ne)}return De}}throw new Error("illegal catch attempt")},delegateYield:function(he,de,Ne){return this.delegate={iterator:Gt(he),resultName:de,nextLoc:Ne},this.method==="next"&&(this.arg=void 0),be}},le}function $(le){return $=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(Te){return typeof Te}:function(Te){return Te&&typeof Symbol=="function"&&Te.constructor===Symbol&&Te!==Symbol.prototype?"symbol":typeof Te},$(le)}function H(le,Te,Se,je,He,oe,X){try{var ce=le[oe](X),z=ce.value}catch(re){return void Se(re)}ce.done?Te(z):Promise.resolve(z).then(je,He)}function Q(le){return function(){var Te=this,Se=arguments;return new Promise(function(je,He){var oe=le.apply(Te,Se);function X(z){H(oe,je,He,X,ce,"next",z)}function ce(z){H(oe,je,He,X,ce,"throw",z)}X(void 0)})}}function Re(le,Te){if(!(le instanceof Te))throw new TypeError("Cannot call a class as a function")}function Ie(le,Te){for(var Se=0;Se<Te.length;Se++){var je=Te[Se];je.enumerable=je.enumerable||!1,je.configurable=!0,"value"in je&&(je.writable=!0),Object.defineProperty(le,je.key,je)}}function $e(le,Te,Se){return Te&&Ie(le.prototype,Te),Se&&Ie(le,Se),Object.defineProperty(le,"prototype",{writable:!1}),le}function Et(le,Te,Se){var je=function(re,be,ue){var ye=new RegExp("\\b".concat(be," \\w+ (\\w+)"),"ig");re.replace(ye,function(Me,Jt){return ue[Jt]=0,Me})},He=function(re,be,ue){var ye=re.createShader(ue);return re.shaderSource(ye,be),re.compileShader(ye),re.getShaderParameter(ye,re.COMPILE_STATUS)?ye:(console.log(re.getShaderInfoLog(ye)),null)};this.uniform={},this.attribute={};var oe=He(le,Te,le.VERTEX_SHADER),X=He(le,Se,le.FRAGMENT_SHADER);for(var ce in this.id=le.createProgram(),le.attachShader(this.id,oe),le.attachShader(this.id,X),le.linkProgram(this.id),le.getProgramParameter(this.id,le.LINK_STATUS)||console.log(le.getProgramInfoLog(this.id)),le.useProgram(this.id),je(Te,"attribute",this.attribute),this.attribute)this.attribute[ce]=le.getAttribLocation(this.id,ce);for(var z in je(Te,"uniform",this.uniform),je(Se,"uniform",this.uniform),this.uniform)this.uniform[z]=le.getUniformLocation(this.id,z)}function Ye(le,Te,Se,je){for(var He=[],oe=0;oe<Te.length;++oe)He.push(Ac(le,Te[oe],le[dr[oe]]));return function(X,ce,z,re){var be=X.createProgram();return ce.forEach(function(ue){X.attachShader(be,ue)}),z&&z.forEach(function(ue,ye){X.bindAttribLocation(be,re?re[ye]:ye,ue)}),X.linkProgram(be),X.getProgramParameter(be,X.LINK_STATUS)?be:(X.deleteProgram(be),null)}(le,He,Se,je)}var dr=["VERTEX_SHADER","FRAGMENT_SHADER"];function Ac(le,Te,Se){var je=le.createShader(Se);return le.shaderSource(je,Te),le.compileShader(je),le.getShaderParameter(je,le.COMPILE_STATUS)?je:(le.deleteShader(je),null)}var zo=function(){function le(Te){Re(this,le),this.canvas=Te.canvas,this.video=Te.video,this.width=Te.width||640,this.height=Te.height||480,this.vertexBuffer=null,this.currentProgram=null,this.applied=!1,this.beautyParams={beauty:.5,brightness:.5,ruddy:.5},this.gl=this.createGL(Te.canvas),this.sourceTexture=this.gl.createTexture()}return $e(le,[{key:"setRect",value:function(Te,Se){this.width=Te,this.height=Se}},{key:"apply",value:function(Te){if(!this.vertexBuffer){var Se=new Float32Array([-1,-1,0,1,1,-1,1,1,-1,1,0,0,-1,1,0,0,1,-1,1,1,1,1,1,0]);this.vertexBuffer=this.gl.createBuffer(),this.gl.bindBuffer(this.gl.ARRAY_BUFFER,this.vertexBuffer),this.gl.bufferData(this.gl.ARRAY_BUFFER,Se,this.gl.STATIC_DRAW),this.gl.pixelStorei(this.gl.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!0)}this.gl.viewport(0,0,this.width,this.height),this.gl.bindTexture(this.gl.TEXTURE_2D,this.sourceTexture),this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_S,this.gl.CLAMP_TO_EDGE),this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_T,this.gl.CLAMP_TO_EDGE),this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_MIN_FILTER,this.gl.NEAREST),this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_MAG_FILTER,this.gl.NEAREST),this.applied?this.gl.texSubImage2D(this.gl.TEXTURE_2D,0,0,0,this.gl.RGB,this.gl.UNSIGNED_BYTE,Te):(this.gl.texImage2D(this.gl.TEXTURE_2D,0,this.gl.RGB,this.gl.RGB,this.gl.UNSIGNED_BYTE,Te),this.applied=!0);var je=this.beautyParams,He=je.beauty,oe=je.brightness,X=je.ruddy,ce=2/this.width,z=2/this.height,re=this.compileBeautyShader();this.gl.uniform2f(re.uniform.singleStepOffset,ce,z);var be=new Float32Array([1-.8*He,1-.6*He,.1+.45*X,.1+.45*X]);this.gl.uniform4fv(re.uniform.params,be),this.gl.uniform1f(re.uniform.brightness,.12*oe),this.gl.bindTexture(this.gl.TEXTURE_2D,this.sourceTexture),this.gl.bindFramebuffer(this.gl.FRAMEBUFFER,null),this.gl.uniform1f(this.currentProgram.uniform.flipY,1),this.gl.drawArrays(this.gl.TRIANGLES,0,6)}},{key:"compileBeautyShader",value:function(){if(this.currentProgram)return this.currentProgram;this.currentProgram=new Et(this.gl,["precision highp float;","attribute vec2 pos;","attribute vec2 uv;","varying vec2 vUv;","uniform float flipY;","void main(void) {","vUv = uv;","gl_Position = vec4(pos.x, pos.y*flipY, 0.0, 1.);","}"].join(`
|
|
71
71
|
`),["precision highp float;","uniform vec2 singleStepOffset;","uniform sampler2D texture;","uniform vec4 params;","uniform float brightness;","varying vec2 vUv;","const highp vec3 W = vec3(0.299,0.587,0.114);","const mat3 saturateMatrix = mat3(1.1102,-0.0598,-0.061,-0.0774,1.0826,-0.1186,-0.0228,-0.0228,1.1772);","vec2 blurCoordinates[24];","float hardLight(float color){","if(color <= 0.5){","color = color * color * 2.0;","} else {","color = 1.0 - ((1.0 - color)*(1.0 - color) * 2.0);","}","return color;","}","void main(){","vec3 centralColor = texture2D(texture, vUv).rgb;","blurCoordinates[0] = vUv.xy + singleStepOffset * vec2(0.0, -10.0);","blurCoordinates[1] = vUv.xy + singleStepOffset * vec2(0.0, 10.0);","blurCoordinates[2] = vUv.xy + singleStepOffset * vec2(-10.0, 0.0);","blurCoordinates[3] = vUv.xy + singleStepOffset * vec2(10.0, 0.0);","blurCoordinates[4] = vUv.xy + singleStepOffset * vec2(5.0, -8.0);","blurCoordinates[5] = vUv.xy + singleStepOffset * vec2(5.0, 8.0);","blurCoordinates[6] = vUv.xy + singleStepOffset * vec2(-5.0, 8.0);","blurCoordinates[7] = vUv.xy + singleStepOffset * vec2(-5.0, -8.0);","blurCoordinates[8] = vUv.xy + singleStepOffset * vec2(8.0, -5.0);","blurCoordinates[9] = vUv.xy + singleStepOffset * vec2(8.0, 5.0);","blurCoordinates[10] = vUv.xy + singleStepOffset * vec2(-8.0, 5.0);","blurCoordinates[11] = vUv.xy + singleStepOffset * vec2(-8.0, -5.0);","blurCoordinates[12] = vUv.xy + singleStepOffset * vec2(0.0, -6.0);","blurCoordinates[13] = vUv.xy + singleStepOffset * vec2(0.0, 6.0);","blurCoordinates[14] = vUv.xy + singleStepOffset * vec2(6.0, 0.0);","blurCoordinates[15] = vUv.xy + singleStepOffset * vec2(-6.0, 0.0);","blurCoordinates[16] = vUv.xy + singleStepOffset * vec2(-4.0, -4.0);","blurCoordinates[17] = vUv.xy + singleStepOffset * vec2(-4.0, 4.0);","blurCoordinates[18] = vUv.xy + singleStepOffset * vec2(4.0, -4.0);","blurCoordinates[19] = vUv.xy + singleStepOffset * vec2(4.0, 4.0);","blurCoordinates[20] = vUv.xy + singleStepOffset * vec2(-2.0, -2.0);","blurCoordinates[21] = vUv.xy + singleStepOffset * vec2(-2.0, 2.0);","blurCoordinates[22] = vUv.xy + singleStepOffset * vec2(2.0, -2.0);","blurCoordinates[23] = vUv.xy + singleStepOffset * vec2(2.0, 2.0);","float sampleColor = centralColor.g * 22.0;","sampleColor += texture2D(texture, blurCoordinates[0]).g;","sampleColor += texture2D(texture, blurCoordinates[1]).g;","sampleColor += texture2D(texture, blurCoordinates[2]).g;","sampleColor += texture2D(texture, blurCoordinates[3]).g;","sampleColor += texture2D(texture, blurCoordinates[4]).g;","sampleColor += texture2D(texture, blurCoordinates[5]).g;","sampleColor += texture2D(texture, blurCoordinates[6]).g;","sampleColor += texture2D(texture, blurCoordinates[7]).g;","sampleColor += texture2D(texture, blurCoordinates[8]).g;","sampleColor += texture2D(texture, blurCoordinates[9]).g;","sampleColor += texture2D(texture, blurCoordinates[10]).g;","sampleColor += texture2D(texture, blurCoordinates[11]).g;","sampleColor += texture2D(texture, blurCoordinates[12]).g * 2.0;","sampleColor += texture2D(texture, blurCoordinates[13]).g * 2.0;","sampleColor += texture2D(texture, blurCoordinates[14]).g * 2.0;","sampleColor += texture2D(texture, blurCoordinates[15]).g * 2.0;","sampleColor += texture2D(texture, blurCoordinates[16]).g * 2.0;","sampleColor += texture2D(texture, blurCoordinates[17]).g * 2.0;","sampleColor += texture2D(texture, blurCoordinates[18]).g * 2.0;","sampleColor += texture2D(texture, blurCoordinates[19]).g * 2.0;","sampleColor += texture2D(texture, blurCoordinates[20]).g * 3.0;","sampleColor += texture2D(texture, blurCoordinates[21]).g * 3.0;","sampleColor += texture2D(texture, blurCoordinates[22]).g * 3.0;","sampleColor += texture2D(texture, blurCoordinates[23]).g * 3.0;","sampleColor = sampleColor / 62.0;","float highPass = centralColor.g - sampleColor + 0.5;","for(int i = 0; i < 5;i++){","highPass = hardLight(highPass);","}","float luminance = dot(centralColor, W);","float alpha = pow(luminance, params.r);","vec3 smoothColor = centralColor + (centralColor-vec3(highPass))*alpha*0.1;","smoothColor.r = clamp(pow(smoothColor.r, params.g),0.0,1.0);","smoothColor.g = clamp(pow(smoothColor.g, params.g),0.0,1.0);","smoothColor.b = clamp(pow(smoothColor.b, params.g),0.0,1.0);","vec3 screen = vec3(1.0) - (vec3(1.0)-smoothColor) * (vec3(1.0)-centralColor);","vec3 lighten = max(smoothColor, centralColor);","vec3 softLight = 2.0 * centralColor*smoothColor + centralColor*centralColor - 2.0 * centralColor*centralColor * smoothColor;","gl_FragColor = vec4(mix(centralColor, screen, alpha), 1.0);","gl_FragColor.rgb = mix(gl_FragColor.rgb, lighten, alpha);","gl_FragColor.rgb = mix(gl_FragColor.rgb, softLight, params.b);","vec3 satColor = gl_FragColor.rgb * saturateMatrix;","gl_FragColor.rgb = mix(gl_FragColor.rgb, satColor, params.a);","gl_FragColor.rgb = vec3(gl_FragColor.rgb + vec3(brightness));","}"].join(`
|
|
72
|
-
`));var Te=Float32Array.BYTES_PER_ELEMENT,Se=4*Te;return this.gl.enableVertexAttribArray(this.currentProgram.attribute.pos),this.gl.vertexAttribPointer(this.currentProgram.attribute.pos,2,this.gl.FLOAT,!1,Se,0),this.gl.enableVertexAttribArray(this.currentProgram.attribute.uv),this.gl.vertexAttribPointer(this.currentProgram.attribute.uv,2,this.gl.FLOAT,!1,Se,2*Te),this.currentProgram}},{key:"createGL",value:function(Te){var Se=Te.getContext("webgl2");if(Se||Te.getContext("experimental-webgl",{preserveDrawingBuffer:!0}),!Se)throw"Couldn't get WebGL context";return Se}},{key:"setBeautyParams",value:function(Te){this.beautyParams=Te}},{key:"reset",value:function(){this.applied=!1}}]),le}(),
|
|
72
|
+
`));var Te=Float32Array.BYTES_PER_ELEMENT,Se=4*Te;return this.gl.enableVertexAttribArray(this.currentProgram.attribute.pos),this.gl.vertexAttribPointer(this.currentProgram.attribute.pos,2,this.gl.FLOAT,!1,Se,0),this.gl.enableVertexAttribArray(this.currentProgram.attribute.uv),this.gl.vertexAttribPointer(this.currentProgram.attribute.uv,2,this.gl.FLOAT,!1,Se,2*Te),this.currentProgram}},{key:"createGL",value:function(Te){var Se=Te.getContext("webgl2");if(Se||Te.getContext("experimental-webgl",{preserveDrawingBuffer:!0}),!Se)throw"Couldn't get WebGL context";return Se}},{key:"setBeautyParams",value:function(Te){this.beautyParams=Te}},{key:"reset",value:function(){this.applied=!1}}]),le}(),Wo=function(){function le(oe){Re(this,le),this.canvas=oe.canvas,this.video=oe.video,this.width=oe.width||640,this.height=oe.height||480,this.onoverload=oe.onoverload,this.gl=this.createGL(oe.canvas),this.vao=this.gl.createVertexArray(),this.positionBuffer=this.gl.createBuffer(),this.sourceTexture=this.gl.createTexture(),this.program=null,this.blurParams={resolutionLocation:null,imageLocation0:null,imageLocation1:null},this.virtualParams={resolutionLocation:null,imageLocation0:null,imageLocation1:null,imageLocation2:null,imageOldLocation0:null,imageOldLocation1:null,imageOldLocation2:null,imageOldLocation3:null,imageOldLocation4:null,imageOldLocation5:null},this.virtualLocation={postProcessTypeLocation:null,sigmaLocation:null,bSigmaLocation:null,mSizeLocation:null,overlayTypeLocation:null,hardThresholdLocation:null,sigmoidClipLocation:null},this.maskBuffer=[],this.frameBuffer=[],this.virtualOption={postProcess:2,sigma:100,bSigma:10,kSize:19,overlayType:0,hardThreshold:.5,sigmoidClip:1},this.type=0,this.frameRate=0,this.rafId=null,this.timeoutId=null,this.img=new Image,this.imgCropCanvas=document.createElement("canvas"),this.imgCropCanvasCtx=this.imgCropCanvas.getContext("2d"),this.imgMap=new Map,this.tempImg=new Image,this.tempImg.crossOrigin="anonymous",this.isRender=!1,this.enable=!1,this.processingTimes=[],this.frameCount=0}var Te,Se,je,He;return $e(le,[{key:"loadResources",value:(He=Q(G().mark(function oe(){return G().wrap(function(X){for(;;)switch(X.prev=X.next){case 0:return X.next=2,new window.SelfieSegmentation({locateFile:function(ce){return"https://web.sdk.qcloud.com/trtc/webrtc/download/segmentation/".concat(ce)}});case 2:return this.selfieSegmentation=X.sent,X.next=5,this.selfieSegmentation.initialize();case 5:case"end":return X.stop()}},oe,this)})),function(){return He.apply(this,arguments)})},{key:"setEnable",value:function(oe){this.enable=oe}},{key:"initVirtualParams",value:(je=Q(G().mark(function oe(X){var ce,z;return G().wrap(function(re){for(;;)switch(re.prev=re.next){case 0:if(ce=X.img,z=X.type,this.type=z==="blur"?0:1,!ce){re.next=5;break}return re.next=5,this.setBackground(ce);case 5:this.type===0?this.initBackgroundBlurProgram():this.type===1&&this.initVirtualBackgroundProgram();case 6:case"end":return re.stop()}},oe,this)})),function(oe){return je.apply(this,arguments)})},{key:"setBackground",value:(Se=Q(G().mark(function oe(X){var ce=this;return G().wrap(function(z){for(;;)switch(z.prev=z.next){case 0:return z.abrupt("return",new Promise(function(re,be){try{X instanceof HTMLImageElement?(ce.img=X,re()):(ce.tempImg.onload=function(){ce.imgCropCanvasCtx.drawImage(ce.tempImg,0,0,ce.width,ce.height);var ue=ce.imgCropCanvas.toDataURL("image/jpeg",.5);ce.img.src=ue,ce.imgMap.set(X,ue),re()},ce.imgMap.has(X)?(ce.img.src=ce.imgMap.get(X),re()):ce.tempImg.src=X)}catch(ue){be("please check the img parameter!")}}));case 1:case"end":return z.stop()}},oe)})),function(oe){return Se.apply(this,arguments)})},{key:"setRect",value:function(oe,X){this.width=oe,this.height=X,this.imgCropCanvas.width=this.width,this.imgCropCanvas.height=this.height,this.imgCropCanvasCtx.fillStyle="#000",this.imgCropCanvasCtx.fillRect(0,0,this.width,this.height),this.img.width=oe,this.img.height=X,this.img.src=this.imgCropCanvas.toDataURL("image/jpeg",.5),this.tempImg.width=oe,this.tempImg.height=X}},{key:"createGL",value:function(oe){var X=oe.getContext("webgl2");if(X||oe.getContext("experimental-webgl",{preserveDrawingBuffer:!0}),!X)throw"Couldn't get WebGL context";return X}},{key:"setRectangle",value:function(oe,X,ce,z,re){var be=X,ue=X+z,ye=ce,Me=ce+re;oe.bufferData(oe.ARRAY_BUFFER,new Float32Array([be,ye,ue,ye,be,Me,be,Me,ue,ye,ue,Me]),oe.STATIC_DRAW)}},{key:"startVirtual",value:function(oe){this.frameRate=oe,this.selfieSegmentation.setOptions({selfieMode:!1,modelSelection:0,effect:"background"}),this.type===0?this.selfieSegmentation.onResults(this.onBlurResult.bind(this)):this.selfieSegmentation.onResults(this.onVirtualResults.bind(this)),this.startTime=new Date().getTime(),this.isRender=!0,this.enable=!0,this.installEvents()}},{key:"render",value:(Te=Q(G().mark(function oe(){var X,ce,z=this;return G().wrap(function(re){for(;;)switch(re.prev=re.next){case 0:if(this.isRender){re.next=2;break}return re.abrupt("return");case 2:if(!((X=new Date().getTime())-this.startTime>1e3/this.frameRate)){re.next=12;break}if(!this.enable||this.video.readyState!==this.video.HAVE_ENOUGH_DATA){re.next=7;break}return re.next=7,this.selfieSegmentation.send({image:this.video});case 7:ce=X-this.startTime,this.processingTimes.push(ce),this.processingTimes.length>100&&this.processingTimes.shift(),this.frameCount>=100?this.processingTimes.reduce(function(be,ue){return be+ue},0)/this.processingTimes.length>100&&(console.log("frameRate is too low, trigger overload."),this.onoverload&&typeof this.onoverload=="function"&&this.onoverload(),this.frameCount=0,this.processingTimes=[]):this.frameCount+=1,this.startTime=X;case 12:document.hidden?(this.timeoutId&&clearTimeout(this.timeoutId),this.rafId&&cancelAnimationFrame(this.rafId),this.timeoutId=setTimeout(function(){z.render()},1e3/this.frameRate)):(this.timeoutId&&clearTimeout(this.timeoutId),this.rafId&&cancelAnimationFrame(this.rafId),this.rafId=requestAnimationFrame(this.render.bind(this)));case 13:case"end":return re.stop()}},oe,this)})),function(){return Te.apply(this,arguments)})},{key:"installEvents",value:function(){window.addEventListener("visibilitychange",this.render.bind(this))}},{key:"uninstallEvents",value:function(){window.addEventListener("visibilitychange",this.render.bind(this))}},{key:"reset",value:function(){this.isRender=!1,cancelAnimationFrame(this.rafId),clearTimeout(this.timeoutId),this.gl.clear(this.gl.COLOR_BUFFER_BIT|this.gl.DEPTH_BUFFER_BIT),this.gl.deleteProgram(this.program),this.gl.deleteTexture(this.sourceTexture),this.uninstallEvents()}},{key:"destroy",value:function(){this.reset(),this.gl.deleteBuffer(this.positionBuffer)}},{key:"initBackgroundBlurProgram",value:function(){var oe=this.gl,X={vertexShaderSource:`#version 300 es
|
|
73
73
|
|
|
74
74
|
// an attribute is an input (in) to a vertex shader.
|
|
75
75
|
// It will receive data from a buffer
|
|
@@ -248,7 +248,7 @@ b=`+R+":"+b+`\r
|
|
|
248
248
|
|
|
249
249
|
outColor = (1.0 - color0.r) * gaussianBlur + color0.r * color1;
|
|
250
250
|
}
|
|
251
|
-
`},
|
|
251
|
+
`},ce=X.vertexShaderSource,z=X.fragmentShaderSource;this.program=Ye(oe,[ce,z]);var re=oe.getAttribLocation(this.program,"position"),be=oe.getAttribLocation(this.program,"texCoord");this.blurParams.resolutionLocation=oe.getUniformLocation(this.program,"resolution"),this.blurParams.imageLocation0=oe.getUniformLocation(this.program,"u_image0"),this.blurParams.imageLocation1=oe.getUniformLocation(this.program,"u_image1"),oe.bindVertexArray(this.vao),oe.bindBuffer(oe.ARRAY_BUFFER,this.positionBuffer),oe.enableVertexAttribArray(re),oe.vertexAttribPointer(re,2,oe.FLOAT,!1,0,0),oe.bindBuffer(oe.ARRAY_BUFFER,oe.createBuffer()),oe.bufferData(oe.ARRAY_BUFFER,new Float32Array([0,0,1,0,0,1,0,1,1,0,1,1]),oe.STATIC_DRAW),oe.enableVertexAttribArray(be),oe.vertexAttribPointer(be,2,oe.FLOAT,!1,0,0)}},{key:"onBlurResult",value:function(oe){for(var X=oe.segmentationMask,ce=oe.image,z=this.gl,re=[],be=[X,ce],ue=0;ue<2;++ue){var ye=z.createTexture();z.bindTexture(z.TEXTURE_2D,ye),z.texParameteri(z.TEXTURE_2D,z.TEXTURE_WRAP_S,z.CLAMP_TO_EDGE),z.texParameteri(z.TEXTURE_2D,z.TEXTURE_WRAP_T,z.CLAMP_TO_EDGE),z.texParameteri(z.TEXTURE_2D,z.TEXTURE_MIN_FILTER,z.NEAREST),z.texParameteri(z.TEXTURE_2D,z.TEXTURE_MAG_FILTER,z.NEAREST),z.texImage2D(z.TEXTURE_2D,0,z.RGBA,z.RGBA,z.UNSIGNED_BYTE,be[ue]),re.push(ye)}z.bindBuffer(z.ARRAY_BUFFER,this.positionBuffer),this.setRectangle(z,0,0,this.width,this.height),z.viewport(0,0,this.width,this.height),z.clearColor(0,0,0,0),z.clear(z.COLOR_BUFFER_BIT|z.DEPTH_BUFFER_BIT),z.useProgram(this.program),z.bindVertexArray(this.vao);var Me=this.blurParams,Jt=Me.resolutionLocation,Zt=Me.imageLocation0,Ke=Me.imageLocation1;z.uniform2f(Jt,this.width,this.height),z.uniform1i(Zt,0),z.uniform1i(Ke,1),z.activeTexture(z.TEXTURE0),z.bindTexture(z.TEXTURE_2D,re[0]),z.activeTexture(z.TEXTURE1),z.bindTexture(z.TEXTURE_2D,re[1]),z.drawArrays(z.TRIANGLES,0,6)}},{key:"initVirtualBackgroundProgram",value:function(){var oe=this.gl,X={vertexShaderSource:`#version 300 es
|
|
252
252
|
|
|
253
253
|
// an attribute is an input (in) to a vertex shader.
|
|
254
254
|
// It will receive data from a buffer
|
|
@@ -528,23 +528,23 @@ b=`+R+":"+b+`\r
|
|
|
528
528
|
outColor.rgb = (maskValue * color1 + (1.0 - maskValue) * color2).rgb;
|
|
529
529
|
outColor.a = 1.0;
|
|
530
530
|
}
|
|
531
|
-
`},se=Y.vertexShaderSource,z=Y.fragmentShaderSource;this.program=Qe(oe,[se,z]);var re=oe.getAttribLocation(this.program,"position"),be=oe.getAttribLocation(this.program,"texCoord"),ue=this.program;this.virtualParams={resolutionLocation:oe.getUniformLocation(ue,"resolution"),imageLocation0:oe.getUniformLocation(ue,"u_image0"),imageLocation1:oe.getUniformLocation(ue,"u_image1"),imageLocation2:oe.getUniformLocation(ue,"u_image2"),imageOldLocation0:oe.getUniformLocation(ue,"u_image_old0"),imageOldLocation1:oe.getUniformLocation(ue,"u_image_old1"),imageOldLocation2:oe.getUniformLocation(ue,"u_image_old2"),imageOldLocation3:oe.getUniformLocation(ue,"u_image_old3"),imageOldLocation4:oe.getUniformLocation(ue,"u_image_old4"),imageOldLocation5:oe.getUniformLocation(ue,"u_image_old5")},this.virtualLocation={postProcessTypeLocation:oe.getUniformLocation(ue,"PostProcessType"),sigmaLocation:oe.getUniformLocation(ue,"SIGMA"),bSigmaLocation:oe.getUniformLocation(ue,"BSIGMA"),mSizeLocation:oe.getUniformLocation(ue,"MSIZE"),overlayTypeLocation:oe.getUniformLocation(ue,"overlayType"),hardThresholdLocation:oe.getUniformLocation(ue,"hardThreshold"),sigmoidClipLocation:oe.getUniformLocation(ue,"sigmoidClip")},oe.bindVertexArray(this.vao),oe.bindBuffer(oe.ARRAY_BUFFER,this.positionBuffer),oe.enableVertexAttribArray(re),oe.vertexAttribPointer(re,2,oe.FLOAT,!1,0,0),oe.bindBuffer(oe.ARRAY_BUFFER,oe.createBuffer()),oe.bufferData(oe.ARRAY_BUFFER,new Float32Array([0,0,1,0,0,1,0,1,1,0,1,1]),oe.STATIC_DRAW),oe.enableVertexAttribArray(be),oe.vertexAttribPointer(be,2,oe.FLOAT,!1,0,0)}},{key:"onVirtualResults",value:function(oe){var Y=oe.segmentationMask,se=oe.image,z=this.gl;this.maskBuffer.length<3&&this.maskBuffer.push(Y,Y,Y),this.frameBuffer.length<3&&this.frameBuffer.push(se,se,se);for(var re=[],be=[Y,se,this.img,this.maskBuffer[0],this.maskBuffer[1],this.maskBuffer[2],this.frameBuffer[0],this.frameBuffer[1],this.frameBuffer[2]],ue=0;ue<be.length;++ue)this.sourceTexture=z.createTexture(),z.bindTexture(z.TEXTURE_2D,this.sourceTexture),z.texParameteri(z.TEXTURE_2D,z.TEXTURE_WRAP_S,z.CLAMP_TO_EDGE),z.texParameteri(z.TEXTURE_2D,z.TEXTURE_WRAP_T,z.CLAMP_TO_EDGE),z.texParameteri(z.TEXTURE_2D,z.TEXTURE_MIN_FILTER,z.NEAREST),z.texParameteri(z.TEXTURE_2D,z.TEXTURE_MAG_FILTER,z.NEAREST),z.texImage2D(z.TEXTURE_2D,0,z.RGBA,z.RGBA,z.UNSIGNED_BYTE,be[ue]),re.push(this.sourceTexture);z.bindBuffer(z.ARRAY_BUFFER,this.positionBuffer),this.setRectangle(z,0,0,this.width,this.height),z.viewport(0,0,this.width,this.height),z.clearColor(0,0,0,0),z.clear(z.COLOR_BUFFER_BIT|z.DEPTH_BUFFER_BIT),z.useProgram(this.program),z.bindVertexArray(this.vao);var ye=this.virtualParams,Me=ye.resolutionLocation,Wt=ye.imageLocation0,$t=ye.imageLocation1,Ke=ye.imageLocation2,qt=ye.imageOldLocation0,dt=ye.imageOldLocation1,Wn=ye.imageOldLocation2,dr=ye.imageOldLocation3,Ht=ye.imageOldLocation4,En=ye.imageOldLocation5;z.uniform2f(Me,this.width,this.height);var Ze=this.virtualOption,Gt=Ze.postProcess,qn=Ze.kSize,he=Ze.sigma,de=Ze.bSigma,Ne=Ze.overlayType,We=Ze.hardThreshold,De=Ze.sigmoidClip,ct=this.virtualLocation,rt=ct.postProcessTypeLocation,Ut=ct.mSizeLocation,Zt=ct.sigmaLocation,pe=ct.bSigmaLocation,Lt=ct.overlayTypeLocation,Jt=ct.hardThresholdLocation,hr=ct.sigmoidClipLocation;z.uniform1i(rt,Gt),z.uniform1i(Ut,qn),z.uniform1f(Zt,he),z.uniform1f(pe,de),z.uniform1i(Lt,Ne),z.uniform1f(Jt,We),z.uniform1i(hr,De),z.uniform1i(Wt,0),z.uniform1i($t,1),z.uniform1i(Ke,2),z.uniform1i(qt,3),z.uniform1i(dt,4),z.uniform1i(Wn,5),z.uniform1i(dr,6),z.uniform1i(Ht,7),z.uniform1i(En,8),z.activeTexture(z.TEXTURE0),z.bindTexture(z.TEXTURE_2D,re[0]),z.activeTexture(z.TEXTURE1),z.bindTexture(z.TEXTURE_2D,re[1]),z.activeTexture(z.TEXTURE2),z.bindTexture(z.TEXTURE_2D,re[2]),z.activeTexture(z.TEXTURE3),z.bindTexture(z.TEXTURE_2D,re[3]),z.activeTexture(z.TEXTURE4),z.bindTexture(z.TEXTURE_2D,re[4]),z.activeTexture(z.TEXTURE5),z.bindTexture(z.TEXTURE_2D,re[5]),z.activeTexture(z.TEXTURE6),z.bindTexture(z.TEXTURE_2D,re[6]),z.activeTexture(z.TEXTURE7),z.bindTexture(z.TEXTURE_2D,re[7]),z.activeTexture(z.TEXTURE8),z.bindTexture(z.TEXTURE_2D,re[8]),z.drawArrays(z.TRIANGLES,0,6),this.maskBuffer[0]=this.maskBuffer[1],this.maskBuffer[1]=this.maskBuffer[2],this.maskBuffer[2]=Y,this.frameBuffer[0]=this.frameBuffer[1],this.frameBuffer[1]=this.frameBuffer[2],this.frameBuffer[2]=se}}]),le}(),Wo=typeof globalThis!="undefined"?globalThis:typeof window!="undefined"?window:typeof global!="undefined"?global:typeof self!="undefined"?self:{};(function(){var le;function Te(d){var g=0;return function(){return g<d.length?{done:!1,value:d[g++]}:{done:!0}}}var Se=typeof Object.defineProperties=="function"?Object.defineProperty:function(d,g,w){return d==Array.prototype||d==Object.prototype||(d[g]=w.value),d},je=function(d){d=[(typeof globalThis=="undefined"?"undefined":$(globalThis))=="object"&&globalThis,d,(typeof window=="undefined"?"undefined":$(window))=="object"&&window,(typeof self=="undefined"?"undefined":$(self))=="object"&&self,$(Wo)=="object"&&Wo];for(var g=0;g<d.length;++g){var w=d[g];if(w&&w.Math==Math)return w}throw Error("Cannot find global object")}(this);function He(d,g){if(g)e:{var w=je;d=d.split(".");for(var L=0;L<d.length-1;L++){var B=d[L];if(!(B in w))break e;w=w[B]}(g=g(L=w[d=d[d.length-1]]))!=L&&g!=null&&Se(w,d,{configurable:!0,writable:!0,value:g})}}function oe(d){return(d={next:d})[Symbol.iterator]=function(){return this},d}function Y(d){var g=typeof Symbol!="undefined"&&Symbol.iterator&&d[Symbol.iterator];return g?g.call(d):{next:Te(d)}}function se(d){if(!(d instanceof Array)){d=Y(d);for(var g,w=[];!(g=d.next()).done;)w.push(g.value);d=w}return d}He("Symbol",function(d){function g(B,M){this.h=B,Se(this,"description",{configurable:!0,writable:!0,value:M})}if(d)return d;g.prototype.toString=function(){return this.h};var w="jscomp_symbol_"+(1e9*Math.random()>>>0)+"_",L=0;return function B(M){if(this instanceof B)throw new TypeError("Symbol is not a constructor");return new g(w+(M||"")+"_"+L++,M)}}),He("Symbol.iterator",function(d){if(d)return d;d=Symbol("Symbol.iterator");for(var g="Array Int8Array Uint8Array Uint8ClampedArray Int16Array Uint16Array Int32Array Uint32Array Float32Array Float64Array".split(" "),w=0;w<g.length;w++){var L=je[g[w]];typeof L=="function"&&typeof L.prototype[d]!="function"&&Se(L.prototype,d,{configurable:!0,writable:!0,value:function(){return oe(Te(this))}})}return d});var z=typeof Object.assign=="function"?Object.assign:function(d,g){for(var w=1;w<arguments.length;w++){var L=arguments[w];if(L)for(var B in L)Object.prototype.hasOwnProperty.call(L,B)&&(d[B]=L[B])}return d};He("Object.assign",function(d){return d||z});var re,be=typeof Object.create=="function"?Object.create:function(d){function g(){}return g.prototype=d,new g};if(typeof Object.setPrototypeOf=="function")re=Object.setPrototypeOf;else{var ue;e:{var ye={};try{ye.__proto__={a:!0},ue=ye.a;break e}catch(d){}ue=!1}re=ue?function(d,g){if(d.__proto__=g,d.__proto__!==g)throw new TypeError(d+" is not extensible");return d}:null}var Me=re;function Wt(d,g){if(d.prototype=be(g.prototype),d.prototype.constructor=d,Me)Me(d,g);else for(var w in g)if(w!="prototype")if(Object.defineProperties){var L=Object.getOwnPropertyDescriptor(g,w);L&&Object.defineProperty(d,w,L)}else d[w]=g[w];d.za=g.prototype}function $t(){this.m=!1,this.j=null,this.i=void 0,this.h=1,this.v=this.s=0,this.l=null}function Ke(d){if(d.m)throw new TypeError("Generator is already running");d.m=!0}function qt(d,g){d.l={ma:g,na:!0},d.h=d.s||d.v}function dt(d,g,w){return d.h=w,{value:g}}function Wn(d){this.h=new $t,this.i=d}function dr(d,g,w,L){try{var B=g.call(d.h.j,w);if(!(B instanceof Object))throw new TypeError("Iterator result "+B+" is not an object");if(!B.done)return d.h.m=!1,B;var M=B.value}catch(F){return d.h.j=null,qt(d.h,F),Ht(d)}return d.h.j=null,L.call(d.h,M),Ht(d)}function Ht(d){for(;d.h.h;)try{var g=d.i(d.h);if(g)return d.h.m=!1,{value:g.value,done:!1}}catch(w){d.h.i=void 0,qt(d.h,w)}if(d.h.m=!1,d.h.l){if(g=d.h.l,d.h.l=null,g.na)throw g.ma;return{value:g.return,done:!0}}return{value:void 0,done:!0}}function En(d){this.next=function(g){return Ke(d.h),d.h.j?g=dr(d,d.h.j.next,g,d.h.u):(d.h.u(g),g=Ht(d)),g},this.throw=function(g){return Ke(d.h),d.h.j?g=dr(d,d.h.j.throw,g,d.h.u):(qt(d.h,g),g=Ht(d)),g},this.return=function(g){return function(w,L){Ke(w.h);var B=w.h.j;return B?dr(w,"return"in B?B.return:function(M){return{value:M,done:!0}},L,w.h.return):(w.h.return(L),Ht(w))}(d,g)},this[Symbol.iterator]=function(){return this}}function Ze(d){return function(g){function w(B){return g.next(B)}function L(B){return g.throw(B)}return new Promise(function(B,M){(function F(W){W.done?B(W.value):Promise.resolve(W.value).then(w,L).then(F,M)})(g.next())})}(new En(new Wn(d)))}function Gt(d){return d||Array.prototype.fill}$t.prototype.u=function(d){this.i=d},$t.prototype.return=function(d){this.l={return:d},this.h=this.v},He("Promise",function(d){function g(F){this.i=0,this.j=void 0,this.h=[],this.u=!1;var W=this.l();try{F(W.resolve,W.reject)}catch(Z){W.reject(Z)}}function w(){this.h=null}function L(F){return F instanceof g?F:new g(function(W){W(F)})}if(d)return d;w.prototype.i=function(F){if(this.h==null){this.h=[];var W=this;this.j(function(){W.m()})}this.h.push(F)};var B=je.setTimeout;w.prototype.j=function(F){B(F,0)},w.prototype.m=function(){for(;this.h&&this.h.length;){var F=this.h;this.h=[];for(var W=0;W<F.length;++W){var Z=F[W];F[W]=null;try{Z()}catch(fe){this.l(fe)}}}this.h=null},w.prototype.l=function(F){this.j(function(){throw F})},g.prototype.l=function(){function F(fe){return function(me){Z||(Z=!0,fe.call(W,me))}}var W=this,Z=!1;return{resolve:F(this.I),reject:F(this.m)}},g.prototype.I=function(F){if(F===this)this.m(new TypeError("A Promise cannot resolve to itself"));else if(F instanceof g)this.L(F);else{e:switch($(F)){case"object":var W=F!=null;break e;case"function":W=!0;break e;default:W=!1}W?this.F(F):this.s(F)}},g.prototype.F=function(F){var W=void 0;try{W=F.then}catch(Z){return void this.m(Z)}typeof W=="function"?this.M(W,F):this.s(F)},g.prototype.m=function(F){this.v(2,F)},g.prototype.s=function(F){this.v(1,F)},g.prototype.v=function(F,W){if(this.i!=0)throw Error("Cannot settle("+F+", "+W+"): Promise already settled in state"+this.i);this.i=F,this.j=W,this.i===2&&this.K(),this.H()},g.prototype.K=function(){var F=this;B(function(){if(F.D()){var W=je.console;W!==void 0&&W.error(F.j)}},1)},g.prototype.D=function(){if(this.u)return!1;var F=je.CustomEvent,W=je.Event,Z=je.dispatchEvent;return Z===void 0||(typeof F=="function"?F=new F("unhandledrejection",{cancelable:!0}):typeof W=="function"?F=new W("unhandledrejection",{cancelable:!0}):(F=je.document.createEvent("CustomEvent")).initCustomEvent("unhandledrejection",!1,!0,F),F.promise=this,F.reason=this.j,Z(F))},g.prototype.H=function(){if(this.h!=null){for(var F=0;F<this.h.length;++F)M.i(this.h[F]);this.h=null}};var M=new w;return g.prototype.L=function(F){var W=this.l();F.T(W.resolve,W.reject)},g.prototype.M=function(F,W){var Z=this.l();try{F.call(W,Z.resolve,Z.reject)}catch(fe){Z.reject(fe)}},g.prototype.then=function(F,W){function Z(Ae,ve){return typeof Ae=="function"?function(Le){try{fe(Ae(Le))}catch(Be){me(Be)}}:ve}var fe,me,we=new g(function(Ae,ve){fe=Ae,me=ve});return this.T(Z(F,fe),Z(W,me)),we},g.prototype.catch=function(F){return this.then(void 0,F)},g.prototype.T=function(F,W){function Z(){switch(fe.i){case 1:F(fe.j);break;case 2:W(fe.j);break;default:throw Error("Unexpected state: "+fe.i)}}var fe=this;this.h==null?M.i(Z):this.h.push(Z),this.u=!0},g.resolve=L,g.reject=function(F){return new g(function(W,Z){Z(F)})},g.race=function(F){return new g(function(W,Z){for(var fe=Y(F),me=fe.next();!me.done;me=fe.next())L(me.value).T(W,Z)})},g.all=function(F){var W=Y(F),Z=W.next();return Z.done?L([]):new g(function(fe,me){function we(Le){return function(Be){Ae[Le]=Be,--ve==0&&fe(Ae)}}var Ae=[],ve=0;do Ae.push(void 0),ve++,L(Z.value).T(we(Ae.length-1),me),Z=W.next();while(!Z.done)})},g}),He("Array.prototype.keys",function(d){return d||function(){return function(g,w){g instanceof String&&(g+="");var L=0,B=!1,M={next:function(){if(!B&&L<g.length){var F=L++;return{value:w(F,g[F]),done:!1}}return B=!0,{done:!0,value:void 0}}};return M[Symbol.iterator]=function(){return M},M}(this,function(g){return g})}}),He("Array.prototype.fill",function(d){return d||function(g,w,L){var B=this.length||0;for(0>w&&(w=Math.max(0,B+w)),(L==null||L>B)&&(L=B),0>(L=Number(L))&&(L=Math.max(0,B+L)),w=Number(w||0);w<L;w++)this[w]=g;return this}}),He("Int8Array.prototype.fill",Gt),He("Uint8Array.prototype.fill",Gt),He("Uint8ClampedArray.prototype.fill",Gt),He("Int16Array.prototype.fill",Gt),He("Uint16Array.prototype.fill",Gt),He("Int32Array.prototype.fill",Gt),He("Uint32Array.prototype.fill",Gt),He("Float32Array.prototype.fill",Gt),He("Float64Array.prototype.fill",Gt),He("Object.is",function(d){return d||function(g,w){return g===w?g!==0||1/g==1/w:g!=g&&w!=w}}),He("Array.prototype.includes",function(d){return d||function(g,w){var L=this;L instanceof String&&(L=String(L));var B=L.length;for(0>(w=w||0)&&(w=Math.max(w+B,0));w<B;w++){var M=L[w];if(M===g||Object.is(M,g))return!0}return!1}}),He("String.prototype.includes",function(d){return d||function(g,w){if(this==null)throw new TypeError("The 'this' value for String.prototype.includes must not be null or undefined");if(g instanceof RegExp)throw new TypeError("First argument to String.prototype.includes must not be a regular expression");return this.indexOf(g,w||0)!==-1}});var qn=this||self;function he(d,g){d=d.split(".");var w,L=qn;for((d[0]in L)||L.execScript===void 0||L.execScript("var "+d[0]);d.length&&(w=d.shift());)d.length||g===void 0?L=L[w]&&L[w]!==Object.prototype[w]?L[w]:L[w]={}:L[w]=g}function de(d){var g;return(g=qn.navigator)&&(g=g.userAgent)||(g=""),g.indexOf(d)!=-1}var Ne=Array.prototype.map?function(d,g){return Array.prototype.map.call(d,g,void 0)}:function(d,g){for(var w=d.length,L=Array(w),B=typeof d=="string"?d.split(""):d,M=0;M<w;M++)M in B&&(L[M]=g.call(void 0,B[M],M,d));return L},We={},De=null;function ct(d){var g=d.length,w=3*g/4;w%3?w=Math.floor(w):"=.".indexOf(d[g-1])!=-1&&(w="=.".indexOf(d[g-2])!=-1?w-2:w-1);var L=new Uint8Array(w),B=0;return function(M,F){function W(ve){for(;Z<M.length;){var Le=M.charAt(Z++),Be=De[Le];if(Be!=null)return Be;if(!/^[\s\xa0]*$/.test(Le))throw Error("Unknown base64 encoding at char: "+Le)}return ve}rt();for(var Z=0;;){var fe=W(-1),me=W(0),we=W(64),Ae=W(64);if(Ae===64&&fe===-1)break;F(fe<<2|me>>4),we!=64&&(F(me<<4&240|we>>2),Ae!=64&&F(we<<6&192|Ae))}}(d,function(M){L[B++]=M}),B!==w?L.subarray(0,B):L}function rt(){if(!De){De={};for(var d="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789".split(""),g=["+/=","+/","-_=","-_.","-_"],w=0;5>w;w++){var L=d.concat(g[w].split(""));We[w]=L;for(var B=0;B<L.length;B++){var M=L[B];De[M]===void 0&&(De[M]=B)}}}}var Ut=typeof Uint8Array!="undefined",Zt=!(de("Trident")||de("MSIE"))&&typeof qn.btoa=="function";function pe(d){if(!Zt){var g;g===void 0&&(g=0),rt(),g=We[g];for(var w=Array(Math.floor(d.length/3)),L=g[64]||"",B=0,M=0;B<d.length-2;B+=3){var F=d[B],W=d[B+1],Z=d[B+2],fe=g[F>>2];F=g[(3&F)<<4|W>>4],W=g[(15&W)<<2|Z>>6],Z=g[63&Z],w[M++]=fe+F+W+Z}switch(fe=0,Z=L,d.length-B){case 2:Z=g[(15&(fe=d[B+1]))<<2]||L;case 1:d=d[B],w[M]=g[d>>2]+g[(3&d)<<4|fe>>4]+Z+L}return w.join("")}for(g="";10240<d.length;)g+=String.fromCharCode.apply(null,d.subarray(0,10240)),d=d.subarray(10240);return g+=String.fromCharCode.apply(null,d),btoa(g)}var Lt,Jt=RegExp("[-_.]","g");function hr(d){switch(d){case"-":return"+";case"_":return"/";case".":return"=";default:return""}}function Ri(d){if(!Zt)return ct(d);Jt.test(d)&&(d=d.replace(Jt,hr)),d=atob(d);for(var g=new Uint8Array(d.length),w=0;w<d.length;w++)g[w]=d.charCodeAt(w);return g}function _n(){return Lt||(Lt=new Uint8Array(0))}var Rt={},Id=typeof Uint8Array.prototype.slice=="function",Ot=0,ht=0;function Pc(d){var g=0>d,w=(d=Math.abs(d))>>>0;d=Math.floor((d-w)/4294967296),g&&(g=(w=Y(_a(w,d))).next().value,d=w.next().value,w=g),Ot=w>>>0,ht=d>>>0}var Dc,yn=typeof BigInt=="function";function _a(d,g){return g=~g,d?d=1+~d:g+=1,[d,g]}function Ai(d,g){this.i=d>>>0,this.h=g>>>0}function Lc(d){if(!d)return Dc||(Dc=new Ai(0,0));if(!/^-?\d+$/.test(d))return null;if(16>d.length)Pc(Number(d));else if(yn)d=BigInt(d),Ot=Number(d&BigInt(4294967295))>>>0,ht=Number(d>>BigInt(32)&BigInt(4294967295));else{var g=+(d[0]==="-");ht=Ot=0;for(var w=d.length,L=g,B=(w-g)%6+g;B<=w;L=B,B+=6)L=Number(d.slice(L,B)),ht*=1e6,4294967296<=(Ot=1e6*Ot+L)&&(ht+=Ot/4294967296|0,Ot%=4294967296);g&&(d=(g=Y(_a(Ot,ht))).next().value,g=g.next().value,Ot=d,ht=g)}return new Ai(Ot,ht)}function it(d,g){return Error("Invalid wire type: "+d+" (at position "+g+")")}function ya(){return Error("Failed to read varint, encoding is invalid.")}function Oc(d,g){return Error("Tried to read past the end of the data "+g+" > "+d)}function at(){throw Error("Invalid UTF8")}function ba(d,g){return g=String.fromCharCode.apply(null,g),d==null?g:d+g}var qo,Mc,Rn,bn=void 0,Jn=typeof TextDecoder!="undefined",Nc=typeof TextEncoder!="undefined";function Sa(d){if(d!==Rt)throw Error("illegal external caller")}function Kr(d,g){if(Sa(g),this.V=d,d!=null&&d.length===0)throw Error("ByteString should be constructed with non-empty values")}function ka(){return Rn||(Rn=new Kr(null,Rt))}function Jo(d){Sa(Rt);var g=d.V;return(g=g==null||Ut&&g!=null&&g instanceof Uint8Array?g:typeof g=="string"?Ri(g):null)==null?g:d.V=g}function Ko(d,g){this.i=null,this.m=!1,this.h=this.j=this.l=0,fr(this,d,g)}function fr(d,g,w){w=w===void 0?{}:w,d.S=w.S!==void 0&&w.S,g&&(g=function(L){if(typeof L=="string")return{buffer:Ri(L),C:!1};if(Array.isArray(L))return{buffer:new Uint8Array(L),C:!1};if(L.constructor===Uint8Array)return{buffer:L,C:!1};if(L.constructor===ArrayBuffer)return{buffer:new Uint8Array(L),C:!1};if(L.constructor===Kr)return{buffer:Jo(L)||_n(),C:!0};if(L instanceof Uint8Array)return{buffer:new Uint8Array(L.buffer,L.byteOffset,L.byteLength),C:!1};throw Error("Type not convertible to a Uint8Array, expected a Uint8Array, an ArrayBuffer, a base64 encoded string, a ByteString or an Array of numbers")}(g),d.i=g.buffer,d.m=g.C,d.l=0,d.j=d.i.length,d.h=d.l)}function pr(d,g){if(d.h=g,g>d.j)throw Oc(d.j,g)}function Pi(d){var g=d.i,w=d.h,L=g[w++],B=127&L;if(128&L&&(B|=(127&(L=g[w++]))<<7,128&L&&(B|=(127&(L=g[w++]))<<14,128&L&&(B|=(127&(L=g[w++]))<<21,128&L&&(B|=(L=g[w++])<<28,128&L&&128&g[w++]&&128&g[w++]&&128&g[w++]&&128&g[w++]&&128&g[w++])))))throw ya();return pr(d,w),B}function Yo(d,g){if(0>g)throw Error("Tried to read a negative byte length: "+g);var w=d.h,L=w+g;if(L>d.j)throw Oc(g,d.j-w);return d.h=L,w}Ko.prototype.reset=function(){this.h=this.l};var Xo=[];function Qo(){this.h=[]}function Uc(d,g,w){for(;0<w||127<g;)d.h.push(127&g|128),g=(g>>>7|w<<25)>>>0,w>>>=7;d.h.push(g)}function Ar(d,g){for(;127<g;)d.h.push(127&g|128),g>>>=7;d.h.push(g)}function $o(d,g){if(Xo.length){var w=Xo.pop();fr(w,d,g),d=w}else d=new Ko(d,g);this.h=d,this.j=this.h.h,this.i=this.l=-1,this.setOptions(g)}function Di(d){var g=d.h;if(g.h==g.j)return!1;d.j=d.h.h;var w=Pi(d.h)>>>0;if(g=w>>>3,!(0<=(w&=7)&&5>=w))throw it(w,d.j);if(1>g)throw Error("Invalid field number: "+g+" (at position "+d.j+")");return d.l=g,d.i=w,!0}function Ta(d){switch(d.i){case 0:if(d.i!=0)Ta(d);else e:{for(var g=(d=d.h).h,w=g+10,L=d.i;g<w;)if((128&L[g++])==0){pr(d,g);break e}throw ya()}break;case 1:pr(d=d.h,d.h+8);break;case 2:d.i!=2?Ta(d):(g=Pi(d.h)>>>0,pr(d=d.h,d.h+g));break;case 5:pr(d=d.h,d.h+4);break;case 3:for(g=d.l;;){if(!Di(d))throw Error("Unmatched start-group tag: stream EOF");if(d.i==4){if(d.l!=g)throw Error("Unmatched end-group tag");break}Ta(d)}break;default:throw it(d.i,d.j)}}Qo.prototype.length=function(){return this.h.length},Qo.prototype.end=function(){var d=this.h;return this.h=[],d},$o.prototype.setOptions=function(d){d=d===void 0?{}:d,this.ca=d.ca!==void 0&&d.ca},$o.prototype.reset=function(){this.h.reset(),this.j=this.h.h,this.i=this.l=-1};var Kn=[];function wd(){this.j=[],this.i=0,this.h=new Qo}function Yr(d,g){g.length!==0&&(d.j.push(g),d.i+=g.length)}var Yn=typeof Symbol=="function"&&$(Symbol())==="symbol"?Symbol():void 0;function Vt(d,g){return Yn?d[Yn]|=g:d.A!==void 0?d.A|=g:(Object.defineProperties(d,{A:{value:g,configurable:!0,writable:!0,enumerable:!1}}),g)}function Vc(d,g){Yn?d[Yn]&&(d[Yn]&=~g):d.A!==void 0&&(d.A&=~g)}function It(d){var g;return(g=Yn?d[Yn]:d.A)==null?0:g}function Kt(d,g){Yn?d[Yn]=g:d.A!==void 0?d.A=g:Object.defineProperties(d,{A:{value:g,configurable:!0,writable:!0,enumerable:!1}})}function Li(d){return Vt(d,1),d}function Zo(d,g){Kt(g,-51&(0|d))}function Xr(d,g){Kt(g,-41&(18|d))}var es={};function Pr(d){return d!==null&&$(d)==="object"&&!Array.isArray(d)&&d.constructor===Object}var Qr,xa,Ia=[];function ts(d){if(2&It(d.o))throw Error("Cannot mutate an immutable Message")}function wa(d){var g=d.length;(g=g?d[g-1]:void 0)&&Pr(g)?g.g=1:(g={},d.push((g.g=1,g)))}function Ca(d){var g=d.i+d.G;return d.B||(d.B=d.o[g]={})}function hn(d,g){return g===-1?null:g>=d.i?d.B?d.B[g]:void 0:d.o[g+d.G]}function An(d,g,w,L){ts(d),Oi(d,g,w,L)}function Oi(d,g,w,L){d.j&&(d.j=void 0),g>=d.i||L?Ca(d)[g]=w:(d.o[g+d.G]=w,(d=d.B)&&g in d&&delete d[g])}function Mt(d,g,w,L){var B=hn(d,g);Array.isArray(B)||(B=Qr);var M=It(B);if(1&M||Li(B),L)2&M||Vt(B,2),1&w||Object.freeze(B);else{L=!(2&w);var F=2&M;1&w||!F?L&&16&M&&!F&&Vc(B,16):Oi(d,g,B=Li(Array.prototype.slice.call(B)))}return B}function ns(d,g){var w=hn(d,g),L=w==null?w:typeof w=="number"||w==="NaN"||w==="Infinity"||w==="-Infinity"?Number(w):void 0;return L!=null&&L!==w&&Oi(d,g,L),L}function jc(d,g,w,L,B){d.h||(d.h={});var M=d.h[w],F=Mt(d,w,3,B);if(!M){var W=F;M=[];var Z=!!(16&It(d.o));F=!!(2&It(W));var fe=W;!B&&F&&(W=Array.prototype.slice.call(W));for(var me=F,we=0;we<W.length;we++){var Ae=W[we],ve=g,Le=!1;if(Le=Le!==void 0&&Le,(Ae=Array.isArray(Ae)?new ve(Ae):Le?new ve:void 0)!==void 0){var Be=Le=It(ve=Ae.o);F&&(Be|=2),Z&&(Be|=16),Be!=Le&&Kt(ve,Be),ve=Be,me=me||!!(2&ve),M.push(Ae)}}return d.h[w]=M,g=33|(Z=It(W)),Z!=(g=me?-9&g:8|g)&&(me=W,Object.isFrozen(me)&&(me=Array.prototype.slice.call(me)),Kt(me,g),W=me),fe!==W&&Oi(d,w,W),(B||L&&F)&&Vt(M,2),L&&Object.freeze(M),M}return B||(B=Object.isFrozen(M),L&&!B?Object.freeze(M):!L&&B&&(M=Array.prototype.slice.call(M),d.h[w]=M)),M}function kt(d,g,w){var L=!!(2&It(d.o));if(g=jc(d,g,w,L,L),d=Mt(d,w,3,L),!(L||8&It(d))){for(L=0;L<g.length;L++){if(2&It((w=g[L]).o)){var B=$r(w,!1);B.j=w}else B=w;w!==B&&(g[L]=B,d[L]=B.o)}Vt(d,8)}return g}function Pn(d,g,w){if(w!=null&&typeof w!="number")throw Error("Value of float/double field must be a number|null|undefined, found "+$(w)+": "+w);An(d,g,w)}function Bc(d,g,w,L,B){ts(d);var M=jc(d,w,g,!1,!1);return w=L!=null?L:new w,d=Mt(d,g,2,!1),B!=null?(M.splice(B,0,w),d.splice(B,0,w.o)):(M.push(w),d.push(w.o)),w.C()&&Vc(d,8),w}function Ea(d,g){return d==null?g:d}function Dn(d,g,w){return w=w===void 0?0:w,Ea(ns(d,g),w)}function Mi(d,g,w,L){if(d!=null){if(Array.isArray(d))d=rs(d,g,w,L!==void 0);else if(Pr(d)){var B,M={};for(B in d)M[B]=Mi(d[B],g,w,L);d=M}else d=g(d,L);return d}}function rs(d,g,w,L){var B=It(d);L=L?!!(16&B):void 0,d=Array.prototype.slice.call(d);for(var M=0;M<d.length;M++)d[M]=Mi(d[M],g,w,L);return w(B,d),d}function Cd(d){return d.ja===es?d.toJSON():function(g){switch($(g)){case"number":return isFinite(g)?g:String(g);case"object":if(g)if(Array.isArray(g)){if((128&It(g))!=0)return wa(g=Array.prototype.slice.call(g)),g}else{if(Ut&&g!=null&&g instanceof Uint8Array)return pe(g);if(g instanceof Kr){var w=g.V;return w==null?"":typeof w=="string"?w:g.V=pe(w)}}}return g}(d)}function Fc(d,g){128&d&&wa(g)}function Hc(d,g,w){if(w=w===void 0?Xr:w,d!=null){if(Ut&&d instanceof Uint8Array)return d.length?new Kr(new Uint8Array(d),Rt):ka();if(Array.isArray(d)){var L=It(d);return 2&L?d:!g||32&L||!(16&L||L===0)?(4&(g=It(d=rs(d,Hc,4&L?Xr:w,!0)))&&2&g&&Object.freeze(d),d):(Kt(d,2|L),d)}return d.ja===es?as(d):d}}function is(d,g,w,L,B,M,F){if(d=d.h&&d.h[w]){if(2&(L=It(d))?L=d:(Xr(L,M=Ne(d,as)),Object.freeze(M),L=M),ts(g),F=L==null?Qr:Li([]),L!=null){for(M=!!L.length,d=0;d<L.length;d++){var W=L[d];M=M&&!(2&It(W.o)),F[d]=W.o}M=1|(M?8:0),((d=It(F))&M)!==M&&(Object.isFrozen(F)&&(F=Array.prototype.slice.call(F)),Kt(F,d|M)),g.h||(g.h={}),g.h[w]=L}else g.h&&(g.h[w]=void 0);Oi(g,w,F,B)}else An(g,w,Hc(L,M,F),B)}function as(d){return 2&It(d.o)||Vt((d=$r(d,!0)).o,2),d}function $r(d,g){var w=d.o,L=[];Vt(L,16);var B=d.constructor.h;if(B&&L.push(B),B=d.B){L.length=w.length,L.fill(void 0,L.length,w.length);var M={};L[L.length-1]=M}(128&It(w))!=0&&wa(L),g=g||d.C()?Xr:Zo,M=d.constructor,xa=L,L=new M(L),xa=void 0,d.R&&(L.R=d.R.slice()),M=!!(16&It(w));for(var F=B?w.length-1:w.length,W=0;W<F;W++)is(d,L,W-d.G,w[W],!1,M,g);if(B)for(var Z in B)is(d,L,+Z,B[Z],!0,M,g);return L}function At(d,g,w){d==null&&(d=xa),xa=void 0;var L,B=this.constructor.i||0,M=0<B,F=this.constructor.h,W=!1;if(d==null){var Z=48,fe=!0;M&&(B=0,Z|=128),Kt(d=F?[F]:[],Z)}else{if(!Array.isArray(d)||F&&F!==d[0])throw Error();var me=Z=Vt(d,0);if((fe=(16&me)!=0)&&((W=(32&me)!=0)||(me|=32)),M){if(128&me)B=0;else if(0<d.length){var we=d[d.length-1];if(Pr(we)&&"g"in we){B=0,me|=128,delete we.g;var Ae,ve=!0;for(Ae in we){ve=!1;break}ve&&d.pop()}}}else if(128&me)throw Error();Z!==me&&Kt(d,me)}if(this.G=(F?0:-1)-B,this.h=void 0,this.o=d,B=(F=this.o.length)-1,F&&Pr(F=this.o[B])?(this.B=F,this.i=B-this.G):g!==void 0&&-1<g?(this.i=Math.max(g,B+1-this.G),this.B=void 0):this.i=Number.MAX_VALUE,!M&&this.B&&"g"in this.B)throw Error('Unexpected "g" flag in sparse object of message that is not a group type.');if(w)for(g=fe&&!W&&!0,M=this.i,fe=0;fe<w.length;fe++)(W=w[fe])<M?(B=d[W+=this.G])?os(B,g):d[W]=Qr:(L||(L=Ca(this)),(B=L[W])?os(B,g):L[W]=Qr)}function os(d,g){if(Array.isArray(d)){var w=It(d),L=1;!g||2&w||(L|=16),(w&L)!==L&&Kt(d,w|L)}}function Gc(d,g,w){if(w){var L,B={};for(L in w){var M=w[L],F=M.ra;F||(B.J=M.xa||M.oa.W,M.ia?(B.aa=Kc(M.ia),F=function(W){return function(Z,fe,me){return W.J(Z,fe,me,W.aa)}}(B)):M.ka?(B.Z=Ni(M.da.P,M.ka),F=function(W){return function(Z,fe,me){return W.J(Z,fe,me,W.Z)}}(B)):F=B.J,M.ra=F),F(g,d,M.da),B={J:B.J,aa:B.aa,Z:B.Z}}}(function(W,Z){if(Z=Z.R){Yr(W,W.h.end());for(var fe=0;fe<Z.length;fe++)Yr(W,Jo(Z[fe])||_n())}})(g,d)}Kt(Ia,23),Qr=Object.freeze(Ia),At.prototype.toJSON=function(){return rs(this.o,Cd,Fc)},At.prototype.C=function(){return!!(2&It(this.o))},At.prototype.ja=es,At.prototype.toString=function(){return this.o.toString()};var tt=Symbol();function zc(d,g,w){return d[tt]||(d[tt]=function(L,B){return g(L,B,w)})}function ss(d){var g=d[tt];if(!g){var w=ls(d);g=function(L,B){return Qc(L,B,w)},d[tt]=g}return g}function Wc(d){var g=function(B){var M=B.ia;return M?ss(M):(M=B.wa)?zc(B.da.P,M,B.ka):void 0}(d),w=d.da,L=d.oa.U;return g?function(B,M){return L(B,M,w,g)}:function(B,M){return L(B,M,w)}}function qc(d,g){var w=d[g];return typeof w=="function"&&w.length===0&&(w=w(),d[g]=w),Array.isArray(w)&&(mr in w||Ui in w||0<w.length&&typeof w[0]=="function")?w:void 0}function Jc(d,g,w,L,B,M){g.P=d[0];var F=1;if(d.length>F&&typeof d[F]!="number"){var W=d[F++];w(g,W)}for(;F<d.length;){w=d[F++];for(var Z=F+1;Z<d.length&&typeof d[Z]!="number";)Z++;switch(W=d[F++],Z-=F){case 0:L(g,w,W);break;case 1:(Z=qc(d,F))?(F++,B(g,w,W,Z)):L(g,w,W,d[F++]);break;case 2:B(g,w,W,Z=qc(d,Z=F++),d[F++]);break;case 3:M(g,w,W,d[F++],d[F++],d[F++]);break;case 4:M(g,w,W,d[F++],d[F++],d[F++],d[F++]);break;default:throw Error("unexpected number of binary field arguments: "+Z)}}return g}var Ra=Symbol();function Kc(d){var g=d[Ra];if(!g){var w=us(d);g=function(L,B){return $c(L,B,w)},d[Ra]=g}return g}function Ni(d,g){var w=d[Ra];return w||(w=function(L,B){return Gc(L,B,g)},d[Ra]=w),w}var Ui=Symbol();function Ed(d,g){d.push(g)}function Aa(d,g,w){d.push(g,w.W)}function Yc(d,g,w,L){var B=Kc(L),M=us(L).P,F=w.W;d.push(g,function(W,Z,fe){return F(W,Z,fe,M,B)})}function cs(d,g,w,L,B,M){var F=Ni(L,M),W=w.W;d.push(g,function(Z,fe,me){return W(Z,fe,me,L,F)})}function us(d){var g=d[Ui];return g||(g=Jc(d,d[Ui]=[],Ed,Aa,Yc,cs),mr in d&&Ui in d&&(d.length=0),g)}var mr=Symbol();function Rd(d,g){d[0]=g}function Xc(d,g,w,L){var B=w.U;d[g]=L?function(M,F,W){return B(M,F,W,L)}:B}function Ad(d,g,w,L,B){var M=w.U,F=ss(L),W=ls(L).P;d[g]=function(Z,fe,me){return M(Z,fe,me,W,F,B)}}function Pd(d,g,w,L,B,M,F){var W=w.U,Z=zc(L,B,M);d[g]=function(fe,me,we){return W(fe,me,we,L,Z,F)}}function ls(d){var g=d[mr];return g||(g=Jc(d,d[mr]={},Rd,Xc,Ad,Pd),mr in d&&Ui in d&&(d.length=0),g)}function Qc(d,g,w){for(;Di(g)&&g.i!=4;){var L=g.l,B=w[L];if(!B){var M=w[0];M&&(M=M[L])&&(B=w[L]=Wc(M))}if(!B||!B(g,d,L)){L=d,M=(B=g).j,Ta(B);var F=B;if(!F.ca){if(B=F.h.h-M,F.h.h=M,F=F.h,B==0)B=ka();else{if(M=Yo(F,B),F.S&&F.m)B=F.i.subarray(M,M+B);else{F=F.i;var W=M;B=W===(B=M+B)?_n():Id?F.slice(W,B):new Uint8Array(F.subarray(W,B))}B=B.length==0?ka():new Kr(B,Rt)}(M=L.R)?M.push(B):L.R=[B]}}}return d}function $c(d,g,w){for(var L=w.length,B=L%2==1,M=B?1:0;M<L;M+=2)(0,w[M+1])(g,d,w[M]);Gc(d,g,B?w[0]:void 0)}function Vi(d,g){return{U:d,W:g}}var Sn=Vi(function(d,g,w){if(d.i!==5)return!1;var L=(d=d.h).i,B=d.h,M=L[B],F=L[B+1],W=L[B+2];return L=L[B+3],pr(d,d.h+4),d=2*((F=(M<<0|F<<8|W<<16|L<<24)>>>0)>>31)+1,M=F>>>23&255,F&=8388607,An(g,w,M==255?F?NaN:1/0*d:M==0?d*Math.pow(2,-149)*F:d*Math.pow(2,M-150)*(F+Math.pow(2,23))),!0},function(d,g,w){if((g=ns(g,w))!=null){Ar(d.h,8*w+5),d=d.h;var L=+g;L===0?0<1/L?Ot=ht=0:(ht=0,Ot=2147483648):isNaN(L)?(ht=0,Ot=2147483647):34028234663852886e22<(L=(w=0>L?-2147483648:0)?-L:L)?(ht=0,Ot=(2139095040|w)>>>0):11754943508222875e-54>L?(L=Math.round(L/Math.pow(2,-149)),ht=0,Ot=(w|L)>>>0):(g=Math.floor(Math.log(L)/Math.LN2),L*=Math.pow(2,-g),16777216<=(L=Math.round(8388608*L))&&++g,ht=0,Ot=(w|g+127<<23|8388607&L)>>>0),w=Ot,d.h.push(w>>>0&255),d.h.push(w>>>8&255),d.h.push(w>>>16&255),d.h.push(w>>>24&255)}}),Dd=Vi(function(d,g,w){if(d.i!==0)return!1;var L=d.h,B=0,M=d=0,F=L.i,W=L.h;do{var Z=F[W++];B|=(127&Z)<<M,M+=7}while(32>M&&128&Z);for(32<M&&(d|=(127&Z)>>4),M=3;32>M&&128&Z;M+=7)d|=(127&(Z=F[W++]))<<M;if(pr(L,W),!(128>Z))throw ya();return L=B>>>0,(d=2147483648&(Z=d>>>0))&&(Z=~Z>>>0,(L=1+~L>>>0)==0&&(Z=Z+1>>>0)),L=4294967296*Z+(L>>>0),An(g,w,d?-L:L),!0},function(d,g,w){(g=hn(g,w))!=null&&(typeof g=="string"&&Lc(g),g!=null&&(Ar(d.h,8*w),typeof g=="number"?(d=d.h,Pc(g),Uc(d,Ot,ht)):(w=Lc(g),Uc(d.h,w.i,w.h))))}),Zc=Vi(function(d,g,w){return d.i===0&&(An(g,w,Pi(d.h)),!0)},function(d,g,w){if((g=hn(g,w))!=null&&g!=null)if(Ar(d.h,8*w),d=d.h,0<=(w=g))Ar(d,w);else{for(g=0;9>g;g++)d.h.push(127&w|128),w>>=7;d.h.push(1)}}),Pt=Vi(function(d,g,w){if(d.i!==2)return!1;var L=Pi(d.h)>>>0,B=Yo(d=d.h,L);if(d=d.i,Jn){var M,F=d;(M=qo)||(M=qo=new TextDecoder("utf-8",{fatal:!0})),d=B+L,F=B===0&&d===F.length?F:F.subarray(B,d);try{var W=M.decode(F)}catch(we){if(bn===void 0){try{M.decode(new Uint8Array([128]))}catch(Ae){}try{M.decode(new Uint8Array([97])),bn=!0}catch(Ae){bn=!1}}throw!bn&&(qo=void 0),we}}else{L=(W=B)+L,B=[];for(var Z,fe,me=null;W<L;)128>(Z=d[W++])?B.push(Z):224>Z?W>=L?at():(fe=d[W++],194>Z||(192&fe)!=128?(W--,at()):B.push((31&Z)<<6|63&fe)):240>Z?W>=L-1?at():(192&(fe=d[W++]))!=128||Z===224&&160>fe||Z===237&&160<=fe||(192&(F=d[W++]))!=128?(W--,at()):B.push((15&Z)<<12|(63&fe)<<6|63&F):244>=Z?W>=L-2?at():(192&(fe=d[W++]))!=128||fe-144+(Z<<28)>>30!=0||(192&(F=d[W++]))!=128||(192&(M=d[W++]))!=128?(W--,at()):(Z=(7&Z)<<18|(63&fe)<<12|(63&F)<<6|63&M,Z-=65536,B.push(55296+(Z>>10&1023),56320+(1023&Z))):at(),8192<=B.length&&(me=ba(me,B),B.length=0);W=ba(me,B)}return An(g,w,W),!0},function(d,g,w){if((g=hn(g,w))!=null){var L=!1;if(L=L!==void 0&&L,Nc){if(L&&/(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])/.test(g))throw Error("Found an unpaired surrogate");g=(Mc||(Mc=new TextEncoder)).encode(g)}else{for(var B=0,M=new Uint8Array(3*g.length),F=0;F<g.length;F++){var W=g.charCodeAt(F);if(128>W)M[B++]=W;else{if(2048>W)M[B++]=W>>6|192;else{if(55296<=W&&57343>=W){if(56319>=W&&F<g.length){var Z=g.charCodeAt(++F);if(56320<=Z&&57343>=Z){W=1024*(W-55296)+Z-56320+65536,M[B++]=W>>18|240,M[B++]=W>>12&63|128,M[B++]=W>>6&63|128,M[B++]=63&W|128;continue}F--}if(L)throw Error("Found an unpaired surrogate");W=65533}M[B++]=W>>12|224,M[B++]=W>>6&63|128}M[B++]=63&W|128}}g=B===M.length?M:M.subarray(0,B)}Ar(d.h,8*w+2),Ar(d.h,g.length),Yr(d,d.h.end()),Yr(d,g)}}),ds=Vi(function(d,g,w,L,B){if(d.i!==2)return!1;g=Bc(g,w,L),w=d.h.j,L=Pi(d.h)>>>0;var M=d.h.h+L,F=M-w;if(0>=F&&(d.h.j=M,B(g,d,void 0,void 0,void 0),F=M-d.h.h),F)throw Error("Message parsing ended unexpectedly. Expected to read "+L+" bytes, instead read "+(L-F)+" bytes, either the data ended unexpectedly or the message misreported its own length");return d.h.h=M,d.h.j=w,!0},function(d,g,w,L,B){if((g=kt(g,L,w))!=null)for(L=0;L<g.length;L++){var M=d;Ar(M.h,8*w+2);var F=M.h.end();Yr(M,F),F.push(M.i),M=F,B(g[L],d),F=d;var W=M.pop();for(W=F.i+F.h.length()-W;127<W;)M.push(127&W|128),W>>>=7,F.i++;M.push(W),F.i++}});function hs(d){return function(g,w){e:{if(Kn.length){var L=Kn.pop();L.setOptions(w),fr(L.h,g,w),g=L}else g=new $o(g,w);try{var B=ls(d),M=Qc(new B.P,g,B);break e}finally{(B=g.h).i=null,B.m=!1,B.l=0,B.j=0,B.h=0,B.S=!1,g.l=-1,g.i=-1,100>Kn.length&&Kn.push(g)}M=void 0}return M}}function fs(d){return function(){var g=new wd;$c(this,g,us(d)),Yr(g,g.h.end());for(var w=new Uint8Array(g.i),L=g.j,B=L.length,M=0,F=0;F<B;F++){var W=L[F];w.set(W,M),M+=W.length}return g.j=[w],w}}function Zr(d){At.call(this,d)}Wt(Zr,At);var Tt=[Zr,1,Zc,2,Sn,3,Pt,4,Pt];function ps(d){At.call(this,d,-1,Ld)}Zr.prototype.l=fs(Tt),Wt(ps,At),ps.prototype.addClassification=function(d,g){return Bc(this,1,Zr,d,g),this};var Ld=[1],Od=hs([ps,1,ds,Tt]);function vr(d){At.call(this,d)}Wt(vr,At);var ms=[vr,1,Sn,2,Sn,3,Sn,4,Sn,5,Sn];function eu(d){At.call(this,d,-1,vs)}vr.prototype.l=fs(ms),Wt(eu,At);var vs=[1],Md=hs([eu,1,ds,ms]);function Pa(d){At.call(this,d)}Wt(Pa,At);var tu=[Pa,1,Sn,2,Sn,3,Sn,4,Sn,5,Sn,6,Dd],Nd=hs(tu);function nu(d,g,w){if(w=d.createShader(w===0?d.VERTEX_SHADER:d.FRAGMENT_SHADER),d.shaderSource(w,g),d.compileShader(w),!d.getShaderParameter(w,d.COMPILE_STATUS))throw Error(`Could not compile WebGL shader.
|
|
531
|
+
`},ce=X.vertexShaderSource,z=X.fragmentShaderSource;this.program=Ye(oe,[ce,z]);var re=oe.getAttribLocation(this.program,"position"),be=oe.getAttribLocation(this.program,"texCoord"),ue=this.program;this.virtualParams={resolutionLocation:oe.getUniformLocation(ue,"resolution"),imageLocation0:oe.getUniformLocation(ue,"u_image0"),imageLocation1:oe.getUniformLocation(ue,"u_image1"),imageLocation2:oe.getUniformLocation(ue,"u_image2"),imageOldLocation0:oe.getUniformLocation(ue,"u_image_old0"),imageOldLocation1:oe.getUniformLocation(ue,"u_image_old1"),imageOldLocation2:oe.getUniformLocation(ue,"u_image_old2"),imageOldLocation3:oe.getUniformLocation(ue,"u_image_old3"),imageOldLocation4:oe.getUniformLocation(ue,"u_image_old4"),imageOldLocation5:oe.getUniformLocation(ue,"u_image_old5")},this.virtualLocation={postProcessTypeLocation:oe.getUniformLocation(ue,"PostProcessType"),sigmaLocation:oe.getUniformLocation(ue,"SIGMA"),bSigmaLocation:oe.getUniformLocation(ue,"BSIGMA"),mSizeLocation:oe.getUniformLocation(ue,"MSIZE"),overlayTypeLocation:oe.getUniformLocation(ue,"overlayType"),hardThresholdLocation:oe.getUniformLocation(ue,"hardThreshold"),sigmoidClipLocation:oe.getUniformLocation(ue,"sigmoidClip")},oe.bindVertexArray(this.vao),oe.bindBuffer(oe.ARRAY_BUFFER,this.positionBuffer),oe.enableVertexAttribArray(re),oe.vertexAttribPointer(re,2,oe.FLOAT,!1,0,0),oe.bindBuffer(oe.ARRAY_BUFFER,oe.createBuffer()),oe.bufferData(oe.ARRAY_BUFFER,new Float32Array([0,0,1,0,0,1,0,1,1,0,1,1]),oe.STATIC_DRAW),oe.enableVertexAttribArray(be),oe.vertexAttribPointer(be,2,oe.FLOAT,!1,0,0)}},{key:"onVirtualResults",value:function(oe){var X=oe.segmentationMask,ce=oe.image,z=this.gl;this.maskBuffer.length<3&&this.maskBuffer.push(X,X,X),this.frameBuffer.length<3&&this.frameBuffer.push(ce,ce,ce);for(var re=[],be=[X,ce,this.img,this.maskBuffer[0],this.maskBuffer[1],this.maskBuffer[2],this.frameBuffer[0],this.frameBuffer[1],this.frameBuffer[2]],ue=0;ue<be.length;++ue)this.sourceTexture=z.createTexture(),z.bindTexture(z.TEXTURE_2D,this.sourceTexture),z.texParameteri(z.TEXTURE_2D,z.TEXTURE_WRAP_S,z.CLAMP_TO_EDGE),z.texParameteri(z.TEXTURE_2D,z.TEXTURE_WRAP_T,z.CLAMP_TO_EDGE),z.texParameteri(z.TEXTURE_2D,z.TEXTURE_MIN_FILTER,z.NEAREST),z.texParameteri(z.TEXTURE_2D,z.TEXTURE_MAG_FILTER,z.NEAREST),z.texImage2D(z.TEXTURE_2D,0,z.RGBA,z.RGBA,z.UNSIGNED_BYTE,be[ue]),re.push(this.sourceTexture);z.bindBuffer(z.ARRAY_BUFFER,this.positionBuffer),this.setRectangle(z,0,0,this.width,this.height),z.viewport(0,0,this.width,this.height),z.clearColor(0,0,0,0),z.clear(z.COLOR_BUFFER_BIT|z.DEPTH_BUFFER_BIT),z.useProgram(this.program),z.bindVertexArray(this.vao);var ye=this.virtualParams,Me=ye.resolutionLocation,Jt=ye.imageLocation0,Zt=ye.imageLocation1,Ke=ye.imageLocation2,qt=ye.imageOldLocation0,ft=ye.imageOldLocation1,Jn=ye.imageOldLocation2,hr=ye.imageOldLocation3,Ht=ye.imageOldLocation4,Rn=ye.imageOldLocation5;z.uniform2f(Me,this.width,this.height);var Ze=this.virtualOption,Gt=Ze.postProcess,qn=Ze.kSize,he=Ze.sigma,de=Ze.bSigma,Ne=Ze.overlayType,We=Ze.hardThreshold,De=Ze.sigmoidClip,ut=this.virtualLocation,rt=ut.postProcessTypeLocation,Ut=ut.mSizeLocation,en=ut.sigmaLocation,pe=ut.bSigmaLocation,Ot=ut.overlayTypeLocation,Kt=ut.hardThresholdLocation,fr=ut.sigmoidClipLocation;z.uniform1i(rt,Gt),z.uniform1i(Ut,qn),z.uniform1f(en,he),z.uniform1f(pe,de),z.uniform1i(Ot,Ne),z.uniform1f(Kt,We),z.uniform1i(fr,De),z.uniform1i(Jt,0),z.uniform1i(Zt,1),z.uniform1i(Ke,2),z.uniform1i(qt,3),z.uniform1i(ft,4),z.uniform1i(Jn,5),z.uniform1i(hr,6),z.uniform1i(Ht,7),z.uniform1i(Rn,8),z.activeTexture(z.TEXTURE0),z.bindTexture(z.TEXTURE_2D,re[0]),z.activeTexture(z.TEXTURE1),z.bindTexture(z.TEXTURE_2D,re[1]),z.activeTexture(z.TEXTURE2),z.bindTexture(z.TEXTURE_2D,re[2]),z.activeTexture(z.TEXTURE3),z.bindTexture(z.TEXTURE_2D,re[3]),z.activeTexture(z.TEXTURE4),z.bindTexture(z.TEXTURE_2D,re[4]),z.activeTexture(z.TEXTURE5),z.bindTexture(z.TEXTURE_2D,re[5]),z.activeTexture(z.TEXTURE6),z.bindTexture(z.TEXTURE_2D,re[6]),z.activeTexture(z.TEXTURE7),z.bindTexture(z.TEXTURE_2D,re[7]),z.activeTexture(z.TEXTURE8),z.bindTexture(z.TEXTURE_2D,re[8]),z.drawArrays(z.TRIANGLES,0,6),this.maskBuffer[0]=this.maskBuffer[1],this.maskBuffer[1]=this.maskBuffer[2],this.maskBuffer[2]=X,this.frameBuffer[0]=this.frameBuffer[1],this.frameBuffer[1]=this.frameBuffer[2],this.frameBuffer[2]=ce}}]),le}(),Jo=typeof globalThis!="undefined"?globalThis:typeof window!="undefined"?window:typeof global!="undefined"?global:typeof self!="undefined"?self:{};(function(){var le;function Te(d){var g=0;return function(){return g<d.length?{done:!1,value:d[g++]}:{done:!0}}}var Se=typeof Object.defineProperties=="function"?Object.defineProperty:function(d,g,C){return d==Array.prototype||d==Object.prototype||(d[g]=C.value),d},je=function(d){d=[(typeof globalThis=="undefined"?"undefined":$(globalThis))=="object"&&globalThis,d,(typeof window=="undefined"?"undefined":$(window))=="object"&&window,(typeof self=="undefined"?"undefined":$(self))=="object"&&self,$(Jo)=="object"&&Jo];for(var g=0;g<d.length;++g){var C=d[g];if(C&&C.Math==Math)return C}throw Error("Cannot find global object")}(this);function He(d,g){if(g)e:{var C=je;d=d.split(".");for(var O=0;O<d.length-1;O++){var B=d[O];if(!(B in C))break e;C=C[B]}(g=g(O=C[d=d[d.length-1]]))!=O&&g!=null&&Se(C,d,{configurable:!0,writable:!0,value:g})}}function oe(d){return(d={next:d})[Symbol.iterator]=function(){return this},d}function X(d){var g=typeof Symbol!="undefined"&&Symbol.iterator&&d[Symbol.iterator];return g?g.call(d):{next:Te(d)}}function ce(d){if(!(d instanceof Array)){d=X(d);for(var g,C=[];!(g=d.next()).done;)C.push(g.value);d=C}return d}He("Symbol",function(d){function g(B,M){this.h=B,Se(this,"description",{configurable:!0,writable:!0,value:M})}if(d)return d;g.prototype.toString=function(){return this.h};var C="jscomp_symbol_"+(1e9*Math.random()>>>0)+"_",O=0;return function B(M){if(this instanceof B)throw new TypeError("Symbol is not a constructor");return new g(C+(M||"")+"_"+O++,M)}}),He("Symbol.iterator",function(d){if(d)return d;d=Symbol("Symbol.iterator");for(var g="Array Int8Array Uint8Array Uint8ClampedArray Int16Array Uint16Array Int32Array Uint32Array Float32Array Float64Array".split(" "),C=0;C<g.length;C++){var O=je[g[C]];typeof O=="function"&&typeof O.prototype[d]!="function"&&Se(O.prototype,d,{configurable:!0,writable:!0,value:function(){return oe(Te(this))}})}return d});var z=typeof Object.assign=="function"?Object.assign:function(d,g){for(var C=1;C<arguments.length;C++){var O=arguments[C];if(O)for(var B in O)Object.prototype.hasOwnProperty.call(O,B)&&(d[B]=O[B])}return d};He("Object.assign",function(d){return d||z});var re,be=typeof Object.create=="function"?Object.create:function(d){function g(){}return g.prototype=d,new g};if(typeof Object.setPrototypeOf=="function")re=Object.setPrototypeOf;else{var ue;e:{var ye={};try{ye.__proto__={a:!0},ue=ye.a;break e}catch(d){}ue=!1}re=ue?function(d,g){if(d.__proto__=g,d.__proto__!==g)throw new TypeError(d+" is not extensible");return d}:null}var Me=re;function Jt(d,g){if(d.prototype=be(g.prototype),d.prototype.constructor=d,Me)Me(d,g);else for(var C in g)if(C!="prototype")if(Object.defineProperties){var O=Object.getOwnPropertyDescriptor(g,C);O&&Object.defineProperty(d,C,O)}else d[C]=g[C];d.za=g.prototype}function Zt(){this.m=!1,this.j=null,this.i=void 0,this.h=1,this.v=this.s=0,this.l=null}function Ke(d){if(d.m)throw new TypeError("Generator is already running");d.m=!0}function qt(d,g){d.l={ma:g,na:!0},d.h=d.s||d.v}function ft(d,g,C){return d.h=C,{value:g}}function Jn(d){this.h=new Zt,this.i=d}function hr(d,g,C,O){try{var B=g.call(d.h.j,C);if(!(B instanceof Object))throw new TypeError("Iterator result "+B+" is not an object");if(!B.done)return d.h.m=!1,B;var M=B.value}catch(F){return d.h.j=null,qt(d.h,F),Ht(d)}return d.h.j=null,O.call(d.h,M),Ht(d)}function Ht(d){for(;d.h.h;)try{var g=d.i(d.h);if(g)return d.h.m=!1,{value:g.value,done:!1}}catch(C){d.h.i=void 0,qt(d.h,C)}if(d.h.m=!1,d.h.l){if(g=d.h.l,d.h.l=null,g.na)throw g.ma;return{value:g.return,done:!0}}return{value:void 0,done:!0}}function Rn(d){this.next=function(g){return Ke(d.h),d.h.j?g=hr(d,d.h.j.next,g,d.h.u):(d.h.u(g),g=Ht(d)),g},this.throw=function(g){return Ke(d.h),d.h.j?g=hr(d,d.h.j.throw,g,d.h.u):(qt(d.h,g),g=Ht(d)),g},this.return=function(g){return function(C,O){Ke(C.h);var B=C.h.j;return B?hr(C,"return"in B?B.return:function(M){return{value:M,done:!0}},O,C.h.return):(C.h.return(O),Ht(C))}(d,g)},this[Symbol.iterator]=function(){return this}}function Ze(d){return function(g){function C(B){return g.next(B)}function O(B){return g.throw(B)}return new Promise(function(B,M){(function F(W){W.done?B(W.value):Promise.resolve(W.value).then(C,O).then(F,M)})(g.next())})}(new Rn(new Jn(d)))}function Gt(d){return d||Array.prototype.fill}Zt.prototype.u=function(d){this.i=d},Zt.prototype.return=function(d){this.l={return:d},this.h=this.v},He("Promise",function(d){function g(F){this.i=0,this.j=void 0,this.h=[],this.u=!1;var W=this.l();try{F(W.resolve,W.reject)}catch(ee){W.reject(ee)}}function C(){this.h=null}function O(F){return F instanceof g?F:new g(function(W){W(F)})}if(d)return d;C.prototype.i=function(F){if(this.h==null){this.h=[];var W=this;this.j(function(){W.m()})}this.h.push(F)};var B=je.setTimeout;C.prototype.j=function(F){B(F,0)},C.prototype.m=function(){for(;this.h&&this.h.length;){var F=this.h;this.h=[];for(var W=0;W<F.length;++W){var ee=F[W];F[W]=null;try{ee()}catch(fe){this.l(fe)}}}this.h=null},C.prototype.l=function(F){this.j(function(){throw F})},g.prototype.l=function(){function F(fe){return function(me){ee||(ee=!0,fe.call(W,me))}}var W=this,ee=!1;return{resolve:F(this.I),reject:F(this.m)}},g.prototype.I=function(F){if(F===this)this.m(new TypeError("A Promise cannot resolve to itself"));else if(F instanceof g)this.L(F);else{e:switch($(F)){case"object":var W=F!=null;break e;case"function":W=!0;break e;default:W=!1}W?this.F(F):this.s(F)}},g.prototype.F=function(F){var W=void 0;try{W=F.then}catch(ee){return void this.m(ee)}typeof W=="function"?this.M(W,F):this.s(F)},g.prototype.m=function(F){this.v(2,F)},g.prototype.s=function(F){this.v(1,F)},g.prototype.v=function(F,W){if(this.i!=0)throw Error("Cannot settle("+F+", "+W+"): Promise already settled in state"+this.i);this.i=F,this.j=W,this.i===2&&this.K(),this.H()},g.prototype.K=function(){var F=this;B(function(){if(F.D()){var W=je.console;W!==void 0&&W.error(F.j)}},1)},g.prototype.D=function(){if(this.u)return!1;var F=je.CustomEvent,W=je.Event,ee=je.dispatchEvent;return ee===void 0||(typeof F=="function"?F=new F("unhandledrejection",{cancelable:!0}):typeof W=="function"?F=new W("unhandledrejection",{cancelable:!0}):(F=je.document.createEvent("CustomEvent")).initCustomEvent("unhandledrejection",!1,!0,F),F.promise=this,F.reason=this.j,ee(F))},g.prototype.H=function(){if(this.h!=null){for(var F=0;F<this.h.length;++F)M.i(this.h[F]);this.h=null}};var M=new C;return g.prototype.L=function(F){var W=this.l();F.T(W.resolve,W.reject)},g.prototype.M=function(F,W){var ee=this.l();try{F.call(W,ee.resolve,ee.reject)}catch(fe){ee.reject(fe)}},g.prototype.then=function(F,W){function ee(Ae,ve){return typeof Ae=="function"?function(Oe){try{fe(Ae(Oe))}catch(Be){me(Be)}}:ve}var fe,me,we=new g(function(Ae,ve){fe=Ae,me=ve});return this.T(ee(F,fe),ee(W,me)),we},g.prototype.catch=function(F){return this.then(void 0,F)},g.prototype.T=function(F,W){function ee(){switch(fe.i){case 1:F(fe.j);break;case 2:W(fe.j);break;default:throw Error("Unexpected state: "+fe.i)}}var fe=this;this.h==null?M.i(ee):this.h.push(ee),this.u=!0},g.resolve=O,g.reject=function(F){return new g(function(W,ee){ee(F)})},g.race=function(F){return new g(function(W,ee){for(var fe=X(F),me=fe.next();!me.done;me=fe.next())O(me.value).T(W,ee)})},g.all=function(F){var W=X(F),ee=W.next();return ee.done?O([]):new g(function(fe,me){function we(Oe){return function(Be){Ae[Oe]=Be,--ve==0&&fe(Ae)}}var Ae=[],ve=0;do Ae.push(void 0),ve++,O(ee.value).T(we(Ae.length-1),me),ee=W.next();while(!ee.done)})},g}),He("Array.prototype.keys",function(d){return d||function(){return function(g,C){g instanceof String&&(g+="");var O=0,B=!1,M={next:function(){if(!B&&O<g.length){var F=O++;return{value:C(F,g[F]),done:!1}}return B=!0,{done:!0,value:void 0}}};return M[Symbol.iterator]=function(){return M},M}(this,function(g){return g})}}),He("Array.prototype.fill",function(d){return d||function(g,C,O){var B=this.length||0;for(0>C&&(C=Math.max(0,B+C)),(O==null||O>B)&&(O=B),0>(O=Number(O))&&(O=Math.max(0,B+O)),C=Number(C||0);C<O;C++)this[C]=g;return this}}),He("Int8Array.prototype.fill",Gt),He("Uint8Array.prototype.fill",Gt),He("Uint8ClampedArray.prototype.fill",Gt),He("Int16Array.prototype.fill",Gt),He("Uint16Array.prototype.fill",Gt),He("Int32Array.prototype.fill",Gt),He("Uint32Array.prototype.fill",Gt),He("Float32Array.prototype.fill",Gt),He("Float64Array.prototype.fill",Gt),He("Object.is",function(d){return d||function(g,C){return g===C?g!==0||1/g==1/C:g!=g&&C!=C}}),He("Array.prototype.includes",function(d){return d||function(g,C){var O=this;O instanceof String&&(O=String(O));var B=O.length;for(0>(C=C||0)&&(C=Math.max(C+B,0));C<B;C++){var M=O[C];if(M===g||Object.is(M,g))return!0}return!1}}),He("String.prototype.includes",function(d){return d||function(g,C){if(this==null)throw new TypeError("The 'this' value for String.prototype.includes must not be null or undefined");if(g instanceof RegExp)throw new TypeError("First argument to String.prototype.includes must not be a regular expression");return this.indexOf(g,C||0)!==-1}});var qn=this||self;function he(d,g){d=d.split(".");var C,O=qn;for((d[0]in O)||O.execScript===void 0||O.execScript("var "+d[0]);d.length&&(C=d.shift());)d.length||g===void 0?O=O[C]&&O[C]!==Object.prototype[C]?O[C]:O[C]={}:O[C]=g}function de(d){var g;return(g=qn.navigator)&&(g=g.userAgent)||(g=""),g.indexOf(d)!=-1}var Ne=Array.prototype.map?function(d,g){return Array.prototype.map.call(d,g,void 0)}:function(d,g){for(var C=d.length,O=Array(C),B=typeof d=="string"?d.split(""):d,M=0;M<C;M++)M in B&&(O[M]=g.call(void 0,B[M],M,d));return O},We={},De=null;function ut(d){var g=d.length,C=3*g/4;C%3?C=Math.floor(C):"=.".indexOf(d[g-1])!=-1&&(C="=.".indexOf(d[g-2])!=-1?C-2:C-1);var O=new Uint8Array(C),B=0;return function(M,F){function W(ve){for(;ee<M.length;){var Oe=M.charAt(ee++),Be=De[Oe];if(Be!=null)return Be;if(!/^[\s\xa0]*$/.test(Oe))throw Error("Unknown base64 encoding at char: "+Oe)}return ve}rt();for(var ee=0;;){var fe=W(-1),me=W(0),we=W(64),Ae=W(64);if(Ae===64&&fe===-1)break;F(fe<<2|me>>4),we!=64&&(F(me<<4&240|we>>2),Ae!=64&&F(we<<6&192|Ae))}}(d,function(M){O[B++]=M}),B!==C?O.subarray(0,B):O}function rt(){if(!De){De={};for(var d="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789".split(""),g=["+/=","+/","-_=","-_.","-_"],C=0;5>C;C++){var O=d.concat(g[C].split(""));We[C]=O;for(var B=0;B<O.length;B++){var M=O[B];De[M]===void 0&&(De[M]=B)}}}}var Ut=typeof Uint8Array!="undefined",en=!(de("Trident")||de("MSIE"))&&typeof qn.btoa=="function";function pe(d){if(!en){var g;g===void 0&&(g=0),rt(),g=We[g];for(var C=Array(Math.floor(d.length/3)),O=g[64]||"",B=0,M=0;B<d.length-2;B+=3){var F=d[B],W=d[B+1],ee=d[B+2],fe=g[F>>2];F=g[(3&F)<<4|W>>4],W=g[(15&W)<<2|ee>>6],ee=g[63&ee],C[M++]=fe+F+W+ee}switch(fe=0,ee=O,d.length-B){case 2:ee=g[(15&(fe=d[B+1]))<<2]||O;case 1:d=d[B],C[M]=g[d>>2]+g[(3&d)<<4|fe>>4]+ee+O}return C.join("")}for(g="";10240<d.length;)g+=String.fromCharCode.apply(null,d.subarray(0,10240)),d=d.subarray(10240);return g+=String.fromCharCode.apply(null,d),btoa(g)}var Ot,Kt=RegExp("[-_.]","g");function fr(d){switch(d){case"-":return"+";case"_":return"/";case".":return"=";default:return""}}function Pi(d){if(!en)return ut(d);Kt.test(d)&&(d=d.replace(Kt,fr)),d=atob(d);for(var g=new Uint8Array(d.length),C=0;C<d.length;C++)g[C]=d.charCodeAt(C);return g}function yn(){return Ot||(Ot=new Uint8Array(0))}var Rt={},Cd=typeof Uint8Array.prototype.slice=="function",Lt=0,pt=0;function Dc(d){var g=0>d,C=(d=Math.abs(d))>>>0;d=Math.floor((d-C)/4294967296),g&&(g=(C=X(ba(C,d))).next().value,d=C.next().value,C=g),Lt=C>>>0,pt=d>>>0}var Oc,bn=typeof BigInt=="function";function ba(d,g){return g=~g,d?d=1+~d:g+=1,[d,g]}function Di(d,g){this.i=d>>>0,this.h=g>>>0}function Lc(d){if(!d)return Oc||(Oc=new Di(0,0));if(!/^-?\d+$/.test(d))return null;if(16>d.length)Dc(Number(d));else if(bn)d=BigInt(d),Lt=Number(d&BigInt(4294967295))>>>0,pt=Number(d>>BigInt(32)&BigInt(4294967295));else{var g=+(d[0]==="-");pt=Lt=0;for(var C=d.length,O=g,B=(C-g)%6+g;B<=C;O=B,B+=6)O=Number(d.slice(O,B)),pt*=1e6,4294967296<=(Lt=1e6*Lt+O)&&(pt+=Lt/4294967296|0,Lt%=4294967296);g&&(d=(g=X(ba(Lt,pt))).next().value,g=g.next().value,Lt=d,pt=g)}return new Di(Lt,pt)}function it(d,g){return Error("Invalid wire type: "+d+" (at position "+g+")")}function Sa(){return Error("Failed to read varint, encoding is invalid.")}function Mc(d,g){return Error("Tried to read past the end of the data "+g+" > "+d)}function at(){throw Error("Invalid UTF8")}function ka(d,g){return g=String.fromCharCode.apply(null,g),d==null?g:d+g}var qo,Nc,An,Sn=void 0,Kn=typeof TextDecoder!="undefined",Uc=typeof TextEncoder!="undefined";function Ta(d){if(d!==Rt)throw Error("illegal external caller")}function Xr(d,g){if(Ta(g),this.V=d,d!=null&&d.length===0)throw Error("ByteString should be constructed with non-empty values")}function xa(){return An||(An=new Xr(null,Rt))}function Ko(d){Ta(Rt);var g=d.V;return(g=g==null||Ut&&g!=null&&g instanceof Uint8Array?g:typeof g=="string"?Pi(g):null)==null?g:d.V=g}function Xo(d,g){this.i=null,this.m=!1,this.h=this.j=this.l=0,pr(this,d,g)}function pr(d,g,C){C=C===void 0?{}:C,d.S=C.S!==void 0&&C.S,g&&(g=function(O){if(typeof O=="string")return{buffer:Pi(O),C:!1};if(Array.isArray(O))return{buffer:new Uint8Array(O),C:!1};if(O.constructor===Uint8Array)return{buffer:O,C:!1};if(O.constructor===ArrayBuffer)return{buffer:new Uint8Array(O),C:!1};if(O.constructor===Xr)return{buffer:Ko(O)||yn(),C:!0};if(O instanceof Uint8Array)return{buffer:new Uint8Array(O.buffer,O.byteOffset,O.byteLength),C:!1};throw Error("Type not convertible to a Uint8Array, expected a Uint8Array, an ArrayBuffer, a base64 encoded string, a ByteString or an Array of numbers")}(g),d.i=g.buffer,d.m=g.C,d.l=0,d.j=d.i.length,d.h=d.l)}function mr(d,g){if(d.h=g,g>d.j)throw Mc(d.j,g)}function Oi(d){var g=d.i,C=d.h,O=g[C++],B=127&O;if(128&O&&(B|=(127&(O=g[C++]))<<7,128&O&&(B|=(127&(O=g[C++]))<<14,128&O&&(B|=(127&(O=g[C++]))<<21,128&O&&(B|=(O=g[C++])<<28,128&O&&128&g[C++]&&128&g[C++]&&128&g[C++]&&128&g[C++]&&128&g[C++])))))throw Sa();return mr(d,C),B}function Qo(d,g){if(0>g)throw Error("Tried to read a negative byte length: "+g);var C=d.h,O=C+g;if(O>d.j)throw Mc(g,d.j-C);return d.h=O,C}Xo.prototype.reset=function(){this.h=this.l};var Yo=[];function $o(){this.h=[]}function Vc(d,g,C){for(;0<C||127<g;)d.h.push(127&g|128),g=(g>>>7|C<<25)>>>0,C>>>=7;d.h.push(g)}function Ar(d,g){for(;127<g;)d.h.push(127&g|128),g>>>=7;d.h.push(g)}function Zo(d,g){if(Yo.length){var C=Yo.pop();pr(C,d,g),d=C}else d=new Xo(d,g);this.h=d,this.j=this.h.h,this.i=this.l=-1,this.setOptions(g)}function Li(d){var g=d.h;if(g.h==g.j)return!1;d.j=d.h.h;var C=Oi(d.h)>>>0;if(g=C>>>3,!(0<=(C&=7)&&5>=C))throw it(C,d.j);if(1>g)throw Error("Invalid field number: "+g+" (at position "+d.j+")");return d.l=g,d.i=C,!0}function Ia(d){switch(d.i){case 0:if(d.i!=0)Ia(d);else e:{for(var g=(d=d.h).h,C=g+10,O=d.i;g<C;)if((128&O[g++])==0){mr(d,g);break e}throw Sa()}break;case 1:mr(d=d.h,d.h+8);break;case 2:d.i!=2?Ia(d):(g=Oi(d.h)>>>0,mr(d=d.h,d.h+g));break;case 5:mr(d=d.h,d.h+4);break;case 3:for(g=d.l;;){if(!Li(d))throw Error("Unmatched start-group tag: stream EOF");if(d.i==4){if(d.l!=g)throw Error("Unmatched end-group tag");break}Ia(d)}break;default:throw it(d.i,d.j)}}$o.prototype.length=function(){return this.h.length},$o.prototype.end=function(){var d=this.h;return this.h=[],d},Zo.prototype.setOptions=function(d){d=d===void 0?{}:d,this.ca=d.ca!==void 0&&d.ca},Zo.prototype.reset=function(){this.h.reset(),this.j=this.h.h,this.i=this.l=-1};var Xn=[];function Ed(){this.j=[],this.i=0,this.h=new $o}function Qr(d,g){g.length!==0&&(d.j.push(g),d.i+=g.length)}var Qn=typeof Symbol=="function"&&$(Symbol())==="symbol"?Symbol():void 0;function Vt(d,g){return Qn?d[Qn]|=g:d.A!==void 0?d.A|=g:(Object.defineProperties(d,{A:{value:g,configurable:!0,writable:!0,enumerable:!1}}),g)}function jc(d,g){Qn?d[Qn]&&(d[Qn]&=~g):d.A!==void 0&&(d.A&=~g)}function It(d){var g;return(g=Qn?d[Qn]:d.A)==null?0:g}function Xt(d,g){Qn?d[Qn]=g:d.A!==void 0?d.A=g:Object.defineProperties(d,{A:{value:g,configurable:!0,writable:!0,enumerable:!1}})}function Mi(d){return Vt(d,1),d}function es(d,g){Xt(g,-51&(0|d))}function Yr(d,g){Xt(g,-41&(18|d))}var ts={};function Pr(d){return d!==null&&$(d)==="object"&&!Array.isArray(d)&&d.constructor===Object}var $r,wa,Ca=[];function ns(d){if(2&It(d.o))throw Error("Cannot mutate an immutable Message")}function Ea(d){var g=d.length;(g=g?d[g-1]:void 0)&&Pr(g)?g.g=1:(g={},d.push((g.g=1,g)))}function Ra(d){var g=d.i+d.G;return d.B||(d.B=d.o[g]={})}function pn(d,g){return g===-1?null:g>=d.i?d.B?d.B[g]:void 0:d.o[g+d.G]}function Pn(d,g,C,O){ns(d),Ni(d,g,C,O)}function Ni(d,g,C,O){d.j&&(d.j=void 0),g>=d.i||O?Ra(d)[g]=C:(d.o[g+d.G]=C,(d=d.B)&&g in d&&delete d[g])}function Mt(d,g,C,O){var B=pn(d,g);Array.isArray(B)||(B=$r);var M=It(B);if(1&M||Mi(B),O)2&M||Vt(B,2),1&C||Object.freeze(B);else{O=!(2&C);var F=2&M;1&C||!F?O&&16&M&&!F&&jc(B,16):Ni(d,g,B=Mi(Array.prototype.slice.call(B)))}return B}function rs(d,g){var C=pn(d,g),O=C==null?C:typeof C=="number"||C==="NaN"||C==="Infinity"||C==="-Infinity"?Number(C):void 0;return O!=null&&O!==C&&Ni(d,g,O),O}function Bc(d,g,C,O,B){d.h||(d.h={});var M=d.h[C],F=Mt(d,C,3,B);if(!M){var W=F;M=[];var ee=!!(16&It(d.o));F=!!(2&It(W));var fe=W;!B&&F&&(W=Array.prototype.slice.call(W));for(var me=F,we=0;we<W.length;we++){var Ae=W[we],ve=g,Oe=!1;if(Oe=Oe!==void 0&&Oe,(Ae=Array.isArray(Ae)?new ve(Ae):Oe?new ve:void 0)!==void 0){var Be=Oe=It(ve=Ae.o);F&&(Be|=2),ee&&(Be|=16),Be!=Oe&&Xt(ve,Be),ve=Be,me=me||!!(2&ve),M.push(Ae)}}return d.h[C]=M,g=33|(ee=It(W)),ee!=(g=me?-9&g:8|g)&&(me=W,Object.isFrozen(me)&&(me=Array.prototype.slice.call(me)),Xt(me,g),W=me),fe!==W&&Ni(d,C,W),(B||O&&F)&&Vt(M,2),O&&Object.freeze(M),M}return B||(B=Object.isFrozen(M),O&&!B?Object.freeze(M):!O&&B&&(M=Array.prototype.slice.call(M),d.h[C]=M)),M}function kt(d,g,C){var O=!!(2&It(d.o));if(g=Bc(d,g,C,O,O),d=Mt(d,C,3,O),!(O||8&It(d))){for(O=0;O<g.length;O++){if(2&It((C=g[O]).o)){var B=Zr(C,!1);B.j=C}else B=C;C!==B&&(g[O]=B,d[O]=B.o)}Vt(d,8)}return g}function Dn(d,g,C){if(C!=null&&typeof C!="number")throw Error("Value of float/double field must be a number|null|undefined, found "+$(C)+": "+C);Pn(d,g,C)}function Fc(d,g,C,O,B){ns(d);var M=Bc(d,C,g,!1,!1);return C=O!=null?O:new C,d=Mt(d,g,2,!1),B!=null?(M.splice(B,0,C),d.splice(B,0,C.o)):(M.push(C),d.push(C.o)),C.C()&&jc(d,8),C}function Aa(d,g){return d==null?g:d}function On(d,g,C){return C=C===void 0?0:C,Aa(rs(d,g),C)}function Ui(d,g,C,O){if(d!=null){if(Array.isArray(d))d=is(d,g,C,O!==void 0);else if(Pr(d)){var B,M={};for(B in d)M[B]=Ui(d[B],g,C,O);d=M}else d=g(d,O);return d}}function is(d,g,C,O){var B=It(d);O=O?!!(16&B):void 0,d=Array.prototype.slice.call(d);for(var M=0;M<d.length;M++)d[M]=Ui(d[M],g,C,O);return C(B,d),d}function Rd(d){return d.ja===ts?d.toJSON():function(g){switch($(g)){case"number":return isFinite(g)?g:String(g);case"object":if(g)if(Array.isArray(g)){if((128&It(g))!=0)return Ea(g=Array.prototype.slice.call(g)),g}else{if(Ut&&g!=null&&g instanceof Uint8Array)return pe(g);if(g instanceof Xr){var C=g.V;return C==null?"":typeof C=="string"?C:g.V=pe(C)}}}return g}(d)}function Hc(d,g){128&d&&Ea(g)}function Gc(d,g,C){if(C=C===void 0?Yr:C,d!=null){if(Ut&&d instanceof Uint8Array)return d.length?new Xr(new Uint8Array(d),Rt):xa();if(Array.isArray(d)){var O=It(d);return 2&O?d:!g||32&O||!(16&O||O===0)?(4&(g=It(d=is(d,Gc,4&O?Yr:C,!0)))&&2&g&&Object.freeze(d),d):(Xt(d,2|O),d)}return d.ja===ts?os(d):d}}function as(d,g,C,O,B,M,F){if(d=d.h&&d.h[C]){if(2&(O=It(d))?O=d:(Yr(O,M=Ne(d,os)),Object.freeze(M),O=M),ns(g),F=O==null?$r:Mi([]),O!=null){for(M=!!O.length,d=0;d<O.length;d++){var W=O[d];M=M&&!(2&It(W.o)),F[d]=W.o}M=1|(M?8:0),((d=It(F))&M)!==M&&(Object.isFrozen(F)&&(F=Array.prototype.slice.call(F)),Xt(F,d|M)),g.h||(g.h={}),g.h[C]=O}else g.h&&(g.h[C]=void 0);Ni(g,C,F,B)}else Pn(g,C,Gc(O,M,F),B)}function os(d){return 2&It(d.o)||Vt((d=Zr(d,!0)).o,2),d}function Zr(d,g){var C=d.o,O=[];Vt(O,16);var B=d.constructor.h;if(B&&O.push(B),B=d.B){O.length=C.length,O.fill(void 0,O.length,C.length);var M={};O[O.length-1]=M}(128&It(C))!=0&&Ea(O),g=g||d.C()?Yr:es,M=d.constructor,wa=O,O=new M(O),wa=void 0,d.R&&(O.R=d.R.slice()),M=!!(16&It(C));for(var F=B?C.length-1:C.length,W=0;W<F;W++)as(d,O,W-d.G,C[W],!1,M,g);if(B)for(var ee in B)as(d,O,+ee,B[ee],!0,M,g);return O}function At(d,g,C){d==null&&(d=wa),wa=void 0;var O,B=this.constructor.i||0,M=0<B,F=this.constructor.h,W=!1;if(d==null){var ee=48,fe=!0;M&&(B=0,ee|=128),Xt(d=F?[F]:[],ee)}else{if(!Array.isArray(d)||F&&F!==d[0])throw Error();var me=ee=Vt(d,0);if((fe=(16&me)!=0)&&((W=(32&me)!=0)||(me|=32)),M){if(128&me)B=0;else if(0<d.length){var we=d[d.length-1];if(Pr(we)&&"g"in we){B=0,me|=128,delete we.g;var Ae,ve=!0;for(Ae in we){ve=!1;break}ve&&d.pop()}}}else if(128&me)throw Error();ee!==me&&Xt(d,me)}if(this.G=(F?0:-1)-B,this.h=void 0,this.o=d,B=(F=this.o.length)-1,F&&Pr(F=this.o[B])?(this.B=F,this.i=B-this.G):g!==void 0&&-1<g?(this.i=Math.max(g,B+1-this.G),this.B=void 0):this.i=Number.MAX_VALUE,!M&&this.B&&"g"in this.B)throw Error('Unexpected "g" flag in sparse object of message that is not a group type.');if(C)for(g=fe&&!W&&!0,M=this.i,fe=0;fe<C.length;fe++)(W=C[fe])<M?(B=d[W+=this.G])?ss(B,g):d[W]=$r:(O||(O=Ra(this)),(B=O[W])?ss(B,g):O[W]=$r)}function ss(d,g){if(Array.isArray(d)){var C=It(d),O=1;!g||2&C||(O|=16),(C&O)!==O&&Xt(d,C|O)}}function zc(d,g,C){if(C){var O,B={};for(O in C){var M=C[O],F=M.ra;F||(B.J=M.xa||M.oa.W,M.ia?(B.aa=Xc(M.ia),F=function(W){return function(ee,fe,me){return W.J(ee,fe,me,W.aa)}}(B)):M.ka?(B.Z=Vi(M.da.P,M.ka),F=function(W){return function(ee,fe,me){return W.J(ee,fe,me,W.Z)}}(B)):F=B.J,M.ra=F),F(g,d,M.da),B={J:B.J,aa:B.aa,Z:B.Z}}}(function(W,ee){if(ee=ee.R){Qr(W,W.h.end());for(var fe=0;fe<ee.length;fe++)Qr(W,Ko(ee[fe])||yn())}})(g,d)}Xt(Ca,23),$r=Object.freeze(Ca),At.prototype.toJSON=function(){return is(this.o,Rd,Hc)},At.prototype.C=function(){return!!(2&It(this.o))},At.prototype.ja=ts,At.prototype.toString=function(){return this.o.toString()};var tt=Symbol();function Wc(d,g,C){return d[tt]||(d[tt]=function(O,B){return g(O,B,C)})}function cs(d){var g=d[tt];if(!g){var C=ds(d);g=function(O,B){return $c(O,B,C)},d[tt]=g}return g}function Jc(d){var g=function(B){var M=B.ia;return M?cs(M):(M=B.wa)?Wc(B.da.P,M,B.ka):void 0}(d),C=d.da,O=d.oa.U;return g?function(B,M){return O(B,M,C,g)}:function(B,M){return O(B,M,C)}}function qc(d,g){var C=d[g];return typeof C=="function"&&C.length===0&&(C=C(),d[g]=C),Array.isArray(C)&&(vr in C||ji in C||0<C.length&&typeof C[0]=="function")?C:void 0}function Kc(d,g,C,O,B,M){g.P=d[0];var F=1;if(d.length>F&&typeof d[F]!="number"){var W=d[F++];C(g,W)}for(;F<d.length;){C=d[F++];for(var ee=F+1;ee<d.length&&typeof d[ee]!="number";)ee++;switch(W=d[F++],ee-=F){case 0:O(g,C,W);break;case 1:(ee=qc(d,F))?(F++,B(g,C,W,ee)):O(g,C,W,d[F++]);break;case 2:B(g,C,W,ee=qc(d,ee=F++),d[F++]);break;case 3:M(g,C,W,d[F++],d[F++],d[F++]);break;case 4:M(g,C,W,d[F++],d[F++],d[F++],d[F++]);break;default:throw Error("unexpected number of binary field arguments: "+ee)}}return g}var Pa=Symbol();function Xc(d){var g=d[Pa];if(!g){var C=ls(d);g=function(O,B){return Zc(O,B,C)},d[Pa]=g}return g}function Vi(d,g){var C=d[Pa];return C||(C=function(O,B){return zc(O,B,g)},d[Pa]=C),C}var ji=Symbol();function Ad(d,g){d.push(g)}function Da(d,g,C){d.push(g,C.W)}function Qc(d,g,C,O){var B=Xc(O),M=ls(O).P,F=C.W;d.push(g,function(W,ee,fe){return F(W,ee,fe,M,B)})}function us(d,g,C,O,B,M){var F=Vi(O,M),W=C.W;d.push(g,function(ee,fe,me){return W(ee,fe,me,O,F)})}function ls(d){var g=d[ji];return g||(g=Kc(d,d[ji]=[],Ad,Da,Qc,us),vr in d&&ji in d&&(d.length=0),g)}var vr=Symbol();function Pd(d,g){d[0]=g}function Yc(d,g,C,O){var B=C.U;d[g]=O?function(M,F,W){return B(M,F,W,O)}:B}function Dd(d,g,C,O,B){var M=C.U,F=cs(O),W=ds(O).P;d[g]=function(ee,fe,me){return M(ee,fe,me,W,F,B)}}function Od(d,g,C,O,B,M,F){var W=C.U,ee=Wc(O,B,M);d[g]=function(fe,me,we){return W(fe,me,we,O,ee,F)}}function ds(d){var g=d[vr];return g||(g=Kc(d,d[vr]={},Pd,Yc,Dd,Od),vr in d&&ji in d&&(d.length=0),g)}function $c(d,g,C){for(;Li(g)&&g.i!=4;){var O=g.l,B=C[O];if(!B){var M=C[0];M&&(M=M[O])&&(B=C[O]=Jc(M))}if(!B||!B(g,d,O)){O=d,M=(B=g).j,Ia(B);var F=B;if(!F.ca){if(B=F.h.h-M,F.h.h=M,F=F.h,B==0)B=xa();else{if(M=Qo(F,B),F.S&&F.m)B=F.i.subarray(M,M+B);else{F=F.i;var W=M;B=W===(B=M+B)?yn():Cd?F.slice(W,B):new Uint8Array(F.subarray(W,B))}B=B.length==0?xa():new Xr(B,Rt)}(M=O.R)?M.push(B):O.R=[B]}}}return d}function Zc(d,g,C){for(var O=C.length,B=O%2==1,M=B?1:0;M<O;M+=2)(0,C[M+1])(g,d,C[M]);zc(d,g,B?C[0]:void 0)}function Bi(d,g){return{U:d,W:g}}var kn=Bi(function(d,g,C){if(d.i!==5)return!1;var O=(d=d.h).i,B=d.h,M=O[B],F=O[B+1],W=O[B+2];return O=O[B+3],mr(d,d.h+4),d=2*((F=(M<<0|F<<8|W<<16|O<<24)>>>0)>>31)+1,M=F>>>23&255,F&=8388607,Pn(g,C,M==255?F?NaN:1/0*d:M==0?d*Math.pow(2,-149)*F:d*Math.pow(2,M-150)*(F+Math.pow(2,23))),!0},function(d,g,C){if((g=rs(g,C))!=null){Ar(d.h,8*C+5),d=d.h;var O=+g;O===0?0<1/O?Lt=pt=0:(pt=0,Lt=2147483648):isNaN(O)?(pt=0,Lt=2147483647):34028234663852886e22<(O=(C=0>O?-2147483648:0)?-O:O)?(pt=0,Lt=(2139095040|C)>>>0):11754943508222875e-54>O?(O=Math.round(O/Math.pow(2,-149)),pt=0,Lt=(C|O)>>>0):(g=Math.floor(Math.log(O)/Math.LN2),O*=Math.pow(2,-g),16777216<=(O=Math.round(8388608*O))&&++g,pt=0,Lt=(C|g+127<<23|8388607&O)>>>0),C=Lt,d.h.push(C>>>0&255),d.h.push(C>>>8&255),d.h.push(C>>>16&255),d.h.push(C>>>24&255)}}),Ld=Bi(function(d,g,C){if(d.i!==0)return!1;var O=d.h,B=0,M=d=0,F=O.i,W=O.h;do{var ee=F[W++];B|=(127&ee)<<M,M+=7}while(32>M&&128&ee);for(32<M&&(d|=(127&ee)>>4),M=3;32>M&&128ⅇM+=7)d|=(127&(ee=F[W++]))<<M;if(mr(O,W),!(128>ee))throw Sa();return O=B>>>0,(d=2147483648&(ee=d>>>0))&&(ee=~ee>>>0,(O=1+~O>>>0)==0&&(ee=ee+1>>>0)),O=4294967296*ee+(O>>>0),Pn(g,C,d?-O:O),!0},function(d,g,C){(g=pn(g,C))!=null&&(typeof g=="string"&&Lc(g),g!=null&&(Ar(d.h,8*C),typeof g=="number"?(d=d.h,Dc(g),Vc(d,Lt,pt)):(C=Lc(g),Vc(d.h,C.i,C.h))))}),eu=Bi(function(d,g,C){return d.i===0&&(Pn(g,C,Oi(d.h)),!0)},function(d,g,C){if((g=pn(g,C))!=null&&g!=null)if(Ar(d.h,8*C),d=d.h,0<=(C=g))Ar(d,C);else{for(g=0;9>g;g++)d.h.push(127&C|128),C>>=7;d.h.push(1)}}),Pt=Bi(function(d,g,C){if(d.i!==2)return!1;var O=Oi(d.h)>>>0,B=Qo(d=d.h,O);if(d=d.i,Kn){var M,F=d;(M=qo)||(M=qo=new TextDecoder("utf-8",{fatal:!0})),d=B+O,F=B===0&&d===F.length?F:F.subarray(B,d);try{var W=M.decode(F)}catch(we){if(Sn===void 0){try{M.decode(new Uint8Array([128]))}catch(Ae){}try{M.decode(new Uint8Array([97])),Sn=!0}catch(Ae){Sn=!1}}throw!Sn&&(qo=void 0),we}}else{O=(W=B)+O,B=[];for(var ee,fe,me=null;W<O;)128>(ee=d[W++])?B.push(ee):224>ee?W>=O?at():(fe=d[W++],194>ee||(192&fe)!=128?(W--,at()):B.push((31&ee)<<6|63&fe)):240>ee?W>=O-1?at():(192&(fe=d[W++]))!=128||ee===224&&160>fe||ee===237&&160<=fe||(192&(F=d[W++]))!=128?(W--,at()):B.push((15&ee)<<12|(63&fe)<<6|63&F):244>=ee?W>=O-2?at():(192&(fe=d[W++]))!=128||fe-144+(ee<<28)>>30!=0||(192&(F=d[W++]))!=128||(192&(M=d[W++]))!=128?(W--,at()):(ee=(7&ee)<<18|(63&fe)<<12|(63&F)<<6|63&M,ee-=65536,B.push(55296+(ee>>10&1023),56320+(1023&ee))):at(),8192<=B.length&&(me=ka(me,B),B.length=0);W=ka(me,B)}return Pn(g,C,W),!0},function(d,g,C){if((g=pn(g,C))!=null){var O=!1;if(O=O!==void 0&&O,Uc){if(O&&/(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])/.test(g))throw Error("Found an unpaired surrogate");g=(Nc||(Nc=new TextEncoder)).encode(g)}else{for(var B=0,M=new Uint8Array(3*g.length),F=0;F<g.length;F++){var W=g.charCodeAt(F);if(128>W)M[B++]=W;else{if(2048>W)M[B++]=W>>6|192;else{if(55296<=W&&57343>=W){if(56319>=W&&F<g.length){var ee=g.charCodeAt(++F);if(56320<=ee&&57343>=ee){W=1024*(W-55296)+ee-56320+65536,M[B++]=W>>18|240,M[B++]=W>>12&63|128,M[B++]=W>>6&63|128,M[B++]=63&W|128;continue}F--}if(O)throw Error("Found an unpaired surrogate");W=65533}M[B++]=W>>12|224,M[B++]=W>>6&63|128}M[B++]=63&W|128}}g=B===M.length?M:M.subarray(0,B)}Ar(d.h,8*C+2),Ar(d.h,g.length),Qr(d,d.h.end()),Qr(d,g)}}),hs=Bi(function(d,g,C,O,B){if(d.i!==2)return!1;g=Fc(g,C,O),C=d.h.j,O=Oi(d.h)>>>0;var M=d.h.h+O,F=M-C;if(0>=F&&(d.h.j=M,B(g,d,void 0,void 0,void 0),F=M-d.h.h),F)throw Error("Message parsing ended unexpectedly. Expected to read "+O+" bytes, instead read "+(O-F)+" bytes, either the data ended unexpectedly or the message misreported its own length");return d.h.h=M,d.h.j=C,!0},function(d,g,C,O,B){if((g=kt(g,O,C))!=null)for(O=0;O<g.length;O++){var M=d;Ar(M.h,8*C+2);var F=M.h.end();Qr(M,F),F.push(M.i),M=F,B(g[O],d),F=d;var W=M.pop();for(W=F.i+F.h.length()-W;127<W;)M.push(127&W|128),W>>>=7,F.i++;M.push(W),F.i++}});function fs(d){return function(g,C){e:{if(Xn.length){var O=Xn.pop();O.setOptions(C),pr(O.h,g,C),g=O}else g=new Zo(g,C);try{var B=ds(d),M=$c(new B.P,g,B);break e}finally{(B=g.h).i=null,B.m=!1,B.l=0,B.j=0,B.h=0,B.S=!1,g.l=-1,g.i=-1,100>Xn.length&&Xn.push(g)}M=void 0}return M}}function ps(d){return function(){var g=new Ed;Zc(this,g,ls(d)),Qr(g,g.h.end());for(var C=new Uint8Array(g.i),O=g.j,B=O.length,M=0,F=0;F<B;F++){var W=O[F];C.set(W,M),M+=W.length}return g.j=[C],C}}function ei(d){At.call(this,d)}Jt(ei,At);var Tt=[ei,1,eu,2,kn,3,Pt,4,Pt];function ms(d){At.call(this,d,-1,Md)}ei.prototype.l=ps(Tt),Jt(ms,At),ms.prototype.addClassification=function(d,g){return Fc(this,1,ei,d,g),this};var Md=[1],Nd=fs([ms,1,hs,Tt]);function gr(d){At.call(this,d)}Jt(gr,At);var vs=[gr,1,kn,2,kn,3,kn,4,kn,5,kn];function tu(d){At.call(this,d,-1,gs)}gr.prototype.l=ps(vs),Jt(tu,At);var gs=[1],Ud=fs([tu,1,hs,vs]);function Oa(d){At.call(this,d)}Jt(Oa,At);var nu=[Oa,1,kn,2,kn,3,kn,4,kn,5,kn,6,Ld],Vd=fs(nu);function ru(d,g,C){if(C=d.createShader(C===0?d.VERTEX_SHADER:d.FRAGMENT_SHADER),d.shaderSource(C,g),d.compileShader(C),!d.getShaderParameter(C,d.COMPILE_STATUS))throw Error(`Could not compile WebGL shader.
|
|
532
532
|
|
|
533
|
-
`+d.getShaderInfoLog(
|
|
533
|
+
`+d.getShaderInfoLog(C));return C}function jd(d){return kt(d,ei,1).map(function(g){var C=pn(g,1);return{index:C==null?0:C,qa:On(g,2),label:pn(g,3)!=null?Aa(pn(g,3),""):void 0,displayName:pn(g,4)!=null?Aa(pn(g,4),""):void 0}})}function Ln(d){return{x:On(d,1),y:On(d,2),z:On(d,3),visibility:rs(d,4)!=null?On(d,4):void 0}}function Fi(d,g){this.i=d,this.h=g,this.m=0}function La(d,g,C){return function(O,B){var M=O.h;if(O.s===void 0){var F=ru(M,`
|
|
534
534
|
attribute vec2 aVertex;
|
|
535
535
|
attribute vec2 aTex;
|
|
536
536
|
varying vec2 vTex;
|
|
537
537
|
void main(void) {
|
|
538
538
|
gl_Position = vec4(aVertex, 0.0, 1.0);
|
|
539
539
|
vTex = aTex;
|
|
540
|
-
}`,0),W=
|
|
540
|
+
}`,0),W=ru(M,`
|
|
541
541
|
precision mediump float;
|
|
542
542
|
varying vec2 vTex;
|
|
543
543
|
uniform sampler2D sampler0;
|
|
544
544
|
void main(){
|
|
545
545
|
gl_FragColor = texture2D(sampler0, vTex);
|
|
546
|
-
}`,1),
|
|
546
|
+
}`,1),ee=M.createProgram();if(M.attachShader(ee,F),M.attachShader(ee,W),M.linkProgram(ee),!M.getProgramParameter(ee,M.LINK_STATUS))throw Error(`Could not compile WebGL program.
|
|
547
547
|
|
|
548
|
-
`+M.getProgramInfoLog(Z));F=L.s=Z,M.useProgram(F),W=M.getUniformLocation(F,"sampler0"),L.l={O:M.getAttribLocation(F,"aVertex"),N:M.getAttribLocation(F,"aTex"),ya:W},L.v=M.createBuffer(),M.bindBuffer(M.ARRAY_BUFFER,L.v),M.enableVertexAttribArray(L.l.O),M.vertexAttribPointer(L.l.O,2,M.FLOAT,!1,0,0),M.bufferData(M.ARRAY_BUFFER,new Float32Array([-1,-1,-1,1,1,1,1,-1]),M.STATIC_DRAW),M.bindBuffer(M.ARRAY_BUFFER,null),L.u=M.createBuffer(),M.bindBuffer(M.ARRAY_BUFFER,L.u),M.enableVertexAttribArray(L.l.N),M.vertexAttribPointer(L.l.N,2,M.FLOAT,!1,0,0),M.bufferData(M.ARRAY_BUFFER,new Float32Array([0,1,0,0,1,0,1,1]),M.STATIC_DRAW),M.bindBuffer(M.ARRAY_BUFFER,null),M.uniform1i(W,0)}F=L.l,M.useProgram(L.s),M.canvas.width=B.width,M.canvas.height=B.height,M.viewport(0,0,B.width,B.height),M.activeTexture(M.TEXTURE0),L.i.bindTexture2d(B.glName),M.enableVertexAttribArray(F.O),M.bindBuffer(M.ARRAY_BUFFER,L.v),M.vertexAttribPointer(F.O,2,M.FLOAT,!1,0,0),M.enableVertexAttribArray(F.N),M.bindBuffer(M.ARRAY_BUFFER,L.u),M.vertexAttribPointer(F.N,2,M.FLOAT,!1,0,0),M.bindFramebuffer(M.DRAW_FRAMEBUFFER?M.DRAW_FRAMEBUFFER:M.FRAMEBUFFER,null),M.clearColor(0,0,0,0),M.clear(M.COLOR_BUFFER_BIT),M.colorMask(!0,!0,!0,!0),M.drawArrays(M.TRIANGLE_FAN,0,4),M.disableVertexAttribArray(F.O),M.disableVertexAttribArray(F.N),M.bindBuffer(M.ARRAY_BUFFER,null),L.i.bindTexture2d(0)}(d,g),typeof d.h.canvas.transferToImageBitmap=="function"?Promise.resolve(d.h.canvas.transferToImageBitmap()):w?Promise.resolve(d.h.canvas):typeof createImageBitmap=="function"?createImageBitmap(d.h.canvas):(d.j===void 0&&(d.j=document.createElement("canvas")),new Promise(function(L){d.j.height=d.h.canvas.height,d.j.width=d.h.canvas.width,d.j.getContext("2d",{}).drawImage(d.h.canvas,0,0,d.h.canvas.width,d.h.canvas.height),L(d.j)}))}function Vd(d){this.h=d}Pa.prototype.l=fs(tu);var ru=new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,10,9,1,7,0,65,0,253,15,26,11]);function jd(d,g){return g+d}function La(d,g){window[d]=g}function Xn(d){if(this.h=d,this.listeners={},this.l={},this.L={},this.s={},this.v={},this.M=this.u=this.ga=!0,this.I=Promise.resolve(),this.fa="",this.D={},this.locateFile=d&&d.locateFile||jd,(typeof window=="undefined"?"undefined":$(window))==="object")var g=window.location.pathname.toString().substring(0,window.location.pathname.toString().lastIndexOf("/"))+"/";else{if(typeof location=="undefined")throw Error("solutions can only be loaded on a web page or in a web worker");g=location.pathname.toString().substring(0,location.pathname.toString().lastIndexOf("/"))+"/"}if(this.ha=g,d.options)for(var w=(g=Y(Object.keys(d.options))).next();!w.done;w=g.next()){w=w.value;var L=d.options[w].default;L!==void 0&&(this.l[w]=typeof L=="function"?L():L)}}function Bd(d){var g,w,L,B,M,F,W,Z,fe,me,we;return Ze(function(Ae){switch(Ae.h){case 1:return d.ga?(g=d.h.files===void 0?[]:typeof d.h.files=="function"?d.h.files(d.l):d.h.files,dt(Ae,Ze(function(ve){switch(ve.h){case 1:return ve.s=2,dt(ve,WebAssembly.instantiate(ru),4);case 4:ve.h=3,ve.s=0;break;case 2:return ve.s=0,ve.l=null,ve.return(!1);case 3:return ve.return(!0)}}),2)):Ae.return();case 2:if(w=Ae.i,(typeof window=="undefined"?"undefined":$(window))==="object")return La("createMediapipeSolutionsWasm",{locateFile:d.locateFile}),La("createMediapipeSolutionsPackedAssets",{locateFile:d.locateFile}),F=g.filter(function(ve){return ve.data!==void 0}),W=g.filter(function(ve){return ve.data===void 0}),Z=Promise.all(F.map(function(ve){var Le=ei(d,ve.url);if(ve.path!==void 0){var Be=ve.path;Le=Le.then(function(ot){return d.overrideFile(Be,ot),Promise.resolve(ot)})}return Le})),fe=Promise.all(W.map(function(ve){return ve.simd===void 0||ve.simd&&w||!ve.simd&&!w?function(Le){var Be=document.createElement("script");return Be.setAttribute("src",Le),Be.setAttribute("crossorigin","anonymous"),new Promise(function(ot){Be.addEventListener("load",function(){ot()},!1),Be.addEventListener("error",function(){ot()},!1),document.body.appendChild(Be)})}(d.locateFile(ve.url,d.ha)):Promise.resolve()})).then(function(){var ve,Le,Be;return Ze(function(ot){if(ot.h==1)return ve=window.createMediapipeSolutionsWasm,Le=window.createMediapipeSolutionsPackedAssets,Be=d,dt(ot,ve(Le),2);Be.i=ot.i,ot.h=0})}),me=Ze(function(ve){return d.h.graph&&d.h.graph.url?ve=dt(ve,ei(d,d.h.graph.url),0):(ve.h=0,ve=void 0),ve}),dt(Ae,Promise.all([fe,Z,me]),7);if(typeof importScripts!="function")throw Error("solutions can only be loaded on a web page or in a web worker");return L=g.filter(function(ve){return ve.simd===void 0||ve.simd&&w||!ve.simd&&!w}).map(function(ve){return d.locateFile(ve.url,d.ha)}),importScripts.apply(null,se(L)),B=d,dt(Ae,createMediapipeSolutionsWasm(Module),6);case 6:B.i=Ae.i,d.m=new OffscreenCanvas(1,1),d.i.canvas=d.m,M=d.i.GL.createContext(d.m,{antialias:!1,alpha:!1,va:typeof WebGL2RenderingContext!="undefined"?2:1}),d.i.GL.makeContextCurrent(M),Ae.h=4;break;case 7:if(d.m=document.createElement("canvas"),!(we=d.m.getContext("webgl2",{}))&&!(we=d.m.getContext("webgl",{})))return alert("Failed to create WebGL canvas context when passing video frame."),Ae.return();d.K=we,d.i.canvas=d.m,d.i.createContext(d.m,!0,!0,{});case 4:d.j=new d.i.SolutionWasm,d.ga=!1,Ae.h=0}})}function ei(d,g){var w,L;return Ze(function(B){return g in d.L?B.return(d.L[g]):(w=d.locateFile(g,""),L=fetch(w).then(function(M){return M.arrayBuffer()}),d.L[g]=L,B.return(L))})}function Fd(d,g,w){var L,B,M,F,W,Z,fe,me,we,Ae,ve,Le,Be,ot;return Ze(function(ut){switch(ut.h){case 1:if(!w)return ut.return(g);for(L={},B=0,M=Y(Object.keys(w)),F=M.next();!F.done;F=M.next())W=F.value,typeof(Z=w[W])!="string"&&Z.type==="texture"&&g[Z.stream]!==void 0&&++B;1<B&&(d.M=!1),fe=Y(Object.keys(w)),F=fe.next();case 2:if(F.done){ut.h=4;break}if(me=F.value,typeof(we=w[me])=="string")return Be=L,ot=me,dt(ut,function(On,Na,ni){var Ua;return Ze(function(gs){return typeof ni=="number"||ni instanceof Uint8Array||ni instanceof On.i.Uint8BlobList?gs.return(ni):ni instanceof On.i.Texture2dDataOut?((Ua=On.v[Na])||(Ua=new ji(On.i,On.K),On.v[Na]=Ua),gs.return(Da(Ua,ni,On.M))):gs.return(void 0)})}(d,me,g[we]),14);if(Ae=g[we.stream],we.type==="detection_list"){if(Ae){for(var jt=Ae.getRectList(),fn=Ae.getLandmarksList(),yt=Ae.getClassificationsList(),Je=[],Ye=0;Ye<jt.size();++Ye){var gr=Nd(jt.get(Ye)),Ma=void 0;Ma=Ma===void 0?0:Ma,gr={la:{sa:Dn(gr,1),ta:Dn(gr,2),height:Dn(gr,3),width:Dn(gr,4),rotation:Dn(gr,5,0),pa:Ea(hn(gr,6),Ma)},ea:kt(Md(fn.get(Ye)),vr,1).map(Ln),ba:Ud(Od(yt.get(Ye)))},Je.push(gr)}jt=Je}else jt=[];L[me]=jt,ut.h=7;break}if(we.type==="proto_list"){if(Ae){for(jt=Array(Ae.size()),fn=0;fn<Ae.size();fn++)jt[fn]=Ae.get(fn);Ae.delete()}else jt=[];L[me]=jt,ut.h=7;break}if(Ae===void 0){ut.h=3;break}if(we.type==="float_list"){L[me]=Ae,ut.h=7;break}if(we.type==="proto"){L[me]=Ae,ut.h=7;break}if(we.type!=="texture")throw Error("Unknown output config type: '"+we.type+"'");return(ve=d.v[me])||(ve=new ji(d.i,d.K),d.v[me]=ve),dt(ut,Da(ve,Ae,d.M),13);case 13:Le=ut.i,L[me]=Le;case 7:we.transform&&L[me]&&(L[me]=we.transform(L[me])),ut.h=3;break;case 14:Be[ot]=ut.i;case 3:F=fe.next(),ut.h=2;break;case 4:return ut.return(L)}})}function Oa(d,g){for(var w=g.name||"$",L=[].concat(se(g.wants)),B=new d.i.StringList,M=Y(g.wants),F=M.next();!F.done;F=M.next())B.push_back(F.value);M=d.i.PacketListener.implement({onResults:function(W){for(var Z={},fe=0;fe<g.wants.length;++fe)Z[L[fe]]=W.get(fe);var me=d.listeners[w];me&&(d.I=Fd(d,Z,g.outs).then(function(we){we=me(we);for(var Ae=0;Ae<g.wants.length;++Ae){var ve=Z[L[Ae]];$(ve)==="object"&&ve.hasOwnProperty&&ve.hasOwnProperty("delete")&&ve.delete()}we&&(d.I=we)}))}}),d.j.attachMultiListener(B,M),B.delete()}function ti(d){return d===void 0&&(d=0),d===1?"selfie_segmentation_landscape.tflite":"selfie_segmentation.tflite"}function Bi(d){var g=this;d=d||{},this.h=new Xn({locateFile:d.locateFile,files:function(w){return[{simd:!0,url:"selfie_segmentation_solution_simd_wasm_bin.js"},{simd:!1,url:"selfie_segmentation_solution_wasm_bin.js"},{data:!0,url:ti(w.modelSelection)}]},graph:{url:"selfie_segmentation.binarypb"},listeners:[{wants:["segmentation_mask","image_transformed"],outs:{image:{type:"texture",stream:"image_transformed"},segmentationMask:{type:"texture",stream:"segmentation_mask"}}}],inputs:{image:{type:"video",stream:"input_frames_gpu"}},options:{useCpuInference:{type:0,graphOptionXref:{calculatorType:"InferenceCalculator",fieldName:"use_cpu_inference"},default:(typeof window=="undefined"?"undefined":$(window))==="object"&&window.navigator!==void 0&&("iPad Simulator;iPhone Simulator;iPod Simulator;iPad;iPhone;iPod".split(";").includes(navigator.platform)||navigator.userAgent.includes("Mac")&&"ontouchend"in document)},selfieMode:{type:0,graphOptionXref:{calculatorType:"GlScalerCalculator",calculatorIndex:1,fieldName:"flip_horizontal"}},modelSelection:{type:1,graphOptionXref:{calculatorType:"ConstantSidePacketCalculator",calculatorName:"ConstantSidePacketCalculatorModelSelection",fieldName:"int_value"},onChange:function(w){var L,B,M;return Ze(function(F){return F.h==1?(L=ti(w),B="third_party/mediapipe/modules/selfie_segmentation/"+L,dt(F,ei(g.h,L),2)):(M=F.i,g.h.overrideFile(B,M),F.return(!0))})}}}})}(le=Xn.prototype).close=function(){return this.j&&this.j.delete(),Promise.resolve()},le.reset=function(){var d=this;return Ze(function(g){d.j&&(d.j.reset(),d.s={},d.v={}),g.h=0})},le.setOptions=function(d,g){var w=this;if(g=g||this.h.options){for(var L=[],B=[],M={},F=Y(Object.keys(d)),W=F.next();!W.done;M={X:M.X,Y:M.Y},W=F.next())if(!((W=W.value)in this.l)||this.l[W]!==d[W]){this.l[W]=d[W];var Z=g[W];Z!==void 0&&(Z.onChange&&(M.X=Z.onChange,M.Y=d[W],L.push(function(fe){return function(){return Ze(function(me){if(me.h==1)return dt(me,fe.X(fe.Y),2);me.i===!0&&(w.u=!0),me.h=0})}}(M))),Z.graphOptionXref&&(W=Object.assign({},{calculatorName:"",calculatorIndex:0},Z.graphOptionXref,{valueNumber:Z.type===1?d[W]:0,valueBoolean:Z.type===0&&d[W],valueString:Z.type===2?d[W]:""}),B.push(W)))}L.length===0&&B.length===0||(this.u=!0,this.H=(this.H===void 0?[]:this.H).concat(B),this.F=(this.F===void 0?[]:this.F).concat(L))}},le.initialize=function(){var d=this;return Ze(function(g){return g.h==1?dt(g,Bd(d),2):g.h!=3?dt(g,function(w){var L,B,M,F,W,Z,fe,me;return Ze(function(we){if(we.h==1)return w.h.graph&&w.h.graph.url&&w.fa===w.h.graph.url?we.return():(w.u=!0,w.h.graph&&w.h.graph.url?(w.fa=w.h.graph.url,dt(we,ei(w,w.h.graph.url),3)):void(we.h=2));for(we.h!=2&&(L=we.i,w.j.loadGraph(L)),B=Y(Object.keys(w.D)),M=B.next();!M.done;M=B.next())F=M.value,w.j.overrideFile(F,w.D[F]);if(w.D={},w.h.listeners)for(W=Y(w.h.listeners),Z=W.next();!Z.done;Z=W.next())fe=Z.value,Oa(w,fe);me=w.l,w.l={},w.setOptions(me),we.h=0})}(d),3):dt(g,function(w){var L,B,M,F,W,Z;return Ze(function(fe){switch(fe.h){case 1:if(!w.u)return fe.return();if(!w.F){fe.h=2;break}L=Y(w.F),B=L.next();case 3:if(B.done){fe.h=5;break}return dt(fe,(0,B.value)(),4);case 4:B=L.next(),fe.h=3;break;case 5:w.F=void 0;case 2:if(w.H){for(M=new w.i.GraphOptionChangeRequestList,F=Y(w.H),W=F.next();!W.done;W=F.next())Z=W.value,M.push_back(Z);w.j.changeOptions(M),M.delete(),w.H=void 0}w.u=!1,fe.h=0}})}(d),0)})},le.overrideFile=function(d,g){this.j?this.j.overrideFile(d,g):this.D[d]=g},le.clearOverriddenFiles=function(){this.D={},this.j&&this.j.clearOverriddenFiles()},le.send=function(d,g){var w,L,B,M,F,W,Z,fe,me,we=this;return Ze(function(Ae){switch(Ae.h){case 1:return we.h.inputs?(w=1e3*(g==null?performance.now():g),dt(Ae,we.I,2)):Ae.return();case 2:return dt(Ae,we.initialize(),3);case 3:for(L=new we.i.PacketDataList,B=Y(Object.keys(d)),M=B.next();!M.done;M=B.next())if(F=M.value,W=we.h.inputs[F]){e:{var ve=d[F];switch(W.type){case"video":var Le=we.s[W.stream];if(Le||(Le=new ji(we.i,we.K),we.s[W.stream]=Le),Le.m===0&&(Le.m=Le.i.createTexture()),typeof HTMLVideoElement!="undefined"&&ve instanceof HTMLVideoElement)var Be=ve.videoWidth,ot=ve.videoHeight;else typeof HTMLImageElement!="undefined"&&ve instanceof HTMLImageElement?(Be=ve.naturalWidth,ot=ve.naturalHeight):(Be=ve.width,ot=ve.height);ot={glName:Le.m,width:Be,height:ot},(Be=Le.h).canvas.width=ot.width,Be.canvas.height=ot.height,Be.activeTexture(Be.TEXTURE0),Le.i.bindTexture2d(Le.m),Be.texImage2D(Be.TEXTURE_2D,0,Be.RGBA,Be.RGBA,Be.UNSIGNED_BYTE,ve),Le.i.bindTexture2d(0),Le=ot;break e;case"detections":for((Le=we.s[W.stream])||(Le=new Vd(we.i),we.s[W.stream]=Le),Le.data||(Le.data=new Le.h.DetectionListData),Le.data.reset(ve.length),ot=0;ot<ve.length;++ot){Be=ve[ot];var ut=Le.data,jt=ut.setBoundingBox,fn=ot,yt=Be.la,Je=new Pa;if(Pn(Je,1,yt.sa),Pn(Je,2,yt.ta),Pn(Je,3,yt.height),Pn(Je,4,yt.width),Pn(Je,5,yt.rotation),An(Je,6,yt.pa),yt=Je.l(),jt.call(ut,fn,yt),Be.ea)for(ut=0;ut<Be.ea.length;++ut){Je=Be.ea[ut],fn=(jt=Le.data).addNormalizedLandmark,yt=ot,Je=Object.assign({},Je,{visibility:Je.visibility?Je.visibility:0});var Ye=new vr;Pn(Ye,1,Je.x),Pn(Ye,2,Je.y),Pn(Ye,3,Je.z),Je.visibility&&Pn(Ye,4,Je.visibility),Je=Ye.l(),fn.call(jt,yt,Je)}if(Be.ba)for(ut=0;ut<Be.ba.length;++ut)fn=(jt=Le.data).addClassification,yt=ot,Je=Be.ba[ut],Pn(Ye=new Zr,2,Je.qa),Je.index&&An(Ye,1,Je.index),Je.label&&An(Ye,3,Je.label),Je.displayName&&An(Ye,4,Je.displayName),Je=Ye.l(),fn.call(jt,yt,Je)}Le=Le.data;break e;default:Le={}}}switch(Z=Le,fe=W.stream,W.type){case"video":L.pushTexture2d(Object.assign({},Z,{stream:fe,timestamp:w}));break;case"detections":(me=Z).stream=fe,me.timestamp=w,L.pushDetectionList(me);break;default:throw Error("Unknown input config type: '"+W.type+"'")}}return we.j.send(L),dt(Ae,we.I,4);case 4:L.delete(),Ae.h=0}})},le.onResults=function(d,g){this.listeners[g||"$"]=d},he("Solution",Xn),he("OptionType",{BOOL:0,NUMBER:1,ua:2,0:"BOOL",1:"NUMBER",2:"STRING"}),(le=Bi.prototype).close=function(){return this.h.close(),Promise.resolve()},le.onResults=function(d){this.h.onResults(d)},le.initialize=function(){var d=this;return Ze(function(g){return dt(g,d.h.initialize(),0)})},le.reset=function(){this.h.reset()},le.send=function(d){var g=this;return Ze(function(w){return dt(w,g.h.send(d),0)})},le.setOptions=function(d){this.h.setOptions(d)},he("SelfieSegmentation",Bi),he("VERSION","0.1.1675465747")}).call(Wo);var Rr=function(le){return typeof le=="number"},Ac=function(){function le(){Re(this,le),this.userId="",this.videoBeauty=document.createElement("video"),this.videoBeauty.loop=!0,this.videoBeauty.autoplay=!0,this.videoVirtual=document.createElement("video"),this.videoVirtual.loop=!0,this.videoVirtual.autoplay=!0,this.onoverload=null,this.canvasBeauty=document.createElement("canvas"),this.filter=new Go({canvas:this.canvasBeauty,video:this.videoBeauty}),this.canvasVirtual=document.createElement("canvas"),this.virtual=new zo({canvas:this.canvasVirtual,video:this.videoVirtual,onoverload:this.onoverload}),this.beautyParams={beauty:.5,brightness:.5,ruddy:.5},this.timeoutId=null,this.rafId=null,this.startTime=null,this.originTrack=null,this.beautyTrack=null,this.resultTrack=null,this.localStream=null,this.frameRate=null,this.disableStatus=!1,this.isVirualEnable=!1}var Te,Se,je,He,oe;return $e(le,[{key:"generateBeautyStream",value:function(Y){this.userId=Y==null?void 0:Y.getUserId();var se=Y.getVideoTrack();if(!se)throw new Error("Your localStream does not contain video track.");var z=this.generateBeautyTrack(se);return Y.replaceTrack(z),this.localStream=Y,Y.setBeautyStatus&&Y.setBeautyStatus(!0),console.log("RTCBeautyPlugin: generateBeautyStream ".concat(this.userId?"userId: ".concat(this.userId):"")),Y}},{key:"generateBeautyTrack",value:function(Y){var se=this;this.reset();var z=Y.getSettings();this.frameRate=z.frameRate,this.filter.setRect(z.width,z.height),this.setRect(z.width,z.height);var re=new MediaStream;re.addTrack(Y),this.videoBeauty.srcObject=re,this.videoBeauty.play();var be=this.canvasBeauty.captureStream(this.frameRate||15).getVideoTracks()[0];return this.rafId&&cancelAnimationFrame(this.rafId),this.rafId=requestAnimationFrame(function(){se.startTime=new Date().getTime(),se.render()}),this.installEvents(),this.originTrack=Y,this.beautyTrack=be,this.setTrackParam({type:"beauty",originTrack:Y,resultTrack:be,param:this.beautyParams}),be}},{key:"setBackground",value:(oe=X(G().mark(function Y(se){return G().wrap(function(z){for(;;)switch(z.prev=z.next){case 0:return z.next=2,this.virtual.setBackground(se);case 2:console.log("RTCBeautyPlugin: setBackground img:".concat(se));case 3:case"end":return z.stop()}},Y,this)})),function(Y){return oe.apply(this,arguments)})},{key:"generateStream",value:(He=X(G().mark(function Y(se){var z,re,be,ue,ye;return G().wrap(function(Me){for(;;)switch(Me.prev=Me.next){case 0:if(z=se.localStream,re=se.type,be=se.img,ue=z.getVideoTrack()){Me.next=4;break}throw new Error("Your localStream does not contain video track.");case 4:return this.localStream=z,Me.next=7,this.generateMixedTrack({videoTrack:ue,type:re,img:be});case 7:return ye=Me.sent,z.replaceTrack(ye),z.setBeautyStatus&&z.setBeautyStatus(!0),Me.abrupt("return",z);case 11:case"end":return Me.stop()}},Y,this)})),function(Y){return He.apply(this,arguments)})},{key:"generateMixedTrack",value:(je=X(G().mark(function Y(se){var z,re,be,ue,ye;return G().wrap(function(Me){for(;;)switch(Me.prev=Me.next){case 0:if(z=se.videoTrack,re=se.type,be=se.img,this.virtual.selfieSegmentation){Me.next=3;break}throw new Error("you should call loadResources() first");case 3:return this.virtual.initVirtualParams({type:re,img:be}),Me.next=6,this.generateBeautyTrack(z);case 6:return ue=Me.sent,Me.next=9,this.generateVirtualTrack({videoTrack:ue,type:re,img:be});case 9:return ye=Me.sent,this.beautyTrack=ue,this.resultTrack=ye,this.setTrackParam({type:"mixed",originTrack:this.originTrack,resultTrack:this.resultTrack,param:{type:re,img:be}}),Me.abrupt("return",this.resultTrack);case 14:case"end":return Me.stop()}},Y,this)})),function(Y){return je.apply(this,arguments)})},{key:"generateVirtualStream",value:(Se=X(G().mark(function Y(se){var z,re,be,ue,ye;return G().wrap(function(Me){for(;;)switch(Me.prev=Me.next){case 0:if(z=se.localStream,re=se.type,be=se.img,ue=z.getVideoTrack()){Me.next=4;break}throw new Error("Your localStream does not contain video track.");case 4:return this.localStream=z,Me.next=7,this.generateVirtualTrack({videoTrack:ue,type:re,img:be});case 7:return ye=Me.sent,Me.next=10,z.replaceTrack(ye);case 10:return z.setBeautyStatus&&z.setBeautyStatus(!0),console.log("".concat(this.userId?"[userId: ".concat(this.userId,"]"):""," RTCBeautyPlugin generate ").concat(re," Stream.")),Me.abrupt("return",z);case 13:case"end":return Me.stop()}},Y,this)})),function(Y){return Se.apply(this,arguments)})},{key:"generateVirtualTrack",value:(Te=X(G().mark(function Y(se){var z,re,be,ue;return G().wrap(function(ye){for(;;)switch(ye.prev=ye.next){case 0:if(z=se.videoTrack,re=se.type,be=se.img,this.virtual.selfieSegmentation){ye.next=3;break}throw new Error("you should call loadResources() first");case 3:return ue=z.getSettings(),this.frameRate=ue.frameRate,this.virtual.setRect(ue.width,ue.height),ye.next=8,this.virtual.initVirtualParams({type:re,img:be});case 8:return this.setRect(ue.width,ue.height),this.mediaStream=new MediaStream,this.mediaStream.addTrack(z),this.videoVirtual.srcObject=this.mediaStream,ye.next=14,this.videoVirtual.play();case 14:return this.virtual.startVirtual(this.frameRate),ye.next=17,this.virtual.render();case 17:return this.originTrack=z,this.resultTrack=this.canvasVirtual.captureStream(this.frameRate||15).getVideoTracks()[0],this.setTrackParam({type:"virtual",originTrack:this.originTrack,resultTrack:this.resultTrack,param:{type:re,img:be}}),this.isVirualEnable=!0,ye.abrupt("return",this.resultTrack);case 22:case"end":return ye.stop()}},Y,this)})),function(Y){return Te.apply(this,arguments)})},{key:"replaceVirtualTrack",value:function(Y){this.isVirualEnable&&(this.mediaStream.removeTrack(this.mediaStream.getVideoTracks()[0]),this.mediaStream.addTrack(Y),this.originTrack=Y)}},{key:"deleteSource",value:function(Y){if(f.default){var se=f.default.beautyTrackMap.get(Y);se&&(se.type==="mixed"&&this.deleteSource(se.originTrack.id),se.originTrack&&(se.originTrack.stop(),se.originTrack=null),se.beautyTrack&&(se.beautyTrack.stop(),se.beautyTrack=null),se.resultTrack&&(se.resultTrack.stop(),se.resultTrack=null),f.default.beautyTrackMap.delete(Y))}}},{key:"draw",value:function(){this.videoBeauty&&this.videoBeauty.readyState===this.videoBeauty.HAVE_ENOUGH_DATA&&this.filter.apply(this.videoBeauty)}},{key:"enableVirtualBg",value:function(){var Y;if(this.virtual&&!this.isVirualEnable)return this.virtual.setEnable(!0),this.virtual.render(),this.isVirualEnable=!0,(Y=this.localStream)===null||Y===void 0||Y.replaceTrack(this.resultTrack),console.log("".concat(this.userId?"[userId: ".concat(this.userId,"]"):""," RTCBeautyPlugin enable.")),this.resultTrack}},{key:"disableVirtualBg",value:function(){var Y;if(this.virtual&&this.isVirualEnable)return this.virtual.setEnable(!1),this.isVirualEnable=!1,(Y=this.localStream)===null||Y===void 0||Y.replaceTrack(this.originTrack),console.log("".concat(this.userId?"[userId: ".concat(this.userId,"]"):""," RTCBeautyPlugin disable.")),this.originTrack}},{key:"changeType",value:function(Y){var se=Y.type,z=Y.img;console.log("".concat(this.userId?"[userId: ".concat(this.userId,"]"):""," RTCBeautyPlugin changeType\uFF1A").concat(se,". img: ").concat(z,".")),se==="blur"&&(this.virtual.reset(),this.virtual.initVirtualParams({type:"blur"}),this.virtual.startVirtual(this.frameRate),this.virtual.render()),se==="virtual"&&(this.virtual.reset(),this.virtual.initVirtualParams({type:"virtual",img:z}),this.virtual.startVirtual(this.frameRate),this.virtual.render()),this.setTrackParam({type:se,originTrack:this.originTrack,resultTrack:this.resultTrack,param:{type:se,img:z}})}},{key:"render",value:function(){var Y=this,se=new Date().getTime();se-this.startTime>1e3/this.frameRate&&(this.draw(),this.startTime=se),document.hidden?(clearTimeout(this.timeoutId),this.timeoutId=setTimeout(function(){Y.render()},1e3/this.frameRate)):(this.timeoutId&&clearTimeout(this.timeoutId),this.rafId&&cancelAnimationFrame(this.rafId),this.rafId=requestAnimationFrame(this.render.bind(this)))}},{key:"setBeautyParam",value:function(Y){var se=Y.beauty,z=Y.brightness,re=Y.ruddy;Rr(se)&&(this.beautyParams.beauty=se),Rr(z)&&(this.beautyParams.brightness=z),Rr(re)&&(this.beautyParams.ruddy=re),this.filter.setBeautyParams(this.beautyParams),this.getClose()&&!this.disableStatus&&this.disable(),!this.getClose()&&this.disableStatus&&this.enable()}},{key:"setRect",value:function(Y,se){var z=Y||640,re=se||480;this.videoBeauty.height=re,this.videoBeauty.width=z,this.canvasBeauty.height=re,this.canvasBeauty.width=z,this.videoVirtual.height=re,this.videoVirtual.width=z,this.canvasVirtual.height=re,this.canvasVirtual.width=z}},{key:"reset",value:function(){cancelAnimationFrame(this.rafId),clearTimeout(this.timeoutId),this.videoBeauty.pause(),this.filter.reset(),this.beautyTrack&&this.beautyTrack.stop(),this.videoVirtual.pause(),this.resultTrack&&this.resultTrack.stop(),this.originTrack&&this.originTrack.stop()}},{key:"destroy",value:function(){cancelAnimationFrame(this.rafId),clearTimeout(this.timeoutId),this.canvasBeauty&&(this.canvasBeauty.width=0,this.canvasBeauty.height=0,this.canvasBeauty.remove(),this.canvasBeauty=null),this.videoBeauty&&(this.videoBeauty.pause(),this.videoBeauty.removeAttribute("srcObject"),this.videoBeauty.removeAttribute("src"),this.videoBeauty.load(),this.videoBeauty.width=0,this.videoBeauty.height=0,this.videoBeauty.remove(),this.videoBeauty=null),this.beautyTrack&&(this.deleteSource(this.beautyTrack.id),this.beautyTrack.stop(),this.beautyTrack=null),this.originTrack&&(this.originTrack.stop(),this.originTrack=null),this.resultTrack&&(this.deleteSource(this.resultTrack.id),this.resultTrack.stop(),this.resultTrack=null),this.canvasVirtual&&(this.canvasVirtual.width=0,this.canvasVirtual.height=0,this.canvasVirtual.remove(),this.canvasVirtual=null),this.videoVirtual&&(this.videoVirtual.pause(),this.videoVirtual.removeAttribute("srcObject"),this.videoVirtual.removeAttribute("src"),this.videoVirtual.load(),this.videoVirtual.width=0,this.videoVirtual.height=0,this.videoVirtual.remove(),this.videoVirtual=null),this.virtual.destroy(),this.uninstallEvents()}},{key:"generateVideoTrackFromCanvasCapture",value:function(Y){return this.canvasVirtual.captureStream(Y).getVideoTracks()[0]}},{key:"setTrackParam",value:function(Y){var se=Y.type,z=Y.originTrack,re=Y.resultTrack,be=Y.param;f.default&&(f.default.beautyTrackMap||(f.default.beautyTrackMap=new Map),f.default.beautyTrackMap.set(re.id,{type:se,originTrack:z,resultTrack:re,param:be,pluginInstance:this}))}},{key:"disable",value:function(){this.localStream&&this.originTrack&&(this.localStream.replaceTrack(this.originTrack),cancelAnimationFrame(this.rafId),clearTimeout(this.timeoutId),this.disableStatus=!0)}},{key:"enable",value:function(){this.localStream&&this.beautyTrack&&(this.localStream.replaceTrack(this.beautyTrack),this.render(),this.disableStatus=!1)}},{key:"installEvents",value:function(){document.addEventListener("visibilitychange",this.render.bind(this))}},{key:"uninstallEvents",value:function(){document.removeEventListener("visibilitychange",this.render.bind(this))}},{key:"overload",value:function(){this.onoverload&&this.onoverload()}},{key:"getClose",value:function(){return this.beautyParams.beauty===0&&this.beautyParams.brightness===0&&this.beautyParams.ruddy===0}}]),le}();return f.default&&(f.default.getRTCBeautyPlugin=function(){return new Ac}),Ac})});var KI="0.0.16";var vd=ur(Er());var md=ur(Er());var aw=ur(rg());var No=class extends aw.default{constructor({mediaType:f}){super();Ve(this,"trackMediaType");Ve(this,"_stream");Ve(this,"_playerState");this.trackMediaType=f}get isPlaying(){return this._playerState==="PLAYING"}async stop(){this._playerState="STOPPED",await this._stream.stop()}};var b7=1,Uo=class extends No{constructor(f){super(f);Ve(this,"TRTC",md.default);Ve(this,"muted");Ve(this,"_publishedStream",null);Ve(this,"_log");this._log=Ft.createLogger({id:f.id+b7++})}get closed(){let f=this.getMediaStreamTrack();return f?f.readyState==="ended":!0}async init(){this._stream.on("device-auto-recovered",async({isMicrophone:f,isCamera:G,microphoneId:$,cameraId:H})=>{if(this._publishedStream&&this._stream!==this._publishedStream){let X=this.getMediaStreamTrack(),Re=this.trackMediaType==="audio"?this._publishedStream.getAudioTrack():this._publishedStream.getVideoTrack();X&&Re&&X!==Re&&this._publishedStream.replaceTrack(X)}if(f){let X=(await md.default.getMicrophones()).find(Re=>Re.deviceId===$);X&&this.emit("device-switched",X)}if(G){let X=(await md.default.getCameras()).find(Re=>Re.deviceId===H);X&&this.emit("device-switched",X)}}),this._stream.on("player-state-changed",({state:f})=>{this._playerState=f}),this._stream.on("error",f=>{f.getCode()===16452&&this.emit("track-ended",this.trackMediaType)}),await this._stream.initialize()}setPublishedStream(f){this._publishedStream=f}on(f,G){return super.on(f,G),this}async setMuted(f){let G=this._publishedStream||this._stream;this.trackMediaType==="audio"?f?G.muteAudio():G.unmuteAudio():f?G.muteVideo():G.unmuteVideo()}getMediaStreamTrack(){return this.trackMediaType==="audio"?this._stream.getAudioTrack():this._stream.getVideoTrack()}close(){this._stream.close()}getTrackLabel(){var f;return((f=this.getMediaStreamTrack())==null?void 0:f.label)||""}getDeviceId(){var f,G;return((G=(f=this.getMediaStreamTrack())==null?void 0:f.getSettings())==null?void 0:G.deviceId)||""}};var sw=ur(ow()),cw=ur(Er());var Vo=class extends Uo{constructor(f){super(f);Ve(this,"mirrored",!1);Ve(this,"lastPlayContainer");Ve(this,"_beautyPlugin");Ve(this,"_virtualTrack");Ve(this,"_isVirtualEnable",!1);Ve(this,"_imageUrl",null);this.onOriginTrackEnded=this.onOriginTrackEnded.bind(this)}get _originTrack(){var f;return((f=this._beautyPlugin)==null?void 0:f.originTrack)||null}get videoElement(){var f;return((f=this.lastPlayContainer)==null?void 0:f.querySelector(`#video_${this._stream.getId()}`))||null}mirrorVideo(f){this.lastPlayContainer&&this._stream.play(this.lastPlayContainer,{mirror:f}),this.mirrored=f}async applyVirtualBackground(f){var G;if(this._log.info(`applyVirtualBackground ${f} ${this._imageUrl}`),!f)return this.stopVirtualBackground(),!0;if(f===this._imageUrl)return!0;if(this._beautyPlugin||(this._beautyPlugin=new sw.default,await this._beautyPlugin.virtual.loadResources(),this._beautyPlugin.virtual.onoverload=()=>{this._log.info("virtualBackground is onoverload"),this.emit("VirtualBackgroundOverload")}),this._imageUrl)f==="blur"&&this._imageUrl!=="blur"&&this._beautyPlugin.changeType({type:"blur"}),f!=="blur"&&this._imageUrl==="blur"&&this._beautyPlugin.changeType({type:"virtual",img:f}),f!=="blur"&&this._imageUrl!=="blur"&&this._imageUrl!==f&&await this._beautyPlugin.setBackground(f);else{let $=await this._beautyPlugin.generateVirtualStream({localStream:this._stream,type:f==="blur"?"blur":"virtual",img:f==="blur"?void 0:f});this._virtualTrack=$.getVideoTrack(),this._publishedStream&&this._publishedStream.replaceTrack(this._virtualTrack),this._isVirtualEnable=!0}return(G=this._originTrack)==null||G.addEventListener("ended",this.onOriginTrackEnded),this._imageUrl=f,!this._isVirtualEnable&&this._beautyPlugin&&(this._isVirtualEnable=!0,this._beautyPlugin.enableVirtualBg()),!0}async onOriginTrackEnded(){let f=(await cw.default.getCameras())[0];f?this.setDevice(f.deviceId):this.emit("track-ended",this.trackMediaType)}async stopVirtualBackground(){var f;return this._log.info("stopVirtualBackground is called"),this._beautyPlugin&&this._isVirtualEnable&&(this._log.info("RTCBeautyPlugin: call disableVirtualBackground"),this._beautyPlugin.disableVirtualBg(),this._isVirtualEnable=!1,(f=this._originTrack)==null||f.removeEventListener("ended",this.onOriginTrackEnded)),!0}getDeviceId(){var f,G;return this._isVirtualEnable||this._beautyPlugin?((G=(f=this._beautyPlugin.originTrack)==null?void 0:f.getSettings())==null?void 0:G.deviceId)||"":super.getDeviceId()}getMediaStreamTrack(){return this._originTrack&&(this._isVirtualEnable||this._beautyPlugin)?this._originTrack:super.getMediaStreamTrack()}close(){var f;(f=this._beautyPlugin)==null||f.destroy()}};var ga=class extends Vo{constructor(f){var Re;super(hd(Jr({},f),{mediaType:"video"}));Ve(this,"_videoProfile",{width:320,height:240,frameRate:15,bitrate:300});let{width:G,height:$,frameRate:H,bitrate:X}=f;Ft.info("new LingoCameraVideoTrack"),this._stream=vd.default.createStream({audio:!1,video:!0,cameraId:f.cameraId}),G&&(this._videoProfile.width=G),$&&(this._videoProfile.height=$),H&&(this._videoProfile.frameRate=H),X&&(this._videoProfile.bitrate=X),this._stream.setVideoProfile(this._videoProfile),(Re=this._publishedStream)==null||Re.setVideoProfile(this._videoProfile)}getVideoProfile(){return this._videoProfile}async play(f){await this._stream.play(f.container,{mirror:this.mirrored}),this.lastPlayContainer=f.container}async stop(){await super.stop(),this.lastPlayContainer=null}async setDevice(f){var H,X,Re,Ie;let G=this._beautyPlugin&&this._isVirtualEnable;if(this._log.info(`setDevice ${f} visual: ${G}`),G){let $e=vd.default.createStream({audio:!1,video:!0,cameraId:f});$e.setVideoProfile(this._videoProfile),(H=this._publishedStream)==null||H.setVideoProfile(this._videoProfile),await $e.initialize();let Et=$e.getVideoTrack();Et&&((X=this._originTrack)==null||X.removeEventListener("ended",this.onOriginTrackEnded),await((Re=this._beautyPlugin)==null?void 0:Re.replaceVirtualTrack(Et)),(Ie=this._originTrack)==null||Ie.addEventListener("ended",this.onOriginTrackEnded))}else if(await this._stream.switchDevice(this.trackMediaType,f),this._publishedStream&&this._publishedStream!==this._stream){let $e=this.getMediaStreamTrack();$e&&await this._publishedStream.replaceTrack($e)}let $=(await vd.default.getCameras()).find($e=>$e.deviceId===f);$&&this.emit("device-switched",$),!this._isVirtualEnable&&this._beautyPlugin&&(this._beautyPlugin.destroy(),this._beautyPlugin=null,this._isVirtualEnable=!1,this._imageUrl=null)}close(){var f;(f=this.getMediaStreamTrack())==null||f.stop(),this._stream.hasAudio()||this._stream.close(),super.close()}};var uw=ur(Er());var S7=function(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(te){let q=Math.random()*16|0;return(te=="x"?q:q&3|8).toString(16)})};function gd(){return!performance||!performance.now?Date.now():Math.floor(performance.now())}var og=class{constructor(){this.intervalMap_=new Map}setInterval(q,f,G=!0){if(!window||!window.requestAnimationFrame)return setInterval(q,f);let $=S7(),H=gd(),X=H;this.intervalMap_.set($,{rafId:null,timeoutId:null,onVisibilityChange:null});let Re=()=>{if(G&&document.hidden){if(q(),!this.intervalMap_.has($))return;let $e=setTimeout(Re,f);this.setTimeoutId($,$e),H=gd(),X=H}else{if(X=gd(),X-H>=f&&(H=X,q(),!this.intervalMap_.has($)))return;let $e=requestAnimationFrame(Re);this.setRafId($,$e)}},Ie=requestAnimationFrame(Re);if(this.setRafId($,Ie),G){let $e=()=>{if(document.hidden){let Et=gd()-H;if(Et>=f)Re();else{let Qe=setTimeout(Re,f-Et);this.setTimeoutId($,Qe)}}};document.addEventListener("visibilitychange",$e),this.setOnVisibilityChange($,$e),document.hidden&&$e()}return $}clearInterval(q){if(this.intervalMap_.has(q)){let{rafId:f,timeoutId:G,onVisibilityChange:$}=this.intervalMap_.get(q);cancelAnimationFrame(f),clearTimeout(G),document.removeEventListener("visibilitychange",$),this.intervalMap_.delete(q)}}setTimeoutId(q,f){if(this.intervalMap_.has(q)){let G=this.intervalMap_.get(q);G.timeoutId&&clearTimeout(G.timeoutId),G.timeoutId=f}}setRafId(q,f){if(this.intervalMap_.has(q)){let G=this.intervalMap_.get(q);G.rafId&&cancelAnimationFrame(G.rafId),G.rafId=f}}setOnVisibilityChange(q,f){if(this.intervalMap_.has(q)){let G=this.intervalMap_.get(q);G.onVisibilityChange=f}}},k7=new og,sg=k7;var _d=class extends Vo{constructor(f){super({mediaType:"video",id:"cus"});Ve(this,"frameRate",0);Ve(this,"canvas",document.createElement("canvas"));Ve(this,"canvasCtx");Ve(this,"onDraw",null);Ve(this,"_cameraVideoTrack",null);Ve(this,"_timerId");this._cameraVideoTrack=f}timerStop(){sg.clearInterval(this._timerId)}async init(){var $;if(this.canvasCtx)return;this.canvasCtx=this.canvas.getContext("2d");let f=($=this._cameraVideoTrack)==null?void 0:$.getMediaStreamTrack();if(f){let{width:H,height:X,frameRate:Re}=f.getSettings();H&&(this.canvas.width=H),X&&(this.canvas.height=X),Re&&(this.frameRate=Re)}this._timerId=sg.setInterval(()=>{var Re,Ie,$e;let H=(Re=this._cameraVideoTrack)==null?void 0:Re.getMediaStreamTrack();if(H){let{width:Et,height:Qe,frameRate:lr}=H.getSettings();Et&&(this.canvas.width=Et),Qe&&(this.canvas.height=Qe),lr&&(this.frameRate=lr)}let X=(Ie=this._cameraVideoTrack)==null?void 0:Ie.videoElement;X&&(($e=this.canvasCtx)==null||$e.drawImage(X,0,0,this.canvas.width,this.canvas.height),this.onDraw&&this.onDraw(this.canvas,this.mirrored))},1e3/this.frameRate,!0);let G=this.canvas.captureStream(this.frameRate).getVideoTracks()[0];this._stream=uw.default.createStream({videoSource:G}),await super.init()}async play(f){var G,$,H,X;if(f.container){this.lastPlayContainer=f.container,(G=this._cameraVideoTrack)!=null&&G.isPlaying||await(($=this._cameraVideoTrack)==null?void 0:$.play({container:f.container}));let Re=(H=this._cameraVideoTrack)==null?void 0:H.videoElement;Re&&Re.parentElement&&(Re.parentElement.style.display="none"),await this._stream.play(f.container),this.mirrorVideo(this.mirrored)}(X=f.custom)!=null&&X.onDraw&&(this.onDraw=f.custom.onDraw)}async stop(){var G;this.onDraw=null;let f=(G=this._cameraVideoTrack)==null?void 0:G.videoElement;f&&f.parentElement&&(f.parentElement.style.display="block"),await this._stream.stop(),this.lastPlayContainer=null}setDevice(f){return Promise.resolve()}};var cg=ur(Er());function yd(te){return te*1.5>100?100:te*1.5}var bd=class extends Uo{constructor({microphoneId:f}){super({mediaType:"audio"});Ve(this,"_captureVolume",100);Ve(this,"_div",document.createElement("div"));Ve(this,"_isPlayCalled",!1);Ft.info("new LingoMicrophoneAudioTrack"),this._stream=cg.default.createStream({audio:!0,video:!1,microphoneId:f})}async play(){return this._isPlayCalled=!0,await this._stream.play(this._div,{muted:!1})}stop(){return this._isPlayCalled=!1,super.stop()}setPublishedStream(f){var G;f===null?(G=this._publishedStream)==null||G.setAudioCaptureVolume(100):f.setAudioCaptureVolume(this._captureVolume),super.setPublishedStream(f)}async setDevice(f){if(Ft.warn(`switch mic ${f}`),f==="default"&&this._stream.isAudioRecovering_)return;if(await this._stream.switchDevice(this.trackMediaType,f),this._publishedStream&&this._publishedStream!==this._stream){let $=this.getMediaStreamTrack();$&&await this._publishedStream.replaceTrack($)}let G=(await cg.default.getMicrophones()).find($=>$.deviceId===f);G&&this.emit("device-switched",G)}setVolume(f){var G;(G=this._publishedStream)==null||G.setAudioCaptureVolume(f),this._captureVolume=f}getVolume(){return this._isPlayCalled||(this._isPlayCalled=!0,this._stream.play(this._div)),yd(this._stream.getAudioLevel()*100)}setSpeakerDevice(f){return this._stream.setAudioOutput(f)}close(){var f;(f=this.getMediaStreamTrack())==null||f.stop(),this._stream.hasAudio()||this._stream.close()}};var jo=class extends No{constructor({uid:f,mediaType:G,stream:$}){super({mediaType:G});Ve(this,"uid");Ve(this,"isSubscribed",!1);this.uid=f,this._stream=$,this._stream.on("player-state-changed",({state:H})=>{this._playerState=H})}subscribe(){this.isSubscribed=!0}unsubscribe(){this.isSubscribed=!1}};var Sd=class extends jo{constructor({uid:q,stream:f}){super({uid:q,mediaType:"audio",stream:f})}setVolume(q){this._stream.setAudioVolume(q/100)}getVolume(){return yd(this._stream.getAudioLevel()*100)}setSpeakerDevice(q){return this._stream.setAudioOutput(q)}async play(){return this._stream.isPlaying()?Promise.resolve():this._stream.play(document.createElement("div"))}};var kd=class extends jo{constructor({uid:f,stream:G}){super({uid:f,mediaType:"video",stream:G});Ve(this,"mirrored",!1);Ve(this,"lastPlayContainer")}async play(f){await this._stream.play(f.container),this.lastPlayContainer=f.container}async stop(){await super.stop(),this.lastPlayContainer=null}mirrorVideo(f){this.lastPlayContainer&&(this._stream.play(this.lastPlayContainer,{mirror:f}),this.mirrored=f)}};import{LingoBaseRTC as x7,LingoRTCError as hg}from"@lingoace/lingo-base-rtc";var ug=ur(Er());import{LingoBaseRTCClient as T7,LingoRTCError as Bo,config as Ec}from"@lingoace/lingo-base-rtc";var Td=new WeakMap;function xd(){return function(te,q,f){let G=f.value,$=({fn:H,args:X,context:Re,resolve:Ie,reject:$e})=>{H.apply(Re,X).then(Ie,$e).finally(()=>{let Et=Td.get(Re);Et.shift(),Et[0]&&$(Jr({},Et[0]))})};return f.value=function(...H){return new Promise((X,Re)=>{if(Td.has(this)){let Ie=Td.get(this),{length:$e}=Ie;Ie.push({fn:G,args:H,context:this,resolve:X,reject:Re}),$e===0&&$({fn:G,args:H,context:this,resolve:X,reject:Re})}else Td.set(this,[{fn:G,args:H,context:this,resolve:X,reject:Re}]),$({fn:G,args:H,context:this,resolve:X,reject:Re})})},f}}import{LingoRTCError as lw}from"@lingoace/lingo-base-rtc";function wn(te){return function(q,f,G){let $=G.value;return G.value=async function(...H){try{return await $.apply(this,H)}catch(X){throw te?te(X):X instanceof lw?X:lw.createOtherError(X.message)}},G}}var Cn=class extends T7{constructor(){super(...arguments);Ve(this,"_client",null);Ve(this,"_localStream",null);Ve(this,"_screenStream",null);Ve(this,"_remoteAuxiliaryStream",null);Ve(this,"_remoteMainStreamMap",new Map);Ve(this,"_remoteUserIdSet",new Set);Ve(this,"_quality",{res:"0x0",vfps:0,vra:0,ara:0,rtt:0,pktLostRate:0,upQuality:0,downQuality:0});Ve(this,"_prevLocalVideoStat",null);Ve(this,"_prevLocalAudioStat",null)}getRemoteUsers(){let f=new Map;return this._remoteUserIdSet.forEach(G=>{f.set(G,{uid:G,hasAudio:!1,hasVideo:!1})}),this.remoteAudioTrackMap.forEach(G=>{if(f.has(G.uid)){let $=f.get(G.uid);$.hasAudio=!0,$.audioTrack=G.isSubscribed?G:void 0}else f.set(G.uid,{uid:G.uid,hasAudio:!0,hasVideo:!1,audioTrack:G.isSubscribed?G:void 0,videoTrack:void 0})}),this.remoteVideoTrackMap.forEach(G=>{let{uid:$}=G;if(f.has(G.uid)){let H=f.get(G.uid);H.hasVideo=!0,H.videoTrack=G.isSubscribed?G:void 0}else f.set($,{uid:$,hasAudio:!1,hasVideo:!0,audioTrack:void 0,videoTrack:G.isSubscribed?G:void 0})}),[...f.values()]}async join(f){return this._client=ug.default.createClient({sdkAppId:Number(f.appId),userId:f.uid,userSig:f.token,mode:"rtc",useStringRoomId:!0,autoSubscribe:!1,enableAutoPlayDialog:!1}),this.handleEvents(),await this._client.join({roomId:f.roomId}),this.joinParam=f,this.uid=f.uid,f.uid}async leave(){!this._client||(await this._client.leave(),this.joinParam=void 0,this._client=null)}start(){return Promise.resolve()}async publish(f){return this._localStream?(f instanceof ga&&await this._localStream.setVideoProfile(f.getVideoProfile()),await this._localStream.addTrack(f.getMediaStreamTrack())):(await this._client.publish(f._stream),this._localStream=f._stream),f.setPublishedStream(this._localStream),this.localTracks.push(f),!0}async unpublish(f){var $;let G=f.getMediaStreamTrack();return!G||!this._localStream||this.localTracks.length===0||(this.localTracks.length===1?(await(($=this._client)==null?void 0:$.unpublish(this._localStream)),f.setPublishedStream(null),this._localStream=null,this.localTracks=[]):this.localTracks.find(H=>H===f)&&(await this._localStream.removeTrack(G),f.setPublishedStream(null),this.localTracks=this.localTracks.filter(H=>H!==f))),!0}async subscribe(f,G){var $,H;if(!this._client)throw Bo.createOtherError("\u7528\u6237\u672A\u8FDB\u623F\uFF0C\u65E0\u6CD5\u8BA2\u9605");if(G==="audio"&&!this.remoteAudioTrackMap.has(f))throw Bo.createOtherError(`\u8FDC\u7AEF\u7528\u6237: ${f} \u672A\u63A8\u97F3\u9891\uFF0C\u65E0\u6CD5\u8BA2\u9605`);if(G==="video"&&f!==Ec.screenSharingUid&&!this.remoteVideoTrackMap.has(f))throw Bo.createOtherError(`\u8FDC\u7AEF\u7528\u6237: ${f} \u672A\u63A8\u89C6\u9891\uFF0C\u65E0\u6CD5\u8BA2\u9605`);if(Ft.info(`subscribe ${f} ${G}`),f===Ec.screenSharingUid&&this._remoteAuxiliaryStream&&this._client)return await this._client.subscribe(this._remoteAuxiliaryStream),!0;if(G==="audio"){let X=this.remoteAudioTrackMap.get(f);X.subscribe();try{await this._client.subscribe(X._stream,{audio:!0,video:!!(($=this.remoteVideoTrackMap.get(f))!=null&&$.isSubscribed)})}catch(Re){throw X.unsubscribe(),Re}}else{let X=this.remoteVideoTrackMap.get(f);X.subscribe();try{await this._client.subscribe(X._stream,{video:!0,audio:!!((H=this.remoteAudioTrackMap.get(f))!=null&&H.isSubscribed)})}catch(Re){throw X.unsubscribe(),Re}}return!0}async unsubscribe(f,G){var H,X;if(!this._client)throw Bo.createOtherError("\u7528\u6237\u672A\u8FDB\u623F\uFF0C\u65E0\u6CD5\u8BA2\u9605");Ft.info(`unsubscribe ${f} ${G}`);let $=null;if(G==="audio"&&this.remoteAudioTrackMap.has(f)?$=this.remoteAudioTrackMap.get(f):G==="video"&&this.remoteVideoTrackMap.has(f)&&($=this.remoteVideoTrackMap.get(f)),!$)throw Bo.createOtherError(`\u8FDC\u7AEF\u7528\u6237: ${f} \u672A\u63A8 ${G}\uFF0C\u65E0\u6CD5\u8BA2\u9605`);return f===Ec.screenSharingUid&&this._remoteAuxiliaryStream?(await this._client.unsubscribe(this._remoteAuxiliaryStream),!0):(G==="audio"?(H=this.remoteVideoTrackMap.get(f))!=null&&H.isSubscribed?await this._client.subscribe($._stream,{video:!0,audio:!1}):await this._client.unsubscribe($._stream):(X=this.remoteAudioTrackMap.get(f))!=null&&X.isSubscribed?await this._client.subscribe($._stream,{video:!1,audio:!0}):await this._client.unsubscribe($._stream),$.unsubscribe(),!0)}getQOEStats(){return this._quality}async startScreenShare(f){if(!this.joinParam||!this._client)throw Bo.createOtherError("\u7528\u6237\u672A\u8FDB\u623F\uFF0C\u65E0\u6CD5\u5F00\u542F\u5C4F\u5E55\u5206\u4EAB");this._screenStream=ug.default.createStream({screen:!0,screenAudio:!0});let G={width:1280,height:720,frameRate:15,bitrate:2e3};this._screenStream.setScreenProfile(Jr(Jr({},G),f)),this._screenStream.on("screen-sharing-stopped",async()=>{await this.stopScreenShare(),this.emit("ScreenSharingEnded")}),await this._screenStream.initialize(),await this._client.publish(this._screenStream,{isAuxiliary:!0})}async stopScreenShare(){!this._client||!this._screenStream||(await this._client.unpublish(this._screenStream),this._screenStream.stop(),this._screenStream.close(),this._screenStream=null)}async playScreenShareView(f){var G;this._remoteAuxiliaryStream&&this._client?(await this._client.subscribe(this._remoteAuxiliaryStream),await this._remoteAuxiliaryStream.play(f)):await((G=this._screenStream)==null?void 0:G.play(f))}async stopScreenShareView(){var f;this._remoteAuxiliaryStream&&this._client?(await this._client.unsubscribe(this._remoteAuxiliaryStream),await this._remoteAuxiliaryStream.stop()):await((f=this._screenStream)==null?void 0:f.stop())}handleEvents(){!this._client||(this._client.on("connection-state-changed",({prevState:f,state:G})=>{this.connectionState=G,this.emit("ConnectionStateChange",G,f,"")}),this._client.on("peer-join",f=>{this._remoteUserIdSet.add(f.userId),this.emit("UserJoined",f.userId)}),this._client.on("peer-leave",f=>{this._remoteUserIdSet.delete(f.userId),this.emit("UserLeft",f.userId)}),this._client.on("stream-added",f=>{let G=f.stream,$=G.getUserId();if(G.getType()==="auxiliary"){this._remoteAuxiliaryStream=G,this.emit("RemoteScreenSharing",Ec.screenSharingUid,!0,"video");return}this._remoteMainStreamMap.set($,G),G.on("error",H=>{if(H.getCode()===16451){let X=()=>{G.resume().then(()=>{document.body.removeEventListener("click",X),document.body.removeEventListener("touchstart",X)})};document.body.addEventListener("click",X,!0),document.body.addEventListener("touchstart",X,!0),this.emit("AutoplayFailed")}}),G.hasAudio()&&this.handleUserPublished($,"audio"),G.hasVideo()&&this.handleUserPublished($,"video")}),this._client.on("stream-updated",f=>{let G=f.stream,$=G.getUserId();!this.remoteAudioTrackMap.has($)&&G.hasAudio()&&this.handleUserPublished($,"audio"),this.remoteAudioTrackMap.has($)&&!G.hasAudio()&&this.handleUserUnpublished($,"audio"),!this.remoteVideoTrackMap.has($)&&G.hasVideo()&&this.handleUserPublished($,"video"),this.remoteVideoTrackMap.has($)&&!G.hasVideo()&&this.handleUserUnpublished($,"video")}),this._client.on("stream-removed",f=>{let G=f.stream.getUserId();if(f.stream.getType()==="auxiliary"){this._remoteAuxiliaryStream=null,this.emit("RemoteScreenSharing",Ec.screenSharingUid,!1,"video");return}this._remoteMainStreamMap.delete(G),this.handleUserUnpublished(G,"audio"),this.handleUserUnpublished(G,"video")}),this._client.on("network-quality",f=>{var G,$;this._quality.upQuality=f.uplinkNetworkQuality,this._quality.downQuality=f.downlinkNetworkQuality,this._quality.rtt=f.uplinkRTT,this._quality.pktLostRate=f.uplinkLoss,(G=this._client)==null||G.getLocalVideoStats().then(H=>{let X=H[this.uid];X&&(this._quality.res=`${X.frameWidth}x${X.frameHeight}`,this._prevLocalVideoStat&&(this._quality.vfps=Math.floor((X.framesSent-this._prevLocalVideoStat.framesSent)/2)||0,this._quality.vra=Math.floor((X.bytesSent-this._prevLocalVideoStat.bytesSent)*8/2)||0),this._prevLocalVideoStat=X)}),($=this._client)==null||$.getLocalAudioStats().then(H=>{let X=H[this.uid];X&&(this._prevLocalAudioStat&&(this._quality.ara=Math.floor((X.bytesSent-this._prevLocalAudioStat.bytesSent)*8/2)||0),this._prevLocalAudioStat=X)}),this.emit("NetworkQuality",f)}),this._client.on("mute-audio",f=>{this.handleUserUnpublished(f.userId,"audio")}),this._client.on("unmute-audio",f=>{this.handleUserPublished(f.userId,"audio",!0)}))}handleUserUnpublished(f,G){Ft.info(`UserUnpublished ${f} ${G}`),G==="audio"?this.remoteAudioTrackMap.has(f)&&(this.remoteAudioTrackMap.delete(f),this.emit("UserUnpublished",f,G)):this.remoteVideoTrackMap.has(f)&&(this.remoteVideoTrackMap.delete(f),this.emit("UserUnpublished",f,G))}handleUserPublished(f,G,$=!1){var Re;Ft.info(`UserPublished ${f} ${G} firedByUnmute: ${$}`);let H=this._remoteMainStreamMap.get(f),X=(Re=this._client)==null?void 0:Re.getRemoteMutedState().find(Ie=>Ie.userId===f);if(H){if(G==="audio"&&!this.remoteAudioTrackMap.has(f)&&H.hasAudio()){if(!$&&X&&X.audioMuted)return;let Ie=new Sd({uid:f,stream:H});this.remoteAudioTrackMap.set(f,Ie)}else if(G==="video"&&!this.remoteVideoTrackMap.has(f)&&H.hasVideo()){let Ie=new kd({uid:f,stream:H});this.remoteVideoTrackMap.set(f,Ie)}this.emit("UserPublished",f,G)}}};In([wn(),xd()],Cn.prototype,"publish",1),In([wn()],Cn.prototype,"unpublish",1),In([wn()],Cn.prototype,"subscribe",1),In([wn()],Cn.prototype,"unsubscribe",1),In([wn()],Cn.prototype,"startScreenShare",1),In([wn()],Cn.prototype,"stopScreenShare",1),In([wn()],Cn.prototype,"playScreenShareView",1),In([wn()],Cn.prototype,"stopScreenShareView",1);var Ho=ur(Er());var dw=ur(rg()),lg=ur(Er());var dg=class extends dw.default{constructor(){super();Ve(this,"prevDevices_",[]);navigator.mediaDevices&&(this.onDeviceChange=this.onDeviceChange.bind(this),navigator.mediaDevices.addEventListener("devicechange",this.onDeviceChange))}async init(){this.prevDevices_=await lg.default.getDevices()}async onDeviceChange(){let f=await lg.default.getDevices(),G=f.filter(H=>this.prevDevices_.findIndex(({deviceId:X})=>H.deviceId===X)<0),$=this.prevDevices_.filter(H=>f.findIndex(({deviceId:X})=>H.deviceId===X)<0);G.length>0&&G.forEach(H=>{this.emit("device-added",H)}),$.length>0&&$.forEach(H=>{this.emit("device-removed",H)}),this.prevDevices_=f}destroy(){navigator.mediaDevices.removeEventListener("devicechange",this.onDeviceChange)}},hw=dg;var Ft=Ho.default.Logger.loggerManager,Fo=class extends x7{constructor(){super(...arguments);Ve(this,"version",KI);Ve(this,"_deviceDetector",new hw);Ve(this,"_virtualOverloadCount",0);Ve(this,"_isVirtualOverloadStart",0)}init(f){return Ft.info(`lingo-trtc version: ${this.version}`),Promise.resolve()}release(){this._deviceDetector.destroy(),super.release()}async checkSystemRequirements(){let{result:f}=await Ho.default.checkSystemRequirements();return f&&Ho.default.isScreenShareSupported()}async createClient(){return this.client=new Cn,await this._deviceDetector.init(),this._deviceDetector.on("device-added",f=>{f.kind==="videoinput"?this.client.emit("CameraChanged",!0,f):f.kind==="audioinput"?this.client.emit("MicrophoneChanged",!0,f):f.kind==="audiooutput"&&this.client.emit("SpeakerDeviceChanged",!0,f)}),this._deviceDetector.on("device-removed",async f=>{var G,$;if(f.kind==="videoinput"){let H=this.cameraVideoTrack||this.previewVideoTrack;if(f.deviceId===(H==null?void 0:H.getDeviceId())){if((await Ho.default.getCameras()).length===0){this.client.emit("CameraChanged",!1,f);return}H.once("device-switched",()=>{this.client.emit("CameraChanged",!1,f)}),H.once("track-ended",()=>{this.client.emit("CameraChanged",!1,f)})}else this.client.emit("CameraChanged",!1,f)}else if(f.kind==="audioinput")if(f.deviceId===((G=this.microphoneAudioTrack)==null?void 0:G.getDeviceId())){if((await Ho.default.getMicrophones()).length===0){this.client.emit("CameraChanged",!1,f);return}this.microphoneAudioTrack.once("device-switched",()=>{this.client.emit("CameraChanged",!1,f)}),($=this.microphoneAudioTrack)==null||$.once("track-ended",()=>{this.client.emit("CameraChanged",!1,f)})}else this.client.emit("MicrophoneChanged",!1,f);else f.kind==="audiooutput"&&this.client.emit("SpeakerDeviceChanged",!1,f)}),this.client}async createCustomVideoTrack(f){if(this.customVideoTrack&&!this.customVideoTrack.closed)return this.customVideoTrack;Ft.info("createCustomVideoTrack");let G=new _d(f);return await G.init(),this.customVideoTrack=G,G}async detectCamera(f){var G,$;if(this.previewVideoTrack&&!this.previewVideoTrack.closed)return{checkIsActive:()=>{var H,X;return Promise.resolve(((X=(H=this.previewVideoTrack)==null?void 0:H.getMediaStreamTrack())==null?void 0:X.readyState)==="live")},cleanup:()=>{var H,X;(H=this.previewVideoTrack)==null||H.stop(),(X=this.previewVideoTrack)==null||X.close(),this.previewVideoTrack=void 0}};Ft.info("detectCamera");try{let H=new ga({cameraId:f.cameraId,id:"pv"});return H.on("device-switched",X=>this.client.emit("DeviceSwitched",X)),this.previewVideoTrack=H,await H.init(),f.mirror&&H.mirrorVideo(f.mirror),f.container&&await H.play({container:f.container}),{checkIsActive:()=>{var X;return Promise.resolve(((X=H.getMediaStreamTrack())==null?void 0:X.readyState)==="live")},cleanup:()=>{H.stop(),H.close(),this.previewVideoTrack=void 0}}}catch(H){throw(G=this.previewVideoTrack)==null||G.stop(),($=this.previewVideoTrack)==null||$.close(),this.previewVideoTrack=void 0,H}}processExternalMediaAEC(f){}async createMicrophoneAudioTrack(f){if(this.microphoneAudioTrack&&!this.microphoneAudioTrack.closed)return this.microphoneAudioTrack;Ft.info("createMicrophoneAudioTrack");let G=new bd({microphoneId:f});return G.on("device-switched",$=>this.client.emit("DeviceSwitched",$)),await G.init(),this.microphoneAudioTrack=G,this.client.emit("LocalTrackCreated",G),G}async createCameraVideoTrack(f){if(this.cameraVideoTrack&&!this.cameraVideoTrack.closed)return this.cameraVideoTrack;Ft.info(`createCameraVideoTrack ${JSON.stringify(f)}`);let G=new ga(hd(Jr({},f),{id:"ct"}));return G.on("device-switched",$=>this.client.emit("DeviceSwitched",$)),await G.init(),this.cameraVideoTrack=G,this.client.emit("LocalTrackCreated",G),this.cameraVideoTrack.on("VirtualBackgroundOverload",()=>{this._virtualOverloadCount++,Ft.warn(`VirtualBackground overload count is: ${this._virtualOverloadCount}`),new Date().getTime()-this._isVirtualOverloadStart>5e3&&(this._virtualOverloadCount>10&&(Ft.warn("VirtualBackgroundOverload"),this.client.emit("VirtualBackgroundOverload")),this._virtualOverloadCount=0,this._isVirtualOverloadStart=new Date().getTime())}),G}};In([xd(),wn(te=>hg.createRTCError(te))],Fo.prototype,"detectCamera",1),In([wn(te=>hg.createRTCError(te))],Fo.prototype,"createMicrophoneAudioTrack",1),In([wn(te=>hg.createRTCError(te))],Fo.prototype,"createCameraVideoTrack",1);if(document){let te={MAIN:"schedule.rtc.qq.com",BACKUP:"schedule.rtc.qcloud.com",MAIN_OVERSEA:"schedule.rtc.tencentcloud.com",BACKUP_OVERSEA:"schedule-ecdn.rtc.tencentcloud.com"};document.head.innerHTML+=Object.values(te).map(q=>`<link rel="dns-prefetch" href="https://${q}">`).join(`\r
|
|
549
|
-
`)}var
|
|
548
|
+
`+M.getProgramInfoLog(ee));F=O.s=ee,M.useProgram(F),W=M.getUniformLocation(F,"sampler0"),O.l={O:M.getAttribLocation(F,"aVertex"),N:M.getAttribLocation(F,"aTex"),ya:W},O.v=M.createBuffer(),M.bindBuffer(M.ARRAY_BUFFER,O.v),M.enableVertexAttribArray(O.l.O),M.vertexAttribPointer(O.l.O,2,M.FLOAT,!1,0,0),M.bufferData(M.ARRAY_BUFFER,new Float32Array([-1,-1,-1,1,1,1,1,-1]),M.STATIC_DRAW),M.bindBuffer(M.ARRAY_BUFFER,null),O.u=M.createBuffer(),M.bindBuffer(M.ARRAY_BUFFER,O.u),M.enableVertexAttribArray(O.l.N),M.vertexAttribPointer(O.l.N,2,M.FLOAT,!1,0,0),M.bufferData(M.ARRAY_BUFFER,new Float32Array([0,1,0,0,1,0,1,1]),M.STATIC_DRAW),M.bindBuffer(M.ARRAY_BUFFER,null),M.uniform1i(W,0)}F=O.l,M.useProgram(O.s),M.canvas.width=B.width,M.canvas.height=B.height,M.viewport(0,0,B.width,B.height),M.activeTexture(M.TEXTURE0),O.i.bindTexture2d(B.glName),M.enableVertexAttribArray(F.O),M.bindBuffer(M.ARRAY_BUFFER,O.v),M.vertexAttribPointer(F.O,2,M.FLOAT,!1,0,0),M.enableVertexAttribArray(F.N),M.bindBuffer(M.ARRAY_BUFFER,O.u),M.vertexAttribPointer(F.N,2,M.FLOAT,!1,0,0),M.bindFramebuffer(M.DRAW_FRAMEBUFFER?M.DRAW_FRAMEBUFFER:M.FRAMEBUFFER,null),M.clearColor(0,0,0,0),M.clear(M.COLOR_BUFFER_BIT),M.colorMask(!0,!0,!0,!0),M.drawArrays(M.TRIANGLE_FAN,0,4),M.disableVertexAttribArray(F.O),M.disableVertexAttribArray(F.N),M.bindBuffer(M.ARRAY_BUFFER,null),O.i.bindTexture2d(0)}(d,g),typeof d.h.canvas.transferToImageBitmap=="function"?Promise.resolve(d.h.canvas.transferToImageBitmap()):C?Promise.resolve(d.h.canvas):typeof createImageBitmap=="function"?createImageBitmap(d.h.canvas):(d.j===void 0&&(d.j=document.createElement("canvas")),new Promise(function(O){d.j.height=d.h.canvas.height,d.j.width=d.h.canvas.width,d.j.getContext("2d",{}).drawImage(d.h.canvas,0,0,d.h.canvas.width,d.h.canvas.height),O(d.j)}))}function Bd(d){this.h=d}Oa.prototype.l=ps(nu);var iu=new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,10,9,1,7,0,65,0,253,15,26,11]);function Fd(d,g){return g+d}function Ma(d,g){window[d]=g}function Yn(d){if(this.h=d,this.listeners={},this.l={},this.L={},this.s={},this.v={},this.M=this.u=this.ga=!0,this.I=Promise.resolve(),this.fa="",this.D={},this.locateFile=d&&d.locateFile||Fd,(typeof window=="undefined"?"undefined":$(window))==="object")var g=window.location.pathname.toString().substring(0,window.location.pathname.toString().lastIndexOf("/"))+"/";else{if(typeof location=="undefined")throw Error("solutions can only be loaded on a web page or in a web worker");g=location.pathname.toString().substring(0,location.pathname.toString().lastIndexOf("/"))+"/"}if(this.ha=g,d.options)for(var C=(g=X(Object.keys(d.options))).next();!C.done;C=g.next()){C=C.value;var O=d.options[C].default;O!==void 0&&(this.l[C]=typeof O=="function"?O():O)}}function Hd(d){var g,C,O,B,M,F,W,ee,fe,me,we;return Ze(function(Ae){switch(Ae.h){case 1:return d.ga?(g=d.h.files===void 0?[]:typeof d.h.files=="function"?d.h.files(d.l):d.h.files,ft(Ae,Ze(function(ve){switch(ve.h){case 1:return ve.s=2,ft(ve,WebAssembly.instantiate(iu),4);case 4:ve.h=3,ve.s=0;break;case 2:return ve.s=0,ve.l=null,ve.return(!1);case 3:return ve.return(!0)}}),2)):Ae.return();case 2:if(C=Ae.i,(typeof window=="undefined"?"undefined":$(window))==="object")return Ma("createMediapipeSolutionsWasm",{locateFile:d.locateFile}),Ma("createMediapipeSolutionsPackedAssets",{locateFile:d.locateFile}),F=g.filter(function(ve){return ve.data!==void 0}),W=g.filter(function(ve){return ve.data===void 0}),ee=Promise.all(F.map(function(ve){var Oe=ti(d,ve.url);if(ve.path!==void 0){var Be=ve.path;Oe=Oe.then(function(ot){return d.overrideFile(Be,ot),Promise.resolve(ot)})}return Oe})),fe=Promise.all(W.map(function(ve){return ve.simd===void 0||ve.simd&&C||!ve.simd&&!C?function(Oe){var Be=document.createElement("script");return Be.setAttribute("src",Oe),Be.setAttribute("crossorigin","anonymous"),new Promise(function(ot){Be.addEventListener("load",function(){ot()},!1),Be.addEventListener("error",function(){ot()},!1),document.body.appendChild(Be)})}(d.locateFile(ve.url,d.ha)):Promise.resolve()})).then(function(){var ve,Oe,Be;return Ze(function(ot){if(ot.h==1)return ve=window.createMediapipeSolutionsWasm,Oe=window.createMediapipeSolutionsPackedAssets,Be=d,ft(ot,ve(Oe),2);Be.i=ot.i,ot.h=0})}),me=Ze(function(ve){return d.h.graph&&d.h.graph.url?ve=ft(ve,ti(d,d.h.graph.url),0):(ve.h=0,ve=void 0),ve}),ft(Ae,Promise.all([fe,ee,me]),7);if(typeof importScripts!="function")throw Error("solutions can only be loaded on a web page or in a web worker");return O=g.filter(function(ve){return ve.simd===void 0||ve.simd&&C||!ve.simd&&!C}).map(function(ve){return d.locateFile(ve.url,d.ha)}),importScripts.apply(null,ce(O)),B=d,ft(Ae,createMediapipeSolutionsWasm(Module),6);case 6:B.i=Ae.i,d.m=new OffscreenCanvas(1,1),d.i.canvas=d.m,M=d.i.GL.createContext(d.m,{antialias:!1,alpha:!1,va:typeof WebGL2RenderingContext!="undefined"?2:1}),d.i.GL.makeContextCurrent(M),Ae.h=4;break;case 7:if(d.m=document.createElement("canvas"),!(we=d.m.getContext("webgl2",{}))&&!(we=d.m.getContext("webgl",{})))return alert("Failed to create WebGL canvas context when passing video frame."),Ae.return();d.K=we,d.i.canvas=d.m,d.i.createContext(d.m,!0,!0,{});case 4:d.j=new d.i.SolutionWasm,d.ga=!1,Ae.h=0}})}function ti(d,g){var C,O;return Ze(function(B){return g in d.L?B.return(d.L[g]):(C=d.locateFile(g,""),O=fetch(C).then(function(M){return M.arrayBuffer()}),d.L[g]=O,B.return(O))})}function Gd(d,g,C){var O,B,M,F,W,ee,fe,me,we,Ae,ve,Oe,Be,ot;return Ze(function(lt){switch(lt.h){case 1:if(!C)return lt.return(g);for(O={},B=0,M=X(Object.keys(C)),F=M.next();!F.done;F=M.next())W=F.value,typeof(ee=C[W])!="string"&&ee.type==="texture"&&g[ee.stream]!==void 0&&++B;1<B&&(d.M=!1),fe=X(Object.keys(C)),F=fe.next();case 2:if(F.done){lt.h=4;break}if(me=F.value,typeof(we=C[me])=="string")return Be=O,ot=me,ft(lt,function(Mn,Va,ri){var ja;return Ze(function(_s){return typeof ri=="number"||ri instanceof Uint8Array||ri instanceof Mn.i.Uint8BlobList?_s.return(ri):ri instanceof Mn.i.Texture2dDataOut?((ja=Mn.v[Va])||(ja=new Fi(Mn.i,Mn.K),Mn.v[Va]=ja),_s.return(La(ja,ri,Mn.M))):_s.return(void 0)})}(d,me,g[we]),14);if(Ae=g[we.stream],we.type==="detection_list"){if(Ae){for(var jt=Ae.getRectList(),mn=Ae.getLandmarksList(),bt=Ae.getClassificationsList(),qe=[],Xe=0;Xe<jt.size();++Xe){var _r=Vd(jt.get(Xe)),Ua=void 0;Ua=Ua===void 0?0:Ua,_r={la:{sa:On(_r,1),ta:On(_r,2),height:On(_r,3),width:On(_r,4),rotation:On(_r,5,0),pa:Aa(pn(_r,6),Ua)},ea:kt(Ud(mn.get(Xe)),gr,1).map(Ln),ba:jd(Nd(bt.get(Xe)))},qe.push(_r)}jt=qe}else jt=[];O[me]=jt,lt.h=7;break}if(we.type==="proto_list"){if(Ae){for(jt=Array(Ae.size()),mn=0;mn<Ae.size();mn++)jt[mn]=Ae.get(mn);Ae.delete()}else jt=[];O[me]=jt,lt.h=7;break}if(Ae===void 0){lt.h=3;break}if(we.type==="float_list"){O[me]=Ae,lt.h=7;break}if(we.type==="proto"){O[me]=Ae,lt.h=7;break}if(we.type!=="texture")throw Error("Unknown output config type: '"+we.type+"'");return(ve=d.v[me])||(ve=new Fi(d.i,d.K),d.v[me]=ve),ft(lt,La(ve,Ae,d.M),13);case 13:Oe=lt.i,O[me]=Oe;case 7:we.transform&&O[me]&&(O[me]=we.transform(O[me])),lt.h=3;break;case 14:Be[ot]=lt.i;case 3:F=fe.next(),lt.h=2;break;case 4:return lt.return(O)}})}function Na(d,g){for(var C=g.name||"$",O=[].concat(ce(g.wants)),B=new d.i.StringList,M=X(g.wants),F=M.next();!F.done;F=M.next())B.push_back(F.value);M=d.i.PacketListener.implement({onResults:function(W){for(var ee={},fe=0;fe<g.wants.length;++fe)ee[O[fe]]=W.get(fe);var me=d.listeners[C];me&&(d.I=Gd(d,ee,g.outs).then(function(we){we=me(we);for(var Ae=0;Ae<g.wants.length;++Ae){var ve=ee[O[Ae]];$(ve)==="object"&&ve.hasOwnProperty&&ve.hasOwnProperty("delete")&&ve.delete()}we&&(d.I=we)}))}}),d.j.attachMultiListener(B,M),B.delete()}function ni(d){return d===void 0&&(d=0),d===1?"selfie_segmentation_landscape.tflite":"selfie_segmentation.tflite"}function Hi(d){var g=this;d=d||{},this.h=new Yn({locateFile:d.locateFile,files:function(C){return[{simd:!0,url:"selfie_segmentation_solution_simd_wasm_bin.js"},{simd:!1,url:"selfie_segmentation_solution_wasm_bin.js"},{data:!0,url:ni(C.modelSelection)}]},graph:{url:"selfie_segmentation.binarypb"},listeners:[{wants:["segmentation_mask","image_transformed"],outs:{image:{type:"texture",stream:"image_transformed"},segmentationMask:{type:"texture",stream:"segmentation_mask"}}}],inputs:{image:{type:"video",stream:"input_frames_gpu"}},options:{useCpuInference:{type:0,graphOptionXref:{calculatorType:"InferenceCalculator",fieldName:"use_cpu_inference"},default:(typeof window=="undefined"?"undefined":$(window))==="object"&&window.navigator!==void 0&&("iPad Simulator;iPhone Simulator;iPod Simulator;iPad;iPhone;iPod".split(";").includes(navigator.platform)||navigator.userAgent.includes("Mac")&&"ontouchend"in document)},selfieMode:{type:0,graphOptionXref:{calculatorType:"GlScalerCalculator",calculatorIndex:1,fieldName:"flip_horizontal"}},modelSelection:{type:1,graphOptionXref:{calculatorType:"ConstantSidePacketCalculator",calculatorName:"ConstantSidePacketCalculatorModelSelection",fieldName:"int_value"},onChange:function(C){var O,B,M;return Ze(function(F){return F.h==1?(O=ni(C),B="third_party/mediapipe/modules/selfie_segmentation/"+O,ft(F,ti(g.h,O),2)):(M=F.i,g.h.overrideFile(B,M),F.return(!0))})}}}})}(le=Yn.prototype).close=function(){return this.j&&this.j.delete(),Promise.resolve()},le.reset=function(){var d=this;return Ze(function(g){d.j&&(d.j.reset(),d.s={},d.v={}),g.h=0})},le.setOptions=function(d,g){var C=this;if(g=g||this.h.options){for(var O=[],B=[],M={},F=X(Object.keys(d)),W=F.next();!W.done;M={X:M.X,Y:M.Y},W=F.next())if(!((W=W.value)in this.l)||this.l[W]!==d[W]){this.l[W]=d[W];var ee=g[W];ee!==void 0&&(ee.onChange&&(M.X=ee.onChange,M.Y=d[W],O.push(function(fe){return function(){return Ze(function(me){if(me.h==1)return ft(me,fe.X(fe.Y),2);me.i===!0&&(C.u=!0),me.h=0})}}(M))),ee.graphOptionXref&&(W=Object.assign({},{calculatorName:"",calculatorIndex:0},ee.graphOptionXref,{valueNumber:ee.type===1?d[W]:0,valueBoolean:ee.type===0&&d[W],valueString:ee.type===2?d[W]:""}),B.push(W)))}O.length===0&&B.length===0||(this.u=!0,this.H=(this.H===void 0?[]:this.H).concat(B),this.F=(this.F===void 0?[]:this.F).concat(O))}},le.initialize=function(){var d=this;return Ze(function(g){return g.h==1?ft(g,Hd(d),2):g.h!=3?ft(g,function(C){var O,B,M,F,W,ee,fe,me;return Ze(function(we){if(we.h==1)return C.h.graph&&C.h.graph.url&&C.fa===C.h.graph.url?we.return():(C.u=!0,C.h.graph&&C.h.graph.url?(C.fa=C.h.graph.url,ft(we,ti(C,C.h.graph.url),3)):void(we.h=2));for(we.h!=2&&(O=we.i,C.j.loadGraph(O)),B=X(Object.keys(C.D)),M=B.next();!M.done;M=B.next())F=M.value,C.j.overrideFile(F,C.D[F]);if(C.D={},C.h.listeners)for(W=X(C.h.listeners),ee=W.next();!ee.done;ee=W.next())fe=ee.value,Na(C,fe);me=C.l,C.l={},C.setOptions(me),we.h=0})}(d),3):ft(g,function(C){var O,B,M,F,W,ee;return Ze(function(fe){switch(fe.h){case 1:if(!C.u)return fe.return();if(!C.F){fe.h=2;break}O=X(C.F),B=O.next();case 3:if(B.done){fe.h=5;break}return ft(fe,(0,B.value)(),4);case 4:B=O.next(),fe.h=3;break;case 5:C.F=void 0;case 2:if(C.H){for(M=new C.i.GraphOptionChangeRequestList,F=X(C.H),W=F.next();!W.done;W=F.next())ee=W.value,M.push_back(ee);C.j.changeOptions(M),M.delete(),C.H=void 0}C.u=!1,fe.h=0}})}(d),0)})},le.overrideFile=function(d,g){this.j?this.j.overrideFile(d,g):this.D[d]=g},le.clearOverriddenFiles=function(){this.D={},this.j&&this.j.clearOverriddenFiles()},le.send=function(d,g){var C,O,B,M,F,W,ee,fe,me,we=this;return Ze(function(Ae){switch(Ae.h){case 1:return we.h.inputs?(C=1e3*(g==null?performance.now():g),ft(Ae,we.I,2)):Ae.return();case 2:return ft(Ae,we.initialize(),3);case 3:for(O=new we.i.PacketDataList,B=X(Object.keys(d)),M=B.next();!M.done;M=B.next())if(F=M.value,W=we.h.inputs[F]){e:{var ve=d[F];switch(W.type){case"video":var Oe=we.s[W.stream];if(Oe||(Oe=new Fi(we.i,we.K),we.s[W.stream]=Oe),Oe.m===0&&(Oe.m=Oe.i.createTexture()),typeof HTMLVideoElement!="undefined"&&ve instanceof HTMLVideoElement)var Be=ve.videoWidth,ot=ve.videoHeight;else typeof HTMLImageElement!="undefined"&&ve instanceof HTMLImageElement?(Be=ve.naturalWidth,ot=ve.naturalHeight):(Be=ve.width,ot=ve.height);ot={glName:Oe.m,width:Be,height:ot},(Be=Oe.h).canvas.width=ot.width,Be.canvas.height=ot.height,Be.activeTexture(Be.TEXTURE0),Oe.i.bindTexture2d(Oe.m),Be.texImage2D(Be.TEXTURE_2D,0,Be.RGBA,Be.RGBA,Be.UNSIGNED_BYTE,ve),Oe.i.bindTexture2d(0),Oe=ot;break e;case"detections":for((Oe=we.s[W.stream])||(Oe=new Bd(we.i),we.s[W.stream]=Oe),Oe.data||(Oe.data=new Oe.h.DetectionListData),Oe.data.reset(ve.length),ot=0;ot<ve.length;++ot){Be=ve[ot];var lt=Oe.data,jt=lt.setBoundingBox,mn=ot,bt=Be.la,qe=new Oa;if(Dn(qe,1,bt.sa),Dn(qe,2,bt.ta),Dn(qe,3,bt.height),Dn(qe,4,bt.width),Dn(qe,5,bt.rotation),Pn(qe,6,bt.pa),bt=qe.l(),jt.call(lt,mn,bt),Be.ea)for(lt=0;lt<Be.ea.length;++lt){qe=Be.ea[lt],mn=(jt=Oe.data).addNormalizedLandmark,bt=ot,qe=Object.assign({},qe,{visibility:qe.visibility?qe.visibility:0});var Xe=new gr;Dn(Xe,1,qe.x),Dn(Xe,2,qe.y),Dn(Xe,3,qe.z),qe.visibility&&Dn(Xe,4,qe.visibility),qe=Xe.l(),mn.call(jt,bt,qe)}if(Be.ba)for(lt=0;lt<Be.ba.length;++lt)mn=(jt=Oe.data).addClassification,bt=ot,qe=Be.ba[lt],Dn(Xe=new ei,2,qe.qa),qe.index&&Pn(Xe,1,qe.index),qe.label&&Pn(Xe,3,qe.label),qe.displayName&&Pn(Xe,4,qe.displayName),qe=Xe.l(),mn.call(jt,bt,qe)}Oe=Oe.data;break e;default:Oe={}}}switch(ee=Oe,fe=W.stream,W.type){case"video":O.pushTexture2d(Object.assign({},ee,{stream:fe,timestamp:C}));break;case"detections":(me=ee).stream=fe,me.timestamp=C,O.pushDetectionList(me);break;default:throw Error("Unknown input config type: '"+W.type+"'")}}return we.j.send(O),ft(Ae,we.I,4);case 4:O.delete(),Ae.h=0}})},le.onResults=function(d,g){this.listeners[g||"$"]=d},he("Solution",Yn),he("OptionType",{BOOL:0,NUMBER:1,ua:2,0:"BOOL",1:"NUMBER",2:"STRING"}),(le=Hi.prototype).close=function(){return this.h.close(),Promise.resolve()},le.onResults=function(d){this.h.onResults(d)},le.initialize=function(){var d=this;return Ze(function(g){return ft(g,d.h.initialize(),0)})},le.reset=function(){this.h.reset()},le.send=function(d){var g=this;return Ze(function(C){return ft(C,g.h.send(d),0)})},le.setOptions=function(d){this.h.setOptions(d)},he("SelfieSegmentation",Hi),he("VERSION","0.1.1675465747")}).call(Jo);var Rr=function(le){return typeof le=="number"},Pc=function(){function le(){Re(this,le),this.userId="",this.videoBeauty=document.createElement("video"),this.videoBeauty.loop=!0,this.videoBeauty.autoplay=!0,this.videoVirtual=document.createElement("video"),this.videoVirtual.loop=!0,this.videoVirtual.autoplay=!0,this.onoverload=null,this.canvasBeauty=document.createElement("canvas"),this.filter=new zo({canvas:this.canvasBeauty,video:this.videoBeauty}),this.canvasVirtual=document.createElement("canvas"),this.virtual=new Wo({canvas:this.canvasVirtual,video:this.videoVirtual,onoverload:this.onoverload}),this.beautyParams={beauty:.5,brightness:.5,ruddy:.5},this.timeoutId=null,this.rafId=null,this.startTime=null,this.originTrack=null,this.beautyTrack=null,this.resultTrack=null,this.localStream=null,this.frameRate=null,this.disableStatus=!1,this.isVirualEnable=!1}var Te,Se,je,He,oe;return $e(le,[{key:"generateBeautyStream",value:function(X){this.userId=X==null?void 0:X.getUserId();var ce=X.getVideoTrack();if(!ce)throw new Error("Your localStream does not contain video track.");var z=this.generateBeautyTrack(ce);return X.replaceTrack(z),this.localStream=X,X.setBeautyStatus&&X.setBeautyStatus(!0),console.log("RTCBeautyPlugin: generateBeautyStream ".concat(this.userId?"userId: ".concat(this.userId):"")),X}},{key:"generateBeautyTrack",value:function(X){var ce=this;this.reset();var z=X.getSettings();this.frameRate=z.frameRate,this.filter.setRect(z.width,z.height),this.setRect(z.width,z.height);var re=new MediaStream;re.addTrack(X),this.videoBeauty.srcObject=re,this.videoBeauty.play();var be=this.canvasBeauty.captureStream(this.frameRate||15).getVideoTracks()[0];return this.rafId&&cancelAnimationFrame(this.rafId),this.rafId=requestAnimationFrame(function(){ce.startTime=new Date().getTime(),ce.render()}),this.installEvents(),this.originTrack=X,this.beautyTrack=be,this.setTrackParam({type:"beauty",originTrack:X,resultTrack:be,param:this.beautyParams}),be}},{key:"setBackground",value:(oe=Q(G().mark(function X(ce){return G().wrap(function(z){for(;;)switch(z.prev=z.next){case 0:return z.next=2,this.virtual.setBackground(ce);case 2:console.log("RTCBeautyPlugin: setBackground img:".concat(ce));case 3:case"end":return z.stop()}},X,this)})),function(X){return oe.apply(this,arguments)})},{key:"generateStream",value:(He=Q(G().mark(function X(ce){var z,re,be,ue,ye;return G().wrap(function(Me){for(;;)switch(Me.prev=Me.next){case 0:if(z=ce.localStream,re=ce.type,be=ce.img,ue=z.getVideoTrack()){Me.next=4;break}throw new Error("Your localStream does not contain video track.");case 4:return this.localStream=z,Me.next=7,this.generateMixedTrack({videoTrack:ue,type:re,img:be});case 7:return ye=Me.sent,z.replaceTrack(ye),z.setBeautyStatus&&z.setBeautyStatus(!0),Me.abrupt("return",z);case 11:case"end":return Me.stop()}},X,this)})),function(X){return He.apply(this,arguments)})},{key:"generateMixedTrack",value:(je=Q(G().mark(function X(ce){var z,re,be,ue,ye;return G().wrap(function(Me){for(;;)switch(Me.prev=Me.next){case 0:if(z=ce.videoTrack,re=ce.type,be=ce.img,this.virtual.selfieSegmentation){Me.next=3;break}throw new Error("you should call loadResources() first");case 3:return this.virtual.initVirtualParams({type:re,img:be}),Me.next=6,this.generateBeautyTrack(z);case 6:return ue=Me.sent,Me.next=9,this.generateVirtualTrack({videoTrack:ue,type:re,img:be});case 9:return ye=Me.sent,this.beautyTrack=ue,this.resultTrack=ye,this.setTrackParam({type:"mixed",originTrack:this.originTrack,resultTrack:this.resultTrack,param:{type:re,img:be}}),Me.abrupt("return",this.resultTrack);case 14:case"end":return Me.stop()}},X,this)})),function(X){return je.apply(this,arguments)})},{key:"generateVirtualStream",value:(Se=Q(G().mark(function X(ce){var z,re,be,ue,ye;return G().wrap(function(Me){for(;;)switch(Me.prev=Me.next){case 0:if(z=ce.localStream,re=ce.type,be=ce.img,ue=z.getVideoTrack()){Me.next=4;break}throw new Error("Your localStream does not contain video track.");case 4:return this.localStream=z,Me.next=7,this.generateVirtualTrack({videoTrack:ue,type:re,img:be});case 7:return ye=Me.sent,Me.next=10,z.replaceTrack(ye);case 10:return z.setBeautyStatus&&z.setBeautyStatus(!0),console.log("".concat(this.userId?"[userId: ".concat(this.userId,"]"):""," RTCBeautyPlugin generate ").concat(re," Stream.")),Me.abrupt("return",z);case 13:case"end":return Me.stop()}},X,this)})),function(X){return Se.apply(this,arguments)})},{key:"generateVirtualTrack",value:(Te=Q(G().mark(function X(ce){var z,re,be,ue;return G().wrap(function(ye){for(;;)switch(ye.prev=ye.next){case 0:if(z=ce.videoTrack,re=ce.type,be=ce.img,this.virtual.selfieSegmentation){ye.next=3;break}throw new Error("you should call loadResources() first");case 3:return ue=z.getSettings(),this.frameRate=ue.frameRate,this.virtual.setRect(ue.width,ue.height),ye.next=8,this.virtual.initVirtualParams({type:re,img:be});case 8:return this.setRect(ue.width,ue.height),this.mediaStream=new MediaStream,this.mediaStream.addTrack(z),this.videoVirtual.srcObject=this.mediaStream,ye.next=14,this.videoVirtual.play();case 14:return this.virtual.startVirtual(this.frameRate),ye.next=17,this.virtual.render();case 17:return this.originTrack=z,this.resultTrack=this.canvasVirtual.captureStream(this.frameRate||15).getVideoTracks()[0],this.setTrackParam({type:"virtual",originTrack:this.originTrack,resultTrack:this.resultTrack,param:{type:re,img:be}}),this.isVirualEnable=!0,ye.abrupt("return",this.resultTrack);case 22:case"end":return ye.stop()}},X,this)})),function(X){return Te.apply(this,arguments)})},{key:"replaceVirtualTrack",value:function(X){this.isVirualEnable&&(this.mediaStream.removeTrack(this.mediaStream.getVideoTracks()[0]),this.mediaStream.addTrack(X),this.originTrack=X)}},{key:"deleteSource",value:function(X){if(p.default){var ce=p.default.beautyTrackMap.get(X);ce&&(ce.type==="mixed"&&this.deleteSource(ce.originTrack.id),ce.originTrack&&(ce.originTrack.stop(),ce.originTrack=null),ce.beautyTrack&&(ce.beautyTrack.stop(),ce.beautyTrack=null),ce.resultTrack&&(ce.resultTrack.stop(),ce.resultTrack=null),p.default.beautyTrackMap.delete(X))}}},{key:"draw",value:function(){this.videoBeauty&&this.videoBeauty.readyState===this.videoBeauty.HAVE_ENOUGH_DATA&&this.filter.apply(this.videoBeauty)}},{key:"enableVirtualBg",value:function(){var X;if(this.virtual&&!this.isVirualEnable)return this.virtual.setEnable(!0),this.virtual.render(),this.isVirualEnable=!0,(X=this.localStream)===null||X===void 0||X.replaceTrack(this.resultTrack),console.log("".concat(this.userId?"[userId: ".concat(this.userId,"]"):""," RTCBeautyPlugin enable.")),this.resultTrack}},{key:"disableVirtualBg",value:function(){var X;if(this.virtual&&this.isVirualEnable)return this.virtual.setEnable(!1),this.isVirualEnable=!1,(X=this.localStream)===null||X===void 0||X.replaceTrack(this.originTrack),console.log("".concat(this.userId?"[userId: ".concat(this.userId,"]"):""," RTCBeautyPlugin disable.")),this.originTrack}},{key:"changeType",value:function(X){var ce=X.type,z=X.img;console.log("".concat(this.userId?"[userId: ".concat(this.userId,"]"):""," RTCBeautyPlugin changeType\uFF1A").concat(ce,". img: ").concat(z,".")),ce==="blur"&&(this.virtual.reset(),this.virtual.initVirtualParams({type:"blur"}),this.virtual.startVirtual(this.frameRate),this.virtual.render()),ce==="virtual"&&(this.virtual.reset(),this.virtual.initVirtualParams({type:"virtual",img:z}),this.virtual.startVirtual(this.frameRate),this.virtual.render()),this.setTrackParam({type:ce,originTrack:this.originTrack,resultTrack:this.resultTrack,param:{type:ce,img:z}})}},{key:"render",value:function(){var X=this,ce=new Date().getTime();ce-this.startTime>1e3/this.frameRate&&(this.draw(),this.startTime=ce),document.hidden?(clearTimeout(this.timeoutId),this.timeoutId=setTimeout(function(){X.render()},1e3/this.frameRate)):(this.timeoutId&&clearTimeout(this.timeoutId),this.rafId&&cancelAnimationFrame(this.rafId),this.rafId=requestAnimationFrame(this.render.bind(this)))}},{key:"setBeautyParam",value:function(X){var ce=X.beauty,z=X.brightness,re=X.ruddy;Rr(ce)&&(this.beautyParams.beauty=ce),Rr(z)&&(this.beautyParams.brightness=z),Rr(re)&&(this.beautyParams.ruddy=re),this.filter.setBeautyParams(this.beautyParams),this.getClose()&&!this.disableStatus&&this.disable(),!this.getClose()&&this.disableStatus&&this.enable()}},{key:"setRect",value:function(X,ce){var z=X||640,re=ce||480;this.videoBeauty.height=re,this.videoBeauty.width=z,this.canvasBeauty.height=re,this.canvasBeauty.width=z,this.videoVirtual.height=re,this.videoVirtual.width=z,this.canvasVirtual.height=re,this.canvasVirtual.width=z}},{key:"reset",value:function(){cancelAnimationFrame(this.rafId),clearTimeout(this.timeoutId),this.videoBeauty.pause(),this.filter.reset(),this.beautyTrack&&this.beautyTrack.stop(),this.videoVirtual.pause(),this.resultTrack&&this.resultTrack.stop(),this.originTrack&&this.originTrack.stop()}},{key:"destroy",value:function(){cancelAnimationFrame(this.rafId),clearTimeout(this.timeoutId),this.canvasBeauty&&(this.canvasBeauty.width=0,this.canvasBeauty.height=0,this.canvasBeauty.remove(),this.canvasBeauty=null),this.videoBeauty&&(this.videoBeauty.pause(),this.videoBeauty.removeAttribute("srcObject"),this.videoBeauty.removeAttribute("src"),this.videoBeauty.load(),this.videoBeauty.width=0,this.videoBeauty.height=0,this.videoBeauty.remove(),this.videoBeauty=null),this.beautyTrack&&(this.deleteSource(this.beautyTrack.id),this.beautyTrack.stop(),this.beautyTrack=null),this.originTrack&&(this.originTrack.stop(),this.originTrack=null),this.resultTrack&&(this.deleteSource(this.resultTrack.id),this.resultTrack.stop(),this.resultTrack=null),this.canvasVirtual&&(this.canvasVirtual.width=0,this.canvasVirtual.height=0,this.canvasVirtual.remove(),this.canvasVirtual=null),this.videoVirtual&&(this.videoVirtual.pause(),this.videoVirtual.removeAttribute("srcObject"),this.videoVirtual.removeAttribute("src"),this.videoVirtual.load(),this.videoVirtual.width=0,this.videoVirtual.height=0,this.videoVirtual.remove(),this.videoVirtual=null),this.virtual.destroy(),this.uninstallEvents()}},{key:"generateVideoTrackFromCanvasCapture",value:function(X){return this.canvasVirtual.captureStream(X).getVideoTracks()[0]}},{key:"setTrackParam",value:function(X){var ce=X.type,z=X.originTrack,re=X.resultTrack,be=X.param;p.default&&(p.default.beautyTrackMap||(p.default.beautyTrackMap=new Map),p.default.beautyTrackMap.set(re.id,{type:ce,originTrack:z,resultTrack:re,param:be,pluginInstance:this}))}},{key:"disable",value:function(){this.localStream&&this.originTrack&&(this.localStream.replaceTrack(this.originTrack),cancelAnimationFrame(this.rafId),clearTimeout(this.timeoutId),this.disableStatus=!0)}},{key:"enable",value:function(){this.localStream&&this.beautyTrack&&(this.localStream.replaceTrack(this.beautyTrack),this.render(),this.disableStatus=!1)}},{key:"installEvents",value:function(){document.addEventListener("visibilitychange",this.render.bind(this))}},{key:"uninstallEvents",value:function(){document.removeEventListener("visibilitychange",this.render.bind(this))}},{key:"overload",value:function(){this.onoverload&&this.onoverload()}},{key:"getClose",value:function(){return this.beautyParams.beauty===0&&this.beautyParams.brightness===0&&this.beautyParams.ruddy===0}}]),le}();return p.default&&(p.default.getRTCBeautyPlugin=function(){return new Pc}),Pc})});var ew="0.0.17";var _d=lr(Er());var gd=lr(Er());var dw=lr(ig());var Uo=class extends dw.default{constructor({mediaType:p}){super();Ve(this,"trackMediaType");Ve(this,"_stream");Ve(this,"_playerState");this.trackMediaType=p}get isPlaying(){return this._playerState==="PLAYING"}async stop(){this._playerState="STOPPED",await this._stream.stop()}};var C7=1,Vo=class extends Uo{constructor(p){super(p);Ve(this,"TRTC",gd.default);Ve(this,"muted");Ve(this,"_publishedStream",null);Ve(this,"_log");this._log=Ft.createLogger({id:p.id+C7++})}get closed(){let p=this.getMediaStreamTrack();return p?p.readyState==="ended":!0}async init(){this._stream.on("device-auto-recovered",async({isMicrophone:p,isCamera:G,microphoneId:$,cameraId:H})=>{if(this._publishedStream&&this._stream!==this._publishedStream){let Q=this.getMediaStreamTrack(),Re=this.trackMediaType==="audio"?this._publishedStream.getAudioTrack():this._publishedStream.getVideoTrack();Q&&Re&&Q!==Re&&this._publishedStream.replaceTrack(Q)}if(p){let Q=(await gd.default.getMicrophones()).find(Re=>Re.deviceId===$);Q&&this.emit("device-switched",Q)}if(G){let Q=(await gd.default.getCameras()).find(Re=>Re.deviceId===H);Q&&this.emit("device-switched",Q)}}),this._stream.on("player-state-changed",({state:p})=>{this._playerState=p}),this._stream.on("error",p=>{p.getCode()===16452&&this.emit("track-ended",this.trackMediaType)}),await this._stream.initialize()}setPublishedStream(p){this._publishedStream=p}on(p,G){return super.on(p,G),this}async setMuted(p){let G=this._publishedStream||this._stream;this.trackMediaType==="audio"?p?G.muteAudio():G.unmuteAudio():p?G.muteVideo():G.unmuteVideo()}getMediaStreamTrack(){return this.trackMediaType==="audio"?this._stream.getAudioTrack():this._stream.getVideoTrack()}close(){this._stream.close()}getTrackLabel(){var p;return((p=this.getMediaStreamTrack())==null?void 0:p.label)||""}getDeviceId(){var p,G;return((G=(p=this.getMediaStreamTrack())==null?void 0:p.getSettings())==null?void 0:G.deviceId)||""}};var fw=lr(hw()),pw=lr(Er());var jo=class extends Vo{constructor(p){super(p);Ve(this,"mirrored",!1);Ve(this,"lastPlayContainer");Ve(this,"_beautyPlugin");Ve(this,"_virtualTrack");Ve(this,"_isVirtualEnable",!1);Ve(this,"_imageUrl",null);this.onOriginTrackEnded=this.onOriginTrackEnded.bind(this)}get _originTrack(){var p;return((p=this._beautyPlugin)==null?void 0:p.originTrack)||null}get videoElement(){var p;return((p=this.lastPlayContainer)==null?void 0:p.querySelector(`#video_${this._stream.getId()}`))||null}mirrorVideo(p){this.lastPlayContainer&&this._stream.play(this.lastPlayContainer,{mirror:p}),this.mirrored=p}async applyVirtualBackground(p){var G;if(this._log.info(`applyVirtualBackground ${p} ${this._imageUrl}`),!p)return this.stopVirtualBackground(),!0;if(p===this._imageUrl)return!0;if(this._beautyPlugin||(this._beautyPlugin=new fw.default,await this._beautyPlugin.virtual.loadResources(),this._beautyPlugin.virtual.onoverload=()=>{this._log.info("virtualBackground is onoverload"),this.emit("VirtualBackgroundOverload")}),this._imageUrl)p==="blur"&&this._imageUrl!=="blur"&&this._beautyPlugin.changeType({type:"blur"}),p!=="blur"&&this._imageUrl==="blur"&&this._beautyPlugin.changeType({type:"virtual",img:p}),p!=="blur"&&this._imageUrl!=="blur"&&this._imageUrl!==p&&await this._beautyPlugin.setBackground(p);else{let $=await this._beautyPlugin.generateVirtualStream({localStream:this._stream,type:p==="blur"?"blur":"virtual",img:p==="blur"?void 0:p});this._virtualTrack=$.getVideoTrack(),this._publishedStream&&this._publishedStream.replaceTrack(this._virtualTrack),this._isVirtualEnable=!0}return(G=this._originTrack)==null||G.addEventListener("ended",this.onOriginTrackEnded),this._imageUrl=p,!this._isVirtualEnable&&this._beautyPlugin&&(this._isVirtualEnable=!0,this._beautyPlugin.enableVirtualBg()),!0}async onOriginTrackEnded(){let p=(await pw.default.getCameras())[0];p?this.setDevice(p.deviceId):this.emit("track-ended",this.trackMediaType)}async stopVirtualBackground(){var p;return this._log.info("stopVirtualBackground is called"),this._beautyPlugin&&this._isVirtualEnable&&(this._log.info("RTCBeautyPlugin: call disableVirtualBackground"),this._beautyPlugin.disableVirtualBg(),this._isVirtualEnable=!1,(p=this._originTrack)==null||p.removeEventListener("ended",this.onOriginTrackEnded)),!0}getDeviceId(){var p,G;return this._isVirtualEnable||this._beautyPlugin?((G=(p=this._beautyPlugin.originTrack)==null?void 0:p.getSettings())==null?void 0:G.deviceId)||"":super.getDeviceId()}getMediaStreamTrack(){return this._originTrack&&(this._isVirtualEnable||this._beautyPlugin)?this._originTrack:super.getMediaStreamTrack()}close(){var p;(p=this._beautyPlugin)==null||p.destroy()}};var ya=class extends jo{constructor(p){var Re;super(pd(Kr({},p),{mediaType:"video"}));Ve(this,"_videoProfile",{width:320,height:240,frameRate:15,bitrate:300});let{width:G,height:$,frameRate:H,bitrate:Q}=p;Ft.info("new LingoCameraVideoTrack"),this._stream=_d.default.createStream({audio:!1,video:!0,cameraId:p.cameraId}),G&&(this._videoProfile.width=G),$&&(this._videoProfile.height=$),H&&(this._videoProfile.frameRate=H),Q&&(this._videoProfile.bitrate=Q),this._stream.setVideoProfile(this._videoProfile),(Re=this._publishedStream)==null||Re.setVideoProfile(this._videoProfile)}getVideoProfile(){return this._videoProfile}async play(p){await this._stream.play(p.container,{mirror:this.mirrored}),this.lastPlayContainer=p.container}async stop(){await super.stop(),this.lastPlayContainer=null}async setDevice(p){var H,Q,Re,Ie;let G=this._beautyPlugin&&this._isVirtualEnable;if(this._log.info(`setDevice ${p} visual: ${G}`),G){let $e=_d.default.createStream({audio:!1,video:!0,cameraId:p});$e.setVideoProfile(this._videoProfile),(H=this._publishedStream)==null||H.setVideoProfile(this._videoProfile),await $e.initialize();let Et=$e.getVideoTrack();Et&&((Q=this._originTrack)==null||Q.removeEventListener("ended",this.onOriginTrackEnded),await((Re=this._beautyPlugin)==null?void 0:Re.replaceVirtualTrack(Et)),(Ie=this._originTrack)==null||Ie.addEventListener("ended",this.onOriginTrackEnded))}else if(await this._stream.switchDevice(this.trackMediaType,p),this._publishedStream&&this._publishedStream!==this._stream){let $e=this.getMediaStreamTrack();$e&&await this._publishedStream.replaceTrack($e)}let $=(await _d.default.getCameras()).find($e=>$e.deviceId===p);$&&this.emit("device-switched",$),!this._isVirtualEnable&&this._beautyPlugin&&(this._beautyPlugin.destroy(),this._beautyPlugin=null,this._isVirtualEnable=!1,this._imageUrl=null)}close(){var p;(p=this.getMediaStreamTrack())==null||p.stop(),this._stream.hasAudio()||this._stream.close(),super.close()}};var mw=lr(Er());var E7=function(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(ne){let q=Math.random()*16|0;return(ne=="x"?q:q&3|8).toString(16)})};function yd(){return!performance||!performance.now?Date.now():Math.floor(performance.now())}var sg=class{constructor(){this.intervalMap_=new Map}setInterval(q,p,G=!0){if(!window||!window.requestAnimationFrame)return setInterval(q,p);let $=E7(),H=yd(),Q=H;this.intervalMap_.set($,{rafId:null,timeoutId:null,onVisibilityChange:null});let Re=()=>{if(G&&document.hidden){if(q(),!this.intervalMap_.has($))return;let $e=setTimeout(Re,p);this.setTimeoutId($,$e),H=yd(),Q=H}else{if(Q=yd(),Q-H>=p&&(H=Q,q(),!this.intervalMap_.has($)))return;let $e=requestAnimationFrame(Re);this.setRafId($,$e)}},Ie=requestAnimationFrame(Re);if(this.setRafId($,Ie),G){let $e=()=>{if(document.hidden){let Et=yd()-H;if(Et>=p)Re();else{let Ye=setTimeout(Re,p-Et);this.setTimeoutId($,Ye)}}};document.addEventListener("visibilitychange",$e),this.setOnVisibilityChange($,$e),document.hidden&&$e()}return $}clearInterval(q){if(this.intervalMap_.has(q)){let{rafId:p,timeoutId:G,onVisibilityChange:$}=this.intervalMap_.get(q);cancelAnimationFrame(p),clearTimeout(G),document.removeEventListener("visibilitychange",$),this.intervalMap_.delete(q)}}setTimeoutId(q,p){if(this.intervalMap_.has(q)){let G=this.intervalMap_.get(q);G.timeoutId&&clearTimeout(G.timeoutId),G.timeoutId=p}}setRafId(q,p){if(this.intervalMap_.has(q)){let G=this.intervalMap_.get(q);G.rafId&&cancelAnimationFrame(G.rafId),G.rafId=p}}setOnVisibilityChange(q,p){if(this.intervalMap_.has(q)){let G=this.intervalMap_.get(q);G.onVisibilityChange=p}}},R7=new sg,cg=R7;var bd=class extends jo{constructor(p){super({mediaType:"video",id:"cus"});Ve(this,"frameRate",0);Ve(this,"canvas",document.createElement("canvas"));Ve(this,"canvasCtx");Ve(this,"onDraw",null);Ve(this,"_cameraVideoTrack",null);Ve(this,"_timerId");this._cameraVideoTrack=p}timerStop(){cg.clearInterval(this._timerId)}async init(){var $;if(this.canvasCtx)return;this.canvasCtx=this.canvas.getContext("2d");let p=($=this._cameraVideoTrack)==null?void 0:$.getMediaStreamTrack();if(p){let{width:H,height:Q,frameRate:Re}=p.getSettings();H&&(this.canvas.width=H),Q&&(this.canvas.height=Q),Re&&(this.frameRate=Re)}this._timerId=cg.setInterval(()=>{var Re,Ie,$e;let H=(Re=this._cameraVideoTrack)==null?void 0:Re.getMediaStreamTrack();if(H){let{width:Et,height:Ye,frameRate:dr}=H.getSettings();Et&&(this.canvas.width=Et),Ye&&(this.canvas.height=Ye),dr&&(this.frameRate=dr)}let Q=(Ie=this._cameraVideoTrack)==null?void 0:Ie.videoElement;Q&&(($e=this.canvasCtx)==null||$e.drawImage(Q,0,0,this.canvas.width,this.canvas.height),this.onDraw&&this.onDraw(this.canvas,this.mirrored))},1e3/this.frameRate,!0);let G=this.canvas.captureStream(this.frameRate).getVideoTracks()[0];this._stream=mw.default.createStream({videoSource:G}),await super.init()}async play(p){var G,$,H,Q;if(p.container){this.lastPlayContainer=p.container,(G=this._cameraVideoTrack)!=null&&G.isPlaying||await(($=this._cameraVideoTrack)==null?void 0:$.play({container:p.container}));let Re=(H=this._cameraVideoTrack)==null?void 0:H.videoElement;Re&&Re.parentElement&&(Re.parentElement.style.display="none"),await this._stream.play(p.container),this.mirrorVideo(this.mirrored)}(Q=p.custom)!=null&&Q.onDraw&&(this.onDraw=p.custom.onDraw)}async stop(){var G;this.onDraw=null;let p=(G=this._cameraVideoTrack)==null?void 0:G.videoElement;p&&p.parentElement&&(p.parentElement.style.display="block"),await this._stream.stop(),this.lastPlayContainer=null}setDevice(p){return Promise.resolve()}};var ug=lr(Er());function Sd(ne){return ne*1.5>100?100:ne*1.5}var kd=class extends Vo{constructor({microphoneId:p}){super({mediaType:"audio"});Ve(this,"_captureVolume",100);Ve(this,"_div",document.createElement("div"));Ve(this,"_isPlayCalled",!1);Ft.info("new LingoMicrophoneAudioTrack"),this._stream=ug.default.createStream({audio:!0,video:!1,microphoneId:p})}async play(){return this._isPlayCalled=!0,await this._stream.play(this._div,{muted:!1})}stop(){return this._isPlayCalled=!1,super.stop()}setPublishedStream(p){var G;p===null?(G=this._publishedStream)==null||G.setAudioCaptureVolume(100):p.setAudioCaptureVolume(this._captureVolume),super.setPublishedStream(p)}async setDevice(p){if(Ft.warn(`switch mic ${p}`),p==="default"&&this._stream.isAudioRecovering_)return;if(await this._stream.switchDevice(this.trackMediaType,p),this._publishedStream&&this._publishedStream!==this._stream){let $=this.getMediaStreamTrack();$&&await this._publishedStream.replaceTrack($)}let G=(await ug.default.getMicrophones()).find($=>$.deviceId===p);G&&this.emit("device-switched",G)}setVolume(p){var G;(G=this._publishedStream)==null||G.setAudioCaptureVolume(p),this._captureVolume=p}getVolume(){return this._isPlayCalled||(this._isPlayCalled=!0,this._stream.play(this._div)),Sd(this._stream.getAudioLevel()*100)}setSpeakerDevice(p){return this._stream.setAudioOutput(p)}close(){var p;(p=this.getMediaStreamTrack())==null||p.stop(),this._stream.hasAudio()||this._stream.close()}};var Bo=class extends Uo{constructor({uid:p,mediaType:G,stream:$}){super({mediaType:G});Ve(this,"uid");Ve(this,"isSubscribed",!1);this.uid=p,this._stream=$,this._stream.on("player-state-changed",({state:H})=>{this._playerState=H})}subscribe(){this.isSubscribed=!0}unsubscribe(){this.isSubscribed=!1}};var Td=class extends Bo{constructor({uid:q,stream:p}){super({uid:q,mediaType:"audio",stream:p})}setVolume(q){this._stream.setAudioVolume(q/100)}getVolume(){return Sd(this._stream.getAudioLevel()*100)}setSpeakerDevice(q){return this._stream.setAudioOutput(q)}async play(){return this._stream.isPlaying()?Promise.resolve():this._stream.play(document.createElement("div"))}};var xd=class extends Bo{constructor({uid:p,stream:G}){super({uid:p,mediaType:"video",stream:G});Ve(this,"mirrored",!1);Ve(this,"lastPlayContainer")}async play(p){await this._stream.play(p.container),this.lastPlayContainer=p.container}async stop(){await super.stop(),this.lastPlayContainer=null}mirrorVideo(p){this.lastPlayContainer&&(this._stream.play(this.lastPlayContainer,{mirror:p}),this.mirrored=p)}};import{LingoBaseRTC as P7,LingoRTCError as fg}from"@lingoace/lingo-base-rtc";var lg=lr(Er());import{LingoBaseRTCClient as A7,LingoRTCError as Fo,config as Rc}from"@lingoace/lingo-base-rtc";var Id=new WeakMap;function wd(){return function(ne,q,p){let G=p.value,$=({fn:H,args:Q,context:Re,resolve:Ie,reject:$e})=>{H.apply(Re,Q).then(Ie,$e).finally(()=>{let Et=Id.get(Re);Et.shift(),Et[0]&&$(Kr({},Et[0]))})};return p.value=function(...H){return new Promise((Q,Re)=>{if(Id.has(this)){let Ie=Id.get(this),{length:$e}=Ie;Ie.push({fn:G,args:H,context:this,resolve:Q,reject:Re}),$e===0&&$({fn:G,args:H,context:this,resolve:Q,reject:Re})}else Id.set(this,[{fn:G,args:H,context:this,resolve:Q,reject:Re}]),$({fn:G,args:H,context:this,resolve:Q,reject:Re})})},p}}import{LingoRTCError as vw}from"@lingoace/lingo-base-rtc";function Cn(ne){return function(q,p,G){let $=G.value;return G.value=async function(...H){try{return await $.apply(this,H)}catch(Q){throw ne?ne(Q):Q instanceof vw?Q:vw.createOtherError(Q.message)}},G}}var En=class extends A7{constructor(){super(...arguments);Ve(this,"_client",null);Ve(this,"_localStream",null);Ve(this,"_screenStream",null);Ve(this,"_remoteAuxiliaryStream",null);Ve(this,"_remoteMainStreamMap",new Map);Ve(this,"_remoteUserIdSet",new Set);Ve(this,"_quality",{res:"0x0",vfps:0,vra:0,ara:0,rtt:0,pktLostRate:0,upQuality:0,downQuality:0});Ve(this,"_prevLocalVideoStat",null);Ve(this,"_prevLocalAudioStat",null)}getRemoteUsers(){let p=new Map;return this._remoteUserIdSet.forEach(G=>{p.set(G,{uid:G,hasAudio:!1,hasVideo:!1})}),this.remoteAudioTrackMap.forEach(G=>{if(p.has(G.uid)){let $=p.get(G.uid);$.hasAudio=!0,$.audioTrack=G.isSubscribed?G:void 0}else p.set(G.uid,{uid:G.uid,hasAudio:!0,hasVideo:!1,audioTrack:G.isSubscribed?G:void 0,videoTrack:void 0})}),this.remoteVideoTrackMap.forEach(G=>{let{uid:$}=G;if(p.has(G.uid)){let H=p.get(G.uid);H.hasVideo=!0,H.videoTrack=G.isSubscribed?G:void 0}else p.set($,{uid:$,hasAudio:!1,hasVideo:!0,audioTrack:void 0,videoTrack:G.isSubscribed?G:void 0})}),[...p.values()]}async join(p){return this._client=lg.default.createClient({sdkAppId:Number(p.appId),userId:p.uid,userSig:p.token,mode:"rtc",useStringRoomId:!0,autoSubscribe:!1,enableAutoPlayDialog:!1}),this.handleEvents(),await this._client.join({roomId:p.roomId}),this.joinParam=p,this.uid=p.uid,p.uid}async leave(){!this._client||(await this._client.leave(),this.joinParam=void 0,this._client=null)}start(){return Promise.resolve()}async publish(p){return this._localStream?(p instanceof ya&&await this._localStream.setVideoProfile(p.getVideoProfile()),await this._localStream.addTrack(p.getMediaStreamTrack())):(await this._client.publish(p._stream),this._localStream=p._stream),p.setPublishedStream(this._localStream),this.localTracks.push(p),!0}async unpublish(p){var $;let G=p.getMediaStreamTrack();return!G||!this._localStream||this.localTracks.length===0||(this.localTracks.length===1?(await(($=this._client)==null?void 0:$.unpublish(this._localStream)),p.setPublishedStream(null),this._localStream=null,this.localTracks=[]):this.localTracks.find(H=>H===p)&&(await this._localStream.removeTrack(G),p.setPublishedStream(null),this.localTracks=this.localTracks.filter(H=>H!==p))),!0}async subscribe(p,G){var $,H;if(!this._client)throw Fo.createOtherError("\u7528\u6237\u672A\u8FDB\u623F\uFF0C\u65E0\u6CD5\u8BA2\u9605");if(G==="audio"&&!this.remoteAudioTrackMap.has(p))throw Fo.createOtherError(`\u8FDC\u7AEF\u7528\u6237: ${p} \u672A\u63A8\u97F3\u9891\uFF0C\u65E0\u6CD5\u8BA2\u9605`);if(G==="video"&&p!==Rc.screenSharingUid&&!this.remoteVideoTrackMap.has(p))throw Fo.createOtherError(`\u8FDC\u7AEF\u7528\u6237: ${p} \u672A\u63A8\u89C6\u9891\uFF0C\u65E0\u6CD5\u8BA2\u9605`);if(Ft.info(`subscribe ${p} ${G}`),p===Rc.screenSharingUid&&this._remoteAuxiliaryStream&&this._client)return await this._client.subscribe(this._remoteAuxiliaryStream),!0;if(G==="audio"){let Q=this.remoteAudioTrackMap.get(p);Q.subscribe();try{await this._client.subscribe(Q._stream,{audio:!0,video:!!(($=this.remoteVideoTrackMap.get(p))!=null&&$.isSubscribed)})}catch(Re){throw Q.unsubscribe(),Re}}else{let Q=this.remoteVideoTrackMap.get(p);Q.subscribe();try{await this._client.subscribe(Q._stream,{video:!0,audio:!!((H=this.remoteAudioTrackMap.get(p))!=null&&H.isSubscribed)})}catch(Re){throw Q.unsubscribe(),Re}}return!0}async unsubscribe(p,G){var H,Q;if(!this._client)throw Fo.createOtherError("\u7528\u6237\u672A\u8FDB\u623F\uFF0C\u65E0\u6CD5\u8BA2\u9605");Ft.info(`unsubscribe ${p} ${G}`);let $=null;if(G==="audio"&&this.remoteAudioTrackMap.has(p)?$=this.remoteAudioTrackMap.get(p):G==="video"&&this.remoteVideoTrackMap.has(p)&&($=this.remoteVideoTrackMap.get(p)),!$)throw Fo.createOtherError(`\u8FDC\u7AEF\u7528\u6237: ${p} \u672A\u63A8 ${G}\uFF0C\u65E0\u6CD5\u8BA2\u9605`);return p===Rc.screenSharingUid&&this._remoteAuxiliaryStream?(await this._client.unsubscribe(this._remoteAuxiliaryStream),!0):(G==="audio"?(H=this.remoteVideoTrackMap.get(p))!=null&&H.isSubscribed?await this._client.subscribe($._stream,{video:!0,audio:!1}):await this._client.unsubscribe($._stream):(Q=this.remoteAudioTrackMap.get(p))!=null&&Q.isSubscribed?await this._client.subscribe($._stream,{video:!1,audio:!0}):await this._client.unsubscribe($._stream),$.unsubscribe(),!0)}getQOEStats(){return this._quality}async startScreenShare(p){if(!this.joinParam||!this._client)throw Fo.createOtherError("\u7528\u6237\u672A\u8FDB\u623F\uFF0C\u65E0\u6CD5\u5F00\u542F\u5C4F\u5E55\u5206\u4EAB");this._screenStream=lg.default.createStream({screen:!0,screenAudio:!0});let G={width:1280,height:720,frameRate:15,bitrate:2e3};this._screenStream.setScreenProfile(Kr(Kr({},G),p)),this._screenStream.on("screen-sharing-stopped",async()=>{await this.stopScreenShare(),this.emit("ScreenSharingEnded")}),await this._screenStream.initialize(),await this._client.publish(this._screenStream,{isAuxiliary:!0})}async stopScreenShare(){!this._client||!this._screenStream||(await this._client.unpublish(this._screenStream),this._screenStream.stop(),this._screenStream.close(),this._screenStream=null)}async playScreenShareView(p){var G;this._remoteAuxiliaryStream&&this._client?(await this._client.subscribe(this._remoteAuxiliaryStream),await this._remoteAuxiliaryStream.play(p)):await((G=this._screenStream)==null?void 0:G.play(p))}async stopScreenShareView(){var p;this._remoteAuxiliaryStream&&this._client?(await this._client.unsubscribe(this._remoteAuxiliaryStream),await this._remoteAuxiliaryStream.stop()):await((p=this._screenStream)==null?void 0:p.stop())}handleEvents(){!this._client||(this._client.on("connection-state-changed",({prevState:p,state:G})=>{this.connectionState=G,this.emit("ConnectionStateChange",G,p,"")}),this._client.on("peer-join",p=>{this._remoteUserIdSet.add(p.userId),this.emit("UserJoined",p.userId)}),this._client.on("peer-leave",p=>{this._remoteUserIdSet.delete(p.userId),this.emit("UserLeft",p.userId)}),this._client.on("stream-added",p=>{let G=p.stream,$=G.getUserId();if(G.getType()==="auxiliary"){this._remoteAuxiliaryStream=G,this.emit("RemoteScreenSharing",Rc.screenSharingUid,!0,"video");return}this._remoteMainStreamMap.set($,G),G.on("error",H=>{if(H.getCode()===16451){let Q=()=>{G.resume().then(()=>{document.body.removeEventListener("click",Q),document.body.removeEventListener("touchstart",Q)})};document.body.addEventListener("click",Q,!0),document.body.addEventListener("touchstart",Q,!0),this.emit("AutoplayFailed")}}),G.hasAudio()&&this.handleUserPublished($,"audio"),G.hasVideo()&&this.handleUserPublished($,"video")}),this._client.on("stream-updated",p=>{let G=p.stream,$=G.getUserId();!this.remoteAudioTrackMap.has($)&&G.hasAudio()&&this.handleUserPublished($,"audio"),this.remoteAudioTrackMap.has($)&&!G.hasAudio()&&this.handleUserUnpublished($,"audio"),!this.remoteVideoTrackMap.has($)&&G.hasVideo()&&this.handleUserPublished($,"video"),this.remoteVideoTrackMap.has($)&&!G.hasVideo()&&this.handleUserUnpublished($,"video")}),this._client.on("stream-removed",p=>{let G=p.stream.getUserId();if(p.stream.getType()==="auxiliary"){this._remoteAuxiliaryStream=null,this.emit("RemoteScreenSharing",Rc.screenSharingUid,!1,"video");return}this._remoteMainStreamMap.delete(G),this.handleUserUnpublished(G,"audio"),this.handleUserUnpublished(G,"video")}),this._client.on("network-quality",p=>{var G,$;this._quality.upQuality=p.uplinkNetworkQuality,this._quality.downQuality=p.downlinkNetworkQuality,this._quality.rtt=p.uplinkRTT,this._quality.pktLostRate=p.uplinkLoss,(G=this._client)==null||G.getLocalVideoStats().then(H=>{let Q=H[this.uid];Q&&(this._quality.res=`${Q.frameWidth}x${Q.frameHeight}`,this._prevLocalVideoStat&&(this._quality.vfps=Math.floor((Q.framesSent-this._prevLocalVideoStat.framesSent)/2)||0,this._quality.vra=Math.floor((Q.bytesSent-this._prevLocalVideoStat.bytesSent)*8/2)||0),this._prevLocalVideoStat=Q)}),($=this._client)==null||$.getLocalAudioStats().then(H=>{let Q=H[this.uid];Q&&(this._prevLocalAudioStat&&(this._quality.ara=Math.floor((Q.bytesSent-this._prevLocalAudioStat.bytesSent)*8/2)||0),this._prevLocalAudioStat=Q)}),this.emit("NetworkQuality",p)}),this._client.on("mute-audio",p=>{this.handleUserUnpublished(p.userId,"audio")}),this._client.on("unmute-audio",p=>{this.handleUserPublished(p.userId,"audio",!0)}))}handleUserUnpublished(p,G){Ft.info(`UserUnpublished ${p} ${G}`),G==="audio"?this.remoteAudioTrackMap.has(p)&&(this.remoteAudioTrackMap.delete(p),this.emit("UserUnpublished",p,G)):this.remoteVideoTrackMap.has(p)&&(this.remoteVideoTrackMap.delete(p),this.emit("UserUnpublished",p,G))}handleUserPublished(p,G,$=!1){var Re;Ft.info(`UserPublished ${p} ${G} firedByUnmute: ${$}`);let H=this._remoteMainStreamMap.get(p),Q=(Re=this._client)==null?void 0:Re.getRemoteMutedState().find(Ie=>Ie.userId===p);if(H){if(G==="audio"&&!this.remoteAudioTrackMap.has(p)&&H.hasAudio()){if(!$&&Q&&Q.audioMuted)return;let Ie=new Td({uid:p,stream:H});this.remoteAudioTrackMap.set(p,Ie)}else if(G==="video"&&!this.remoteVideoTrackMap.has(p)&&H.hasVideo()){let Ie=new xd({uid:p,stream:H});this.remoteVideoTrackMap.set(p,Ie)}this.emit("UserPublished",p,G)}}};wn([Cn(),wd()],En.prototype,"publish",1),wn([Cn()],En.prototype,"unpublish",1),wn([Cn()],En.prototype,"subscribe",1),wn([Cn()],En.prototype,"unsubscribe",1),wn([Cn()],En.prototype,"startScreenShare",1),wn([Cn()],En.prototype,"stopScreenShare",1),wn([Cn()],En.prototype,"playScreenShareView",1),wn([Cn()],En.prototype,"stopScreenShareView",1);var Go=lr(Er());var gw=lr(ig()),dg=lr(Er());var hg=class extends gw.default{constructor(){super();Ve(this,"prevDevices_",[]);navigator.mediaDevices&&(this.onDeviceChange=this.onDeviceChange.bind(this),navigator.mediaDevices.addEventListener("devicechange",this.onDeviceChange))}async init(){this.prevDevices_=await dg.default.getDevices()}async onDeviceChange(){let p=await dg.default.getDevices(),G=p.filter(H=>this.prevDevices_.findIndex(({deviceId:Q})=>H.deviceId===Q)<0),$=this.prevDevices_.filter(H=>p.findIndex(({deviceId:Q})=>H.deviceId===Q)<0);G.length>0&&G.forEach(H=>{this.emit("device-added",H)}),$.length>0&&$.forEach(H=>{this.emit("device-removed",H)}),this.prevDevices_=p}destroy(){navigator.mediaDevices.removeEventListener("devicechange",this.onDeviceChange)}},_w=hg;var Ft=Go.default.Logger.loggerManager,Ho=class extends P7{constructor(){super(...arguments);Ve(this,"version",ew);Ve(this,"_deviceDetector",new _w);Ve(this,"_virtualOverloadCount",0);Ve(this,"_isVirtualOverloadStart",0)}init(p){return Ft.info(`lingo-trtc version: ${this.version}`),Promise.resolve()}release(){this._deviceDetector.destroy(),super.release()}async checkSystemRequirements(){let{result:p}=await Go.default.checkSystemRequirements();return p&&Go.default.isScreenShareSupported()}async createClient(){return this.client=new En,await this._deviceDetector.init(),this._deviceDetector.on("device-added",p=>{p.kind==="videoinput"?this.client.emit("CameraChanged",!0,p):p.kind==="audioinput"?this.client.emit("MicrophoneChanged",!0,p):p.kind==="audiooutput"&&this.client.emit("SpeakerDeviceChanged",!0,p)}),this._deviceDetector.on("device-removed",async p=>{var G,$;if(p.kind==="videoinput"){let H=this.cameraVideoTrack||this.previewVideoTrack;if(p.deviceId===(H==null?void 0:H.getDeviceId())){if((await Go.default.getCameras()).length===0){this.client.emit("CameraChanged",!1,p);return}H.once("device-switched",()=>{this.client.emit("CameraChanged",!1,p)}),H.once("track-ended",()=>{this.client.emit("CameraChanged",!1,p)})}else this.client.emit("CameraChanged",!1,p)}else if(p.kind==="audioinput")if(p.deviceId===((G=this.microphoneAudioTrack)==null?void 0:G.getDeviceId())){if((await Go.default.getMicrophones()).length===0){this.client.emit("CameraChanged",!1,p);return}this.microphoneAudioTrack.once("device-switched",()=>{this.client.emit("CameraChanged",!1,p)}),($=this.microphoneAudioTrack)==null||$.once("track-ended",()=>{this.client.emit("CameraChanged",!1,p)})}else this.client.emit("MicrophoneChanged",!1,p);else p.kind==="audiooutput"&&this.client.emit("SpeakerDeviceChanged",!1,p)}),this.client}async createCustomVideoTrack(p){if(this.customVideoTrack&&!this.customVideoTrack.closed)return this.customVideoTrack;Ft.info("createCustomVideoTrack");let G=new bd(p);return await G.init(),this.customVideoTrack=G,G}async detectCamera(p){var G,$;if(this.previewVideoTrack&&!this.previewVideoTrack.closed)return{checkIsActive:()=>{var H,Q;return Promise.resolve(((Q=(H=this.previewVideoTrack)==null?void 0:H.getMediaStreamTrack())==null?void 0:Q.readyState)==="live")},cleanup:()=>{var H,Q;(H=this.previewVideoTrack)==null||H.stop(),(Q=this.previewVideoTrack)==null||Q.close(),this.previewVideoTrack=void 0}};Ft.info("detectCamera");try{let H=new ya({cameraId:p.cameraId,id:"pv"});return H.on("device-switched",Q=>this.client.emit("DeviceSwitched",Q)),this.previewVideoTrack=H,await H.init(),p.mirror&&H.mirrorVideo(p.mirror),p.container&&await H.play({container:p.container}),{checkIsActive:()=>{var Q;return Promise.resolve(((Q=H.getMediaStreamTrack())==null?void 0:Q.readyState)==="live")},cleanup:()=>{H.stop(),H.close(),this.previewVideoTrack=void 0}}}catch(H){throw(G=this.previewVideoTrack)==null||G.stop(),($=this.previewVideoTrack)==null||$.close(),this.previewVideoTrack=void 0,H}}processExternalMediaAEC(p){}async createMicrophoneAudioTrack(p){if(this.microphoneAudioTrack&&!this.microphoneAudioTrack.closed)return this.microphoneAudioTrack;Ft.info("createMicrophoneAudioTrack");let G=new kd({microphoneId:p});return G.on("device-switched",$=>this.client.emit("DeviceSwitched",$)),await G.init(),this.microphoneAudioTrack=G,this.client.emit("LocalTrackCreated",G),G}async createCameraVideoTrack(p){if(this.cameraVideoTrack&&!this.cameraVideoTrack.closed)return this.cameraVideoTrack;Ft.info(`createCameraVideoTrack ${JSON.stringify(p)}`);let G=new ya(pd(Kr({},p),{id:"ct"}));return G.on("device-switched",$=>this.client.emit("DeviceSwitched",$)),await G.init(),this.cameraVideoTrack=G,this.client.emit("LocalTrackCreated",G),this.cameraVideoTrack.on("VirtualBackgroundOverload",()=>{this._virtualOverloadCount++,Ft.warn(`VirtualBackground overload count is: ${this._virtualOverloadCount}`),new Date().getTime()-this._isVirtualOverloadStart>5e3&&(this._virtualOverloadCount>10&&(Ft.warn("VirtualBackgroundOverload"),this.client.emit("VirtualBackgroundOverload")),this._virtualOverloadCount=0,this._isVirtualOverloadStart=new Date().getTime())}),G}};wn([wd(),Cn(ne=>fg.createRTCError(ne))],Ho.prototype,"detectCamera",1),wn([Cn(ne=>fg.createRTCError(ne))],Ho.prototype,"createMicrophoneAudioTrack",1),wn([Cn(ne=>fg.createRTCError(ne))],Ho.prototype,"createCameraVideoTrack",1);if(document){let ne={MAIN:"schedule.rtc.qq.com",BACKUP:"schedule.rtc.qcloud.com",MAIN_OVERSEA:"schedule.rtc.tencentcloud.com",BACKUP_OVERSEA:"schedule-ecdn.rtc.tencentcloud.com"};document.head.innerHTML+=Object.values(ne).map(q=>`<link rel="dns-prefetch" href="https://${q}">`).join(`\r
|
|
549
|
+
`)}var eH=Ho;export{eH as default,Ft as loggerManager};
|
|
550
550
|
/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */
|