6 lines
72 KiB
JavaScript
6 lines
72 KiB
JavaScript
/**
|
|
* AgoraWebSDK_N-v4.22.1-0-g1c8e27e9 Copyright AgoraInc.
|
|
*/
|
|
|
|
import e from"ua-parser-js";import t from"axios";const n=()=>{};function r(){const e={promise:void 0,isResolved:!1,isRejected:!1,isFinished:!1,resolve:void 0,reject:void 0,cancel:n};return e.promise=new Promise(((t,n)=>{e.resolve=n=>{e.isFinished||(e.isResolved=!0,e.isFinished=!0,t(n),e.value=n)},e.reject=t=>{e.isFinished||(e.isRejected=!0,e.isFinished=!0,n(t))}})),e}function E(e){const t=r();return t.resolve(e),t}function i(e){const t=r(),n=setTimeout(t.resolve,e);return t.cancel=()=>clearTimeout(n),t}const o=new Map,_=new Map,s=new Map;function c(e,t){_.set(e,t)}async function a(e,t,n){o.get(e)||o.set(e,[]),_.get(e)||_.set(e,t),s.get(e)||s.set(e,0);const E=o.get(e),i=_.get(e);if(!E||!i)throw new Error("concurrent: deferQueue or maxConcurrency is null");if(s.get(e)===i){const e=r();E.push(e),await e.promise}s.set(e,s.get(e)+1);for(var c=arguments.length,a=new Array(c>3?c-3:0),A=3;A<c;A++)a[A-3]=arguments[A];const T=await n(...a);return s.set(e,s.get(e)-1),s.get(e)===i-1&&E.length>0&&(E[0].resolve(),E.shift()),0===s.get(e)&&(o.set(e,[]),_.set(e,0),s.set(e,0)),T}let A=function(e){return e.WIN_10="Windows 10",e.WIN_81="Windows 8.1",e.WIN_8="Windows 8",e.WIN_7="Windows 7",e.WIN_VISTA="Windows Vista",e.WIN_SERVER_2003="Windows Server 2003",e.WIN_XP="Windows XP",e.WIN_2000="Windows 2000",e.ANDROID="Android",e.HARMONY_OS="HarmonyOS",e.OPEN_BSD="Open BSD",e.SUN_OS="Sun OS",e.LINUX="Linux",e.IOS="iOS",e.MAC_OS="Mac OS",e.CHROMIUM_OS="Chromium OS",e.QNX="QNX",e.UNIX="UNIX",e.BEOS="BeOS",e.OS_2="OS/2",e.SEARCH_BOT="Search Bot",e}({}),T=function(e){return e.CHROME="Chrome",e.SAFARI="Safari",e.EDGE="Edge",e.FIREFOX="Firefox",e.OPERA="OPR",e.QQ="QQBrowser",e.WECHAT="MicroMessenger",e}({});const R=new e;let I=R.getResult(),O=null;function N(e){if(!O){e&&R.setUA(e),I=R.getResult();const t=u(I),n=S(I),r=C(I),E=I.os.version,i=S(I,!1),o=I.device.type;if(!(t&&n&&r&&E))return{name:t,version:n,os:r,osVersion:E,browserVersion:i,deviceType:o};O={name:t,version:n,os:r,osVersion:E,browserVersion:i,deviceType:o}}return O}function u(e){if("Blink"===e.engine.name&&"WeChat"!==e.browser.name)return T.CHROME;switch(e.browser.name){case"Chrome Headless":case"Chrome":case"Chromium":return T.CHROME;case"Safari":case"Mobile Safari":return T.SAFARI;case"Edge":return T.EDGE;case"Firefox":return T.FIREFOX;case"QQ":case"QQBrowser":return T.QQ;case"Opera":return T.OPERA;case"WeChat":return T.WECHAT;default:return e.browser.name||""}}function S(e){let t,n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];return t="Blink"===e.engine.name?e.engine.version||"":e.browser.version||"",n?t.split(".")[0]:t}function C(e){return"Windows"===e.os.name?e.os.version?e.os.name+" "+e.os.version:e.os.name:e.os.name||""}function l(e){const t=e||navigator.userAgent;let n=t.match(/(opera|chrome|safari|firefox|msie|trident(?=\/))\/?\s*(\d+)/i)||[];if("Chrome"===n[1]){const e=t.match(/(OPR(?=\/))\/?(\d+)/i);null!==e&&(n=e)}if("Safari"===n[1]){const e=t.match(/version\/(\d+)/i);null!==e&&(n[2]=e[1])}if(-1!==t.toLowerCase().indexOf("qqbrowser")){const e=t.match(/(qqbrowser(?=\/))\/?(\d+)/i);null!==e&&(n=e)}if(-1!==t.toLowerCase().indexOf("micromessenger")){const e=t.match(/(micromessenger(?=\/))\/?(\d+)/i);null!==e&&(n=e)}if(-1!==t.toLowerCase().indexOf("edge")){const e=t.match(/(edge(?=\/))\/?(\d+)/i);null!==e&&(n=e)}if(-1!==t.toLowerCase().indexOf("trident")){const e=/\brv[ :]+(\d+)/g.exec(t)||[];null!==e&&(n=["","IE",e[1]])}let r=null;const E=[{s:A.WIN_10,r:/(Windows 10.0|Windows NT 10.0)/},{s:A.WIN_81,r:/(Windows 8.1|Windows NT 6.3)/},{s:A.WIN_8,r:/(Windows 8|Windows NT 6.2)/},{s:A.WIN_7,r:/(Windows 7|Windows NT 6.1)/},{s:A.WIN_VISTA,r:/Windows NT 6.0/},{s:A.WIN_SERVER_2003,r:/Windows NT 5.2/},{s:A.WIN_XP,r:/(Windows NT 5.1|Windows XP)/},{s:A.WIN_2000,r:/(Windows NT 5.0|Windows 2000)/},{s:A.ANDROID,r:/Android/},{s:A.OPEN_BSD,r:/OpenBSD/},{s:A.SUN_OS,r:/SunOS/},{s:A.LINUX,r:/(Linux|X11)/},{s:A.IOS,r:/(iPhone|iPad|iPod)/},{s:A.MAC_OS,r:/(MacPPC|MacIntel|Mac_PowerPC|Macintosh)/},{s:A.QNX,r:/QNX/},{s:A.UNIX,r:/UNIX/},{s:A.BEOS,r:/BeOS/},{s:A.OS_2,r:/OS\/2/},{s:A.SEARCH_BOT,r:/(nuhk|Googlebot|Yammybot|Openbot|Slurp|MSNBot|Ask Jeeves\/Teoma|ia_archiver)/}];for(const e of E)if(e.r.test(t)){r=e.s;break}return{name:n[1],version:n[2],os:r}}function d(){return N().version}function L(){return N().os}function h(){const e=N();return"".concat(e.os," ").concat(e.osVersion)}function D(){const e=N();return!!("WebKit"===I.engine.name&&e.os===A.MAC_OS&&navigator.maxTouchPoints&&navigator.maxTouchPoints>0&&e.name!==T.SAFARI||w()&&e.name!==T.SAFARI)}function p(){const e=N();if(D()){if(e.os===A.MAC_OS)return!0;if(e.os===A.IOS){const e=I.os.version&&I.os.version.split(".");if(e&&14===Number(e[0])&&e[1]&&Number(e[1])>=3)return!0;if(e&&Number(e[0])>14)return!0}}return!1}function f(){return"WebKit"===I.engine.name}function m(){return N().name===T.CHROME}function M(){return N().name===T.SAFARI}function P(){return N().name===T.EDGE}function U(){return N().name===T.FIREFOX}function g(){return N().name===T.OPERA}function y(){return N().name===T.QQ}function w(){return N().os===A.IOS}function b(e){const t=N();return!(t.name!==T.CHROME||!t.osVersion)&&Number(t.version)>=e}function V(e){const t=N();return!(t.name!==T.CHROME||!t.osVersion)&&Number(t.version)<e}function B(e,t,n){const r=N();return!(r.name!==e||!r.osVersion)&&(n?Number(r.version)>=t&&Number(r.version)<=n:Number(r.version)===t)}function v(e){const t=N();return!(t.name!==T.EDGE||!t.osVersion)&&Number(t.version)>=e}function F(e){const t=N();return!(t.name!==T.FIREFOX||!t.osVersion)&&Number(t.version)>=e}function G(e){const t=N();return!(t.name!==T.SAFARI||!t.osVersion)&&Number(t.version)>=e}function K(e){const t=N();if(t.os!==A.IOS||!t.osVersion)return!1;const n=t.osVersion.split(".");return Number(n[0])>=e}function H(e,t,n){const r=N();if(r.os!==A.IOS||!r.osVersion)return!1;const E=r.osVersion.split(".");return n?t&&Number(E[0])===e&&Number(E[1])<t||Number(E[0])<e:t?Number(E[0])===e&&Number(E[1])<=t||Number(E[0])<e:Number(E[0])<=e}function W(e,t,n){const r=N();if(r.name!==T.SAFARI||!r.osVersion||!r.browserVersion)return!1;const E=r.browserVersion.split(".");return n?t&&Number(E[0])===e&&Number(E[1])<t||Number(E[0])<e:t?Number(E[0])===e&&Number(E[1])<=t||Number(E[0])<e:Number(E[0])<=e}function k(e){const t=N();return!(t.name!==T.OPERA||!t.osVersion)&&Number(t.version)>=e}function Y(){const e=N();return!(e.name!==T.CHROME||!e.osVersion)&&Number(e.version)<=90}function x(){return N().os===A.MAC_OS}function X(){const e=N();if(e.os!==A.IOS||!e.osVersion)return!1;const t=e.osVersion.split(".");return 13===Number(t[0])}function J(){const e=N();if(e.os!==A.IOS||!e.osVersion)return!1;const t=e.osVersion.split(".");return Number(t[0])>=13}function j(){const e=N();if(e.os!==A.IOS||!e.osVersion)return!1;const t=e.osVersion.split(".");return Number(t[0])<14||14===Number(t[0])&&Number(t[1])<=6}function Q(){const e=N();if(e.os!==A.IOS||!e.osVersion)return!1;const t=e.osVersion.split(".");return 15===Number(t[0])}function z(){const e=N();if(e.os!==A.IOS||!e.osVersion)return!1;const t=e.osVersion.split(".");return 16===Number(t[0])}function q(){const e=N();if(e.os!==A.IOS||!e.osVersion)return!1;const t=e.osVersion.split(".");return 16===Number(t[0])&&Number(t[1])>=0}function Z(){const e=N();if(e.os!==A.IOS||!e.osVersion)return!1;const t=e.osVersion.split(".");return 15===Number(t[0])&&0===Number(t[1])}function $(){const e=N();if(e.os!==A.IOS||!e.osVersion)return!1;const t=e.osVersion.split(".");return 15===Number(t[0])&&Number(t[1])>=1}function ee(){const e=N();if(e.os!==A.IOS||!e.osVersion)return!1;const t=e.osVersion.split(".");return 15===Number(t[0])&&Number(t[1])>=2}function te(){return M()&&navigator.maxTouchPoints>0}function ne(){return N().name===T.WECHAT}function re(){return window.navigator.appVersion&&null!==window.navigator.appVersion.match(/Chrome\/([\w\W]*?)\./)&&window.navigator.appVersion.match(/Chrome\/([\w\W]*?)\./)[1]<=35}function Ee(){const e=L();return e===A.LINUX||e===A.MAC_OS||-1!==e.indexOf("Windows")}function ie(){return-1!==L().indexOf("Windows")}function oe(){const{deviceType:e}=N();return"mobile"===e||"tablet"===e}function _e(){const e=L();return oe()||e===A.ANDROID||e===A.IOS||e===A.HARMONY_OS}function se(){const e=navigator.userAgent.toLocaleLowerCase().match(/chrome\/[\d]*/i);return e&&e[0]?e[0].split("/")[1]:null}function ce(){const e=N();if(e.name===T.EDGE||e.name===T.SAFARI)return!1;return!!navigator.userAgent.toLocaleLowerCase().match(/chrome\/[\d]./i)}function ae(){return L()===A.HARMONY_OS}function Ae(){return L()===A.ANDROID}function Te(){const e=N();return Ae()&&(e.name===T.CHROME||e.name===T.WECHAT||/chrome|chromium/i.test(navigator.userAgent))}function Re(){return!!window.navigator.userAgent.includes("AgoraWebView")}function Ie(e,t,n){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!=typeof r)return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Oe(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Ne(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Oe(Object(n),!0).forEach((function(t){Ie(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Oe(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}let ue=function(e){return e.UNEXPECTED_ERROR="UNEXPECTED_ERROR",e.UNEXPECTED_RESPONSE="UNEXPECTED_RESPONSE",e.TIMEOUT="TIMEOUT",e.INVALID_PARAMS="INVALID_PARAMS",e.NOT_READABLE="NOT_READABLE",e.NOT_SUPPORTED="NOT_SUPPORTED",e.INVALID_OPERATION="INVALID_OPERATION",e.OPERATION_ABORTED="OPERATION_ABORTED",e.WEB_SECURITY_RESTRICT="WEB_SECURITY_RESTRICT",e.EXCHANGE_SDP_FAILED="EXCHANGE_SDP_FAILED",e.ADD_CANDIDATE_FAILED="ADD_CANDIDATE_FAILED",e.DATACHANNEL_FAILED="DATACHANNEL_FAILED",e.NETWORK_ERROR="NETWORK_ERROR",e.NETWORK_TIMEOUT="NETWORK_TIMEOUT",e.NETWORK_RESPONSE_ERROR="NETWORK_RESPONSE_ERROR",e.API_INVOKE_TIMEOUT="API_INVOKE_TIMEOUT",e.ENUMERATE_DEVICES_FAILED="ENUMERATE_DEVICES_FAILED",e.DEVICE_NOT_FOUND="DEVICE_NOT_FOUND",e.ELECTRON_IS_NULL="ELECTRON_IS_NULL",e.ELECTRON_DESKTOP_CAPTURER_GET_SOURCES_ERROR="ELECTRON_DESKTOP_CAPTURER_GET_SOURCES_ERROR",e.CHROME_PLUGIN_NO_RESPONSE="CHROME_PLUGIN_NO_RESPONSE",e.CHROME_PLUGIN_NOT_INSTALL="CHROME_PLUGIN_NOT_INSTALL",e.MEDIA_OPTION_INVALID="MEDIA_OPTION_INVALID",e.PERMISSION_DENIED="PERMISSION_DENIED",e.CONSTRAINT_NOT_SATISFIED="CONSTRAINT_NOT_SATISFIED",e.TRACK_IS_DISABLED="TRACK_IS_DISABLED",e.GET_VIDEO_ELEMENT_VISIBLE_ERROR="GET_VIDEO_ELEMENT_VISIBLE_ERROR",e.SHARE_AUDIO_NOT_ALLOWED="SHARE_AUDIO_NOT_ALLOWED",e.LOW_STREAM_ENCODING_ERROR="LOW_STREAM_ENCODING_ERROR",e.SET_ENCODING_PARAMETER_ERROR="SET_ENCODING_PARAMETER_ERROR",e.TRACK_STATE_UNREACHABLE="TRACK_STATE_UNREACHABLE",e.INVALID_UINT_UID_FROM_STRING_UID="INVALID_UINT_UID_FROM_STRING_UID",e.CAN_NOT_GET_PROXY_SERVER="CAN_NOT_GET_PROXY_SERVER",e.CAN_NOT_GET_GATEWAY_SERVER="CAN_NOT_GET_GATEWAY_SERVER",e.VOID_GATEWAY_ADDRESS="VOID_GATEWAY_ADDRESS",e.UID_CONFLICT="UID_CONFLICT",e.MULTI_UNILBS_RESPONSE_ERROR="MULTI_UNILBS_RESPONSE_ERROR",e.UPDATE_TICKET_FAILED="UPDATE_TICKET_FAILED",e.INVALID_LOCAL_TRACK="INVALID_LOCAL_TRACK",e.INVALID_TRACK="INVALID_TRACK",e.SENDER_NOT_FOUND="SENDER_NOT_FOUND",e.CREATE_OFFER_FAILED="CREATE_OFFER_FAILED",e.SET_ANSWER_FAILED="SET_ANSWER_FAILED",e.ICE_FAILED="ICE_FAILED",e.PC_CLOSED="PC_CLOSED",e.SENDER_REPLACE_FAILED="SENDER_REPLACE_FAILED",e.GET_LOCAL_CAPABILITIES_FAILED="GET_LOCAL_CAPABILITIES_FAILED",e.GET_LOCAL_CONNECTION_PARAMS_FAILED="GET_LOCAL_CONNECTION_PARAMS_FAILED",e.SUBSCRIBE_FAILED="SUBSCRIBE_FAILED",e.UNSUBSCRIBE_FAILED="UNSUBSCRIBE_FAILED",e.GATEWAY_P2P_LOST="GATEWAY_P2P_LOST",e.NO_ICE_CANDIDATE="NO_ICE_CANDIDATE",e.CAN_NOT_PUBLISH_MULTIPLE_VIDEO_TRACKS="CAN_NOT_PUBLISH_MULTIPLE_VIDEO_TRACKS",e.EXIST_DISABLED_VIDEO_TRACK="EXIST_DISABLED_VIDEO_TRACK",e.INVALID_REMOTE_USER="INVALID_REMOTE_USER",e.REMOTE_USER_IS_NOT_PUBLISHED="REMOTE_USER_IS_NOT_PUBLISHED",e.CUSTOM_REPORT_SEND_FAILED="CUSTOM_REPORT_SEND_FAILED",e.CUSTOM_REPORT_FREQUENCY_TOO_HIGH="CUSTOM_REPORT_FREQUENCY_TOO_HIGH",e.FETCH_AUDIO_FILE_FAILED="FETCH_AUDIO_FILE_FAILED",e.READ_LOCAL_AUDIO_FILE_ERROR="READ_LOCAL_AUDIO_FILE_ERROR",e.DECODE_AUDIO_FILE_FAILED="DECODE_AUDIO_FILE_FAILED",e.WS_ABORT="WS_ABORT",e.WS_DISCONNECT="WS_DISCONNECT",e.WS_ERR="WS_ERR",e.EXTERNAL_SIGNAL_ABORT="EXTERNAL_SIGNAL_ABORT",e.LIVE_STREAMING_TASK_CONFLICT="LIVE_STREAMING_TASK_CONFLICT",e.LIVE_STREAMING_INVALID_ARGUMENT="LIVE_STREAMING_INVALID_ARGUMENT",e.LIVE_STREAMING_INTERNAL_SERVER_ERROR="LIVE_STREAMING_INTERNAL_SERVER_ERROR",e.LIVE_STREAMING_PUBLISH_STREAM_NOT_AUTHORIZED="LIVE_STREAMING_PUBLISH_STREAM_NOT_AUTHORIZED",e.LIVE_STREAMING_TRANSCODING_NOT_SUPPORTED="LIVE_STREAMING_TRANSCODING_NOT_SUPPORTED",e.LIVE_STREAMING_CDN_ERROR="LIVE_STREAMING_CDN_ERROR",e.LIVE_STREAMING_INVALID_RAW_STREAM="LIVE_STREAMING_INVALID_RAW_STREAM",e.LIVE_STREAMING_WARN_STREAM_NUM_REACH_LIMIT="LIVE_STREAMING_WARN_STREAM_NUM_REACH_LIMIT",e.LIVE_STREAMING_WARN_FAILED_LOAD_IMAGE="LIVE_STREAMING_WARN_FAILED_LOAD_IMAGE",e.LIVE_STREAMING_WARN_FREQUENT_REQUEST="LIVE_STREAMING_WARN_FREQUENT_REQUEST",e.WEBGL_INTERNAL_ERROR="WEBGL_INTERNAL_ERROR",e.BEAUTY_PROCESSOR_INTERNAL_ERROR="BEAUTY_PROCESSOR_INTERNAL_ERROR",e.CROSS_CHANNEL_WAIT_STATUS_ERROR="CROSS_CHANNEL_WAIT_STATUS_ERROR",e.CROSS_CHANNEL_FAILED_JOIN_SRC="CROSS_CHANNEL_FAILED_JOIN_SEC",e.CROSS_CHANNEL_FAILED_JOIN_DEST="CROSS_CHANNEL_FAILED_JOIN_DEST",e.CROSS_CHANNEL_FAILED_PACKET_SENT_TO_DEST="CROSS_CHANNEL_FAILED_PACKET_SENT_TO_DEST",e.CROSS_CHANNEL_SERVER_ERROR_RESPONSE="CROSS_CHANNEL_SERVER_ERROR_RESPONSE",e.METADATA_OUT_OF_RANGE="METADATA_OUT_OF_RANGE",e.LOCAL_AEC_ERROR="LOCAL_AEC_ERROR",e.INVALID_PLUGIN="INVALID_PLUGIN",e.DISCONNECT_P2P="DISCONNECT_P2P",e.CONVERTING_IMAGEDATA_TO_BLOB_FAILED="CONVERTING_IMAGEDATA_TO_BLOB_FAILED",e.CONVERTING_VIDEO_FRAME_TO_BLOB_FAILED="CONVERTING_VIDEO_FRAME_TO_BLOB_FAILED",e.INIT_DATACHANNEL_TIMEOUT="INIT_DATACHANNEL_TIMEOUT",e.CREATE_DATACHANNEL_ERROR="CREATE_DATACHANNEL_ERROR",e.DATACHANNEL_CONNECTION_TIMEOUT="DATACHANNEL_CONNECTION_TIMEOUT",e.PROHIBITED_OPERATION="PROHIBITED_OPERATION",e.IMAGE_MODERATION_UPLOAD_FAILED="IMAGE_MODERATION_UPLOAD_FAILED",e.P2P_MESSAGE_FAILED="P2P_MESSAGE_FAILED",e}({});class Se extends Error{constructor(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",n=arguments.length>2?arguments[2]:void 0;super(t),Ie(this,"code",void 0),Ie(this,"message",void 0),Ie(this,"data",void 0),Ie(this,"name","AgoraRTCException"),this.code=e,this.message="AgoraRTCError ".concat(this.code,": ").concat(t),this.data=n}toString(){return this.data?"data: ".concat(JSON.stringify(this.data),"\n").concat(this.stack):"".concat(this.stack)}print(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"error",t=arguments.length>1?arguments[1]:void 0;return"error"===e&&(t||console).error(this.toString()),"warning"===e&&(t||console).warn(this.toString()),this}throw(e){throw this.print("error",e),this}}function Ce(e,t){return new Se(ue.UNEXPECTED_ERROR,e,t)}function le(e,t){if("boolean"!=typeof e)throw new Se(ue.INVALID_PARAMS,"Invalid ".concat(t,": The value is of the boolean type."))}function de(e,t,n){if(n.includes(e))return;throw new Se(ue.INVALID_PARAMS,"".concat(t," can only be set as ").concat(JSON.stringify(n)))}function Le(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1,r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:1e4;if(e<n||e>r||(!(arguments.length>4&&void 0!==arguments[4])||arguments[4])&&!function(e){return"number"==typeof e&&e%1==0}(e)){throw new Se(ue.INVALID_PARAMS,"invalid ".concat(t,": the value range is [").concat(n,", ").concat(r,"]. integer only"))}}function he(e,t){if("number"!=typeof e){if(!(e.min||e.max||e.ideal||e.exact)){throw new Se(ue.INVALID_PARAMS,"".concat(t," is not a valid ConstrainLong"))}void 0!==e.min&&Le(e.min,"".concat(t,".min"),0,1/0),void 0!==e.max&&Le(e.max,"".concat(t,".max"),1,1/0),void 0!==e.exact&&Le(e.exact,"".concat(t,".exact"),1,1/0),void 0!==e.ideal&&Le(e.ideal,"".concat(t,".ideal"),1,1/0)}else Le(e,t,1,1/0)}function De(e,t){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1,r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:255,E=!(arguments.length>4&&void 0!==arguments[4])||arguments[4];if(null==e)throw new Se(ue.INVALID_PARAMS,"".concat(t||"param"," cannot be empty"));if(!Me(e,n,r,E))throw new Se(ue.INVALID_PARAMS,"Invalid ".concat(t||"string param",": Length of the string: [").concat(n,",").concat(r,"].").concat(E?" ASCII characters only.":""))}function pe(e,t){if(!Array.isArray(e))throw new Se(ue.INVALID_PARAMS,"".concat(t," should be an array"))}function fe(e,t){const n=Object.keys(e).sort(),r=Object.keys(t).sort();for(let E=0;E<n.length;E+=1){if(n[E]!==r[E])return!1;if(e[n[E]]!==t[n[E]])return!1}return!0}function me(e){return null==e}function Me(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:255,r=!(arguments.length>3&&void 0!==arguments[3])||arguments[3];return"string"==typeof e&&e.length<=n&&e.length>=t&&(!r||function(e){if("string"!=typeof e)return!1;for(let t=0;t<e.length;t+=1){const n=e.charCodeAt(t);if(n<0||n>255)return!1}return!0}(e))}function Pe(e,t,n){if("getBigInt64"in DataView.prototype)return e.getBigInt64(t,n);const r=Number(!!n),E=Number(!n);return BigInt(e.getInt32(t,n)*E+e.getInt32(t+4,n)*r)<<BigInt(32)|BigInt(e.getUint32(t,n)*r+e.getUint32(t+4,n)*E)}function Ue(e,t,n){if("getBigUint64"in DataView.prototype)return e.getBigUint64(t,n);const r=e.getUint32(t,n),E=e.getUint32(t+4,n),i=Number(!!n),o=Number(!n);return BigInt(r*o+E*i)<<BigInt(32)|BigInt(r*i+E*o)}function ge(e,t,n,r){if("setBigInt64"in DataView.prototype)return e.setBigInt64(t,n,r);const E=Number(n>>BigInt(32)),i=Number(n&BigInt(4294967295));r?(e.setInt32(t+4,E,r),e.setUint32(t,i,r)):(e.setInt32(t,E,r),e.setUint32(t+4,i,r))}function ye(e,t,n,r){if("setBigUint64"in DataView.prototype)return e.setBigUint64(t,n,r);const E=Number(n>>BigInt(32)),i=Number(n&BigInt(4294967295));r?(e.setUint32(t+4,E,r),e.setUint32(t,i,r)):(e.setUint32(t,E,r),e.setUint32(t+4,i,r))}var we=function(e){return e.COVERED="COVERED",e.POSITION="POSITION",e.SIZE="SIZE",e.STYLE="STYLE",e}(we||{}),be=function(e){return e.UNMOUNTED="UNMOUNTED",e.INVALID_HTML_ELEMENT="INVALID_HTML_ELEMENT",e}(be||{});const Ve=new class{constructor(){Ie(this,"_clientSize",null),Ie(this,"getClientWidth",(()=>document.documentElement?document.documentElement.clientWidth:document.body.clientWidth)),Ie(this,"getClientHeight",(()=>document.documentElement?document.documentElement.clientHeight:document.body.clientHeight)),Ie(this,"getStyle",(e=>window.getComputedStyle(e,null))),Ie(this,"checkCssVisibleProperty",(e=>{let t=!0;const n=this.getStyle(e),{display:r,visibility:E,opacity:i,filter:o}=n;if(("none"===r||["hidden","collapse"].includes(E)||Number(i)<.1)&&(t=!1),!t)return!1;if(o){o.split(" ").filter((e=>{const t=e.split("(")[0];return["brightness","blur","opacity"].includes(t)})).map((e=>{const[t,n]=e.split(/\(|\)/);return[t,Number(n.match(/^[0-9\.]+/))]})).forEach((e=>{const[n,r]=e;switch(n){case"brightness":(r<.1||r>3)&&(t=!1);break;case"blur":r>3&&(t=!1);break;case"opacity":r<.1&&(t=!1)}}))}return t})),Ie(this,"checkPropertyUpToAllParentNodes",((e,t)=>{let n=!0,r=!0;const E=e=>t(e);let i=e;for(;i&&r;){E(i)||(n=!1,r=!1),i=i.parentElement,i||(r=!1)}return n})),Ie(this,"checkActualCssVisibleIncludeInherit",(e=>this.checkPropertyUpToAllParentNodes(e,this.checkCssVisibleProperty))),Ie(this,"getSizeAboutClient",(e=>{const{width:t,height:n,left:r,right:E,top:i,bottom:o}=e.getBoundingClientRect(),_=this.getClientWidth(),s=this.getClientHeight();return{width:t,height:n,left:r,right:E,top:i,bottom:o,clientWidth:_,clientHeight:s,clientMin:Math.min(_,s)}})),Ie(this,"checkActualSize",(()=>{const{width:e,height:t,clientMin:n}=this._clientSize;return this.checkSizeIsVisible(e,t,n)})),Ie(this,"elementFromPoint",((e,t)=>document.elementFromPoint?document.elementFromPoint(e,t):null)),Ie(this,"checkCoverForAPoint",((e,t,n)=>{const r=this.elementFromPoint(e,t);return null!==r&&r!==n})),Ie(this,"getPointPositionList",(()=>{const{width:e,height:t,left:n,top:r}=this._clientSize,E=e/6,i=t/6,o=[],_=10**6;for(let e=0;e<5;e++)for(let t=0;t<5;t++){const s=(n*_+(0===e?.1:4===e?(E*e*_-1e5)/_:E*e)*_)/_,c=(r*_+(0===t?.1:4===t?(i*t*_-1e5)/_:i*t)*_)/_;o.push({x:s,y:c})}return[...o]})),Ie(this,"checkElementCover",(e=>this.getPointPositionList().map((t=>this.checkCoverForAPoint(t.x,t.y,e))).filter((e=>!!e)).length>6)),Ie(this,"checkSizeIsVisible",((e,t,n)=>(e>50||n/e<=10)&&(t>50||n/t<=10))),Ie(this,"checkSizeOfPartInClient",(()=>{const{left:e,right:t,top:n,bottom:r,clientHeight:E,clientWidth:i,clientMin:o}=this._clientSize;let _,s,c,a;if(e<0)_=0;else{if(!(e<i))return!1;_=e}if(t<0)return!1;if(s=t<i?t:i,n<0)c=0;else{if(!(n<E))return!1;c=n}if(r<0)return!1;a=r<E?r:E;const A=s-_,T=a-c;return this.checkSizeIsVisible(A,T,o)})),Ie(this,"returnHiddenResult",(e=>(this._clientSize=null,{visible:!1,reason:e}))),Ie(this,"checkOneElementVisible",(e=>{if(e instanceof HTMLElement){if(this.checkElementIsMountedOnDom(e)){if(this.checkActualCssVisibleIncludeInherit(e)){if(this._clientSize=this.getSizeAboutClient(e),this.checkElementCover(e))return this.returnHiddenResult(we.COVERED);{const e=this.checkActualSize(),t=this.checkSizeOfPartInClient();return e&&!t?this.returnHiddenResult(we.POSITION):e?(this._clientSize=null,{visible:!0}):this.returnHiddenResult(we.SIZE)}}return this.returnHiddenResult(we.STYLE)}return this.returnHiddenResult(be.UNMOUNTED)}return this.returnHiddenResult(be.INVALID_HTML_ELEMENT)})),Ie(this,"checkElementIsMountedOnDom",(e=>this.checkPropertyUpToAllParentNodes(e,(e=>"HTML"!==e.nodeName.toUpperCase()?null!==e.parentElement:!!document.documentElement))))}};function Be(e){return(new TextEncoder).encode(e)}const ve=function(e,t){const n=new Uint8Array(e.byteLength+t.byteLength);return n.set(new Uint8Array(e),0),n.set(new Uint8Array(t),e.byteLength),n};function Fe(e,t){let n="";return new Uint8Array(e).forEach((e=>{n+=e.toString(t).padStart(2,"0")})),n}const Ge=async e=>{const t=function(e){const t=window.atob(e),n=new Uint8Array(new ArrayBuffer(t.length));for(let e=0;e<t.length;e+=1)n[e]=t.charCodeAt(e);return n}("MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDCMnXAHkKIGAM+x4N22gCI+Wyu\nSTM9ztkT3uYslTT2PuKmZfPzhH6kVdO7PTjGCOZnAsyb3oTtWat0KcxQ4jxvqQV+\nHvYl3iI1Yd4vl2c3qRMJPLtRDfNxa2Mcxgq7e9aEUibzdd0st+OJAy3tOj/Y0aVy\nxQiYDz3vqa6bP29adwIDAQAB"),n=await window.crypto.subtle.importKey("spki",t,{name:"RSA-OAEP",hash:"SHA-256"},!0,["encrypt"]),r=Be(e),E=await window.crypto.subtle.encrypt({name:"RSA-OAEP"},n,r);return function(e){let t="";for(let n=0;n<e.length;n+=1)t+=String.fromCharCode(e[n]);return window.btoa(t)}(new Uint8Array(E))},Ke=async e=>Fe(await crypto.subtle.digest("SHA-256",Be(e)),16);class He{constructor(){Ie(this,"_events",{}),Ie(this,"addListener",this.on)}getListeners(e){return this._events[e]?this._events[e].map((e=>e.listener)):[]}on(e,t){this._events[e]||(this._events[e]=[]);const n=this._events[e];-1===this._indexOfListener(n,t)&&n.push({listener:t,once:!1})}once(e,t){this._events[e]||(this._events[e]=[]);const n=this._events[e];-1===this._indexOfListener(n,t)&&n.push({listener:t,once:!0})}off(e,t){if(!this._events[e])return;const n=this._events[e],r=this._indexOfListener(n,t);-1!==r&&n.splice(r,1),0===this._events[e].length&&delete this._events[e]}removeAllListeners(e){e?delete this._events[e]:this._events={}}emit(e){this._events[e]||(this._events[e]=[]);const t=this._events[e].map((e=>e));for(var n=arguments.length,r=new Array(n>1?n-1:0),E=1;E<n;E++)r[E-1]=arguments[E];for(let n=0;n<t.length;n+=1){const E=t[n];E.once&&this.off(e,E.listener),E.listener.apply(this,r||[])}}safeEmit(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];[...this._events[e]||[]].forEach((t=>{t.once&&this.off(e,t.listener);try{t.listener.apply(this,n)}catch(t){console.error("safeEmit event:".concat(e," error ").concat(null==t?void 0:t.toString()))}}))}_indexOfListener(e,t){let n=e.length;for(;n--;)if(e[n].listener===t)return n;return-1}}function We(){return!!xe()}function ke(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return new Promise(((n,r)=>{const E=document.createElement("div");E.innerText="share screen",E.setAttribute("style","text-align: center; height: 25px; line-height: 25px; border-radius: 4px 4px 0 0; background: #D4D2D4; border-bottom: solid 1px #B9B8B9;");const i=document.createElement("div");i.setAttribute("style","width: 100%; height: 500px; padding: 15px 25px ; box-sizing: border-box;");const o=document.createElement("div");o.innerText="Agora Web Screensharing wants to share the contents of your screen with webdemo.agorabeckon.com. Choose what you'd like to share.",o.setAttribute("style","height: 12%;");const _=document.createElement("div");_.setAttribute("style","width: 100%; height: 80%; background: #FFF; border: solid 1px #CBCBCB; display: flex; flex-wrap: wrap; justify-content: space-around; overflow-y: scroll; padding: 0 15px; box-sizing: border-box;");const s=document.createElement("div");s.setAttribute("style","display: flex; justify-content: space-between; padding: 16px 0;");const c=document.createElement("button");c.innerHTML="cancel",c.setAttribute("style","width: 85px;"),c.onclick=()=>{document.body.removeChild(T);const e=new Error("NotAllowedError");e.name="NotAllowedError",r(e)};let a=t;const A=document.createElement("div");if(t){const e=document.createElement("input");e.setAttribute("type","checkbox");const t=document.createElement("span");e.setAttribute("style","margin-right: 6px;"),t.innerText="Share audio",e.checked=a,e.onchange=()=>{a=e.checked},A.appendChild(e),A.appendChild(t)}s.appendChild(A),s.appendChild(c),i.appendChild(o),i.appendChild(_),i.appendChild(s);const T=document.createElement("div");T.setAttribute("style","position: fixed; z-index: 99999999; top: 50%; left: 50%; width: 620px; height: 525px; background: #ECECEC; border-radius: 4px; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%);"),T.appendChild(E),T.appendChild(i),document.body.appendChild(T),e.map((e=>{if(e.id){const t=document.createElement("div");t.setAttribute("style","width: 30%; height: 160px; padding: 20px 0; text-align: center;box-sizing: content-box;");let r=e.thumbnail;try{const{width:e}=r.getSize();e>1920&&(r=r.resize({width:1920}))}catch(e){throw e&&e.message.startsWith("Illegal invocation")&&console.error("Operate thumbnail error, please try to set contextIsolation: false. (https://github.com/electron/electron/issues/34953)"),e}t.innerHTML='<div style="height: 120px; display: table-cell; vertical-align: middle;"><img style="width: 100%; background: #333333; box-shadow: 1px 1px 1px 1px rgba(0, 0, 0, 0.2);" src='+r.toDataURL()+' /></div><span style="\theight: 40px; line-height: 40px; display: inline-block; width: 70%; word-break: keep-all; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;">'+(e.name.replace(/[\u00A0-\u9999<>\&]/g,(function(e){return"&#"+e.charCodeAt(0)+";"}))+"</span>"),t.onclick=()=>{document.body.removeChild(T),n({sourceId:e.id,audio:a})},_.appendChild(t)}}))}))}let Ye=null;function xe(){if(Ye)return Ye;if(window.electron)return Ye=window.electron;if(!window.require)return null;try{return Ye=window.require("electron"),Ye}catch(e){return null}}let Xe=function(e){return e.CREATE_CLIENT="createClient",e.CHECK_SYSTEM_REQUIREMENTS="checkSystemRequirements",e.SET_AREA="setArea",e.PRELOAD="PRELOAD",e.CHECK_VIDEO_TRACK_IS_ACTIVE="checkVideoTrackIsActive",e.CHECK_AUDIO_TRACK_IS_ACTIVE="checkAudioTrackIsActive",e.CREATE_MIC_AUDIO_TRACK="createMicrophoneAudioTrack",e.CREATE_CUSTOM_AUDIO_TRACK="createCustomAudioTrack",e.CREATE_BUFFER_AUDIO_TRACK="createBufferSourceAudioTrack",e.CREATE_CAM_VIDEO_TRACK="createCameraVideoTrack",e.CREATE_CUSTOM_VIDEO_TRACK="createCustomVideoTrack",e.CREATE_MIC_AND_CAM_TRACKS="createMicrophoneAndCameraTracks",e.CREATE_SCREEN_VIDEO_TRACK="createScreenVideoTrack",e.SET_ENCRYPTION_CONFIG="Client.setEncryptionConfig",e.START_PROXY_SERVER="Client.startProxyServer",e.STOP_PROXY_SERVER="Client.stopProxyServer",e.SET_PROXY_SERVER="Client.setProxyServer",e.SET_TURN_SERVER="Client.setTurnServer",e.SET_CLIENT_ROLE="Client.setClientRole",e.SET_LOW_STREAM_PARAMETER="Client.setLowStreamParameter",e.ENABLE_DUAL_STREAM="Client.enableDualStream",e.DISABLE_DUAL_STREAM="Client.disableDualStream",e.JOIN="Client.join",e.LEAVE="Client.leave",e.PUBLISH="Client.publish",e.UNPUBLISH="Client.unpublish",e.SUBSCRIBE="Client.subscribe",e.MASS_SUBSCRIBE="Client.massSubscribe",e.MASS_UNSUBSCRIBE="Client.massUnsubscribe",e.UNSUBSCRIBE="Client.unsubscribe",e.RENEW_TOKEN="Client.renewToken",e.SET_REMOTE_VIDEO_STREAM_TYPE="Client.setRemoteVideoStreamType",e.SET_STREAM_FALLBACK_OPTION="Client.setStreamFallbackOption",e.ENABLE_AUDIO_VOLUME_INDICATOR="Client.enableAudioVolumeIndicator",e.SEND_CUSTOM_REPORT_MESSAGE="Client.sendCustomReportMessage",e.INSPECT_VIDEO_CONTENT="Client.inspectVideoContent",e.STOP_INSPECT_VIDEO_CONTENT="Client.stopInspectVideoContent",e.JOIN_FALLBACK_TO_PROXY="Client._joinFallbackToProxy",e.ON_LIVE_STREAM_WARNING="Client.onLiveStreamWarning",e.ON_LIVE_STREAM_ERROR="Client.onLiveStreamingError",e.START_LIVE_STREAMING="Client.startLiveStreaming",e.SET_LIVE_TRANSCODING="Client.setLiveTranscoding",e.STOP_LIVE_STREAMING="Client.stopLiveStreaming",e.START_CHANNEL_MEDIA_RELAY="Client.startChannelMediaRelay",e.UPDATE_CHANNEL_MEDIA_RELAY="Client.updateChannelMediaRelay",e.STOP_CHANNEL_MEDIA_RELAY="Client.stopChannelMediaRelay",e.REQUEST_CONFIG_DISTRIBUTE="_config-distribute-request",e.SET_CONFIG_DISTRIBUTE="_configDistribute",e.LOCAL_TRACK_SET_MUTED="LocalTrack.setMute",e.LOCAL_AUDIO_TRACK_PLAY="LocalAudioTrack.play",e.LOCAL_AUDIO_TRACK_PLAY_IN_ELEMENT="LocalAudioTrack.playInElement",e.LOCAL_AUDIO_TRACK_STOP="LocalAudioTrack.stop",e.LOCAL_AUDIO_TRACK_SET_VOLUME="LocalAudioTrack.setVolume",e.MIC_AUDIO_TRACK_SET_DEVICE="MicrophoneAudioTrack.setDevice",e.BUFFER_AUDIO_TRACK_START="BufferSourceAudioTrack.startProcessAudioBuffer",e.BUFFER_AUDIO_TRACK_STOP="BufferSourceAudioTrack.stopProcessAudioBuffer",e.BUFFER_AUDIO_TRACK_PAUSE="BufferSourceAudioTrack.pauseProcessAudioBuffer",e.BUFFER_AUDIO_TRACK_RESUME="BufferSourceAudioTrack.resumeProcessAudioBuffer",e.BUFFER_AUDIO_TRACK_SEEK="BufferSourceAudioTrack.seekAudioBuffer",e.LOCAL_VIDEO_TRACK_PLAY="LocalVideoTrack.play",e.LOCAL_VIDEO_TRACK_STOP="LocalVideoTrack.stop",e.LOCAL_VIDEO_TRACK_GET_VIDEO_VISIBLE="LocalVideoTrack.getVideoElementVisibleStatus",e.LOCAL_VIDEO_TRACK_BEAUTY="LocalVideoTrack.setBeautyEffect",e.LOCAL_VIDEO_SEND_SEI_DATA="LocalVideoTrack.sendSeiData",e.CAM_VIDEO_TRACK_SET_DEVICE="CameraVideoTrack.setDevice",e.CAM_VIDEO_TRACK_SET_ENCODER_CONFIG="CameraVideoTrack.setEncoderConfiguration",e.REMOTE_VIDEO_TRACK_PLAY="RemoteVideoTrack.play",e.REMOTE_VIDEO_TRACK_STOP="RemoteVideoTrack.stop",e.REMOTE_VIDEO_TRACK_GET_VIDEO_VISIBLE="RemoteVideoTrack.getVideoElementVisibleStatus",e.REMOTE_AUDIO_TRACK_PLAY="RemoteAudioTrack.play",e.REMOTE_AUDIO_TRACK_STOP="RemoteAudioTrack.stop",e.REMOTE_AUDIO_SET_VOLUME="RemoteAudioTrack.setVolume",e.REMOTE_AUDIO_SET_OUTPUT_DEVICE="RemoteAudioTrack.setOutputDevice",e.GET_MEDIA_STREAM_TRACK="Track.getMediaStreamTrack",e.STREAM_TYPE_CHANGE="streamTypeChange",e.CONNECTION_STATE_CHANGE="connectionStateChange",e.LOAD_CONFIG_FROM_LOCALSTORAGE="loadConfigFromLocalStorage",e.IMAGE_MODERATION_UPLOAD="imageModerationUpload",e}({}),Je=function(e){return e.TRACER="tracer",e}({});function je(e){return Le(e.timeout,"config.timeout",0,1e5),Le(e.timeoutFactor,"config.timeoutFactor",0,100,!1),Le(e.maxRetryCount,"config.maxRetryConfig",0,1/0),Le(e.maxRetryTimeout,"config.maxRetryTimeout",0,1/0),!0}function Qe(e){return de(e.codec,"config.codec",["vp8","vp9","av1","h264","h265"]),de(e.mode,"config.mode",["rtc","live","p2p"]),void 0!==e.audioCodec&&de(e.audioCodec,"config.audioCodec",["opus","pcmu","pcma","g722"]),void 0!==e.proxyServer&&De(e.proxyServer,"config.proxyServer",1,1e4),void 0!==e.turnServer&&$e(e.turnServer),void 0!==e.httpRetryConfig&&je(e.httpRetryConfig),void 0!==e.websocketRetryConfig&&je(e.websocketRetryConfig),!0}let ze=function(e){return e[e.AUDIENCE_LEVEL_LOW_LATENCY=1]="AUDIENCE_LEVEL_LOW_LATENCY",e[e.AUDIENCE_LEVEL_ULTRA_LOW_LATENCY=2]="AUDIENCE_LEVEL_ULTRA_LOW_LATENCY",e[e.AUDIENCE_LEVEL_SYNC_LATENCY=3]="AUDIENCE_LEVEL_SYNC_LATENCY",e}({}),qe=function(e){return e.LEAVE="LEAVE",e.NETWORK_ERROR="NETWORK_ERROR",e.SERVER_ERROR="SERVER_ERROR",e.UID_BANNED="UID_BANNED",e.FALLBACK="FALLBACK",e.IP_BANNED="IP_BANNED",e.CHANNEL_BANNED="CHANNEL_BANNED",e.LICENSE_MISSING="LICENSE_MISSING",e.LICENSE_EXPIRED="LICENSE_EXPIRED",e.LICENSE_MINUTES_EXCEEDED="LICENSE_MINUTES_EXCEEDED",e.LICENSE_PERIOD_INVALID="LICENSE_PERIOD_INVALID",e.LICENSE_MULTIPLE_SDK_SERVICE="LICENSE_MULTIPLE_SDK_SERVICE",e.LICENSE_ILLEGAL="LICENSE_ILLEGAL",e.TOKEN_EXPIRE="TOKEN_EXPIRE",e}({});function Ze(e){if(!Array.isArray(e)||e.length<1)return!1;try{e.forEach((e=>{if(!e.urls)throw Error()}))}catch(e){return!1}return!0}function $e(e){return De(e.turnServerURL,"turnServerURL"),De(e.username,"username"),De(e.password,"password"),e.udpport&&Le(e.udpport,"udpport",1,99999,!0),e.forceturn&&le(e.forceturn,"forceturn"),e.security&&le(e.security,"security"),e.tcpport&&Le(e.tcpport,"tcpport",1,99999,!0),!0}function et(e){return de(e,"encryptionMode",["aes-128-xts","aes-256-xts","aes-128-ecb","sm4-128-ecb","aes-128-gcm","aes-256-gcm","aes-128-gcm2","aes-256-gcm2","none"]),!0}function tt(e){return de(e,"role",["audience","host"]),!0}function nt(e){return de(e,"transport",["default","auto","relay","sd-rtn"]),!0}function rt(e){return void 0!==e.level&&de(e.level,"level",[1,2,3]),void 0!==e.delay&&Le(e.delay,"delay",0,3e3,!0),!0}let Et=function(e){return e.CONNECTION_STATE_CHANGE="connection-state-change",e.MEDIA_RECONNECT_START="media-reconnect-start",e.MEDIA_RECONNECT_END="media-reconnect-end",e.IS_USING_CLOUD_PROXY="is-using-cloud-proxy",e.USER_JOINED="user-joined",e.USER_LEAVED="user-left",e.USER_PUBLISHED="user-published",e.USER_UNPUBLISHED="user-unpublished",e.USER_INFO_UPDATED="user-info-updated",e.CLIENT_BANNED="client-banned",e.CHANNEL_MEDIA_RELAY_STATE="channel-media-relay-state",e.CHANNEL_MEDIA_RELAY_EVENT="channel-media-relay-event",e.VOLUME_INDICATOR="volume-indicator",e.CRYPT_ERROR="crypt-error",e.ON_TOKEN_PRIVILEGE_WILL_EXPIRE="token-privilege-will-expire",e.ON_TOKEN_PRIVILEGE_DID_EXPIRE="token-privilege-did-expire",e.NETWORK_QUALITY="network-quality",e.STREAM_TYPE_CHANGED="stream-type-changed",e.STREAM_FALLBACK="stream-fallback",e.RECEIVE_METADATA="receive-metadata",e.STREAM_MESSAGE="stream-message",e.LIVE_STREAMING_ERROR="live-streaming-error",e.LIVE_STREAMING_WARNING="live-streaming-warning",e.EXCEPTION="exception",e.ERROR="error",e.P2P_LOST="p2p_lost",e.JOIN_FALLBACK_TO_PROXY="join-fallback-to-proxy",e.CHANNEL_FALLBACK_TO_WEBSOCKET="channel-fallback-to-websocket",e.MEDIA_CONNECTION_TYPE_CHANGE="media-connection-type-change",e.PUBLISHED_USER_LIST="published-user-list",e.CONTENT_INSPECT_CONNECTION_STATE_CHANGE="content-inspect-connection-state-change",e.CONTENT_INSPECT_ERROR="content-inspect-error",e.CONTENT_INSPECT_RESULT="content-inspect-result",e.IMAGE_MODERATION_CONNECTION_STATE_CHANGE="image-moderation-connection-state-change",e}({}),it=function(e){return e.NETWORK_ERROR="NETWORK_ERROR",e.SERVER_ERROR="SERVER_ERROR",e.MULTI_IP="MULTI_IP",e.TIMEOUT="TIMEOUT",e.OFFLINE="OFFLINE",e.LEAVE="LEAVE",e.P2P_FAILED="P2P_FAILED",e.FALLBACK="FALLBACK",e}({}),ot=function(e){return e.ONLINE="ONLINE",e.OFFLINE="OFFLINE",e}({}),_t=function(e){return e.NETWORK_STATE_CHANGE="NETWORK_STATE_CHANGE",e.ONLINE="ONLINE",e.OFFLINE="OFFLINE",e}({});function st(e,t){for(var n=arguments.length,r=new Array(n>2?n-2:0),E=2;E<n;E++)r[E-2]=arguments[E];return 0===e.getListeners(t).length?Promise.reject(new Se(ue.UNEXPECTED_ERROR,"can not emit promise")):new Promise(((n,E)=>{e.emit(t,...r,n,E)}))}function ct(e,t){if(0===e.getListeners(t).length)return Promise.resolve();for(var n=arguments.length,r=new Array(n>2?n-2:0),E=2;E<n;E++)r[E-2]=arguments[E];return st(e,t,...r)}function at(e,t){if(0===e.getListeners(t).length)return null;for(var n=arguments.length,r=new Array(n>2?n-2:0),E=2;E<n;E++)r[E-2]=arguments[E];return At(e,t,...r)}function At(e,t){let n=null,r=null;for(var E=arguments.length,i=new Array(E>2?E-2:0),o=2;o<E;o++)i[o-2]=arguments[o];if(e.emit(t,...i,(e=>{n=e}),(e=>{r=e})),null!==r)throw r;if(null===n)throw new Se(ue.UNEXPECTED_ERROR,"handler is not sync");return n}const Tt=new class extends He{set networkState(e){this.emit(_t.NETWORK_STATE_CHANGE,e,this._networkState),e===ot.ONLINE?this.emit(_t.ONLINE):e===ot.OFFLINE&&(this.onlineWaiter=new Promise((e=>{this.once(_t.ONLINE,(()=>{this.onlineWaiter=void 0,e(ot.ONLINE)}))})),this.emit(_t.OFFLINE)),this._networkState=e}get networkState(){return this._networkState}get isOnline(){return this._networkState===ot.ONLINE}constructor(){super(),Ie(this,"_moduleName","network-indicator"),Ie(this,"_networkState",ot.ONLINE),Ie(this,"onlineWaiter",void 0),window.addEventListener("online",(()=>{this.networkState=ot.ONLINE})),window.addEventListener("offline",(()=>{this.networkState=ot.OFFLINE}))}};function Rt(e,t){const n=e.indexOf(t);-1!==n&&e.splice(n,1)}function It(e){const t=[];return e.forEach((e=>{-1===t.indexOf(e)&&t.push(e)})),t}function Ot(e){"undefined"!=typeof Promise?Promise.resolve().then(e):setTimeout(e,0)}function Nt(e){return JSON.parse(JSON.stringify(e))}function ut(e){try{return Nt(e)}catch(t){return e}}function St(e,t){if(e.length!==t.length)return!1;for(let n=0;n<e.length;n+=1){const r=e[n];if(e.filter((e=>e===r)).length!==t.filter((e=>e===r)).length)return!1}return!0}function Ct(e,t){const n=Object.keys(e),r=[];for(const E of n)e[E]!==t[E]&&r.push(E);return r}const lt={};function dt(e,t){lt[t]||(lt[t]=!0,e())}function Lt(){return"boolean"==typeof isSecureContext?isSecureContext:"https:"===location.protocol||"file:"===location.protocol||"localhost"===location.hostname||"127.0.0.1"===location.hostname||"::1"===location.hostname}function ht(e){const t=window.atob(e),n=new Uint8Array(new ArrayBuffer(t.length));for(let e=0;e<t.length;e+=1)n[e]=t.charCodeAt(e);return n}function Dt(e){let t="";for(let n=0;n<e.length;n+=1)t+=String.fromCharCode(e[n]);return window.btoa(t)}function pt(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:16;let n=(new TextEncoder).encode(e);if(n.length>t)n=n.slice(0,t);else if(n.length<t){const e=new Uint8Array(t);e.set(n),n=e}return n}function ft(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];const r=t.reduce(((e,t)=>e+t.length),0),E=new Uint8Array(new ArrayBuffer(r));let i=0;return t.forEach((e=>{E.set(e,i),i+=e.length})),E}function mt(e){return window.TextEncoder?(new TextEncoder).encode(e).length:e.length}function Mt(e){let t=0;return(/DingTalk/i.test(navigator.userAgent)||/AliApp/i.test(navigator.userAgent))&&e.realFormData&&(e=e.realFormData),e.forEach((e=>{t+="string"==typeof e?mt(e):e.size})),t+138}function Pt(e,t,n){const r=e[t];if(!r||"string"!=typeof r)return[e];e[t]="";const E=mt(JSON.stringify(e));let i=0;const o=[];let _=0;for(let s=0;s<r.length;s++)_+=r.charCodeAt(s)<=127?1:3,_<=n-E||(o[o.length]=Ne(Ne({},e),{},{[t]:r.substring(i,s)}),i=s,_=r.charCodeAt(s)<=127?1:3);return i!==r.length-1&&(o[o.length]=Ne(Ne({},e),{},{[t]:r.substring(i)})),o}function Ut(e){const t=new Se(ue.TIMEOUT,"timeout");return new Promise(((n,r)=>{window.setTimeout((()=>r(t)),e)}))}function gt(e,t){return t===1/0?e:Promise.race([e,Ut(t)])}function yt(e){return new Promise((t=>{window.setTimeout(t,e)}))}function wt(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:7,t=arguments.length>1?arguments[1]:void 0;const n=Math.random().toString(16).substr(2,e).toLowerCase();return n.length===e?"".concat(t).concat(n):"".concat(t).concat(n)+wt(e-n.length,"")}function bt(){return"process-".concat(wt(8,""),"-").concat(wt(4,""),"-").concat(wt(4,""),"-").concat(wt(4,""),"-").concat(wt(12,""))}function Vt(){return wt(32,"").toUpperCase()}function Bt(e){e.getTracks().forEach((e=>{e.stop()}))}const vt=()=>{};const Ft=new class{constructor(){Ie(this,"fnMap",new Map)}throttleByKey(e,t,n,r){for(var E=arguments.length,i=new Array(E>4?E-4:0),o=4;o<E;o++)i[o-4]=arguments[o];if(this.fnMap.has(t)){const E=this.fnMap.get(t);if(E.threshold!==n){E.fn(...E.args),clearTimeout(E.timer);const o=window.setTimeout((()=>{const e=this.fnMap.get(t);e&&e.fn(...e.args),this.fnMap.delete(t)}),n);this.fnMap.set(t,{fn:e,threshold:n,timer:o,args:i,skipFn:r})}else E.skipFn&&E.skipFn(...E.args),this.fnMap.set(t,Ne(Ne({},E),{},{fn:e,args:i,skipFn:r}))}else{const E=window.setTimeout((()=>{const e=this.fnMap.get(t);e&&e.fn(...e.args),this.fnMap.delete(t)}),n);this.fnMap.set(t,{fn:e,threshold:n,timer:E,args:i,skipFn:r})}}},Gt=Ft.throttleByKey.bind(Ft);function Kt(e){return"object"==typeof e&&null!==e&&!(e instanceof RegExp)}function Ht(e,t){if(!Kt(e)||!Kt(t))return t;if(Array.isArray(e)&&!Array.isArray(t)||!Array.isArray(e)&&Array.isArray(t))return t;if(Array.isArray(t)&&Array.isArray(e)){const n=[...e];for(let r=0;r<t.length;r++)n[r]=Ht(e[r],t[r]);return n}{const n=Ne({},e);for(const r in t)Object.prototype.hasOwnProperty.call(t,r)&&(Object.prototype.hasOwnProperty.call(e,r)?n[r]=Ht(e[r],t[r]):n[r]=t[r]);return n}}function Wt(e){return e!==document.body&&document.body.contains(e)}function kt(e,t){let n=[0];if(t&&(n=new Array(t).fill(0)),0===e)return n;let r=0;for(;e>0&&(n[r]=255&e,e>>=8,r++,!t||r!==t););return n}function Yt(e){return"number"==typeof e?e:e.exact||e.ideal||e.max||e.min||0}function xt(e,t){try{return"object"==typeof e&&"object"==typeof t&&JSON.stringify(e)===JSON.stringify(t)}catch(e){return!1}}function Xt(e){const t=e.split("_");return t[0]+t.slice(1).map((e=>e.charAt(0).toUpperCase()+e.slice(1))).join("")}function Jt(e){return!!e&&("object"==typeof e||"function"==typeof e)&&"function"==typeof e.then}function jt(e){const t="0123456789abcdef";function n(e){let n,r="";for(n=0;n<=3;n++)r+=t.charAt(e>>8*n+4&15)+t.charAt(e>>8*n&15);return r}function r(e,t){const n=(65535&e)+(65535&t);return(e>>16)+(t>>16)+(n>>16)<<16|65535&n}function E(e,t,n,E,i,o){return r(function(e,t){return e<<t|e>>>32-t}(r(r(t,e),r(E,o)),i),n)}function i(e,t,n,r,i,o,_){return E(t&n|~t&r,e,t,i,o,_)}function o(e,t,n,r,i,o,_){return E(t&r|n&~r,e,t,i,o,_)}function _(e,t,n,r,i,o,_){return E(t^n^r,e,t,i,o,_)}function s(e,t,n,r,i,o,_){return E(n^(t|~r),e,t,i,o,_)}const c=function(e){let t;const n=1+(e.length+8>>6),r=new Array(16*n);for(t=0;t<16*n;t++)r[t]=0;for(t=0;t<e.length;t++)r[t>>2]|=e.charCodeAt(t)<<t%4*8;return r[t>>2]|=128<<t%4*8,r[16*n-2]=8*e.length,r}(e);let a,A,T,R,I,O=1732584193,N=-271733879,u=-1732584194,S=271733878;for(a=0;a<c.length;a+=16)A=O,T=N,R=u,I=S,O=i(O,N,u,S,c[a+0],7,-680876936),S=i(S,O,N,u,c[a+1],12,-389564586),u=i(u,S,O,N,c[a+2],17,606105819),N=i(N,u,S,O,c[a+3],22,-1044525330),O=i(O,N,u,S,c[a+4],7,-176418897),S=i(S,O,N,u,c[a+5],12,1200080426),u=i(u,S,O,N,c[a+6],17,-1473231341),N=i(N,u,S,O,c[a+7],22,-45705983),O=i(O,N,u,S,c[a+8],7,1770035416),S=i(S,O,N,u,c[a+9],12,-1958414417),u=i(u,S,O,N,c[a+10],17,-42063),N=i(N,u,S,O,c[a+11],22,-1990404162),O=i(O,N,u,S,c[a+12],7,1804603682),S=i(S,O,N,u,c[a+13],12,-40341101),u=i(u,S,O,N,c[a+14],17,-1502002290),N=i(N,u,S,O,c[a+15],22,1236535329),O=o(O,N,u,S,c[a+1],5,-165796510),S=o(S,O,N,u,c[a+6],9,-1069501632),u=o(u,S,O,N,c[a+11],14,643717713),N=o(N,u,S,O,c[a+0],20,-373897302),O=o(O,N,u,S,c[a+5],5,-701558691),S=o(S,O,N,u,c[a+10],9,38016083),u=o(u,S,O,N,c[a+15],14,-660478335),N=o(N,u,S,O,c[a+4],20,-405537848),O=o(O,N,u,S,c[a+9],5,568446438),S=o(S,O,N,u,c[a+14],9,-1019803690),u=o(u,S,O,N,c[a+3],14,-187363961),N=o(N,u,S,O,c[a+8],20,1163531501),O=o(O,N,u,S,c[a+13],5,-1444681467),S=o(S,O,N,u,c[a+2],9,-51403784),u=o(u,S,O,N,c[a+7],14,1735328473),N=o(N,u,S,O,c[a+12],20,-1926607734),O=_(O,N,u,S,c[a+5],4,-378558),S=_(S,O,N,u,c[a+8],11,-2022574463),u=_(u,S,O,N,c[a+11],16,1839030562),N=_(N,u,S,O,c[a+14],23,-35309556),O=_(O,N,u,S,c[a+1],4,-1530992060),S=_(S,O,N,u,c[a+4],11,1272893353),u=_(u,S,O,N,c[a+7],16,-155497632),N=_(N,u,S,O,c[a+10],23,-1094730640),O=_(O,N,u,S,c[a+13],4,681279174),S=_(S,O,N,u,c[a+0],11,-358537222),u=_(u,S,O,N,c[a+3],16,-722521979),N=_(N,u,S,O,c[a+6],23,76029189),O=_(O,N,u,S,c[a+9],4,-640364487),S=_(S,O,N,u,c[a+12],11,-421815835),u=_(u,S,O,N,c[a+15],16,530742520),N=_(N,u,S,O,c[a+2],23,-995338651),O=s(O,N,u,S,c[a+0],6,-198630844),S=s(S,O,N,u,c[a+7],10,1126891415),u=s(u,S,O,N,c[a+14],15,-1416354905),N=s(N,u,S,O,c[a+5],21,-57434055),O=s(O,N,u,S,c[a+12],6,1700485571),S=s(S,O,N,u,c[a+3],10,-1894986606),u=s(u,S,O,N,c[a+10],15,-1051523),N=s(N,u,S,O,c[a+1],21,-2054922799),O=s(O,N,u,S,c[a+8],6,1873313359),S=s(S,O,N,u,c[a+15],10,-30611744),u=s(u,S,O,N,c[a+6],15,-1560198380),N=s(N,u,S,O,c[a+13],21,1309151649),O=s(O,N,u,S,c[a+4],6,-145523070),S=s(S,O,N,u,c[a+11],10,-1120210379),u=s(u,S,O,N,c[a+2],15,718787259),N=s(N,u,S,O,c[a+9],21,-343485551),O=r(O,A),N=r(N,T),u=r(u,R),S=r(S,I);return n(O)+n(N)+n(u)+n(S)}function Qt(e){const t=[];for(let n=0;n<e.length;n+=2)t.push(parseInt(e.slice(n,n+2),16));return Uint8Array.from(t)}let zt=1,qt=console;class Zt{static setLogger(e){qt=e}constructor(e){Ie(this,"lockingPromise",Promise.resolve()),Ie(this,"locks",0),Ie(this,"name",""),Ie(this,"lockId",void 0),this.lockId=zt++,e&&(this.name=e),qt.debug("[lock-".concat(this.name,"-").concat(this.lockId,"] is created."))}get isLocked(){return this.locks>0}lock(e){let t;this.locks+=1,qt.debug("[lock-".concat(this.name,"-").concat(this.lockId,"] is locked, current queue ").concat(this.locks,". ").concat("string"==typeof e?e:""));const n=new Promise((n=>{t=()=>{this.locks-=1,qt.debug("[lock-".concat(this.name,"-").concat(this.lockId,"] is not locked, current queue ").concat(this.locks,". ").concat("string"==typeof e?e:"")),n()}})),r=this.lockingPromise.then((()=>t));return this.lockingPromise=this.lockingPromise.then((()=>n)),r}}function $t(e,t){return function(n,r,E){const i=E.value;if("function"!=typeof i)throw new Error("Cannot use mutex on object property.");return E.value=async function(){const n=this[t];if(!n)throw new Error("mutex property key ".concat(t," doesn't exist on ").concat(e));const E=await n.lock("From ".concat(e,".").concat(r));try{for(var o=arguments.length,_=new Array(o),s=0;s<o;s++)_[s]=arguments[s];return await i.apply(this,_)}finally{E()}},E}}const en={timeout:500,timeoutFactor:1.5,maxRetryCount:1/0,maxRetryTimeout:1e4};function tn(e,t){const n=Math.floor(t.timeout*Math.pow(t.timeoutFactor,e));return Math.min(t.maxRetryTimeout,n)}function nn(e,t,n,r){const E=Object.assign({},en,r);let i=E.timeout;const o=async()=>{await function(e){return new Promise((t=>{window.setTimeout(t,e)}))}(i),i*=E.timeoutFactor,i=Math.min(E.maxRetryTimeout,i)};let _=!1;const s=new Promise((async(r,i)=>{t=t||(()=>!1),n=n||(()=>!0);for(let s=0;s<E.maxRetryCount;s+=1){if(_)return i(new Se(ue.OPERATION_ABORTED));try{const n=await e();if(!t(n,s))return r(n);if(s+1===E.maxRetryCount)return r(n);await o()}catch(e){if(!n(e,s))return i(e);if(s+1===E.maxRetryCount)return i(e);await o()}}}));return s.cancel=()=>_=!0,s}class rn{constructor(e){Ie(this,"input",[]),Ie(this,"size",void 0),this.size=e}add(e){this.input.push(e),this.input.length>this.size&&this.input.splice(0,1)}mean(){return 0===this.input.length?0:this.input.reduce(((e,t)=>e+t))/this.input.length}}let En,on=0,_n=0;function sn(e,n,r,E){return new Promise(((i,o)=>{n.responseType=n.responseType||"json",n.data&&!r?(n.data=JSON.stringify(n.data),on+=mt(n.data)):r&&(n.data.size?on+=n.data.size:n.data instanceof FormData?on+=Mt(n.data):on+=mt(JSON.stringify(n.data))),n.headers=n.headers||{},n.headers["Content-Type"]=n.headers["Content-Type"]||"application/json",n.method="POST",n.url=e,t.request(n).then((e=>{"string"==typeof e.data?_n+=mt(e.data):e.data instanceof ArrayBuffer||e.data instanceof Uint8Array?_n+=e.data.byteLength:_n+=mt(JSON.stringify(e.data)),E&&i({data:e.data,headers:e.headers}),i(e.data)})).catch((e=>{t.isCancel(e)?o(new Se(ue.OPERATION_ABORTED,"cancel token canceled")):"ECONNABORTED"===e.code?o(new Se(ue.NETWORK_TIMEOUT,e.message)):e.response?o(new Se(ue.NETWORK_RESPONSE_ERROR,e.response.status)):o(new Se(ue.NETWORK_ERROR,e.message))}))}))}async function cn(e,t){const n=new Blob([t.data],{type:"buffer"});return await sn(e,Ne(Ne({},t),{},{data:n,headers:{"Content-Type":"application/octet-stream"}}),!0)}function an(){return on}function An(){return _n}function Tn(){on=0,_n=0}class Rn{constructor(e){Ie(this,"_transformStream",void 0),Ie(this,"_readable",void 0),Ie(this,"_writable",void 0),Ie(this,"_reader",void 0),Ie(this,"_writer",void 0),this._transformStream=new TransformStream({transform:e}),this._readable=this._transformStream.readable,this._writable=this._transformStream.writable,this._reader=this._readable.getReader(),this._writer=this._writable.getWriter()}get reader(){return this._reader}get writer(){return this._writer}close(){this.writer.releaseLock(),this._writable.close(),this.reader.cancel(),this.reader.releaseLock(),this._readable.cancel()}}function In(e){if(e.match(/[0-9]+\.[0-9]+\.[0-9]+$/))return e;const t=e.match(/([0-9]+\.[0-9]+\.[0-9]+)\-([0-9]+)/);if(t&&t[1]&&t[2]){const e=t[1],n=t[2];return"".concat(e,".").concat(n)}return"4.0.0.999"}const On=()=>"HTTPS"===(En||En||(En=(window.location.protocol.split(":")[0]||"").toUpperCase(),En)),Nn=()=>void 0!==window.isSecureContext;function un(){return new Promise((e=>{document.body?e():window.addEventListener("load",(()=>e()))}))}const Sn=In("4.22.1"),Cn=function(){try{return!0===JSON.parse("true")}catch(e){return!0}}(),ln=["CHINA","GLOBAL"];let dn=function(e){return e.Default="default",e.Auto="auto",e.Relay="relay",e.SdRtn="sd-rtn",e}({});const Ln=function(){const e="us".concat("erna","me"),t="pa".concat("sswo","rd"),n=["t","s","t"];n.splice(1,0,"e");const r=n.join(""),E=[];for(let e=0;e<6;e++)E.push("1");const i=E.join(""),o={};return o[e]=r,o[t]=i,Object.assign(o,{turnServerURL:"",tcpport:3433,udpport:3478,forceturn:!1})}();window.DEFAULT_TURN_CONFIG=Ln;const hn={ENABLE_PUBLISHED_USER_LIST:!0,MAX_SUBSCRIPTION:50,SUBSCRIBE_AUDIO_FILTER_TOPN:void 0,ENABLE_PUBLISH_AUDIO_FILTER:void 0,ENABLE_USER_LICENSE_CHECK:!0,USE_PUB_RTX:!0,USE_SUB_RTX:!0,DISABLE_FEC:void 0,ENABLE_NTP_REPORT:!1,ENABLE_INSTANT_VIDEO:!1,ENABLE_DATASTREAM_2:!1,ENABLE_USER_AUTO_REBALANCE_CHECK:!0,USE_XR:!0,ENABLE_LOSSBASED_BWE:!0,ENABLE_AUT_CC:!1,ENABLE_CC_FALLBACK:void 0,ENABLE_PREALLOC_PC:!1,SUBSCRIBE_TWCC:!0,PUBLISH_TWCC:!1,ENABLE_SVC:!1,ENABLE_SVC_DEFAULT_CODECS:["H264","VP8","VP9","AV1"],SVC:[],ENABLE_FULL_LINK_AV_SYNC:!1,SVC_MODE:null,PRE_SUB_NUM:2,ENABLE_PRE_SUB:!1,ENABLE_AUT_FEEDBACK:!1},Dn={MIN_FRAME_RATE:1,MAX_FRAME_RATE:30,MAX_THRESHOLD_FRAMERATE:30,BITRATE_MIN_THRESHOLD:100,BITRATE_MAX_THRESHOLD:100,MAX_SCALE:5,BWE_SCALE_UP_THRESHOLD:.6,BWE_SCALE_DOWN_THRESHOLD:.6,PERF_SCALE_UP_THRESHOLD:.7,PERF_SCALE_DOWN_THRESHOLD:.6,MOTION_RESOLUTION_FACTOR:.8,MOTION_BITRATE_FACTOR:.6,DETAIL_FRAMERATE_FACTOR:.8,DETAIL_BITRATE_FACTOR:.6,BALANCE_RESOLUTION_FACTOR:.9,BALANCE_FRAMERATE_FACTOR:.9,BALANCE_BITRATE_FACTOR:.6,OVERUSE_TIMES_THRESHOLD:10,UNDERUSE_TIMES_THRESHOLD:40},pn="v4.22.1-0-g1c8e27e9(9/19/2024, 2:23:30 PM)",fn=Ne(Ne({PROCESS_ID:"",ENCRYPT_AES:!0,AREAS:ln,WEBCS_DOMAIN:["webrtc2-ap-web-1.agora.io","webrtc2-2.ap.sd-rtn.com"],WEBCS_DOMAIN_BACKUP_LIST:["webrtc2-ap-web-3.agora.io","webrtc2-4.ap.sd-rtn.com"],PROXY_CS:["ap-proxy-1.agora.io","ap-proxy-2.agora.io"],CDS_AP:["cds-ap-web-1.agora.io","cds-web-2.ap.sd-rtn.com","cds-ap-web-3.agora.io","cds-web-4.ap.sd-rtn.com"],ACCOUNT_REGISTER:["sua-ap-web-1.agora.io","sua-web-2.ap.sd-rtn.com","sua-ap-web-3.agora.io","sua-web-4.ap.sd-rtn.com"],UAP_AP:["uap-ap-web-1.agora.io","uap-web-2.ap.sd-rtn.com","uap-ap-web-3.agora.io","uap-web-4.ap.sd-rtn.com"],LOG_UPLOAD_SERVER:"logservice.agora.io",EVENT_REPORT_DOMAIN:"statscollector-1.agora.io",EVENT_REPORT_BACKUP_DOMAIN:"web-2.statscollector.sd-rtn.com",ENABLE_EVENT_REPORT:!0,GATEWAY_ADDRESS:[],GATEWAY_WSS_ADDRESS:"",LIVE_STREAMING_ADDRESS:"",HTTP_CONNECT_TIMEOUT:5e3,SIGNAL_REQUEST_TIMEOUT:1e4,REPORT_STATS:!0,UPLOAD_LOG:!1,NOT_REPORT_EVENT:[],PING_PONG_TIME_OUT:10,WEBSOCKET_TIMEOUT_MIN:1e4,EVENT_REPORT_SEND_INTERVAL:3e3,CONFIG_DISTRIBUTE_INTERVAL:3e5,ENABLE_CONFIG_DISTRIBUTE:!0,CANDIDATE_TIMEOUT:5e3,SHOW_REPORT_INVOKER_LOG:!1,JOIN_EXTEND:"",PUB_EXTEND:"",SUB_EXTEND:"",FORCE_TURN:!1,TURN_ENABLE_TCP:!0,TURN_ENABLE_UDP:!0,MAX_UPLOAD_CACHE:50,UPLOAD_CACHE_INTERVAL:2e3,AJAX_REQUEST_CONCURRENT:3,REPORT_APP_SCENARIO:void 0,GATEWAY_DOMAINS:["edge.agora.io","edge.sd-rtn.com"],CONNECT_GATEWAY_WITHOUT_DOMAIN:!1,WORKER_DOMAIN:"edge.agora.io",TURN_DOMAIN:"edge.agora.io",EVENT_REPORT_RETRY:!0,CHROME_FORCE_PLAN_B:!1,AUDIO_SOURCE_VOLUME_UPDATE_INTERVAL:400,AUDIO_SOURCE_AVG_VOLUME_DURATION:3e3,AUDIO_VOLUME_INDICATION_INTERVAL:2e3,VOLUME_VOICE_WEIGHT:10,GET_VOLUME_OF_MUTED_AUDIO_TRACK:!1,STATS_UPDATE_INTERVAL:250,NORMAL_EVENT_QUEUE_CAPACITY:100,CUSTOM_REPORT:!0,CUSTOM_REPORT_LIMIT:20,PROXY_SERVER_TYPE2:"webnginx-proxy.agora.io",PROXY_SERVER_TYPE3:["webrtc-cloud-proxy.sd-rtn.com","webrtc-cloud-proxy.agora.io"],CUSTOM_PUB_ANSWER_MODIFIER:null,CUSTOM_SUB_ANSWER_MODIFIER:null,CUSTOM_PUB_OFFER_MODIFIER:null,CUSTOM_SUB_OFFER_MODIFIER:null,DSCP_TYPE:"high",REMOVE_NEW_CODECS:!0,FRAGEMENT_LENGTH:3,WEBSOCKET_COMPRESS:!1,SIMULCAST:!1,PRELOAD_MEDIA_COUNT:0,CHECK_VIDEO_VISIBLE_INTERVAL:3e4,CHECK_LOCAL_STATS_INTERVAL:250,PROFILE_SWITCH_INTERVAL:2e3,UNSUPPORTED_VIDEO_CODEC:[],ENUMERATE_DEVICES_INTERVAL:!1,ENUMERATE_DEVICES_INTERVAL_TIME:1e4,USE_NEW_TOKEN:!1,CLOSE_AFB_FOR_LOCAL_AP:!0,JOIN_MAX_CONCURRENCY:6,JOIN_WITH_FALLBACK_SIGNAL_PROXY:!0,JOIN_WITH_FALLBACK_MEDIA_PROXY:!0,JOIN_WITH_FALLBACK_MEDIA_PROXY_FORCE:!1,JOIN_GATEWAY_TRY_443PORT_DURATION:2e3,JOIN_GATEWAY_USE_443PORT_ONLY:!1,JOIN_GATEWAY_USE_DUAL_DOMAIN:!0,JOIN_GATEWAY_FALLBACK_PORT:443,USE_TURN_SERVER_OF_GATEWAY:!1,H264_PROFILE_LEVEL_ID:"",USE_NEW_LOG:!1,LOG_VERSION:3,MEDIA_DEVICE_CONSTRAINTS:null,ENCRYPT_PROXY_USERNAME_AND_PSW:!0,SDP_LOGGING:!1,CSP_DETECTED_HOSTNAME_LIST:["agora.io","sd-rtn.com"],REMOTE_AUDIO_TRACK_USES_WEB_AUDIO:!1,LOCAL_AUDIO_TRACK_USES_WEB_AUDIO:!1,BITRATE_ADAPTER_TYPE:"STANDARD_BITRATE",AI_DENOISER_PARAMETERS:{excludedLinks:[]},ADJUST_3A_FROM_PLUGINS:!0,RAISE_H264_BASELINE_PRIORITY:!0,FILTER_SEND_H264_BASELINE:!1,X_GOOGLE_START_BITRATE:void 0,NEW_REPORT_SERVER:!1,NEW_REPORT_SERVER_DOMAINS:["data-reporting.agora.io","data-reporting.agora.io"],VIDEO_INSPECT_WORKER_MESSAGE_LENGTH_LIMIT:3e5,VIDEO_INSPECT_INTERVAL_MINIMUM:1e3,VIDEO_INSPECT_QUALITY_RATIO:.9,VIDEO_INSPECT_WORKER_MANAGER_HOST:"edge.agora.io",VIDEO_INSPECT_WORKER_MANAGER_PORT:"",VIDEO_INSPECT_WORKER_PORT:"",SHOW_VIDEO_INSPECT_WORKER_MESSAGE:!1,STATS_COLLECTOR_PORT:443,FORCE_TURN_TCP:!1,WEBAUDIO_INIT_OPTIONS:void 0,FILTER_VIDEO_FEC:!0,FILTER_AUDIO_FEC:!1,CHROME_DUAL_STREAM_USE_ENCODING:!0,DISABLE_DUAL_STREAM_USE_ENCODING:!1,EXTENSION_USAGE_UPLOAD_INTERVAL:1e4,ICE_RESTART:!0,ICE_RESTART_INTERVAL:1e4,NEW_ICE_RESTART:!1,TRANSMITTER_INITIAL_RTT:30,TRANSMITTER_INITIAL_RTO:30,TRANSMITTER_MAX_BATCH_ACK_COUNT:2,TRANSMITTER_MAX_RTO:500,DATACHANNEL_COMPRESS:!1,FINGERPRINT:null,DC_JOIN_WITH_FAILBACK:5e3,ENABLE_VIDEO_FRAME_CALLBACK:!0,VIDEO_FREEZE_DURATION:500,SPATIALIZER_PARAMETERS:{},UPLOAD_LOG_INTERVAL:3e3,UPLOAD_LOG_REQUEST_RETRY_INTERVAL:2e3,UPLOAD_LOG_REQUEST_MAX_RETRY_INTERVAL:2e4,UPLOAD_LOG_TRY_INTERVAL_WHILE_OFF:5e3,UPLOAD_LOG_RETRY_INTERVAL_V1:1e4,UPLOAD_LOG_TWICE_RETRY_INTERVAL_V1:200,UPLOAD_LOG_LENGTH_EACH_TIME:10,APP_TYPE:0,DISABLE_WEBAUDIO:!1,CHANNEL_MEDIA_RELAY_SERVERS:void 0,KEEP_LAST_FRAME:!0,FORWARD_P2P_CREATION:!0,SYNC_GROUP:!0,BLOCK_LOCAL_CLIENT:!1,AP_AREA:!0,ENABLE_ENCODED_TRANSFORM:!1,ENABLE_VIDEO_SEI:!1,IMAGE_MODERATION_WORKER_HOST:"edge.agora.io",IMAGE_MODERATION_WORKER_MESSAGE_LENGTH_LIMIT:3e5,IMAGE_MODERATION_INTERVAL_MINIMUM:1e3,SHOW_IMAGE_MODERATION_WORKER_MESSAGE:!1,IMAGE_MODERATION_QUALITY_RATIO:.9,IMAGE_MODERATION_UPLOAD_REPORT_INTERVAL:5e3,SHOW_GLOBAL_CLIENT_LIST:!1,DATASTREAM_MAX_RETRANSMITS:10,TCP_CANDIDATE_ONLY:!1,EXTERNAL_SIGNAL_REQUEST_TIMEOUT:3e3,SHOW_P2P_LOG:!1,MAX_P2P_TIMEOUT:3e4,P2P_TOKEN_INTERVAL:1e3,SHOW_DATASTREAM2_LOG:!1,RESTRICTION_SET_PLAYBACK_DEVICE:!0,USE_PURE_ENCRYPTION_MASTER_KEY:!1,ACCOUNT_REGISTER_RETRY_TIMEOUT:1,ACCOUNT_REGISTER_RETRY_RATIO:2,ACCOUNT_REGISTER_RETRY_TIMEOUT_MAX:6e4,ACCOUNT_REGISTER_RETRY_COUNT_MAX:1e5,AUDIO_CONTEXT:null,WEBCS_BACKUP_CONNECT_TIMEOUT:6e3,PLAYER_STATE_DEFER:2e3,SIGNAL_REQUEST_WATCH_INTERVAL:1e3,FILEPATH_LENMAX:255,DUALSTREAM_OPERATION_CHECK:!0,MEDIA_ELEMENT_EXISTS_DEPTH:3,SHIM_CANDIDATE:!1,LEAVE_MSG_TIMEOUT:2e3,STATS_FILTER:{transportId:!0,googTrackId:!0},FILTER_VIDEO_CODEC:[],USE_NEW_NETWORK_CONFIG:!1,AUTO_RESET_AUDIO_ROUTE:!1,PLUGIN_INFO:[],OVERUSE_DETECTOR_PARAMS:Dn,ENABLE_AG_ADAPTATION:!0,FORCE_AG_HIGH_FRAMERATE:!1,FORCE_SUPPORT_AG_ADAPTATION:!1,CUSTOM_ADAPTATION_DEFAULT_MODE:"",ENCODER_CONFIG_LIMIT:{},CAMERA_CAPTURE_CONFIG:void 0,HIDE_NO_POSTER:!1,AP_CACHE_NUM:10,AP_UPDATE_INTERVAL:12e4,AP_CACHE_LIFETIME:12e4,MAX_PRELOAD_ASYNC_LENGTH:3,ENABLE_PRELOAD:!0,DISABLE_SCREEN_SHARE_REMB:!1},hn),{},{USE_CANDIDATE_FROM_AP_DETAIL:!1,AP_REQUEST_DETAIL:void 0});function mn(e,t,n){var r;Object.keys(fn).includes(e)&&(!n&&Object.keys(Pn).includes(e)||(fn[e]=t,"ENABLE_VIDEO_SEI"===e&&!0===t&&(fn.ENABLE_ENCODED_TRANSFORM=!0),"USE_NEW_NETWORK_CONFIG"===e&&t&&(r=!!t,fn.USE_NEW_NETWORK_CONFIG=r,r&&(fn.WEBCS_DOMAIN=["webrtc2-2.ap.sd-rtn.com"],fn.WEBCS_DOMAIN_BACKUP_LIST=["webrtc2-4.ap.sd-rtn.com"],fn.CDS_AP=["cds-web-2.ap.sd-rtn.com","cds-web-4.ap.sd-rtn.com"],fn.ACCOUNT_REGISTER=["sua-web-2.ap.sd-rtn.com","sua-web-4.ap.sd-rtn.com"],fn.EVENT_REPORT_DOMAIN="web-2.statscollector.sd-rtn.com",fn.EVENT_REPORT_BACKUP_DOMAIN="statscollector-1.agora.io",fn.GATEWAY_DOMAINS=["edge.sd-rtn.com"])),"ENABLE_PRE_SUB"===e&&t&&(fn.ENABLE_INSTANT_VIDEO=!0,fn.ENABLE_PREALLOC_PC=!0),"ENABLE_SVC"===e&&t&&(fn.ENABLE_AUT_CC=!0)))}function Mn(e){return fn[e]}Cn||(fn.WEBCS_DOMAIN=["ap-web-1-oversea.agora.io","ap-web-1-north-america.agora.io"],fn.WEBCS_DOMAIN_BACKUP_LIST=["ap-web-2-oversea.agora.io","ap-web-2-north-america.agora.io"],fn.PROXY_CS=["proxy-ap-web-oversea.agora.io","proxy-ap-web-america.agora.io"],fn.CDS_AP=["cds-ap-web-oversea.agora.io","cds-ap-web-america.agora.io","cds-ap-web-america2.agora.io"],fn.ACCOUNT_REGISTER=["sua-ap-web-oversea.agora.io","sua-ap-web-america.agora.io","sua-ap-web-america2.agora.io"],fn.UAP_AP=["uap-ap-web-oversea.agora.io","uap-ap-web-america.agora.io","uap-ap-web-america2.agora.io"],fn.LOG_UPLOAD_SERVER="logservice-oversea.agora.io",fn.EVENT_REPORT_DOMAIN="statscollector-1-oversea.agora.io",fn.EVENT_REPORT_BACKUP_DOMAIN="statscollector-2-oversea.agora.io",fn.PROXY_SERVER_TYPE3="webrtc-cloud-proxy.agora.io",fn.AREAS=["NORTH_AMERICA","OVERSEA"]);const Pn={};var Un=function(e){return e.SET_SESSION_ID="SET_SESSION_ID",e.SET_P2P_ID="SET_P2P_id",e.SET_DC_ID="SET_DC_id",e.SET_UID="SET_UID",e.SET_INT_UID="SET_INT_UID",e.SET_PUB_ID="SET_PUB_ID",e.SET_CLOUD_PROXY_SERVER_MODE="SET_CLOUD_PROXY_SERVER_MODE",e.KEY_METRIC_CLIENT_CREATED="KEY_METRIC_CLIENT_CREATED",e.KEY_METRIC_JOIN_START="KEY_METRIC_JOIN_START",e.AVOID_JOIN_START="AVOID_JOIN_START",e.KEY_METRIC_JOIN_END="KEY_METRIC_JOIN_END",e.KEY_METRIC_REQUEST_AP_START="KEY_METRIC_REQUEST_AP_START",e.KEY_METRIC_REQUEST_AP_END="KEY_METRIC_REQUEST_AP_END",e.KEY_METRIC_JOIN_GATEWAY_START="KEY_METRIC_JOIN_GATEWAY_START",e.KEY_METRIC_JOIN_GATEWAY_END="KEY_METRIC_JOIN_GATEWAY_END",e.KEY_METRIC_PEER_CONNECTION_START="KEY_METRIC_PEER_CONNECTION_START",e.KEY_METRIC_PEER_CONNECTION_END="KEY_METRIC_PEER_CONNECTION_END",e.KEY_METRIC_DESCRIPTION_START="KEY_METRIC_DESCRIPTION_START",e.KEY_METRIC_ICE_CONNECTION_END="KEY_METRIC_ICE_CONNECTION_END",e.KEY_METRIC_SIGNAL_CHANNEL_OPEN="KEY_METRIC_SIGNAL_CHANNEL_OPEN",e.KEY_METRIC_PUBLISH="KEY_METRIC_PUBLISH",e.KEY_METRIC_SUBSCRIBE="KEY_METRIC_SUBSCRIBE",e.RECORD_JOIN_CHANNEL_SERVICE="RECORD_JOIN_CHANNEL_SERVICE",e.RESET_JOIN_CHANNEL_SERVICE_RECORDS="RESET_JOIN_CHANNEL_SERVICE_RECORDS",e.RESET_KEY_METRICS="RESET_KEY_METRICS",e.SET_USE_P2P="SET_USE_P2P",e.SET_TRANSPORT_TYPE="SET_TRANSPORT_TYPE",e}(Un||{});class gn{constructor(e,t,n,r){Ie(this,"state",void 0),this.state={codec:e,audioCodec:t,mode:n,clientId:r,sessionId:null,p2pId:0,dcId:0,pubId:0,subId:0,avoidJoinStart:0,keyMetrics:{publish:[],subscribe:[]},joinChannelServiceRecords:[],cloudProxyServerMode:"disabled",useP2P:!1,p2pTransport:dn.Default}}dispatch(e){this.state=function(e,t){switch(t.type){case Un.SET_SESSION_ID:return Ne(Ne({},e),{},{sessionId:t.sessionId});case Un.SET_P2P_ID:return Ne(Ne({},e),{},{p2pId:t.p2pId});case Un.SET_UID:return Ne(Ne({},e),{},{uid:t.uid});case Un.SET_INT_UID:return Ne(Ne({},e),{},{intUid:t.intUid});case Un.SET_PUB_ID:return Ne(Ne({},e),{},{pubId:t.pubId});case Un.KEY_METRIC_CLIENT_CREATED:return Ne(Ne({},e),{},{keyMetrics:Ne(Ne({},e.keyMetrics),{},{clientCreated:t.metric})});case Un.KEY_METRIC_JOIN_START:return Ne(Ne({},e),{},{keyMetrics:Ne(Ne({},e.keyMetrics),{},{joinStart:t.metric})});case Un.AVOID_JOIN_START:return Ne(Ne({},e),{},{avoidJoinStart:t.avoidJoinStart});case Un.KEY_METRIC_JOIN_END:return Ne(Ne({},e),{},{keyMetrics:Ne(Ne({},e.keyMetrics),{},{joinEnd:t.metric})});case Un.KEY_METRIC_REQUEST_AP_START:return Ne(Ne({},e),{},{keyMetrics:Ne(Ne({},e.keyMetrics),{},{requestAPStart:t.metric})});case Un.KEY_METRIC_REQUEST_AP_END:return Ne(Ne({},e),{},{keyMetrics:Ne(Ne({},e.keyMetrics),{},{requestAPEnd:t.metric})});case Un.KEY_METRIC_JOIN_GATEWAY_START:return Ne(Ne({},e),{},{keyMetrics:Ne(Ne({},e.keyMetrics),{},{joinGatewayStart:t.metric})});case Un.KEY_METRIC_JOIN_GATEWAY_END:return Ne(Ne({},e),{},{keyMetrics:Ne(Ne({},e.keyMetrics),{},{joinGatewayEnd:t.metric})});case Un.KEY_METRIC_PEER_CONNECTION_START:return Ne(Ne({},e),{},{keyMetrics:Ne(Ne({},e.keyMetrics),{},{peerConnectionStart:t.metric})});case Un.KEY_METRIC_PEER_CONNECTION_END:return Ne(Ne({},e),{},{keyMetrics:Ne(Ne({},e.keyMetrics),{},{peerConnectionEnd:t.metric})});case Un.KEY_METRIC_DESCRIPTION_START:return Ne(Ne({},e),{},{keyMetrics:Ne(Ne({},e.keyMetrics),{},{descriptionStart:t.metric})});case Un.KEY_METRIC_SIGNAL_CHANNEL_OPEN:return Ne(Ne({},e),{},{keyMetrics:Ne(Ne({},e.keyMetrics),{},{signalChannelOpen:t.metric})});case Un.KEY_METRIC_ICE_CONNECTION_END:return Ne(Ne({},e),{},{keyMetrics:Ne(Ne({},e.keyMetrics),{},{iceConnectionEnd:t.metric})});case Un.KEY_METRIC_PUBLISH:{const n=e.keyMetrics.publish,r=n.findIndex((e=>e.trackId===t.metric.trackId));return-1!==r?(n[r]=Ne(Ne({},n[r]),t.metric),Ne(Ne({},e),{},{keyMetrics:Ne(Ne({},e.keyMetrics),{},{publish:[...n]})})):Ne(Ne({},e),{},{keyMetrics:Ne(Ne({},e.keyMetrics),{},{publish:[...e.keyMetrics.publish,t.metric]})})}case Un.KEY_METRIC_SUBSCRIBE:{const n=e.keyMetrics.subscribe,r=n.findIndex((e=>e.userId===t.metric.userId&&e.type===t.metric.type));return-1!==r?(n[r]=Ne(Ne({},n[r]),t.metric),Ne(Ne({},e),{},{keyMetrics:Ne(Ne({},e.keyMetrics),{},{subscribe:[...n]})})):Ne(Ne({},e),{},{keyMetrics:Ne(Ne({},e.keyMetrics),{},{subscribe:[...e.keyMetrics.subscribe,t.metric]})})}case Un.SET_CLOUD_PROXY_SERVER_MODE:return e.cloudProxyServerMode=t.mode,e;case Un.RECORD_JOIN_CHANNEL_SERVICE:return"number"!=typeof t.index?e.joinChannelServiceRecords=[...e.joinChannelServiceRecords,t.record]:(e.joinChannelServiceRecords[t.index]=Ne(Ne({},e.joinChannelServiceRecords[t.index]),t.record),e.joinChannelServiceRecords=[...e.joinChannelServiceRecords]),e;case Un.RESET_JOIN_CHANNEL_SERVICE_RECORDS:return e.joinChannelServiceRecords=[],e;case Un.RESET_KEY_METRICS:return e.keyMetrics={publish:[],subscribe:[]},e;case Un.SET_USE_P2P:return Ne(Ne({},e),{},{useP2P:t.val});case Un.SET_TRANSPORT_TYPE:return Ne(Ne({},e),{},{p2pTransport:t.val});default:return e}}(this.state,e)}set sessionId(e){this.dispatch({type:Un.SET_SESSION_ID,sessionId:e})}get sessionId(){return this.state.sessionId}set codec(e){this.state.codec=e}get codec(){return this.state.codec}get mode(){return this.state.mode}get audioCodec(){return this.state.audioCodec}get clientId(){return this.state.clientId}set p2pId(e){this.dispatch({type:Un.SET_P2P_ID,p2pId:e})}get p2pId(){return this.state.p2pId}set dcId(e){this.dispatch({type:Un.SET_DC_ID,dcId:e})}get dcId(){return this.state.dcId}set uid(e){this.dispatch({type:Un.SET_UID,uid:e})}get uid(){return this.state.uid}set intUid(e){this.dispatch({type:Un.SET_INT_UID,intUid:e})}get intUid(){return this.state.intUid}set pubId(e){this.dispatch({type:Un.SET_PUB_ID,pubId:e})}get pubId(){return this.state.pubId}set cloudProxyServerMode(e){this.dispatch({type:Un.SET_CLOUD_PROXY_SERVER_MODE,mode:e})}get cloudProxyServerMode(){return this.state.cloudProxyServerMode}set useP2P(e){this.dispatch({type:Un.SET_USE_P2P,val:e})}get useP2P(){return this.state.useP2P}set p2pTransport(e){this.dispatch({type:Un.SET_TRANSPORT_TYPE,val:e})}get p2pTransport(){return this.state.p2pTransport}clientCreated(){this.dispatch({type:Un.KEY_METRIC_CLIENT_CREATED,metric:Date.now()})}joinStart(){this.dispatch({type:Un.KEY_METRIC_JOIN_START,metric:Date.now()})}joinEnd(){this.dispatch({type:Un.KEY_METRIC_JOIN_END,metric:Date.now()})}requestAPStart(){this.dispatch({type:Un.KEY_METRIC_REQUEST_AP_START,metric:Date.now()})}requestAPEnd(){this.dispatch({type:Un.KEY_METRIC_REQUEST_AP_END,metric:Date.now()})}joinGatewayStart(){this.dispatch({type:Un.KEY_METRIC_JOIN_GATEWAY_START,metric:Date.now()})}joinGatewayEnd(){this.dispatch({type:Un.KEY_METRIC_JOIN_GATEWAY_END,metric:Date.now()})}peerConnectionStart(){this.dispatch({type:Un.KEY_METRIC_PEER_CONNECTION_START,metric:Date.now()})}peerConnectionEnd(){this.dispatch({type:Un.KEY_METRIC_PEER_CONNECTION_END,metric:Date.now()})}descriptionStart(){this.dispatch({type:Un.KEY_METRIC_DESCRIPTION_START,metric:Date.now()})}signalChannelOpen(){this.dispatch({type:Un.KEY_METRIC_SIGNAL_CHANNEL_OPEN,metric:Date.now()})}iceConnectionEnd(){this.dispatch({type:Un.KEY_METRIC_ICE_CONNECTION_END,metric:Date.now()})}publish(e,t,n,r){this.dispatch({type:Un.KEY_METRIC_PUBLISH,metric:Ne(Ne({trackId:e,type:t},n&&{publishStart:n}),r&&{publishEnd:r})})}subscribe(e,t,n,r,E,i,o){this.dispatch({type:Un.KEY_METRIC_SUBSCRIBE,metric:Ne(Ne(Ne(Ne(Ne({userId:e,type:t},n&&{subscribeStart:n}),r&&{subscribeEnd:r}),E&&{firstFrame:E}),i&&{streamAdded:i}),o&&{firstDecoded:o})})}massSubscribe(e,t,n,r){e.forEach((e=>{this.dispatch({type:Un.KEY_METRIC_SUBSCRIBE,metric:Ne(Ne(Ne({userId:e.userId,type:e.type},t&&{subscribeStart:t}),n&&{subscribeEnd:n}),r&&{firstFrame:r})})}))}get keyMetrics(){return this.state.keyMetrics}recordJoinChannelService(e,t){"gateway"===e.service&&Array.isArray(e.urls)&&(e.urls=e.urls.map((e=>e.replace(/(\d+)-\d+-\d+-(\d+)/,"$1-*-*-$2"))));try{return"number"!=typeof t?(this.dispatch({type:Un.RECORD_JOIN_CHANNEL_SERVICE,record:Ne(Ne({},e),{},{sessionId:this.sessionId,cloudProxyMode:this.cloudProxyServerMode,uid:this.uid})}),this.state.joinChannelServiceRecords.length-1):(t<0||t>=this.state.joinChannelServiceRecords.length||this.dispatch({type:Un.RECORD_JOIN_CHANNEL_SERVICE,record:e,index:t}),t)}catch(e){return 0}}resetJoinChannelServiceRecords(){this.dispatch({type:Un.RESET_JOIN_CHANNEL_SERVICE_RECORDS})}resetKeyMetrics(){this.dispatch({type:Un.RESET_KEY_METRICS})}get joinChannelServiceRecords(){try{return this.state.joinChannelServiceRecords}catch(e){return[]}}get avoidJoinStart(){return this.state.avoidJoinStart}set avoidJoinStart(e){this.dispatch({type:Un.AVOID_JOIN_START,avoidJoinStart:e})}}let yn=function(e){return e.h264="h264",e.h265="h265",e.vp8="vp8",e.vp9="vp9",e.av1="av1",e}({}),wn=function(e){return e.opus="opus",e.pcma="pcma",e.pcmu="pcmu",e.g722="g722",e}({});const bn=128,Vn=96,Bn=1e3,vn=10;let Fn=0;async function Gn(e,t,n){const r=Array.from(n).reduce(((e,t)=>e+t),0),E={serverTs:0,seq:Fn++,length:n.length,checkSum:r},i=new Uint8Array(kt(r,2)),o=new ArrayBuffer(vn),_=new DataView(o);_.setUint32(0,E.serverTs),_.setUint16(4,E.seq),_.setUint16(6,E.length),_.setUint16(8,E.checkSum);const s=16-n.length%16;n=ft(n,new Uint8Array(s));const c=await window.crypto.subtle.encrypt({name:"AES-GCM",iv:e,tagLength:bn,additionalData:i},t,n);return ft(new Uint8Array(o),new Uint8Array(c))}async function Kn(e,t,n){const r=n.subarray(0,vn),E=r.slice(8,vn),i=(E[0]<<8)+E[1],o=(r[6]<<8)+r[7],_=await window.crypto.subtle.decrypt({name:"AES-GCM",iv:e,tagLength:bn,additionalData:new Uint8Array(kt(i,2))},t,n.subarray(vn));return n=new Uint8Array(_).subarray(0,o)}async function Hn(e,t,n){const r=await window.crypto.subtle.importKey("raw",t,"PBKDF2",!1,["deriveBits","deriveKey"]),E="aes-128-gcm2"===e?128:256,i=await window.crypto.subtle.deriveBits({name:"PBKDF2",iterations:Bn,hash:"SHA-256",salt:n},r,E+Vn);return new Uint8Array(i).subarray(E/8)}async function Wn(e,t,n){const r=await window.crypto.subtle.importKey("raw",t,"PBKDF2",!1,["deriveBits","deriveKey"]),E="aes-128-gcm2"===e?128:256;return await window.crypto.subtle.deriveKey({name:"PBKDF2",iterations:Bn,hash:"SHA-256",salt:n},r,{name:"AES-GCM",length:E},!0,["encrypt","decrypt"])}export{Xe as AgoraAPIName,Je as AgoraAPITag,Se as AgoraRTCError,ue as AgoraRTCErrorCode,ze as AudienceLatencyLevelType,wn as AudioCodec,pn as BUILD,T as BrowserName,A as BrowserOS,vn as CRYPTO_HEADER_LENGTH,Bn as CRYPTO_ITERATIONS,Vn as CRYPTO_IV_LENGTH,bn as CRYPTO_TAG_LENGTH,Et as ClientEvents,qe as ConnectionDisconnectedReason,ln as DEFAULT_AREAS,en as DEFAULT_RETRY_CONFIG,Ln as DEFAULT_TURN_CONFIG,He as EventEmitter,Cn as IS_GLOBAL_VERSION,hn as MUTABLE_GATEWAY_PARAMS,fn as MUTABLE_PARAMS,Pn as MUTABLE_PARAMS_LOCAL_CACHE,_t as NETWORK_INDICATOR_EVENTS,ot as NETWORK_STATE,Dn as OVERUSE_DETECTOR_PARAMS,dn as P2PTransportType,Zt as PromiseMutex,rn as Rolling,gn as SDKStore,Ke as SHA256,Rn as TransformStreamAdapter,Sn as VERSION,yn as VideoCodec,it as WebSocketQuitReason,ve as appendBuffer,$t as atom,ht as base64ToUint8Array,Fe as bufferToStr,fe as checkIsEqual,pe as checkValidArray,le as checkValidBoolean,he as checkValidConstrainLong,de as checkValidEnum,Le as checkValidNumber,De as checkValidString,St as compareArray,a as concurrent,Yt as constrainLongToNumber,pt as convertStringToFixedLengthUint8Array,r as createDefer,Ce as createInternalUnexpectedError,E as createResolvedDefer,i as createTimeoutDefer,Kn as decryptAesGcm,l as deprecatedGetBrowserInfo,Lt as detectSecureContext,Pt as dividePackage,un as domLoadedPromise,Ve as elementVisibleChecker,At as emitAsInvoker,at as emitAsInvokerNoResponse,st as emitAsPromise,ct as emitAsPromiseNoResponse,Gn as encryptAesGcm,Ge as encryptRSA,Hn as generateIv,Wn as generateKey,bt as generateProcessID,Vt as generateSessionID,Pe as getBigInt64,Ue as getBigUint64,N as getBrowserInfo,L as getBrowserOS,d as getBrowserVersion,Ct as getChangedKeysFromObject,se as getChromeKernelVersion,xe as getElectronInstance,An as getHTTPRecvBytes,an as getHTTPSendBytes,Be as getMessageEncoding,Mt as getMultiUnilbsFormDataByteLength,h as getOSWithVersion,Mn as getParameter,wt as getRandomString,tn as getRetryWaitTime,mt as getUTF8StringByteLength,It as getUniqueList,Qt as hexToBytes,b as isAboveChrome,v as isAboveEdge,F as isAboveFirefox,K as isAboveIOS,J as isAboveIOS13,$ as isAboveIOS15_1,ee as isAboveIOS15_2,q as isAboveIOS16_0,k as isAboveOpera,G as isAboveSafari,Ae as isAndroid,Te as isAndroidChromium,V as isBelowChrome,H as isBelowIOS,j as isBelowIOS14_6,W as isBelowSafari,B as isBetweenBrowser,m as isChrome,Y as isChromeBelow90,ce as isChromeKernel,Qe as isClientConfig,tt as isClientRole,rt as isClientRoleOptions,P as isEdge,We as isElectron,me as isEmpty,et as isEncryptionMode,U as isFirefox,ae as isHarmonyOS,On as isHttpsEnv,w as isIOS,X as isIOS13,Q as isIOS15,Z as isIOS15_0,z as isIOS16,Wt as isInPage,te as isIpadOS,xt as isJsonEqual,re as isLegacyChrome,x as isMacOS,_e as isMobile,oe as isMobileAndTabletType,g as isOpera,nt as isP2PTransport,Re as isPageRecording,Jt as isPromise,y as isQQBrowser,Ze as isRTCIceServerList,je as isRetryConfiguration,M as isSafari,Ee as isSupportedPC,p as isSupportedWkWebview,$e as isTurnServerConfig,Me as isValidString,f as isWebKit,ne as isWechatBrowser,ie as isWindows,D as isWkWebview,Nt as jsonClone,jt as md5,Tt as networkIndicator,Ot as nextTick,vt as noop,sn as post,cn as postProtobuf,Ht as recursiveMerge,Bt as releaseStream,Rt as removeItemFromList,Tn as resetHTTPBytesCount,nn as retryable,dt as runOnce,ut as safeCloneJson,ge as setBigInt64,ye as setBigUint64,mn as setParameter,kt as shiftAndPush,ke as showElectronSelectSourceWindow,Nn as supportIsSecureContext,Gt as throttleByKey,Ut as timeout,Xt as toCamelCase,In as transferVersion,u as transformBrowserName,S as transformBrowserVersion,C as transformOSName,ft as uint8ArrayConcat,Dt as uint8ArrayToBase64,c as updateConcurrentNumber,yt as wait,gt as withTimeout};
|