jiuyiUniapp/jiuyi/node_modules/@tencentcloud/chat/modules/group-module.js

2 lines
133 KiB
JavaScript

"use strict";const e=2,t=4,s=10,o=11,r=12,i=14,n=17,a=20,u=23,p=26,l=27,c=29,h=30,g=34;class m{constructor(e=0,t=0){this.high=e,this.low=t}equal(e){return null!==e&&this.low===e.low&&this.high===e.high}toString(){var e=Number(this.high).toString(16);let t=Number(this.low).toString(16);if(t.length<8){let e=8-t.length;for(;e;)t="0"+t,e--}return e+t}}const d={TEST:{CHINA:{DEFAULT:"wss://wss-dev.tim.qq.com"},OVERSEA:{DEFAULT:"wss://wss-dev.tim.qq.com"},SINGAPORE:{DEFAULT:"wss://wsssgp-dev.im.qcloud.com"},KOREA:{DEFAULT:"wss://wsskr-dev.im.qcloud.com"},GERMANY:{DEFAULT:"wss://wssger-dev.im.qcloud.com"},IND:{DEFAULT:"wss://wssind-dev.im.qcloud.com"},JPN:{DEFAULT:"wss://wssjpn-dev.im.qcloud.com"},USA:{DEFAULT:"wss://wssusa-dev.im.qcloud.com"},INDONESIA:{DEFAULT:"wss://wssidn-dev.im.qcloud.com"}},PRODUCTION:{CHINA:{DEFAULT0:"wss://*w4c.my-imcloud.com",DEFAULT:"wss://wss.im.qcloud.com",BACKUP:"wss://wss.tim.qq.com",STAT:"https://events.im.qcloud.com",ANYCAST:"wss://162.14.13.203"},OVERSEA:{DEFAULT0:"wss://*w4c.my-imcloud.com",DEFAULT:"wss://wss.im.qcloud.com",BACKUP:"wss://wss.my-imcloud.com",STAT:"https://api.my-imcloud.com"},SINGAPORE:{DEFAULT0:"wss://*w4s.my-imcloud.com",DEFAULT:"wss://wsssgp.im.qcloud.com",BACKUP:"wss://wsssgp.my-imcloud.com",STAT:"https://apisgp.my-imcloud.com",ANYCAST:"wss://162.14.19.159"},KOREA:{DEFAULT0:"wss://*w4k.my-imcloud.com",DEFAULT:"wss://wsskr.im.qcloud.com",BACKUP:"wss://wsskr.my-imcloud.com",STAT:"https://apikr.my-imcloud.com",ANYCAST:"wss://162.14.13.104"},GERMANY:{DEFAULT0:"wss://*w4g.my-imcloud.com",DEFAULT:"wss://wssger.im.qcloud.com",BACKUP:"wss://wssger.my-imcloud.com",STAT:"https://apiger.my-imcloud.com",ANYCAST:"wss://162.14.3.17"},IND:{DEFAULT0:"wss://*w4i.my-imcloud.com",DEFAULT:"wss://wssind.my-imcloud.com",BACKUP:"wss://wssind.im.qcloud.com",STAT:"https://apiind.my-imcloud.com",ANYCAST:"wss://162.14.18.188"},JPN:{DEFAULT0:"wss://*w4j.my-imcloud.com",DEFAULT:"wss://wssjpn.im.qcloud.com",BACKUP:"wss://wssjpn.my-imcloud.com",STAT:"https://apijpn.my-imcloud.com"},USA:{DEFAULT0:"wss://*w4u.my-imcloud.com",DEFAULT:"wss://wssusa.im.qcloud.com",BACKUP:"wss://wssusa.my-imcloud.com",STAT:"https://apiusa.my-imcloud.com",ANYCAST:"wss://162.14.10.42"},INDONESIA:{DEFAULT0:"wss://*w4y.my-imcloud.com",DEFAULT:"wss://wssidn.im.qcloud.com",BACKUP:"wss://wssidn.my-imcloud.com",STAT:"https://apiidn.my-imcloud.com",ANYCAST:"wss://43.129.34.169"}}},_={ANDROID:2,IOS:3,MAC:4,WEB:7,WX_MP:8,QQ_MP:9,TT_MP:10,BAIDU_MP:11,ALI_MP:12,IPAD:13,UNI_NATIVE_APP:15,DONUT_NATIVE_APP:19,NS_NATIVE_APP:20,RN_NATIVE_APP:21},f="CHINA",M={HOST:{CURRENT:{DEFAULT:"wss://wss.im.qcloud.com",STAT:"https://events.im.qcloud.com"},setCurrent(e=f){this.CURRENT=d.PRODUCTION[e]}},NAME:{OPEN_IM:"openim",OPEN_IM_MSG_EXT:"openim_msg_ext_http_svc",GRP:"group_open_http_svc",GRP_AV:"group_open_avchatroom_http_svc",GRP_COMMUNITY:"million_group_open_http_svc",GRP_ATTR:"group_open_attr_http_svc",FD:"sns",PROFILE:"profile",RECENT_CONTACT:"recentcontact",PIC:"openpic",BIG_GRP_NO_AUTH:"group_open_http_noauth_svc",BIG_GRP_POLLING:"group_open_long_polling_http_svc",BIG_GRP_POLLING_NO_AUTH:"group_open_long_polling_http_noauth_svc",IM_OPEN_STAT:"imopenstat",WEB_IM:"webim",IM_COS_SIGN:"im_cos_sign_svr",CUSTOM_UPLOAD:"im_cos_msg",HEARTBEAT:"heartbeat",IM_OPEN_PUSH:"im_open_push",IM_OPEN_STATUS:"im_open_status",IM_LONG_MSG:"im_long_msg",IM_CONFIG_MANAGER:"im_sdk_config_mgr",STAT_SERVICE:"StatSvc",OVERLOAD_PUSH:"OverLoadPush",IM_MSG_AUDIT_MGR:"im_msg_audit_mgr",TUIROOM_SVR:"tui_room_svr",IM_OPEN_TRANSLATE:"im_open_translate",IM_OPEN_SPEECH:"im_open_speech",MSG_SEARCH:"message_search",FOLLOW:"follow",OFFLINE_PUSH_REPORT:"offline_push_report",IM_MSG_LOGIC:"im_msg_db_logic"}},I={SEARCH_GRP_SNS:new m(0,Math.pow(2,1)).toString(),AV_HISTORY_MSG:new m(0,Math.pow(2,2)).toString(),GRP_COMMUNITY:new m(0,Math.pow(2,3)).toString(),MSG_TO_SPECIFIED_GRP_MBR:new m(0,Math.pow(2,4)).toString(),AV_MBR_LIST:new m(0,Math.pow(2,6)).toString(),USER_STATUS:new m(0,Math.pow(2,7)).toString(),CONV_MARK:new m(0,Math.pow(2,9)).toString(),CONV_GROUP:new m(0,Math.pow(2,10)).toString(),AV_BAN_MBR:new m(0,Math.pow(2,11)).toString(),MSG_EXT:new m(0,Math.pow(2,13)).toString(),GRP_COUNTER:new m(0,Math.pow(2,15)).toString(),PLUGIN_TRANSLATE:new m(Math.pow(2,6)).toString(),PLUGIN_VOICE_TO_TEXT:new m(Math.pow(2,7)).toString(),PLUGIN_CS:new m(Math.pow(2,8)).toString(),PLUGIN_PUSH:new m(Math.pow(2,9)).toString(),PLUGIN_BOT:new m(Math.pow(2,10)).toString(),MSG_REACTION:new m(Math.pow(2,16)).toString(),FOLLOW:new m(Math.pow(2,20)).toString()},y="group_profile",D="group_member_profile",L=["Type","Name","Introduction","Notification","FaceUrl","Owner_Account","CreateTime","InfoSeq","LastInfoTime","LastMsgTime","MemberNum","MaxMemberNum","ApplyJoinOption","NextMsgSeq","ShutUpAllMember","InviteJoinOption"],C=["Role","JoinTime","MsgSeq","MsgFlag"],G=(M.HOST.setCurrent(f),"undefined"!=typeof wx&&"function"==typeof wx.getSystemInfoSync&&Boolean(wx.getSystemInfoSync().fontSizeSetting)),b=(G&&wx.createGamePortal,"undefined"!=typeof qq&&"function"==typeof qq.getSystemInfoSync&&Boolean(qq.getSystemInfoSync().fontSizeSetting)),A="undefined"!=typeof tt&&"function"==typeof tt.getSystemInfoSync&&Boolean(tt.getSystemInfoSync().fontSizeSetting),T="undefined"!=typeof swan&&"function"==typeof swan.getSystemInfoSync&&Boolean(swan.getSystemInfoSync().fontSizeSetting),S="undefined"!=typeof my&&"function"==typeof my.getSystemInfoSync&&Boolean(my.getSystemInfoSync().fontSizeSetting),v="undefined"!=typeof jd&&"function"==typeof jd.getSystemInfoSync,P="undefined"!=typeof uni&&"undefined"==typeof window&&"function"==typeof uni.requireNativePlugin,R=G&&"object"==typeof wx.miniapp,$=G||b||A||T||S||P||v,E="undefined"==typeof window&&!$&&"undefined"!=typeof global&&void 0!==global.NativeScriptGlobals,w="undefined"!=typeof global&&(void 0!==global.nativeModuleProxy||void 0!==global.ReactNative),U="undefined"!=typeof uni?!$:"undefined"!=typeof window&&!$&&!w,N=(b?qq:A?tt:T?swan:S?my:G?wx:P?uni:v&&jd,U&&window&&window.navigator&&window.navigator.userAgent||""),q=/(micromessenger|webbrowser)/i.test(N),k=function(){let e="WEB";return q?e="WEB":b?e="QQ_MP":A?e="TT_MP":T?e="BAIDU_MP":S?e="ALI_MP":G?e=R?"DONUT_NATIVE_APP":"WX_MP":P?e="UNI_NATIVE_APP":E?e="NS_NATIVE_APP":w&&(e="RN_NATIVE_APP"),_[e]}(),O=(!function(){var e=N.match(/OS (\d+)_/i);e&&e[1]&&e[1]}(),function(){var e,t,s=N.match(/Android (\d+)(?:\.(\d+))?(?:\.(\d+))*/i);s&&(e=s[1]&&parseFloat(s[1]),t=s[2]&&parseFloat(s[2]),e)&&t&&parseFloat(s[1]+"."+s[2])}(),/MSIE/.test(N)||-1<N.indexOf("Trident")&&-1<N.indexOf("rv:11.0"));let F,x;!function(){var e=/MSIE\s(\d+)\.\d/.exec(N),e=e&&parseFloat(e[1]);!e&&/Trident\/7.0/i.test(N)&&/rv:11.0/.test(N)}(),F="undefined"!=typeof console?console:"undefined"!=typeof global&&global.console?global.console:"undefined"!=typeof window&&window.console?window.console:{};const V=function(){},H=["assert","clear","count","debug","dir","dirxml","error","group","groupCollapsed","groupEnd","info","log","profile","profileEnd","table","time","timeEnd","timeStamp","trace","warn"];let j=H.length;for(;j--;)x=H[j],console[x]||(F[x]=V);var K=F;const B="TIMTextElem",J="TIMImageElem",W="TIMSoundElem",z="TIMFileElem",X="TIMFaceElem",Y="TIMVideoFileElem",Q="TIMLocationElem",Z="TIMGroupTipElem",ee="TIMGroupSystemNoticeElem",te="TIMCustomElem",se="TIMRelayElem",oe="High",re="Normal",ie="Low",ne="Lowest",ae="C2C",ue="GROUP",pe="TOPIC",le="@TIM#SYSTEM",ce="Private",he="Public",ge="ChatRoom",me="AVChatRoom",de="Community",_e="Room",fe="Live",Me="Owner",Ie="Admin",ye="Member",De="Custom",Le=1,Ce=3,Ge=4,be=5,Ae="AcceptAndNotify",Te="AlreadyInGroup",Se="__kImSDK_MesssageAtALL__",ve=function(){return(new Date).getTime()+0},Pe={JPG:1,JPEG:1,GIF:2,PNG:3,BMP:4,UNKNOWN:255},Re={NICK:"Tag_Profile_IM_Nick",GENDER:"Tag_Profile_IM_Gender",BIRTHDAY:"Tag_Profile_IM_BirthDay",LOCATION:"Tag_Profile_IM_Location",SELFSIGNATURE:"Tag_Profile_IM_SelfSignature",ALLOWTYPE:"Tag_Profile_IM_AllowType",LANGUAGE:"Tag_Profile_IM_Language",AVATAR:"Tag_Profile_IM_Image",MESSAGESETTINGS:"Tag_Profile_IM_MsgSettings",ADMINFORBIDTYPE:"Tag_Profile_IM_AdminForbidType",LEVEL:"Tag_Profile_IM_Level",ROLE:"Tag_Profile_IM_Role"},$e="JoinedSuccess",Ee="WaitAdminApproval",we="@TGS#_",Ue="@TOPIC#_",Ne=Object.prototype.hasOwnProperty;function qe(e){if(null==e)return!0;if("boolean"==typeof e)return!1;if("number"==typeof e)return 0===e;if("string"==typeof e)return 0===e.length;if("function"==typeof e)return 0===e.length;if(Array.isArray(e))return 0===e.length;if(e instanceof Error)return""===e.message;if(He(e)){for(const t in e)if(Ne.call(e,t))return!1;return!0}return!!(ke(e)||Oe(e)||Fe(e))&&0===e.size}const ke=function(e){return"map"===Je(e)},Oe=function(e){return"set"===Je(e)},Fe=function(e){return"file"===Je(e)},xe=function(e){return null!==e&&("number"==typeof e&&!isNaN(+e)||"object"==typeof e&&e.constructor===Number)},Ve=function(e){return"string"==typeof e},He=function(e){if("object"!=typeof e||null===e)return!1;e=Object.getPrototypeOf(e);if(null===e)return!0;let t=e;for(;null!==Object.getPrototypeOf(t);)t=Object.getPrototypeOf(t);return e===t},je=function(e){return"function"==typeof Array.isArray?Array.isArray(e):"array"===Je(e)},Ke=function(e){return void 0===e},Be=function(e){return je(e)||null!==e&&"object"==typeof e},Je=function(e){return Object.prototype.toString.call(e).match(/^\[object (.*)\]$/)[1].toLowerCase()},We=(Date.now||(Date.now=function(){return(new Date).getTime()}),function(s,o,r,i){if(!Be(s)||!Be(o))return 0;let n=0;var a,u=Object.keys(o);for(let e=0,t=u.length;e<t;e++)if(a=u[e],!(Ke(o[a])||r&&r.includes(a)))if(Be(s[a])&&Be(o[a]))n+=We(s[a],o[a],r,i);else{if(i&&i.includes(o[a]))continue;s[a]!==o[a]&&(s[a]=o[a],n+=1)}return n}),ze=function(e){e=e||99999999;return Math.round(Math.random()*e)},Xe={},Ye=function(e){if(0===Object.getOwnPropertyNames(e).length)return Object.create(null);var t,s=Array.isArray(e)?[]:Object.create(null);for(const o in e)null!==e[o]?void 0!==e[o]?(t=typeof e[o],0<=["string","number","function","boolean"].indexOf(t)?s[o]=e[o]:s[o]=Ye(e[o])):s[o]=void 0:s[o]=null;return s};function Qe(o,e){if(!je(o)||!je(e))return!1;let r=!1;return e.forEach(({key:t,value:e})=>{var s=o.find(e=>e.key===t);s?s.value!==e&&(s.value=e,r=!0):(o.push({key:t,value:e}),r=!0)}),r}function Ze(e){return qe(e)?[]:e.filter(e=>!0===e.isModified)}function et(e){return qe(e)?[]:e.filter(e=>!1===e.isModified)}const st=e=>e===me,ot=({type:e,groupID:t})=>e===de||(""+t).startsWith(we)&&!(""+t).includes(Ue),rt=e=>(""+e).startsWith(we)&&(""+e).includes(Ue);function it(e){return e.split(Ue)[0]}function nt(){return!O&&!$}function at(e,t=!0,s=!0){var o=Date.now();return t?s?o-e+" ms":Math.round((o-e)/1e3)+" s":s?o-e:Math.round((o-e)/1e3)}let ut=0;function pt(){return nt()?"%c Chat %c":"Chat"}function lt(){(e=new Date).setTime(ve());var e;return e.toLocaleTimeString("en-US",{hour12:!1})+"."+function(e){let t;switch(e.toString().length){case 1:t="00"+e;break;case 2:t="0"+e;break;default:t=e}return t}(e.getMilliseconds())}const ct={arguments2String(s){let o="";if(1===s.length)o=s[0];else for(let e=0,t=s.length;e<t;e++){if(Be(s[e]))try{o+=s[e]instanceof Error?JSON.stringify(s[e],["message","code"]):JSON.stringify(s[e])}catch(e){o+=e?e.message:"";break}else o+=s[e];o+=" "}return o},_exec(e,t){nt()?K[e](pt(),"background:#0abf5b; padding:1px; border-radius:3px; color: #fff","background:transparent",lt(),t):K[e](`${pt()} ${lt()} `+t)},d:function(){var e;ut<=-1&&(e=this.arguments2String(arguments),this._exec("debug",e))},l:function(){var e;ut<=0&&(e=this.arguments2String(arguments),this._exec("log",e))},log:function(){var e;ut<=0&&(e=this.arguments2String(arguments),this._exec("log",e))},i:function(){var e;ut<=1&&(e=this.arguments2String(arguments),this._exec("info",e))},w:function(){var e;ut<=2&&(e=this.arguments2String(arguments),this._exec("warn",e))},e:function(){var e;ut<=3&&(e=this.arguments2String(arguments),this._exec("error",e))},setLevel:function(e){e<4&&this._exec("log","set level from "+ut+" to "+e),ut=e},getLevel:function(){return ut}},ht=function(e){return{code:0,data:e||{}}};class gt extends Error{constructor(e){super();var{code:e,message:t,data:s}=e;this.code=e,t?this.message=t:this._getErrMsg&&(this.message=this._getErrMsg(this.code)),this.data=s||{}}}const mt=2101,dt=2114,_t=2600,ft=2602,Mt=2603,It=2620,yt=2621,Dt=2623,Lt=2660,Ct=2661,Gt=2662,bt=2681,At=2683,Tt=2684,St=2685,vt=2686,Pt=2687,Rt=2805,$t=2903,Et=3122,wt=3123,Ut="onMessageReceived",Nt="onMessageModified",qt="onMessageRevoked",kt="onGroupListUpdated",Ot="groupAttributesUpdated",Ft="onGroupCounterUpdated",xt="onTopicUpdated",Vt="error";let Ht=null;const jt=function(e){return Promise.resolve(ht(e))},Kt=function(e,t=!1){if(e instanceof gt)return t&&null!==Ht&&Ht.emit(Vt,e),Promise.reject(e);if(e instanceof Error){const e=new gt({code:$t});return t&&null!==Ht&&Ht.emit(Vt,e),Promise.reject(e)}return Ke(e)||Ke(e.code)?Promise.reject(new gt({code:$t})):(e=new gt(e),t&&null!==Ht&&Ht.emit(Vt,e),Promise.reject(e))},Bt={A2KEY_AND_TINYID_UPDATED:"_inner1",CLOUD_CONFIG:"_inner2",PROFILE_UPDATED:"_inner3",CONV_SYNC_COMPLETED:"_inner4",C2C_UNREAD_HANDLE_COMPLETED:"_inner5"},Jt="messageReceivedGroup",Wt="messageReceivedGroupAVPush",zt="messageReceivedGroupAVPull",Xt={info:4,warning:5,error:6},Yt={wifi:1,"2g":2,"3g":3,"4g":4,"5g":5,unknown:6,none:7,online:8},Qt={login:4,plugin_search:16,plugin_translate:16,plugin_voice_to_text:16,plugin_cs:16,plugin_push:16,plugin_bot:16,plugin_emoji_reaction:16};class Zt{constructor(e){this._n="SSOLogData",this.eventType=Qt[e]||0,this.timestamp=0,this.networkType=8,this.code=0,this.message="",this.moreMessage="",this.extension=e,this.costTime=0,this.duplicate=!1,this.level=4,this.uiPlatform=void 0,this._sentFlag=!1,this._startts=ve()}static bindEventStatModule(e){Zt.prototype._eventStatModule=e}static bindNetMonitorModule(e){Zt.prototype._netMonitorModule=e}updateTimeStamp(){this.timestamp=ve()}start(e){return this._startts=e,this}end(e=!1){if(!this._sentFlag){if(this._netMonitorModule){const e=this._netMonitorModule.getNetworkType();this.setNetworkType(e)}var t=ve();0===this.costTime&&(this.costTime=t-this._startts),this.setMoreMessage(`startts:${this._startts} endts:`+t),e?(this._sentFlag=!0,this._eventStatModule&&this._eventStatModule.pushIn(this)):setTimeout(()=>{this._sentFlag=!0,this._eventStatModule&&this._eventStatModule.pushIn(this)},0)}}setError(t){if(t instanceof Error){if(!this._sentFlag){let e=!0;if(e=this._netMonitorModule?this._netMonitorModule.isOnline():e)t.code&&this.setCode(t.code),t.message&&this.setMoreMessage(t.message);else{const t=Rt;this.setCode(t)}this.setLevel("error")}}else ct.w(this._n+".setError value not instanceof Error, please check!");return this}setCode(e){return Ke(e)||this._sentFlag||("ECONNABORTED"===e&&(this.code=103),xe(e)?this.code=e:ct.w(this._n+".setCode value not a number, please check!",e,typeof e)),this}setMessage(e){return Ke(e)||this._sentFlag||(xe(e)&&(this.message=e.toString()),Ve(e)&&(this.message=e)),this}setCostTime(e){return this.costTime=e,this}setLevel(e){return Ke(e)||this._sentFlag||(this.level=Xt[e]),this}setMoreMessage(e){return qe(this.moreMessage)?this.moreMessage=""+e:this.moreMessage+=" "+e,this}setNetworkType(e){return Ke(e)?ct.w(this._n+".setNetworkType value is undefined, please check!"):(e=Yt[e.toLowerCase()],Ke(e)||(this.networkType=e)),this}getStartTs(){return this._startts}setUIPlatform(e){return this.uiPlatform=e,this}setExtension(e){return this.extension=e,this}setEventType(e){return this.eventType=e,this}}const es="send_group_msg",ts="get_joined_group_list",ss="get_group_self_member_info",os="create_group",rs="destroy_group",is="modify_group_base_info",ns="apply_join_group",as="apply_join_group_noauth",us="quit_group",ps="get_group_public_info",ls="change_group_owner",cs="handle_apply_join_group",hs="handle_invite_join_permission_group",gs="handle_invite_join_group",ms="group_msg_recall",ds="msg_read_report",_s="group_msg_get",fs="get_group_msg_receipt",Ms="group_msg_receipt",Is="get_group_msg_receipt_detail",ys="get_pendency",Ds="deletemsg",Ls="get_msg",Cs="get_msg_noauth",Gs="get_online_member_num",bs="delete_group_ramble_msg_by_seq",As="modify_group_msg",Ts="set_group_attr",Ss="modify_group_attr",vs="delete_group_attr",Ps="clear_group_attr",Rs="get_group_attr",$s="group_set_key_values",Es="group_get_key_values",ws="batch_get_group_notify",Us="update_group_counter",Ns="get_group_counter",qs="get_group_member_info",ks="get_members",Os="get_specified_group_member_info",Fs="add_group_member",xs="delete_group_member",Vs="ban_group_member",Hs="modify_group_member_info",js="modify_user_info",Ks="unSend",Bs="success",Js="notStart",Ws="resolved",zs="rejected";class Xs{constructor(e){this.type=B,this.content={text:e.text||""}}setText(e){this.content.text=e}sendable(){return 0!==this.content.text.length}}function Ys(t,s,o,r=[]){if(t){let e=t;return s&&(t.startsWith("http://")?e=t.replace(/^http:\/\/[^/]+/,s):t.startsWith("https://")&&(e=t.replace(/^https:\/\/[^/]+/,s))),e=o&&-1===e.indexOf("authKey=")&&eo(e,r)?-1<e.indexOf("?")?e+"&authKey="+o:e+"?authKey="+o:e}}function Qs(e,t,s=[]){if(e===Y)eo((t[0].content||t[0].payload).snapshotUrl,s)&&(t[0].content?(t[0].content.snapshotUrl=Zs(t[0].content.snapshotUrl),t[0].content.thumbUrl=Zs(t[0].content.thumbUrl)):(t[0].payload.snapshotUrl=Zs(t[0].payload.snapshotUrl),t[0].payload.thumbUrl=Zs(t[0].payload.thumbUrl)));else if(e===z)eo((t[0].content||t[0].payload).fileUrl,s)&&(t[0].content?t[0].content.fileUrl=Zs(t[0].content.fileUrl):t[0].payload.fileUrl=Zs(t[0].payload.fileUrl));else if(e===se){const{downloadKey:e="",messageList:s=[]}=t[0].content||t[0].payload;qe(e)&&s.forEach(e=>{Qs(e.messageBody[0].type,e.messageBody)})}return t}function Zs(e){if(!e)return e;if(-1===e.indexOf("authKey="))return e;var e=e.split("?"),t=e[1].split("&");let s=0;for(let e=0;e<t.length;e++)if(-1<t[e].indexOf("authKey=")){s=e;break}return t.splice(s,1),0<t.length?e[0]+"?"+t.join("&"):e[0]}function eo(e,t){let s=!1;if(e){var e=e.match(/:\/\/([0-9]?\.)?(.[^/:]+)/),o=e&&e[2]||"";if(o.includes("rich-dev"))return!0;for(let e=0;e<t.length;e++)if(o.endsWith(t[e])){s=!0;break}}return s}class to{constructor(e,t,s,o){this._imageMemoryURL="",this._fileDownloadProxy=t,this._authKey=s,this._fileDNList=o,$||w?this.createImageDataASURL(e.file):this.createImageDataASURLInWeb(e.file),this._initImageInfoModel(),this.type=J,this._percent=0,this.content={imageFormat:e.imageFormat||Pe.UNKNOWN,uuid:e.uuid,imageInfoArray:[]},this.initImageInfoArray(e.imageInfoArray),this._autoFixUrl()}_initImageInfoModel(){const t=this;this._ImageInfoModel=function(e){this.instanceID=ze(9999999),this.sizeType=e.type||0,this.type=0,this.size=e.size||0,this.width=e.width||0,this.height=e.height||0,this.imageUrl=e.imageUrl||e.url||"",this.url=Ys(e.url||t._imageMemoryURL,t._fileDownloadProxy,t._authKey,t._fileDNList)},this._ImageInfoModel.prototype={setSizeType(e){this.sizeType=e},setType(e){this.type=e},setImageUrl(e){e&&(this.imageUrl=e)},getImageUrl(){return this.imageUrl}}}initImageInfoArray(e){let t=0,s=null,o;for(;t<=2;)o=Ke(e)||Ke(e[t])?{type:0,size:0,width:0,height:0,url:""}:e[t],(s=new this._ImageInfoModel(o)).setSizeType(t+1),s.setType(t),this.addImageInfo(s),t++;this.updateAccessSideImageInfoArray()}updateImageInfoArray(t){var s,o=this.content.imageInfoArray.length;for(let e=0;e<o;e++)s=this.content.imageInfoArray[e],t[e].size&&(s.size=t[e].size),t[e].url&&s.setImageUrl(t[e].url),t[e].width&&(s.width=t[e].width),t[e].height&&(s.height=t[e].height)}_autoFixUrl(){var t=this.content.imageInfoArray.length;let s="",o="";var r=["http","https"],i=null;for(let e=0;e<t;e++)this.content.imageInfoArray[e].url&&""!==(i=this.content.imageInfoArray[e]).imageUrl&&(o=i.imageUrl.slice(0,i.imageUrl.indexOf("://")+1),s=i.imageUrl.slice(i.imageUrl.indexOf("://")+1),r.indexOf(o)<0&&(o="https:"),this.content.imageInfoArray[e].setImageUrl([o,s].join("")))}updatePercent(e){this._percent=e,1<this._percent&&(this._percent=1)}updateImageFormat(e){this.content.imageFormat=Pe[e.toUpperCase()]||Pe.UNKNOWN}createImageDataASURLInWeb(e){void 0!==e&&0<e.files.length&&(this._imageMemoryURL=window.URL.createObjectURL(e.files[0]))}createImageDataASURL(e){e&&e.url&&(this._imageMemoryURL=e.url)}replaceImageInfo(e,t){this.content.imageInfoArray[t]instanceof this._ImageInfoModel||(this.content.imageInfoArray[t]=e)}addImageInfo(e){3<=this.content.imageInfoArray.length||this.content.imageInfoArray.push(e)}updateAccessSideImageInfoArray(){var e=this.content.imageInfoArray,{width:t=0,height:s=0}=e[0];if(0!==t&&0!==s){var o=e,r=o[2];o[2]=o[1],o[1]=r;for(let e=0;e<o.length;e++)o[e].setType(e);Object.assign(e[2],function(e){const{originUrl:t,originWidth:s,originHeight:o,min:r=198}=e,i=parseInt(s),n=parseInt(o),a={url:void 0,width:0,height:0};if((i<=n?i:n)<=r)a.url=t,a.width=i,a.height=n;else{n<=i?(a.width=Math.ceil(i*r/n),a.height=r):(a.width=r,a.height=Math.ceil(n*r/i));const e=t&&-1<t.indexOf("?")?t+"&":t+"?";a.url=198===r?e+"imageView2/3/w/198/h/198":e+"imageView2/3/w/720/h/720"}if(Ke(t)){const{url:e,...t}=a;return t}return a}({originWidth:t,originHeight:s,min:720}))}}sendable(){return 0!==this.content.imageInfoArray.length&&""!==this.content.imageInfoArray[0].imageUrl&&0!==this.content.imageInfoArray[0].size}}class so{constructor(e){this.type=X,this.content=e||null}sendable(){return null!==this.content}}class oo{constructor(e,t,s,o){this.type=W,this._percent=0,this.content={downloadFlag:2,second:e.second,size:e.size,url:Ys(e.url,t,s,o),remoteAudioUrl:e.url||"",uuid:e.uuid}}updatePercent(e){this._percent=e,1<this._percent&&(this._percent=1)}updateAudioUrl(e){this.content.remoteAudioUrl=e}sendable(){return""!==this.content.remoteAudioUrl}}const ro={from:!0,groupID:!0,groupName:!0,to:!0};class io{constructor(e){this.type=Z,this.content={},this._initContent(e)}_initContent(t){Object.keys(t).forEach(e=>{switch(e){case"remarkInfo":break;case"groupProfile":this.content.groupProfile={},this._initGroupProfile(t[e]);break;case"operatorInfo":this.content.operatorInfo={},this._initOperatorInfo(t[e]);break;case"memberInfoList":case"msgMemberInfo":this._updateMemberList(t[e]);break;case"memberExtraInfo":case"onlineMemberInfo":break;case"memberNum":this.content[e]=t[e],this.content.memberCount=t[e];break;case"newGroupProfile":this.content.newGroupProfile={},this._initNewGroupProfile(t[e]);break;default:this.content[e]=t[e]}}),this.content.userIDList||(this.content.userIDList=[this.content.operatorID])}_initGroupProfile(t){var s=Object.keys(t);for(let e=0;e<s.length;e++){var o=s[e];ro[o]&&(this.content.groupProfile[o]=t[o])}}_initOperatorInfo(t){var s=Object.keys(t);for(let e=0;e<s.length;e++){var o=s[e];this.content.operatorInfo[o]=t[o]}}_updateMemberList(e){qe(this.content.memberList)?this.content.memberList=e:this.content.memberList.forEach(t=>{e.forEach(e=>{t.userID===e.userID&&Object.assign(t,e)})})}_initNewGroupProfile(t){var s=Object.keys(t);for(let e=0;e<s.length;e++){var o=s[e];this.content.newGroupProfile[o]="muteAllMembers"!==o?t[o]:1===t[o]}}}const no={from:!0,groupID:!0,groupName:!0,to:!0,groupType:!0};class ao{constructor(e){this.type=ee,this.content={},this._initContent(e)}_initContent(t){Object.keys(t).forEach(e=>{switch(e){case"memberInfoList":break;case"remarkInfo":this.content.handleMessage=t[e];break;case"groupProfile":this.content.groupProfile={},this._initGroupProfile(t[e]);break;default:this.content[e]=t[e]}})}_initGroupProfile(t){var s=Object.keys(t);for(let e=0;e<s.length;e++){var o=s[e];no[o]&&("groupName"===o?this.content.groupProfile.name=t[o]:this.content.groupProfile[o]=t[o])}}}class uo{constructor(e,t,s,o){this.type=z,this._percent=0;var r=this._getFileInfo(e);this.content={downloadFlag:2,fileUrl:Ys(e.url||e.fileUrl,t,s,o)||"",uuid:e.uuid,fileName:r.name||"",fileSize:r.size||0}}_getFileInfo(e){if(!Ke(e.fileName)&&!Ke(e.fileSize))return{size:e.fileSize,name:e.fileName};var t=e.file.files[0];if(P){if(t.path&&-1!==t.path.indexOf(".")){const e=t.path.slice(t.path.lastIndexOf(".")+1).toLowerCase();t.type=e,t.name||(t.name=ze(999999)+"."+e)}t.name||(t.type="",t.name=t.path.slice(t.path.lastIndexOf("/")+1).toLowerCase()),t.suffix&&(t.type=t.suffix),t.url||(t.url=t.path)}return{size:t.size,name:t.name}}updatePercent(e){this._percent=e,1<this._percent&&(this._percent=1)}updateFileUrl(e){this.content.fileUrl=e}sendable(){return""!==this.content.fileUrl&&""!==this.content.fileName&&0!==this.content.fileSize}}class po{constructor(e){this.type=te,this.content={data:e.data||"",description:e.description||"",extension:e.extension||""}}setData(e){return this.content.data=e,this}setDescription(e){return this.content.description=e,this}setExtension(e){return this.content.extension=e,this}sendable(){return 0!==this.content.data.length||0!==this.content.description.length||0!==this.content.extension.length}}class lo{constructor(e,t,s,o){this.type=Y,this._percent=0,this.content={remoteVideoUrl:e.remoteVideoUrl||e.videoUrl||"",videoFormat:e.videoFormat,videoSecond:parseInt(e.videoSecond,10),videoSize:e.videoSize,videoUrl:Ys(e.videoUrl,t,s,o),videoDownloadFlag:2,videoUUID:e.videoUUID,thumbUUID:e.thumbUUID,thumbFormat:e.thumbFormat,thumbWidth:e.thumbWidth,snapshotWidth:e.thumbWidth,thumbHeight:e.thumbHeight,snapshotHeight:e.thumbHeight,thumbSize:e.thumbSize,snapshotSize:e.thumbSize,thumbDownloadFlag:2,thumbUrl:Ys(e.thumbUrl,t,s,o),snapshotUrl:Ys(e.thumbUrl,t,s,o)}}updatePercent(e){this._percent=e,1<this._percent&&(this._percent=1)}updateVideoUrl(e){e&&(this.content.remoteVideoUrl=e)}updateSnapshotInfo(e){var{snapshotUrl:e,snapshotWidth:t,snapshotHeight:s}=e;qe(e)||(this.content.thumbUrl=this.content.snapshotUrl=e),qe(t)||(this.content.thumbWidth=this.content.snapshotWidth=Number(t)),qe(s)||(this.content.thumbHeight=this.content.snapshotHeight=Number(s))}sendable(){return""!==this.content.remoteVideoUrl}}class co{constructor(e){this.type=Q;var{description:e,longitude:t,latitude:s}=e;this.content={description:e,longitude:t,latitude:s}}sendable(){return!0}}class ho{constructor(e,t,s,o){var r,i;this.from=e.from,this.messageSender=e.from,this.time=e.time,this.messageSequence=e.sequence,this.clientSequence=e.clientSequence||e.sequence,this.messageRandom=e.random,this.cloudCustomData=e.cloudCustomData||"",this.clientTime=e.clientTime||void 0,e.ID?(this.ID=e.ID||"",this.nick=e.nick||"",this.avatar=e.avatar||"",e.messageBody?this.messageBody=JSON.parse(JSON.stringify(e.messageBody)):this.messageBody=[{type:e.type,payload:e.payload}],e.conversationType?e.conversationType.startsWith(ae)?this.receiverUserID=e.to:e.conversationType.startsWith(ue)&&(this.receiverGroupID=e.to):e.receiverGroupID?this.receiverGroupID=e.receiverGroupID:e.receiverUserID&&(this.receiverUserID=e.receiverUserID),this.messageReceiver=e.to||e.messageReceiver):(this.nick=e.nick||"",this.avatar=e.avatar||"",this.messageBody=[],r=e.elements[0].type,i=e.elements[0].content,this._patchRichMediaPayload(r,i),this._updateRichMediaDownloadUrl(r,i,t,s,o),r===se?this.messageBody.push({type:r,payload:new go(i,t,s,o).content}):this.messageBody.push({type:r,payload:i}),e.groupID&&(this.receiverGroupID=e.groupID,this.messageReceiver=e.groupID),e.to&&(this.receiverUserID=e.to,this.messageReceiver=e.to),this.ID=`${e.tinyID}-${e.clientTime}-`+e.random)}_patchRichMediaPayload(e,t){e===J?t.imageInfoArray.forEach(e=>{!e.imageUrl&&e.url&&(e.imageUrl=e.url,e.sizeType=e.type,1===e.type?e.type=0:3===e.type&&(e.type=1))}):e===Y?!t.remoteVideoUrl&&t.videoUrl&&(t.remoteVideoUrl=t.videoUrl):e===W?!t.remoteAudioUrl&&t.url&&(t.remoteAudioUrl=t.url):e===z&&!t.fileUrl&&t.url&&(t.fileUrl=t.url,t.url=void 0)}_updateRichMediaDownloadUrl(e,t,s,o,r){(s||o)&&(e===J?t.imageInfoArray.forEach(e=>{e.url=Ys(e.url,s,o,r)}):e===Y?(t.videoUrl=Ys(t.videoUrl,s,o,r),t.snapshotUrl=Ys(t.thumbUrl,s,o,r),t.snapshotHeight=t.thumbHeight,t.snapshotWidth=t.thumbWidth):e===W?t.url=Ys(t.url,s,o,r):e===z&&(t.fileUrl=Ys(t.fileUrl,s,o,r)))}}var go=class{constructor(e,t,s,o){if(this.type=se,this.content={downloadKey:"",pbDownloadKey:"",messageList:[],title:"",abstractList:[],compatibleText:"",version:0,layersOverLimit:!1},e.downloadKey){const{downloadKey:t,pbDownloadKey:s,title:o,abstractList:r,compatibleText:i,version:n}=e;this.content.downloadKey=t,this.content.pbDownloadKey=s,this.content.title=o,this.content.abstractList=r,this.content.compatibleText=i,this.content.version=n||0}else if(qe(e.messageList))1===e.layersOverLimit&&(this.content.layersOverLimit=!0);else{const{messageList:a,title:u,abstractList:p,compatibleText:l,version:h}=e,c=[];a.forEach(e=>{qe(e)||(e=new ho(e,t,s,o),c.push(e))}),this.content.messageList=c,this.content.title=u,this.content.abstractList=p,this.content.compatibleText=l,this.content.version=h||0}}sendable(){return!qe(this.content.messageList)||!qe(this.content.downloadKey)}};const mo={1:oe,2:re,3:ie,4:ne};class _o{constructor(e){this.ID="",this.conversationID=e.conversationID||null,this.conversationType=e.conversationType||ae,this.conversationSubType=e.conversationSubType,this.time=e.time||Math.ceil(Date.now()/1e3),this.sequence=e.sequence||0,this.clientSequence=e.clientSequence||e.sequence||0,this.random=e.random||0===e.random?e.random:ze(),this.priority=this._computePriority(e.priority),this.nick=e.nick||"",this.avatar=e.avatar||"",this.isPeerRead=!1,this.nameCard="",this.hasRiskContent=function(e){let t=e&&1<e?!0:!1;return t}(e.checkResult),this._elements=[],this.isPlaceMessage=e.isPlaceMessage||0,this.isRevoked=2===e.isPlaceMessage||8===e.msgFlagBits,this.from=e.from||null,this.to=e.to||null,this.flow="",this.isSystemMessage=e.isSystemMessage||!1,this.protocol=e.protocol||"JSON",this.isResend=!1,this.isRead=!1,this.status=e.status||Bs,this._onlineOnlyFlag=!1,this._groupAtInfoList=[],this._relayFlag=!1,this.atUserList=[],this.cloudCustomData=e.cloudCustomData||"",this.isDeleted=!1,this.isModified=!!e.messageVersion,this._isExcludedFromUnreadCount=!(!e.messageControlInfo||1!==e.messageControlInfo.excludedFromUnreadCount),this._isExcludedFromLastMessage=!(!e.messageControlInfo||1!==e.messageControlInfo.excludedFromLastMessage),this.clientTime=e.clientTime||Math.floor(ve()/1e3)||0,this.senderTinyID=e.senderTinyID||e.tinyID||"",this.readReceiptInfo=e.readReceiptInfo||{readCount:void 0,unreadCount:void 0,isPeerRead:void 0,timestamp:0},this.needReadReceipt=!0===e.needReadReceipt||1===e.needReadReceipt,this.version=e.messageVersion||0,this.isBroadcastMessage=e.isBroadcastMessage||!1,this._receiverList=e.receiverList||void 0,this.isSupportExtension=!0===e.isSupportExtension||1===e.isSupportExtension,this._cmConfigID=e.customModerationConfigurationID,this.revoker=e.revokerInfo&&e.revokerInfo.revoker||"",this.revokerInfo=e.revokerInfo||{userID:"",nick:"",avatar:""},this.revokeReason=e.revokeReason||"",this.reInitialize(e.currentUser),this.extractGroupInfo(e.groupProfile||null),this.handleGroupAtInfo(e),this.initC2CReadReceiptInfo(e)}get elements(){return this._elements}getElements(){return this._elements}extractGroupInfo(e){null!==e&&(Ve(e.nick)&&(this.nick=e.nick),Ve(e.avatar)&&(this.avatar=e.avatar),e=e.messageFromAccountExtraInformation,He(e))&&Ve(e.nameCard)&&(this.nameCard=e.nameCard)}handleGroupAtInfo(e){e.payload&&e.payload.atUserList&&e.payload.atUserList.forEach(e=>{e!==Se?(this._groupAtInfoList.push({groupAtAllFlag:0,groupAtUserID:e}),this.atUserList.push(e)):(this._groupAtInfoList.push({groupAtAllFlag:1}),this.atUserList.push(Se))}),je(e.groupAtInfo)&&e.groupAtInfo.forEach(e=>{0===e.groupAtAllFlag?this.atUserList.push(e.groupAtUserID):1===e.groupAtAllFlag&&this.atUserList.push(Se)})}getGroupAtInfoList(){return this._groupAtInfoList}_initProxy(){this._elements[0]&&(this.payload=this._elements[0].content,this.type=this._elements[0].type)}reInitialize(e){e&&(this.status=this.from?Bs:Ks,!this.from)&&(this.from=e),this._initFlow(e),this._initSequence(e),this._concatConversationID(e),this.generateMessageID()}isSendable(){return 0!==this._elements.length&&(!0===this._relayFlag||"function"==typeof this._elements[0].sendable&&this._elements[0].sendable())}_initTo(e){this.conversationType===ue&&(this.to=e.groupID)}_initSequence(e){0===this.clientSequence&&e&&(this.clientSequence=function(o){if(!o)return!1;if(void 0===Xe[o]){var r=new Date;let e=("3"+r.getHours()).slice(-2),t=("0"+r.getMinutes()).slice(-2),s=("0"+r.getSeconds()).slice(-2);Xe[o]=parseInt([e,t,s,"0001"].join("")),e=null,t=null,s=null,ct.l("autoIncrementIndex start index:"+Xe[o])}return Xe[o]++}(e)),0===this.sequence&&this.conversationType===ae&&(this.sequence=this.clientSequence)}generateMessageID(){this.from===le&&(this.senderTinyID="144115198244471703"),this.ID=`${this.senderTinyID}-${this.clientTime}-`+this.random}_initFlow(e){""!==e&&(e===this.from?(this.flow="out",this.isRead=!0):this.flow="in")}_concatConversationID(e){var t=this["to"],s=this.conversationType;s!==le?(e=s===ae?e===this.from?t:this.from:this.to,this.conversationID=e?""+s+e:null):this.conversationID=le}isElement(e){return e instanceof Xs||e instanceof to||e instanceof so||e instanceof oo||e instanceof uo||e instanceof lo||e instanceof io||e instanceof ao||e instanceof po||e instanceof co||e instanceof go}setElement(t,s,o,r){if(this.isElement(t))this._elements=[t];else{var i=e=>{if(e.type&&e.content)switch(e.type){case B:this.setTextElement(e.content);break;case J:this.setImageElement(e.content,s,o,r);break;case W:this.setAudioElement(e.content,s,o,r);break;case z:this.setFileElement(e.content,s,o,r);break;case Y:this.setVideoElement(e.content,s,o,r);break;case te:this.setCustomElement(e.content);break;case Q:this.setLocationElement(e.content);break;case Z:this.setGroupTipElement(e.content);break;case ee:this.setGroupSystemNoticeElement(e.content);break;case X:this.setFaceElement(e.content);break;case se:this.setMergerElement(e.content,s,o,r)}};if(je(t))for(let e=0;e<t.length;e++)i(t[e]);else i(t)}this._initProxy()}clearElement(){this._elements.length=0}setTextElement(e){e="string"==typeof e?e:e.text,e=new Xs({text:e});this._elements.push(e)}setImageElement(e,t,s,o){e=new to(e,t,s,o);this._elements.push(e)}setAudioElement(e,t,s,o){e=new oo(e,t,s,o);this._elements.push(e)}setFileElement(e,t,s,o){e=new uo(e,t,s,o);this._elements.push(e)}setVideoElement(e,t,s,o){e=new lo(e,t,s,o);this._elements.push(e)}setLocationElement(e){e=new co(e);this._elements.push(e)}setCustomElement(e){e=new po(e);this._elements.push(e)}setGroupTipElement(e){let t={};var s=e.operationType;if(qe(e.memberInfoList)?e.operatorInfo&&(t=e.operatorInfo):s!==Le&&s!==Ce&&s!==Ge&&s!==be||(t=e.memberInfoList[0]),!qe(e.memberExtraInfo)){const t=e.memberExtraInfo["reason"];e.msgMemberInfo.forEach(e=>{e.reason=t})}var{nick:s,avatar:o}=t,s=(Ve(s)&&(this.nick=s),Ve(o)&&(this.avatar=o),new io(e));this._elements.push(s)}setGroupSystemNoticeElement(e){e=new ao(e);this._elements.push(e)}setFaceElement(e){e=new so(e);this._elements.push(e)}setMergerElement(e,t,s,o){e=new go(e,t,s,o);this._elements.push(e)}setIsRead(e){this.isRead=e}setRelayFlag(e){this._relayFlag=e}_computePriority(e){if(!Ke(e)){if(Ve(e)&&-1!==Object.values(mo).indexOf(e))return e;if(xe(e)){e=""+e;if(-1!==Object.keys(mo).indexOf(e))return mo[e]}}return re}setNickAndAvatar(e){var{nick:e,avatar:t}=e;Ve(e)&&(this.nick=e),Ve(t)&&(this.avatar=t)}setNameCard(e){Ve(e)&&(this.nameCard=e)}initC2CReadReceiptInfo(e){var{readReceiptSentByPeer:e,timestamp:t=0}=e;this.conversationType===ae&&!0===this.needReadReceipt&&(this.readReceiptInfo.isPeerRead=1===e,this.readReceiptInfo.timestamp=t)}}class fo{constructor(e){this._grpM=e,this._n="GroupTipsHandler",this._cachedGroupTipsMap=new Map,this._checkCountMap=new Map,this.MAX_CHECK_COUNT=4}onCheckTimer(e){e%1==0&&0<this._cachedGroupTipsMap.size&&this._check()}_check(){this._cachedGroupTipsMap.forEach((e,t)=>{var s=this._checkCountMap.get(t),o=this._grpM.hasLocalGroup(t);ct.l(this._n+`._check groupID:${t} hasLocalGroup:${o} checkCount:`+s),o?(this._notifyCachedGroupTips(t),this._checkCountMap.delete(t),this._grpM.deleteUnjoinedAVChatRoom(t)):s>=this.MAX_CHECK_COUNT?(this._deleteCachedGroupTips(t),this._checkCountMap.delete(t)):this._checkCountMap.set(t,++s)})}onNewGroupTips(e){ct.l(this._n+".onNewGroupTips options:"+JSON.stringify(e.dataList));var{eventDataList:e,result:t,AVChatRoomMessageList:s}=this._assembly(e);0<s.length&&this._grpM.onAVChatRoomMessage(s),0<t.length&&(this._grpM.emitOEvt(Ut,t),this._handleTips(t)),0<e.length&&(this._grpM.updateNextMessageSeq(e),this._grpM.get(o).onNewMessage({conversationOptionsList:e,isInstantMessage:!0}))}_assembly(s){var{event:r,dataList:i}=s,n=null,a=[],u=[],p={},l=[];for(let e=0,t=i.length;e<t;e++){const s=Ye(i[e]);if(6===r){if(this._grpM.isGroupAttributesUpdatedNotice(s))continue;if(this._grpM.isGroupCountersNotice(s))continue}var{groupProfile:{groupID:h,communityType:c=0,topicID:g,invisible:m,groupType:d}}=s;let t=void 0;var _=this._grpM.isMessageFromTopic(c,g),f=(_&&(t=pe,s.to=g),this._grpM.hasLocalGroup(h));if(f||!this._grpM.isUnjoinedAVChatRoom(h))if(f||_)if(this._grpM.isMessageFromOrToAVChatroom(h))s.event=r,l.push(s);else if(s.currentUser=this._grpM.getMyUserID(),s.conversationType=ue,(n=new _o(s)).setElement({type:Z,content:{...s.elements,groupProfile:s.groupProfile}}),n.isSystemMessage=!1,1===m)this._qualityStat(n);else{var f=this._grpM.get(o),{conversationID:_,sequence:m}=n;if(6===r)n._onlineOnlyFlag=!0,u.push(n);else if(!f.pushIntoNoticeResult(u,n))continue;if(!(this._grpM.isMessageFromCommunityOfTopic(c,g)||6===r&&f.getLocalConversation(_))){6!==r&&this._qualityStat(n);c=f.isRemoteRead({conversationID:_,sequence:m});if(Ke(p[_])){let e=0;"in"!==n.flow||n._isExcludedFromUnreadCount||n._onlineOnlyFlag||c||(e=1),p[_]=a.push({conversationID:_,unreadCount:e,type:Ke(t)?n.conversationType:t,subType:n.conversationSubType,lastMessage:n._isExcludedFromLastMessage?"":n})-1}else{const s=p[_];a[s].type=n.conversationType,a[s].subType=n.conversationSubType,a[s].lastMessage=n._isExcludedFromLastMessage?"":n,"in"!==n.flow||n._isExcludedFromUnreadCount||n._onlineOnlyFlag||c||a[s].unreadCount++}}}else this._cacheAndCompare({groupID:h,event:r,item:s,groupType:d})}return{eventDataList:a,result:u,AVChatRoomMessageList:l}}_qualityStat(e){this._grpM.get(p).addMessageSequence({key:Jt,message:e})}_handleTips(e){e.forEach(e=>{switch(e.payload.operationType){case 1:this._onNewMemberComeIn(e);break;case 2:this._onMemberQuit(e);break;case 3:this._onMemberKickedOut(e);break;case 4:this._onMemberSetAdmin(e);break;case 5:this._onMemberCancelledAdmin(e);break;case 6:this._onGroupProfileModified(e);break;case 7:this._onMemberInfoModified(e);break;case 8:this._onTopicProfileUpdated(e);break;default:ct.w(this._n+"._handleTips unknown operationType:"+e.payload.operationType)}})}_onNewMemberComeIn(e){var{memberNum:e,groupProfile:{groupID:t}}=e.payload,t=this._grpM.getLocalGroupProfile(t);t&&xe(e)&&t.memberCount!==e&&(t.memberCount=e,this._updateConvGroupProfile(t))}_onMemberQuit(e){var{memberNum:t,groupProfile:{groupID:s}}=e.payload,o=this._grpM.getLocalGroupProfile(s);o&&xe(t)&&o.memberCount!==t&&(o.memberCount=t,this._updateConvGroupProfile(o)),this._grpM.getGroupMemberHandler().deleteLocalGroupMembers(s,e.payload.userIDList)}_onMemberKickedOut(e){var{memberNum:t,groupProfile:{groupID:s}}=e.payload,o=this._grpM.getLocalGroupProfile(s);o&&xe(t)&&o.memberCount!==t&&(o.memberCount=t,this._updateConvGroupProfile(o)),this._grpM.getGroupMemberHandler().deleteLocalGroupMembers(s,e.payload.userIDList)}_updateConvGroupProfile(e){this._grpM.get(o).updateConvGroupProfile([e])}_onMemberSetAdmin(e){const t=e.payload.groupProfile.groupID,s=e.payload.userIDList,o=this._grpM.getGroupMemberHandler();s.forEach(e=>{e=o.getLocalGroupMemberInfo(t,e);e&&e.updateRole(Ie)})}_onMemberCancelledAdmin(e){const t=e.payload.groupProfile.groupID,s=e.payload.userIDList,o=this._grpM.getGroupMemberHandler();s.forEach(e=>{e=o.getLocalGroupMemberInfo(t,e);e&&e.updateRole(ye)})}_onGroupProfileModified(e){const{newGroupProfile:t,groupProfile:s,operatorInfo:o}=e.payload,r=s["groupID"],i=this._grpM.getLocalGroupProfile(r);Object.keys(t).forEach(e=>{switch(e){case"ownerID":this._ownerChanged(i,t);break;case"groupName":i.name=t[e];break;default:i[e]=t[e]}}),Ke(o)||Object.keys(o).forEach(e=>{"nameCard"===e?i.updateSelfInfo({nameCard:o[e]}):"role"===e&&i.updateSelfInfo({role:o[e]})});e=!i.isSupportTopic;this._grpM.emitGroupListUpdate(!0,e)}_ownerChanged({groupID:e},t){var s=this._grpM.getLocalGroupProfile(e),o=this._grpM.getMyUserID();if(o===t.ownerID){s.updateGroup({selfInfo:{role:Me}});const t=this._grpM.getGroupMemberHandler(),r=t.getLocalGroupMemberInfo(e,o),i=this._grpM.getLocalGroupProfile(e).ownerID,n=t.getLocalGroupMemberInfo(e,i);r&&r.updateRole(Me),n&&n.updateRole(ye)}}_onMemberInfoModified(e){const{to:t,payload:{groupProfile:s,memberList:o}}=e,r=s.groupID,i=(rt(t)&&this._updateTopicMuteTime(e),this._grpM.getGroupMemberHandler());o.forEach(e=>{var t=i.getLocalGroupMemberInfo(r,e.userID);t&&xe(e.muteTime)&&t.updateMuteUntil(e.muteTime)})}_updateTopicMuteTime(e){var{to:e,payload:{groupProfile:o,memberList:r=[]}}=e,o=o["groupID"],i=this._grpM.get(s).getLocalTopic(o,e);if(i){let t=!1;for(let e=0;e<r.length;e++){const s=r[e];if(s.userID===this._grpM.getMyUserID()&&0<=s.muteTime){i.updateSelfInfo({muteTime:s.muteTime}),t=!0;break}}t&&this._grpM.emitOEvt(xt,{groupID:o,topic:i})}}_onTopicProfileUpdated(e){var{groupProfile:{groupID:t},newTopicInfo:o}=e.payload;this._grpM.get(s).onTopicProfileUpdated({groupID:t,topicID:e.to,...o})}_cacheGroupTips(e,t){this._cachedGroupTipsMap.has(e)||this._cachedGroupTipsMap.set(e,[]),this._cachedGroupTipsMap.get(e).push(t)}_deleteCachedGroupTips(e){this._cachedGroupTipsMap.has(e)&&this._cachedGroupTipsMap.delete(e)}_notifyCachedGroupTips(e,t){var s=this._cachedGroupTipsMap.get(e)||[];ct.l(this._n+`._notifyCachedGroupTips groupID:${e} groupType:${t} count:`+s.length),s.forEach(e=>{this.onNewGroupTips(e)}),this._deleteCachedGroupTips(e)}_cacheAndCompare(e){var{groupID:e,event:t,item:s,groupType:o}=e,t=(ct.l(this._n+`._cacheAndCompare groupID:${e} groupType:`+o),this._cacheGroupTips(e,{event:t,dataList:[s]}),{groupID:e,type:o});o===me?this._grpM.hasLocalGroup(e)?this._notifyCachedGroupTips(e,o):this._grpM.setUnjoinedAVChatRoom(e):(this._grpM.updateGroupMap([t]),this._notifyCachedGroupTips(e,o)),this._checkCountMap.has(e)||this._checkCountMap.set(e,0)}reset(){this._cachedGroupTipsMap.clear(),this._checkCountMap.clear()}}class Mo{constructor(e){this._grpM=e,this._n="CommonGroupHandler",this.tempConversationList=null,this._cachedGroupMessageMap=new Map,this._checkCountMap=new Map,this.MAX_CHECK_COUNT=4,this.PAGING_GRP_COUNT_LIMIT=200,this._pagingStatus=Js,this._pagingGetCostList=[],e.getIEmitInst().on(Bt.A2KEY_AND_TINYID_UPDATED,this.syncGroupList,this)}onCheckTimer(e){e%1==0&&0<this._cachedGroupMessageMap.size&&this._check()}_check(){this._cachedGroupMessageMap.forEach((e,t)=>{var s=this._checkCountMap.get(t),o=this._grpM.hasLocalGroup(t);ct.l(this._n+`._check groupID:${t} hasLocalGroup:${o} checkCount:`+s),o?(this._notifyCachedGroupMessage(t),this._checkCountMap.delete(t),this._grpM.deleteUnjoinedAVChatRoom(t)):s>=this.MAX_CHECK_COUNT?(this._deleteCachedGroupMessage(t),this._checkCountMap.delete(t)):this._checkCountMap.set(t,++s)})}updateLastMsg(i){var e=this._n+".updateLastMsg";if(0===this._grpM.getGroupMap().size)this.tempConversationList=i;else{let t,s,o,r=!1;var n,a,u=i.length;for(let e=0;e<u;e++)(t=i[e]).type===ue&&0!==t.lastMessage.lastSequence&&null!==t.lastMessage.payload&&(s=t.conversationID.split(/^GROUP/)[1],o=this._grpM.getLocalGroupProfile(s))&&(n=o.lastMessage,a=t.lastMessage,JSON.stringify(n)!==JSON.stringify(a))&&(o.lastMessage={...t.lastMessage},r=!0);ct.l(e+` convCount:${u} groupCount:${this._grpM.getLocalGroupList().length} isUpdated:`+r),r&&(this._grpM.sortLocalGroupList(),this._grpM.emitGroupListUpdate(!0,!1))}}onNewMessage(e){var{conversationOptionsList:t,messageList:s,AVChatRoomMessageList:r}=this._assembly(e),r=(0<r.length&&this._grpM.onAVChatRoomMessage(r),Ze(s)),r=(0<r.length&&this._grpM.emitOEvt(Nt,r),0<t.length&&(this._grpM.get(o).onNewMessage({conversationOptionsList:t,isInstantMessage:!1!==e.isInstantMessage,updateUnreadCount:!1!==e.updateUnreadCount}),this._grpM.updateNextMessageSeq(t)),et(s));0<r.length&&this._grpM.emitOEvt(Ut,r),s.length=0}_assembly(i){const{dataList:a,event:e,isInstantMessage:u}=i;var p=null;const l=[],h=[],c=[],g={},m=this._grpM.getFileDownloadProxy(),d=this._grpM.getDowloadFileAuthKey(),_=this._grpM.get(n).getFileDNList(),f=a.length;1<f&&a.sort((e,t)=>e.sequence-t.sequence);var M=this._grpM.get(o),I=this._grpM.get(t);for(let r=0;r<f;r++){const i=Ye(a[r]),{groupProfile:{groupID:o,communityType:n=0,topicID:f,invisible:L,groupType:C}}=i;let s=void 0;var y=this._grpM.isMessageFromTopic(n,f),D=(y&&(s=pe,i.to=f),this._grpM.hasLocalGroup(o));if(D||!this._grpM.isUnjoinedAVChatRoom(o))if(D||y)if(this._grpM.isMessageFromOrToAVChatroom(o))i.event=e,c.push(i);else if(i.currentUser=this._grpM.getMyUserID(),i.conversationType=ue,i.isSystemMessage=!!i.isSystemMessage,(p=new _o(i)).setElement(i.elements,m,d,_),1===L)this._qualityStat(u,p);else{let e=1===a[r].isModified;if(M.isMessageSentByCurrentInstance(p)?p.isModified=e:e=!1,1===i.onlineOnlyFlag)p._onlineOnlyFlag=!0,M.isMessageSentByCurrentInstance(p)||h.push(p);else{if(this._grpM.isMessageFromCommunityOfTopic(n,f)){h.push(p);continue}if(p.from===this._grpM.getMyUserID()){const t=M.getLatestMessageSentByMe(p.conversationID);if(t){const{nick:a,avatar:o}=t;a===p.nick&&o===p.avatar||(M.modifyMessageSentByMe({conversationID:i,latestNick:p.nick,latestAvatar:p.avatar}),I.mockOnNickAvatarModified(p.nick,p.avatar))}}if(!M.pushIntoMessageList(h,p,e))continue;this._qualityStat(u,p);const{conversationID:i,sequence:t}=p,a=M.isRemoteRead({conversationID:i,sequence:t});if(Ke(g[i])){let e=0;"in"!==p.flow||p._isExcludedFromUnreadCount||a||(e=1),g[i]=l.push({conversationID:i,unreadCount:e,type:Ke(s)?p.conversationType:s,subType:p.conversationSubType,lastMessage:p._isExcludedFromLastMessage?"":p})-1}else{const t=g[i];l[t].type=Ke(s)?p.conversationType:s,l[t].subType=p.conversationSubType,l[t].lastMessage=p._isExcludedFromLastMessage?"":p,"in"!==p.flow||p._isExcludedFromUnreadCount||a||l[t].unreadCount++}}}else this._cacheAndCompare({groupID:o,event:e,item:i,groupType:C})}return{conversationOptionsList:l,messageList:h,AVChatRoomMessageList:c}}_qualityStat(e,t){var s=this._grpM.get(p);s.addMessageSequence({key:Jt,message:t}),e&&0<t.clientTime&&s.addMessageDelay(t.clientTime)}onMsgRevoked(e,t){const p=this._grpM.get(o),l=[],h=[];e.dataList.forEach(e=>{const t=e.elements["revokedInfos"],{revokerInfo:n,groupProfile:a}=e;let u=!1;a&&(u=ot({groupID:a.groupID})||!qe(a.topicID)),Ke(t)||t.forEach(e=>{var t=qe(e.topicID)?"GROUP"+e.groupID:"GROUP"+e.topicID,s=p.getLocalConversation(t),o=e.revokerInfo&&e.revokerInfo.revoker||n&&n.revoker,r=n&&n.reason||"";let i;if(s&&st(s.type))i={conversationID:t,sequence:e.sequence,ID:`${e.tinyID}-${e.clientTime}-`+e.random};else{const n=p.revoke(t,e.sequence,e.random);n?i=n:(i={conversationID:t,sequence:e.sequence},e.tinyID&&e.clientTime&&e.random&&(i.ID=`${e.tinyID}-${e.clientTime}-`+e.random),e.time&&(i.time=e.time))}i&&(i.revoker=o,i.revokeReason=r,i.revokerInfo={userID:o,nick:"",avatar:""},(u?(i.revokerInfo.nick=a.nick,i.revokerInfo.avatar=a.avatar,l):h).push(i))})}),0===h.length&&0===l.length||(p.onMessageRevoked([...l,...h],t),0<l.length&&this._grpM.emitOEvt(qt,l),0<h.length&&p.updateRevokerInfo(h).then(e=>{this._grpM.emitOEvt(qt,e)}))}_groupListTreeShaking(s){const o=new Map([...this._grpM.getGroupMap()]);for(let e=0,t=s.length;e<t;e++)o.delete(s[e].groupID);this._grpM.hasJoinedAVChatRoom()&&this._grpM.getJoinedAVChatRoom().forEach(e=>{o.delete(e)}),this._grpM.getGroupMap().forEach((e,t)=>{e.isSupportTopic&&o.delete(t)});var r=[...o.keys()];for(let e=0,t=r.length;e<t;e++)this._grpM.deleteGroup(r[e])}syncGroupList(e=!1){this._pagingStatus===Js&&this._grpM.clearGroupMap();const t=[...L],s=this.PAGING_GRP_COUNT_LIMIT,o=[];if(!0===e)return this._pagingGetGroupListWithTopic({limit:s,offset:0,groupBaseInfoFilter:t,groupList:o});const r=this._n+".syncGroupList",i=new Zt("syncGroupList");return this._pagingGetGroupList({limit:s,offset:0,groupBaseInfoFilter:t,groupList:o}).then(()=>{var e=function(e){if(je(e)&&0!==e.length){let t=0;return e.forEach(e=>{t+=e}),(t/e.length).toFixed(0)}}(this._pagingGetCostList),t=function(e){if(je(e)&&0!==e.length){let t=0;return e.forEach(e=>{t+=e}),t.toFixed(0)}}(this._pagingGetCostList),t=(this._pagingGetCostList.length=0,this._pagingStatus=Ws,this._groupListTreeShaking(o),this._grpM.updateGroupMap(o),`count:${this._grpM.getLocalGroupList().length} sum:${t} avg:`+e);return ct.l(r+" ok. "+t),i.setMessage(t).end(),this.tempConversationList&&(this.updateLastMsg(this.tempConversationList),this.tempConversationList=null),this._grpM.emitGroupListUpdate(!0,!0),ht({groupList:this._grpM.getLocalGroupList()})}).catch(e=>(this._pagingStatus=zs,i.setError(e).end(),ct.e(r+" failed. error:",e),Kt(e)))}getGroupList(){const t=this._n+".getGroupList";var e;return ct.l(t+" pagingStatus:"+this._pagingStatus),this._pagingStatus===zs||this._pagingStatus===Js?this.syncGroupList().then(()=>{var e=this._grpM.getLocalGroupList();return ht({groupList:e,isSyncCompleted:this.isPagingGetCompleted()})}).catch(e=>(ct.e(t+" failed. error:",e),Kt(e))):(e=this._grpM.getLocalGroupList(),ct.l(t+". returned group count:"+e.length),jt({groupList:e,isSyncCompleted:this.isPagingGetCompleted()}))}isPagingGetCompleted(){return this._pagingStatus===Ws}_pagingGetGroupList(e){const o=this._n+"._pagingGetGroupList";let{isCommunityRelay:r=!1,limit:i,offset:n,groupBaseInfoFilter:a,groupList:u}=e;const p=Date.now();return this._grpM.req({P:ts,data:{type:r?de:void 0,memberAccount:this._grpM.getMyUserID(),limit:i,offset:n,responseFilter:{groupBaseInfoFilter:a,selfInfoFilter:["Role","JoinTime","MsgFlag","MsgSeq"]}}}).then(e=>{var{groups:e=[],totalCount:t}=e.data,e=(u.push(...e),this._handleGroupAtInfoWithoutTopic(r,e),n+i),s=!(e<t),t=`offset:${n} limit:${i} total:${t} isCompleted:${s} current:${u.length} isCommunityRelay:`+r;return this._pagingGetCostList.push(at(p,!1)),ct.l(o+` ok. ${t} cost:`+at(p)),r||s?!r&&s?(ct.l(o+" start to get community list"),n=0,this._pagingGetGroupList({limit:i,offset:n,groupBaseInfoFilter:a,groupList:u,isCommunityRelay:!0})):r&&!s?(n=e,this._pagingGetGroupList({limit:i,offset:n,groupBaseInfoFilter:a,groupList:u,isCommunityRelay:!0})):ht({groupList:u}):(n=e,this._pagingGetGroupList({limit:i,offset:n,groupBaseInfoFilter:a,groupList:u}))}).catch(e=>10018===e.code?(ct.w(this.logPrefix+" response size exceeds the limit, request count:"+i),i=50,this._pagingGetGroupList({limit:i,offset:n,groupBaseInfoFilter:a,groupList:u,isCommunityRelay:r})):r?(11e3===e.code&&ct.l(o+" ok. community unavailable"),jt({groupList:u})):Kt(e))}_pagingGetGroupListWithTopic(e){const o=this._n+"._pagingGetGroupListWithTopic";let{limit:r,offset:i,groupBaseInfoFilter:n,groupList:a}=e;const u=Date.now();return this._grpM.req({P:ts,data:{type:de,memberAccount:this._grpM.getMyUserID(),limit:r,offset:i,responseFilter:{groupBaseInfoFilter:n,selfInfoFilter:[...C]},isSupportTopic:1,needAppDefineData:1}}).then(e=>{var{groups:e=[],totalCount:t}=e.data,e=(a.push(...e),i+r),s=!(e<t);if(ct.l(o+` ok. offset:${i} limit:${r} totalCount:${t} isCompleted:${s} currentCount:${a.length} cost:`+at(u)),!s)return i=e,this._pagingGetGroupListWithTopic({limit:r,offset:i,groupBaseInfoFilter:n,groupList:a});this._grpM.updateGroupMap(a),this._grpM.emitGroupListUpdate(!0,!1);t=this._grpM.getLocalGroupList().filter(e=>!0===e.isSupportTopic);return ht({groupList:t})}).catch(e=>10018===e.code?(ct.w(this.logPrefix+" response size exceeds the limit, request count:"+r),r=50,this._pagingGetGroupListWithTopic({limit:r,offset:i,groupBaseInfoFilter:n,groupList:a})):Kt(e))}_cacheGroupMessage(e,t){this._cachedGroupMessageMap.has(e)||this._cachedGroupMessageMap.set(e,[]),this._cachedGroupMessageMap.get(e).push(t)}_deleteCachedGroupMessage(e){this._cachedGroupMessageMap.has(e)&&this._cachedGroupMessageMap.delete(e)}_notifyCachedGroupMessage(e,t){var s=this._cachedGroupMessageMap.get(e)||[];ct.l(this._n+`._notifyCachedGroupMessage groupID:${e} groupType:${t} count:`+s.length),s.forEach(e=>{this.onNewMessage(e)}),this._deleteCachedGroupMessage(e)}_cacheAndCompare(e){var{groupID:e,event:t,item:s,groupType:o}=e,t=(ct.l(this._n+`._cacheAndCompare groupID:${e} groupType:`+o),this._cacheGroupMessage(e,{event:t,dataList:[s]}),{groupID:e,type:o});o===me?this._grpM.hasLocalGroup(e)?this._notifyCachedGroupMessage(e,o):this._grpM.setUnjoinedAVChatRoom(e):(this._grpM.updateGroupMap([t]),this._notifyCachedGroupMessage(e,o)),this._checkCountMap.has(e)||this._checkCountMap.set(e,0)}_handleGroupAtInfoWithoutTopic(e,t){e&&0!==t.length&&t.forEach(e=>{const{groupID:t,groupAtInfoList:s}=e,r=[];Ke(s)||(s.forEach(e=>{r.push({...e,groupID:t})}),this._grpM.get(o).onNewGroupAtTips({dataList:r}))})}setPagingGroupCount(e){Ke(e)||(this.PAGING_GRP_COUNT_LIMIT=parseInt(e,10))}reset(){this.PAGING_GRP_COUNT_LIMIT=200,this._cachedGroupMessageMap.clear(),this._checkCountMap.clear(),this._pagingStatus=Js,this._pagingGetCostList=[]}}const Io=1,yo=2,Do=3,Lo=4,Co=5;class Go{constructor(e){this._grpM=e,this._n="GroupAttributesHandler",this._groupAttributesMap=new Map,this._groupAttributesCopy={},this.CACHE_EXPIRE_TIME=3e4,this._grpM.getIEmitInst().on(Bt.CLOUD_CONFIG,this._onCloudConfig,this)}_onCloudConfig(){var e=this._grpM.getCloudConfig("grp_attr_cache_time");Ke(e)||(this.CACHE_EXPIRE_TIME=Number(e))}updateLocalMainSequenceOnReconnected(){this._groupAttributesMap.forEach(e=>{e.localMainSequence=0})}isGroupAttributesUpdatedNotice(e){var{to:e,elements:{newGroupProfile:t}}=e,s=!Ke(t)&&!qe(t.groupAttributeOption);return s&&this._onGroupAttributesUpdated({groupID:e,groupAttributeOption:t.groupAttributeOption}),s}_onGroupAttributesUpdated(e){const{groupID:t,groupAttributeOption:s}=e,{mainSequence:o,isWithChangedAttributeInfo:r,groupAttributeList:i=[],operationType:n}=s;if(ct.l(this._n+".onGroupAttributesUpdated. "+`groupID:${t} isWithChangedAttributeInfo:${r} operationType:`+n),!Ke(n)){this._groupAttributesCopy=this._getCachedAttributes({groupID:t});e=this._getLocalGroupAttributes(t)["localMainSequence"],e=o-e;if(0!=e)if(1===r&&1==e)this._refreshCachedGroupAttributes({groupID:t,remoteMainSequence:o,groupAttributeList:i,operationType:n}),this._emitGroupAttributesUpdated(t);else if(this._hasLocalGroupAttributes(t)){const e=this._getLocalGroupAttributes(t)["avChatRoomKey"];this._getGroupAttributes({groupID:t,avChatRoomKey:e}).then(()=>{this._emitGroupAttributesUpdated(t)})}}}initGroupAttributesCache(e){var{groupID:e,avChatRoomKey:t}=e;this._groupAttributesMap.set(e,{lastUpdateTime:0,localMainSequence:0,remoteMainSequence:0,attributes:new Map,avChatRoomKey:t}),ct.l(this._n+`.initGroupAttributesCache groupID:${e} avChatRoomKey:`+t)}initGroupAttributes(e){const{groupID:s,groupAttributes:o}=e,{remoteMainSequence:t,avChatRoomKey:r}=this._getLocalGroupAttributes(s),i=new Zt("initGroupAttributes");return i.setMessage(`groupID:${s} avChatRoomKey:${r} mainSequence:`+t),this._grpM.req({P:Ts,data:{groupID:s,avChatRoomKey:r,mainSequence:t,groupAttributeList:this._transformGroupAttributes(o)}}).then(e=>{ct.l(this._n+".initGroupAttributes ok. groupID:"+s);var{mainSequence:e,groupAttributeList:t}=e.data,t=[...t];return t.forEach(e=>{e.value=o[e.key]}),this._groupAttributesCopy=this._getCachedAttributes({groupID:s}),this._refreshCachedGroupAttributes({groupID:s,remoteMainSequence:e,groupAttributeList:t,operationType:Io}),this._emitGroupAttributesUpdated(s),i.end(),ht({groupAttributes:o})}).catch(e=>(i.setError(e).end(),Kt(e)))}setGroupAttributes(e){const s=this._n+".setGroupAttributes",{groupID:o,groupAttributes:r}=e,{remoteMainSequence:t,avChatRoomKey:i,attributes:n}=this._getLocalGroupAttributes(o),a=this._transformGroupAttributes(r),u=(a.forEach(e=>{var t=e["key"];e.sequence=0,n.has(t)&&(e.sequence=n.get(t).sequence)}),new Zt("setGroupAttributes"));return u.setMessage(`groupID:${o} groupAttributes:`+JSON.stringify(r)),ct.l(s+`. groupID:${o} mainSequence:`+t),this._grpM.req({P:Ss,data:{groupID:o,avChatRoomKey:i,mainSequence:t,groupAttributeList:a}}).then(e=>{ct.l(s+" ok.");var{mainSequence:e,groupAttributeList:t}=e.data,t=[...t];return t.forEach(e=>{e.value=r[e.key]}),this._groupAttributesCopy=this._getCachedAttributes({groupID:o}),this._refreshCachedGroupAttributes({groupID:o,remoteMainSequence:e,groupAttributeList:t,operationType:yo}),this._emitGroupAttributesUpdated(o),u.end(),ht({groupAttributes:r})}).catch(e=>(u.setError(e).end(),Kt(e)))}deleteGroupAttributes(e){const{groupID:t,keyList:s=[]}=e,{remoteMainSequence:o,avChatRoomKey:r,attributes:i}=this._getLocalGroupAttributes(t);let n=[...i.keys()],a=Ps,u=Do;const p={groupID:t,avChatRoomKey:r,mainSequence:o},l=[],h=(0<s.length&&(n=[],a=vs,u=Lo,s.forEach(e=>{let t=0;i.has(e)&&(t=i.get(e).sequence,n.push(e)),l.push({key:e,sequence:t})}),p.groupAttributeList=l),new Zt("deleteGroupAttributes"));return h.setMessage(`groupID:${t} mainSequence:${o} keyList:${s} proto:`+a),this._grpM.req({P:a,data:p}).then(e=>{ct.l(this._n+".deleteGroupAttributes ok. groupID:"+t);e=e.data.mainSequence;return this._groupAttributesCopy=this._getCachedAttributes({groupID:t}),this._refreshCachedGroupAttributes({groupID:t,remoteMainSequence:e,groupAttributeList:l,operationType:u}),this._emitGroupAttributesUpdated(t),h.end(),ht({keyList:n})}).catch(e=>(h.setError(e).end(),Kt(e)))}getGroupAttributes(t){const s=this._n+".getGroupAttributes",o=t["groupID"],{avChatRoomKey:e,lastUpdateTime:r,localMainSequence:i,remoteMainSequence:n}=this._getLocalGroupAttributes(o),a=new Zt("getGroupAttributes");if(a.setMessage(`groupID:${o} localMainSequence:${i} remoteMainSequence:${n} keyList:`+t.keyList),Date.now()-r>=this.CACHE_EXPIRE_TIME||i<n)return this._getGroupAttributes({groupID:o,avChatRoomKey:e}).then(e=>{a.setMoreMessage("get attributes from remote. count:"+e.length).end(),ct.l(s+" from remote. groupID:"+o);e=this._getCachedAttributes(t);return ht({groupAttributes:e})}).catch(e=>(a.setError(e).end(),Kt(e)));a.setMoreMessage("get attributes from cache").end(),ct.l(s+" from cache. groupID:"+o);var u=this._getCachedAttributes(t);return jt({groupAttributes:u})}_getGroupAttributes(o){let e=0;return Ke(o.avChatRoomKey)||(e=1),this._grpM.req({P:Rs,data:{...o,groupType:e}}).then(e=>{ct.l(this._n+"._getGroupAttributes ok. groupID:"+o.groupID);var{mainSequence:e,groupAttributeList:t}=e.data,s=[...t];return Ke(e)||this._refreshCachedGroupAttributes({groupID:o.groupID,remoteMainSequence:e,groupAttributeList:s,operationType:Co}),t}).catch(e=>Kt(e))}_refreshCachedGroupAttributes(e){var{groupID:t,remoteMainSequence:s,groupAttributeList:o,operationType:r}=e;if(this._hasLocalGroupAttributes(t)){const e=this._getLocalGroupAttributes(t),i=e["localMainSequence"];if(r===Co||s-i==1)e.remoteMainSequence=s,e.localMainSequence=s,e.lastUpdateTime=Date.now(),this._updateCachedAttributes({groupAttributes:e,groupAttributeList:o,operationType:r});else{if(i===s)return;e.remoteMainSequence=s}this._groupAttributesMap.set(t,e);o=`operationType:${r} localMainSequence:${i} remoteMainSequence:`+s;ct.l(this._n+"._refreshCachedGroupAttributes. "+o)}}_getCachedAttributes(t){const{groupID:e,keyList:s=[]}=t,o={};if(this._hasLocalGroupAttributes(e)){const t=this._getLocalGroupAttributes(e)["attributes"];if(0<s.length)s.forEach(e=>{t.has(e)&&(o[e]=t.get(e).value)});else for(const e of t.keys())o[e]=t.get(e).value}return o}_updateCachedAttributes(e){const{groupAttributes:o,groupAttributeList:t,operationType:s}=e;s!==Do?s!==Lo?(s===Io&&o.attributes.clear(),t.forEach(e=>{var{key:e,value:t,sequence:s}=e;o.attributes.set(e,{value:t,sequence:s})})):t.forEach(e=>{o.attributes.delete(e.key)}):o.attributes.clear()}_hasLocalGroupAttributes(e){return this._groupAttributesMap.has(e)}_getLocalGroupAttributes(e){return this._hasLocalGroupAttributes(e)||this.initGroupAttributesCache({groupID:e}),this._groupAttributesMap.get(e)}_transformGroupAttributes(t){const s=[];return Object.keys(t).forEach(e=>{s.push({key:e,value:t[e]})}),s}_emitGroupAttributesUpdated(e){var t=this._getCachedAttributes({groupID:e}),{updatedKeyList:s,deletedKeyList:o}=this._computeAttrChangedInfo(t);ct.l(`${this._n}._emitGroupAttributesUpdated update:${s.length}, delete:`+o.length),0===s.length&&0===o.length||this._grpM.emitOEvt(Ot,{groupID:e,groupAttributes:t,updatedKeyList:s,deletedKeyList:o})}_computeAttrChangedInfo(t){const s=[],o=[];return Object.keys(t).forEach(e=>{t[e]!==this._groupAttributesCopy[e]&&s.push(e)}),Object.keys(this._groupAttributesCopy).forEach(e=>{Ke(t[e])&&o.push(e)}),this._groupAttributesCopy={},{updatedKeyList:s,deletedKeyList:o}}deleteLocalGroupAttributes(e){this._hasLocalGroupAttributes(e)&&this._groupAttributesMap.delete(e)}reset(){this._groupAttributesMap.clear(),this._groupAttributesCopy={},this.CACHE_EXPIRE_TIME=3e4}}const bo="Set",Ao="Increase",To="Decrease";class So{constructor(e){this._grpM=e,this._n="GroupCountersHandler",this._groupCountersMap=new Map,this.EXPIRE_TIME=3e4,this._grpM.getIEmitInst().on(Bt.CLOUD_CONFIG,this._onCloudConfig,this)}_onCloudConfig(){var e=this._grpM.getCloudConfig("grp_counter_expire_time");Ke(e)||(this.EXPIRE_TIME=Number(e))}isGroupCountersNotice(e){var{to:e,elements:{groupCounterInfo:t}}=e;let s=!1;return qe(t)||(this._onGroupCountersUpdated({groupID:e,groupCounterInfo:t}),s=!0),s}_onGroupCountersUpdated(e){const{groupID:o,groupCounterInfo:t}=e;t.forEach(e=>{var{type:e,groupCounterSeq:t,counterList:s=[]}=e;0!==e&&2!==e||(this._updateLocalGroupCounters({groupID:o,groupCounterSeq:t,counterList:s}),s.forEach(e=>{this._grpM.emitOEvt(Ft,{groupID:o,key:e.key,value:e.value})})),1===e&&this._deleteLocalGroupCounters({groupID:o,groupCounterSeq:t,counterList:s})}),ct.l(this._n+"._onGroupCountersUpdated groupID:"+o)}initGroupCountersCache(e){var{groupID:e,avChatRoomKey:t}=e;this._groupCountersMap.set(e,{lastUpdateTime:0,groupCounterSeq:0,counters:new Map,avChatRoomKey:t}),ct.l(this._n+`.initGroupCountersCache groupID:${e} avChatRoomKey:`+t)}setGroupCounters(e){if(!this._grpM.canIUse(I.GRP_COUNTER))return this._grpM.noUse("setGroupCounters");const t=this._n+".setGroupCounters",{groupID:s,counters:o}=e,r=this._convertObjectToList(o),i=this._getLocalGroupCounters(s)["avChatRoomKey"],n=`groupID:${s} count:`+r.length,a=new Zt("setGroupCounters");return a.setMessage(n),ct.l(t+". "+n),this._updateGroupCounters({groupID:s,counterList:r,avChatRoomKey:i,mode:bo}).then(e=>(a.end(),ct.l(t+" ok."),ht({counters:e}))).catch(e=>(a.setError(e).end(),ct.e(t+" failed. error:",e),Kt(e)))}increaseGroupCounter(e){var t="increaseGroupCounter";if(!this._grpM.canIUse(I.GRP_COUNTER))return this._grpM.noUse(t);const s=this._n+"."+t,{groupID:o,key:r,value:i}=e,n=this._getLocalGroupCounters(o)["avChatRoomKey"],a=`groupID:${o} key:${r} value:`+i,u=new Zt(t);return u.setMessage(a),ct.l(s+". "+a),this._updateGroupCounters({groupID:o,counterList:[{key:r,value:i}],avChatRoomKey:n,mode:Ao}).then(e=>(u.end(),ct.l(s+" ok."),ht({counters:e}))).catch(e=>(u.setError(e).end(),ct.e(s+" failed. error:",e),Kt(e)))}decreaseGroupCounter(e){var t="decreaseGroupCounter";if(!this._grpM.canIUse(I.GRP_COUNTER))return this._grpM.noUse(t);const s=this._n+"."+t,{groupID:o,key:r,value:i}=e,n=this._getLocalGroupCounters(o)["avChatRoomKey"],a=`groupID:${o} key:${r} value:`+i,u=new Zt(t);return u.setMessage(a),ct.l(s+". "+a),this._updateGroupCounters({groupID:o,counterList:[{key:r,value:i}],avChatRoomKey:n,mode:To}).then(e=>(u.end(),ct.l(s+" ok."),ht({counters:e}))).catch(e=>(u.setError(e).end(),ct.e(s+" failed. error:",e),Kt(e)))}getGroupCounters(e){if(!this._grpM.canIUse(I.GRP_COUNTER))return this._grpM.noUse("getGroupCounters");const t=this._n+".getGroupCounters",{groupID:s,keyList:o=[]}=e,{avChatRoomKey:r,lastUpdateTime:i}=this._getLocalGroupCounters(s),n=new Zt("getGroupCounters");if(n.setMessage("groupID:"+s),Date.now()-i>=this.EXPIRE_TIME)return this._getRemoteGroupCounters({groupID:s,avChatRoomKey:r}).then(e=>{n.setMoreMessage("from remote. count:"+e.length).end(),ct.l(t+" from remote. groupID:"+s);e=this._getLocalCounters(s,o);return ht({counters:e})}).catch(e=>(n.setError(e).end(),Kt(e)));n.setMoreMessage("from cache").end(),ct.l(t+" from cache. groupID:"+s);e=this._getLocalCounters(s,o);return jt({counters:e})}_getRemoteGroupCounters(s){return this._grpM.req({P:Ns,data:{...s}}).then(e=>{var{counterList:e=[],groupCounterSeq:t}=e.data;return this._updateLocalGroupCounters({groupID:s.groupID,counterList:e,groupCounterSeq:t}),ct.l(this._n+"._getRemoteGroupCounters ok. groupID:"+s.groupID),e}).catch(e=>Kt(e))}_convertObjectToList(t){const s=[];return Object.keys(t).forEach(e=>{s.push({key:e,value:t[e]})}),s}_updateGroupCounters(e){const o=this._n+"._updateGroupCounters",{groupID:t,avChatRoomKey:s,mode:r}=e;return ct.l(o+`. groupID:${t} avChatRoomKey:${s} mode:`+r),this._grpM.req({P:Us,data:{...e}}).then(e=>{ct.l(o+" ok.");const{counterList:t=[]}=e.data,s={};return t.forEach(e=>{var{key:e,value:t}=e;s[e]=t}),s}).catch(e=>Kt(e))}_hasLocalGroupCounters(e){return this._groupCountersMap.has(e)}_getLocalGroupCounters(e){return this._hasLocalGroupCounters(e)||this.initGroupCountersCache({groupID:e}),this._groupCountersMap.get(e)}_updateLocalGroupCounters(s){var{groupID:e,counterList:t=[],groupCounterSeq:o}=s;if(this._hasLocalGroupCounters(e)){const{counters:s,avChatRoomKey:r,groupCounterSeq:i}=this._getLocalGroupCounters(e);0<o&&o<i||(t.forEach(e=>{var{key:e,value:t}=e;s.set(e,t)}),this._groupCountersMap.set(e,{lastUpdateTime:Date.now(),groupCounterSeq:o,counters:s,avChatRoomKey:r}))}}_deleteLocalGroupCounters(t){var{groupID:e,counterList:s=[],groupCounterSeq:o}=t;if(this._hasLocalGroupCounters(e)){const{counters:t,avChatRoomKey:r}=this._getLocalGroupCounters(e);s.forEach(e=>{t.delete(e.key)}),this._groupCountersMap.set(e,{lastUpdateTime:Date.now(),groupCounterSeq:o,counters:t,avChatRoomKey:r})}}_getLocalCounters(e,t){const s={};if(this._hasLocalGroupCounters(e)){const o=this._getLocalGroupCounters(e)["counters"];if(0<t.length)t.forEach(e=>{o.has(e)&&(s[e]=o.get(e))});else for(const r of o.keys())s[r]=o.get(r)}return s}reset(){this._groupCountersMap.clear(),this.EXPIRE_TIME=3e4}}class vo{constructor(e){var{manager:e,groupID:t,onInit:s,onSuccess:o,onFail:r}=e;this._n="Polling",this._manager=e,this._grpM=e._grpM,this._onInit=s,this._onSuccess=o,this._onFail=r,this._groupID=t,this._timeoutID=-1,this._isRunning=!1,this._proto=Ls}start(){var e=this._grpM.isLoggedIn();e||(this._proto=Cs),ct.l(`${this._n}.start pollingInterval:${this._manager.getPollingInterval()} isLoggedIn:`+e),this._isRunning=!0,this._request()}isRunning(){return this._isRunning}_request(){var e=this._onInit(this._groupID);this._grpM.req({P:this._proto,data:e}).then(e=>{this._onSuccess(this._groupID,e),this.isRunning()&&(clearTimeout(this._timeoutID),this._timeoutID=setTimeout(this._request.bind(this),this._manager.getPollingInterval()))}).catch(e=>{this._onFail(this._groupID,e),this.isRunning()&&(clearTimeout(this._timeoutID),this._timeoutID=setTimeout(this._request.bind(this),this._manager.MAX_POLLING_INTERVAL))})}stop(){ct.l(this._n+".stop"),0<this._timeoutID&&(clearTimeout(this._timeoutID),this._timeoutID=-1),this._isRunning=!1}getPollingTimerID(){return this._timeoutID}}class Po{constructor(e){this.MAX_LENGTH=e,this.map=new Map}set(e){if(this.map.size>=this.MAX_LENGTH){const e=this.map.entries().next().value[0];this.map.delete(e)}this.map.set(e,1)}has(e){return this.map.has(e)}delete(e){this.has(e)&&this.map.delete(e)}reset(){this.map.clear()}}const Ro=["groupID","name","avatar","type","introduction","notification","ownerID","selfInfo","createTime","infoSequence","lastInfoTime","lastMessage","nextMessageSeq","memberNum","maxMemberNum","memberList","joinOption","groupCustomField","muteAllMembers","isSupportTopic","inviteOption","_lastRevokedTime"];class $o{constructor(e){this.groupID="",this.name="",this.avatar="",this.type="",this.introduction="",this.notification="",this.ownerID="",this.createTime="",this.infoSequence="",this.lastInfoTime="",this.selfInfo={messageRemindType:"",joinTime:"",nameCard:"",role:"",userID:"",memberCustomField:void 0,readedSequence:0,excludedUnreadSequenceList:void 0},this.lastMessage={lastTime:"",lastSequence:"",fromAccount:"",messageForShow:""},this.nextMessageSeq="",this.memberNum="",this.memberCount="",this.maxMemberNum="",this.maxMemberCount="",this.joinOption="",this.inviteOption="",this.groupCustomField=[],this.muteAllMembers=!1,this.isSupportTopic=!1,this._lastRevokedTime=0,this._initGroup(e)}set memberNum(e){}set maxMemberNum(e){}get memberNum(){return this.memberCount}get maxMemberNum(){return this.maxMemberCount}_initGroup(e){for(const t in e)Ro.indexOf(t)<0||("selfInfo"!==t?("memberNum"===t&&(this.memberCount=e[t]),"maxMemberNum"===t&&(this.maxMemberCount=e[t]),"isSupportTopic"!==t?this[t]=e[t]:this.isSupportTopic=1===e[t]):this.updateSelfInfo(e[t]))}updateGroup(e){e.appid=void 0,e.grossTopicNextMsgSeq=void 0,e.selfInfo&&(e.selfInfo.grossTopicReadSeq=void 0);e=JSON.parse(JSON.stringify(e));e.lastMsgTime&&(this.lastMessage.lastTime=e.lastMsgTime),Ke(e.muteAllMembers)||("On"===e.muteAllMembers?e.muteAllMembers=!0:e.muteAllMembers=!1),e.groupCustomField&&Qe(this.groupCustomField,e.groupCustomField),Ke(e.memberNum)||(this.memberCount=e.memberNum),Ke(e.maxMemberNum)||(this.maxMemberCount=e.maxMemberNum),Ke(e.isSupportTopic)||(this.isSupportTopic=xe(e.isSupportTopic)?1===e.isSupportTopic:e.isSupportTopic),We(this,e,["members","errorCode","lastMsgTime","groupCustomField","memberNum","maxMemberNum","isSupportTopic"]),je(e.members)&&0<e.members.length&&e.members.forEach(e=>{e.userID===this.selfInfo.userID&&We(this.selfInfo,e,["sequence"])})}updateSelfInfo({nameCard:e,joinTime:t,role:s,messageRemindType:o,readedSequence:r,excludedUnreadSequenceList:i}){e={nameCard:e,joinTime:t,role:s,messageRemindType:o,readedSequence:r,excludedUnreadSequenceList:i};We(this.selfInfo,{...e},[],["",null,void 0,0,NaN])}setSelfNameCard(e){this.selfInfo.nameCard=e}}const Eo={3:!0,4:!0,5:!0,6:!0,17:!0,20:!0,21:!0,100:!0};class wo{constructor(e){this._grpM=e,this._n="AVChatRoomHandler",this._joinedGroupMap=new Map,this._pollingRequestInfoMap=new Map,this._pollingInstanceMap=new Map,this._seqSll=new Po(200),this._IDSll=new Po(100),this._reportMessageStackedCount=0,this._onlineMemberCountMap=new Map,this.DEFAULT_EXPIRE_TIME=60,this.DEFAULT_POLLING_INTERVAL=300,this.MAX_POLLING_INTERVAL=2e3,this._pollingInterval=this.DEFAULT_POLLING_INTERVAL,this.DEFAULT_POLLING_NO_MESSAGE_COUNT=20,this.DEFAULT_POLLING_INTERVAL_PLUS=2e3,this._pollingNoMessageCount=0,this._startBroadcastSeq=1,this._broadcastMessageIDMap=new Map,this.DEFAULT_POLLING_SIMPLIFIED_MSG=0}hasJoinedAVChatRoom(){let e=[];return 0<(e=0<this._joinedGroupMap.size?[...this._joinedGroupMap.values()].filter(e=>e.type===me):e).length}getJoinedLiveList(){let e=[];return e=0<this._joinedGroupMap.size?[...this._joinedGroupMap.values()].filter(e=>e.type===fe):e}checkJoinedAVChatRoomByID(e){return this._joinedGroupMap.has(e)}getJoinedAVChatRoom(){return 0<this._joinedGroupMap.size?[...this._joinedGroupMap.keys()]:[]}_updatedata(e){var t=this._pollingRequestInfoMap.get(e);return e===[...this._pollingInstanceMap.keys()][0]?{...t,startBroadcastSeq:this._startBroadcastSeq,simplifiedMessage:this.DEFAULT_POLLING_SIMPLIFIED_MSG}:{...t,simplifiedMessage:this.DEFAULT_POLLING_SIMPLIFIED_MSG}}_handleSuccess(e,t){const{key:s,nextSeq:o,rspMsgList:r,errorCode:i,nextBroadcastSeq:n,broadcastMessageList:a}=t.data;if(0!==i){const s=this._pollingRequestInfoMap.get(e),o=new Zt("longPollingAVError"),r=s?s.key+"-"+s.startSeq:"requestInfo is undefined";o.setMessage(`${e}-${r}-`+t.errorInfo).setCode(t.errorCode).end(!0)}else this.checkJoinedAVChatRoomByID(e)&&(Ve(s)&&xe(o)&&this._pollingRequestInfoMap.set(e,{key:s,startSeq:o}),xe(n)&&n>this._startBroadcastSeq&&(this._startBroadcastSeq=n),je(r)&&0<r.length?(r.forEach(e=>{e.to=e.groupID}),this.onMessage(r,e)):(this._pollingNoMessageCount+=1,this._pollingNoMessageCount===this.DEFAULT_POLLING_NO_MESSAGE_COUNT&&(this._pollingInterval=this.DEFAULT_POLLING_INTERVAL+this.DEFAULT_POLLING_INTERVAL_PLUS)),this._onBroadcastMessage(a))}_handleFailure(e,t){}onMessage(i,n){if(je(i)&&0!==i.length){let t=this._n+".onMessage";n&&(t+=" groupID:"+n),0!==this._pollingNoMessageCount&&(this._pollingNoMessageCount=0,this._pollingInterval=this.DEFAULT_POLLING_INTERVAL);var a=null,u=[],l=this._get(o),h=this._get(p),c=i.length,m=(1<c&&i.sort((e,t)=>e.sequence-t.sequence),this._get(r).isUnlimitedAVChatRoom());let s=!1;if(ct.getLevel()<=0){const n=i.map(e=>e.sequence);ct.l(`${t} count:${n.length} sequenceList:`+n),n.length=0}for(let e=0;e<c;e++){const n=this.restoreMessageFromSimplified(i[e]);if(Eo[n.event]){if(6===n.event){if(this._grpM.isGroupAttributesUpdatedNotice(n))continue;if(this._grpM.isGroupCountersNotice(n))continue}if(20===n.event)this.handleMessageRevokedNotice(n);else if(21===n.event)this._get(g).onMessageReactionNotify({event:21,dataList:n.elements.messageReactionNotifyList});else if(100===n.event)this.onRoomCustomData(n);else{a=this.packMessage(n,n.event);const r=1===n.isModified;if(s=1===n.isHistoryMessage,!m){if(this._seqSll.has(a.sequence))continue;this._seqSll.set(a.sequence)}const p=this._IDSll.has(a.ID);if(p)ct.w(`${t} ID:${a.ID} has:`+p);else{this._IDSll.set(a.ID);let e=!1;if(!s&&this._isMessageSentByCurrentInstance(a)?r&&(e=!0,a.isModified=r,l.updateMsgIsModifiedProp(a)):e=!0,e){if(a.conversationType===le&&5===a.payload.operationType&&this._onGroupDismissed(a.payload.groupProfile.groupID),!s&&a.conversationType!==le){const i=a.conversationID.replace(ue,"");this._pollingInstanceMap.has(i)?this._grpM.isLoggedIn()&&h.addMessageSequence({key:zt,message:a}):(a.type!==Z&&0<a.clientTime&&h.addMessageDelay(a.clientTime),h.addMessageSequence({key:Wt,message:a}))}u.push(a)}}}}else ct.w(t+". unknown event:"+n.event)}if(0!==u.length){n=Ze(u);if(0<n.length&&this._grpM.emitOEvt(Nt,n),!s){const i=this.packConversationOption(u);0<i.length&&l.onNewMessage({conversationOptionsList:i,isInstantMessage:!0})}this._checkMessageStacked(u);n=et(u);0<n.length&&this._grpM.emitOEvt(Ut,n),u.length=0}}}handleMessageRevokedNotice(e){const{groupID:r,elements:{revokeMsgList:t},revokerInfo:i}=e,n=[];t.forEach(e=>{var{tinyID:e,clientTime:t,random:s,sequence:o}=e,e={conversationID:""+ue+r,ID:e+`-${t}-`+s,revoker:i.revoker,revokeReason:i.reason||"",revokerInfo:{userID:i.revoker,nick:"",avatar:""},sequence:o};n.push(e)}),0!==n.length&&this._get(o).updateRevokerInfo(n).then(e=>{this._grpM.emitOEvt(qt,e)})}isBroadcastOrNormal(e){return 3===e||17===e}isGroupTip(e){return 4===e||6===e}isGroupSystemNotice(e){return 5===e}restoreGroupTipElements(e={}){var{operatorInfo:t={},operatorID:s,userIDList:o=[],operationType:r}=e,{userID:r=s,avatar:t="",nick:s=""}=(xe(e.groupJoinType)||1!==r&&2!==r||(e.groupJoinType=2===r?0:1),t),r=(e.operatorInfo={userID:r,avatar:t,nick:s},o.map(e=>({userID:e})));return e.memberInfoList=e.memberInfoList||r,e}restoreMessageFromSimplified(s){const e=s["event"];if(this.isBroadcastOrNormal(e)&&(s.cloudCustomData=s.cloudCustomData||"",s.elements=s.elements.map(e=>{var t;return e.type===te&&({content:t={}}=e,e.content={data:"",description:"",extension:"",...t}),e})),(this.isGroupTip(e)||this.isGroupSystemNotice(e))&&(s.from=s.from||"@TIM#SYSTEM"),this.isGroupTip(e)){s.elements=this.restoreGroupTipElements(s.elements);const{elements:e={}}=s,{operationType:t,operatorInfo:r={}}=e;if(1===t){const s=[{userID:r.userID}];e.memberInfoList=e.memberInfoList||s}}if(this.isGroupSystemNotice(e)){let{memberInfoList:e,operatorInfo:t={}}=s.elements;e=e||t,s.elements.memberInfoList={userID:s.elements.operatorID,avatar:"",nick:"",...e},s.elements={authentication:"",remarkInfo:"",messageKey:1e3*s.time,...s.elements};var o=Object.keys(s.elements).filter(e=>"operatorInfo"!==e).reduce((e,t)=>({...e,[t]:s.elements[t]}),{});s.elements=o}return s}_onGroupDismissed(e){ct.l(this._n+"._onGroupDismissed groupID:"+e),this._grpM.deleteLocalGroupAndConversation(e),this.reset(e)}_checkMessageStacked(e){var t="MessageStacked",e=e.length;100<=e&&(this._grpM.warn(t,e),this._reportMessageStackedCount<5)&&(new Zt(t).setMessage(`count:${e} groupID:`+[...this._joinedGroupMap.keys()]).setLevel("warning").end(),this._reportMessageStackedCount+=1)}_isMessageSentByCurrentInstance(e){return!!this._get(o).isMessageSentByCurrentInstance(e)}packMessage(e,t){e.currentUser=this._grpM.getMyUserID(),e.conversationType=5===t?le:ue,e.isSystemMessage=!!e.isSystemMessage;var s=new _o(e),e=this.packElements(e,t),t=this._grpM.getFileDownloadProxy(),o=this._grpM.getDowloadFileAuthKey(),r=this._get(n).getFileDNList();return s.setElement(e,t,o,r),s}packElements(e,t){return 4===t||6===t?(this._updateMemberCountByGroupTips(e),{type:Z,content:{...e.elements,groupProfile:e.groupProfile}}):5===t?{type:ee,content:{...e.elements,groupProfile:{...e.groupProfile,groupID:e.groupID}}}:e.elements}packConversationOption(t){var s=new Map;for(let e=0;e<t.length;e++){var o=t[e],r=o.conversationID;if(s.has(r)){const t=s.get(r);"in"===(t.lastMessage=o).flow&&t.unreadCount++}else s.set(r,{conversationID:o.conversationID,unreadCount:"out"===o.flow?0:1,type:o.conversationType,subType:o.conversationSubType,lastMessage:o})}return[...s.values()]}_updateMemberCountByGroupTips(e){var t,s,o,{groupProfile:{groupID:e},elements:{onlineMemberInfo:r}}=e;qe(r)||({onlineMemberNum:r=0,expireTime:t=this.DEFAULT_EXPIRE_TIME}=r,s=this._onlineMemberCountMap.get(e)||{},o=Date.now(),qe(s)?Object.assign(s,{lastReqTime:0,lastSyncTime:0,latestUpdateTime:o,memberCount:r,expireTime:t}):(s.latestUpdateTime=o,s.memberCount=r),this._onlineMemberCountMap.set(e,s))}_onBroadcastMessage(t){if(!qe(t)){const o=[],r=t.length;var s=null;for(let e=0;e<r;e++){const r=this.restoreMessageFromSimplified(t[e]);Eo[r.event]?((s=this.packMessage(r,r.event)).isBroadcastMessage=!0,this._broadcastMessageIDMap.has(s.ID)||(o.push(s),this._broadcastMessageIDMap.set(s.ID,1))):ct.w(this._n+"._onBroadcastMessage unknown event:"+r.event)}0<o.length&&this._grpM.emitOEvt(Ut,o)}}start(e){if(this._pollingInstanceMap.has(e)){const t=this._pollingInstanceMap.get(e);void(t.isRunning()||t.start())}else{const t=new vo({manager:this,groupID:e,onInit:this._updatedata.bind(this),onSuccess:this._handleSuccess.bind(this),onFail:this._handleFailure.bind(this)});t.start(),this._pollingInstanceMap.set(e,t),ct.l(this._n+".start groupID:"+e)}}handleJoinResult(o){return this._preCheck(o.group).then(()=>{var{longPollingKey:e,group:t}=o,s=t.groupID;return this._joinedGroupMap.set(s,t),this._grpM.updateGroupMap([t]),this._grpM.deleteUnjoinedAVChatRoom(s),this._grpM.emitGroupListUpdate(!0,!1),Ke(e)?jt({status:$e,group:t}):Promise.resolve()})}startRunLoop(r){return this.handleJoinResult(r).then(()=>{var{longPollingKey:e,group:t,startSeq:s=0}=r,o=t.groupID;return this._pollingRequestInfoMap.set(o,{key:e,startSeq:s}),this.start(o),this._grpM.isLoggedIn()?jt({status:$e,group:t}):jt({status:$e})})}_preCheck(e){if(!this._get(r).isUnlimitedAVChatRoom()&&this.hasJoinedAVChatRoom()&&e.type!==fe){var[e,t]=this._joinedGroupMap.entries().next().value;if(this._grpM.isLoggedIn()&&t.selfInfo.role!==Me&&t.ownerID!==this._grpM.getMyUserID())return this._grpM.quitGroup(e);this._grpM.deleteLocalGroupAndConversation(e),this.reset(e)}return Promise.resolve()}joinWithoutAuth(e){const s=e["groupID"],r=this._n+".joinWithoutAuth",n=new Zt("joinWithoutAuth");return this._grpM.req({P:as,data:e}).then(({data:{longPollingKey:e}})=>{if(n.setMessage(`groupID:${s} longPollingKey:`+e).end(!0),Ke(e))return Kt({code:Gt});ct.l(r+" ok. groupID:"+s),this._get(o).setCompleted(""+ue+s);var t=new $o({groupID:s});return this.startRunLoop({group:t,longPollingKey:e}),ht({status:$e})}).catch(e=>(ct.e(r+` failed. groupID:${s} error:`,e),n.setError(e).setMessage("groupID:"+s).end(!0),Kt(e))).finally(()=>{this._grpM.get(i).reportAtOnce()})}getGroupOnlineMemberCount(e){var t=this._onlineMemberCountMap.get(e)||{},s=Date.now();return qe(t)||s-t.lastSyncTime>1e3*t.expireTime&&1e4<s-t.latestUpdateTime&&3e3<s-t.lastReqTime?(t.lastReqTime=s,this._onlineMemberCountMap.set(e,t),this._getGroupOnlineMemberCount(e).then(e=>ht({memberCount:e.memberCount})).catch(e=>Kt(e))):jt({memberCount:t.memberCount})}_getGroupOnlineMemberCount(r){const i=this._n+"._getGroupOnlineMemberCount",t=new Zt("_getGroupOnlineMemberCount");return this._grpM.requestOnlineCount(r).then(e=>{var t=this._onlineMemberCountMap.get(r)||{},{memberCount:e=0,expireTime:s=this.DEFAULT_EXPIRE_TIME}=e.data,o=(ct.l(i+` ok. groupID:${r} memberCount:${e} expireTime:`+s),Date.now());return qe(t)&&(t.lastReqTime=o),this._onlineMemberCountMap.set(r,Object.assign(t,{lastSyncTime:o,latestUpdateTime:o,memberCount:e,expireTime:s})),{memberCount:e}}).catch(e=>(ct.w(i+" failed. error:",e),t.setCode(e.code).setMessage(`groupID:${r} error:`+JSON.stringify(e)).end(),Promise.reject(e)))}_get(e){return this._grpM.get(e)}setPollingInterval(e){Ke(e)||(xe(e)?this._pollingInterval=this.DEFAULT_POLLING_INTERVAL=e:this._pollingInterval=this.DEFAULT_POLLING_INTERVAL=parseInt(e,10))}setPollingIntervalPlus(e){Ke(e)||(xe(e)?this.DEFAULT_POLLING_INTERVAL_PLUS=e:this.DEFAULT_POLLING_INTERVAL_PLUS=parseInt(e,10))}setPollingNoMessageCount(e){Ke(e)||(xe(e)?this.DEFAULT_POLLING_NO_MESSAGE_COUNT=e:this.DEFAULT_POLLING_NO_MESSAGE_COUNT=parseInt(e,10))}setPollingSimplifiedMessage(e){Ke(e)||"0"!==e&&"1"!==e||(this.DEFAULT_POLLING_SIMPLIFIED_MSG=parseInt(e,10))}getPollingInterval(){return this._pollingInterval}onAVChatRoomMemberBanned(e){e=e.payload.groupProfile.groupID;ct.l(this._n+".onAVChatRoomMemberBanned groupID:"+e),this._grpM.deleteLocalGroupAndConversation(e),this.reset(e)}restartPolling(){ct.l(this._n+".restartPolling count:"+this._pollingInstanceMap.size);for(const e of this._pollingInstanceMap.values())e.stop(),e.start()}getPollingTimerID(e){var t;return this._pollingInstanceMap.has(e)?(t=this._pollingInstanceMap.get(e).getPollingTimerID(),ct.l(this._n+`.getPollingTimerID groupID:${e} timerID:`+t),t):-1}hasPollingInstance(e){return this._pollingInstanceMap.has(e)}onRoomCustomData(e){var{groupID:e,sequence:t,time:s,elements:o}=e,o=o&&o.content;this._get(h).onRoomCustomDataReceived(o),ct.l(this._n+`.onRoomCustomData groupID:${e} sequence:${t} time:${s} data:`+o)}reset(e){if(e){ct.l(this._n+".reset groupID:"+e);var t=this._pollingInstanceMap.get(e);t&&t.stop(),this._pollingInstanceMap.delete(e),this._joinedGroupMap.delete(e),this._pollingRequestInfoMap.delete(e),this._onlineMemberCountMap.delete(e)}else{ct.l(this._n+".reset all");for(const e of this._pollingInstanceMap.values())e.stop();this._pollingInstanceMap.clear(),this._joinedGroupMap.clear(),this._pollingRequestInfoMap.clear(),this._onlineMemberCountMap.clear(),this._broadcastMessageIDMap.clear()}this._seqSll.reset(),this._IDSll.reset(),this._reportMessageStackedCount=0,this._pollingInterval=this.DEFAULT_POLLING_INTERVAL=300,this.DEFAULT_POLLING_NO_MESSAGE_COUNT=20,this.DEFAULT_POLLING_INTERVAL_PLUS=2e3,this._pollingNoMessageCount=0}}class Uo{constructor(e){this.userID="",this.avatar="",this.nick="",this.role="",this.joinTime="",this.lastSendMsgTime="",this.nameCard="",this.muteUntil=0,this.memberCustomField=[],this.isOnline=!1,this.updateMember(e)}updateMember(e){Ke(e.onlineStatus)||(this.isOnline="Online"===e.onlineStatus);var t=[null,void 0,"",0,NaN];e.memberCustomField&&Qe(this.memberCustomField,e.memberCustomField),We(this,e,["memberCustomField","marks","onlineStatus"],t)}updateRole(e){["Owner","Admin","Member"].indexOf(e)<0||(this.role=e)}updateMuteUntil(e){Ke(e)||(this.muteUntil=Math.floor((Date.now()+1e3*e)/1e3))}updateNameCard(e){Ke(e)||(this.nameCard=e)}updateMemberCustomField(e){e&&Qe(this.memberCustomField,e)}}class No{constructor(e){this._grpM=e,this._n="GroupMemberHandler",this.groupMemberListMap=new Map,this.DEFAULT_MEMBER_INFO_FILTER=["Role","JoinTime","NameCard","ShutUpUntil","OnlineStatus"],this._grpM.getIEmitInst().on(Bt.PROFILE_UPDATED,this._onProfileUpdated,this)}_onProfileUpdated({data:t}){for(let e=0;e<t.length;e++){const s=t[e];this.groupMemberListMap.forEach(e=>{e.has(s.userID)&&e.get(s.userID).updateMember({nick:s.nick,avatar:s.avatar})})}}deleteGroupMemberList(e){this.groupMemberListMap.delete(e)}getGroupMemberList({groupID:r,role:e,offset:s=0,count:o=15,filter:i}){const n=this._n+".getGroupMemberList",a=this._grpM.hasLocalGroup(r);if(ct.l(n+` groupID:${r} role:${e} offset:${s} count:${o} hasLocalGroup:`+a),!a)return jt({memberList:[],offset:0});if(this._grpM.getLocalGroupProfile(r).type===me){if(this._grpM.canIUse(I.AV_MBR_LIST))return this._getAVChatRoomMemberList({groupID:r,offset:s,filter:i});this._grpM.warn("LiveOnlineMember")}let u;e!==Ie&&e!==Me&&e!==ye||(u=e);const p=new Zt("getGroupMemberList");let l=0;i={groupID:r,limit:100<o?100:o,memberRoleFilter:u?[u]:void 0,memberInfoFilter:this.DEFAULT_MEMBER_INFO_FILTER};ot({groupID:r})?i.next=""+s:(i.offset=s,l=s+o);let h=[];return this._grpM.req({P:qs,data:i}).then(({data:{members:e,memberNum:s,next:o}})=>(Ke(o)||(l=qe(o)?0:o),je(e)&&0!==e.length?(this._grpM.hasLocalGroup(r)&&(this._grpM.getLocalGroupProfile(r).memberNum=s),h=this._updateLocalGroupMemberMap(r,e),this._grpM.get(t).getUserProfile({userIDList:e.map(e=>e.userID),tagList:[Re.NICK,Re.AVATAR]})):(l=0,Promise.resolve([])))).then(e=>{var e=e["data"];return je(e)&&0!==e.length?(e=e.map(e=>({userID:e.userID,nick:e.nick,avatar:e.avatar})),this._updateLocalGroupMemberMap(r,e),h.length<o&&(l=0),p.setMessage(`groupID:${r} offset:${s} count:`+o).end(),ct.l(n+" ok."),ht({memberList:h,offset:l})):jt({memberList:[],offset:l})}).catch(e=>(p.setError(e).end(),ct.e(n+" failed. error:",e),Kt(e)))}_getAVChatRoomMemberList({groupID:s,offset:e,filter:t}){const o=this._n+"._getAVChatRoomMemberList",r=new Zt("_getAVChatRoomMemberList");return r.setMessage(`groupID:${s} offset:${e} filter:`+t),this._grpM.req({P:ks,data:{groupID:s,offset:e,filter:t}}).then(e=>{var{memberList:e=[],offset:t=0}=e.data,e=(r.end(),ct.l(o+` ok. member count:${e.length}, next request timestamp:`+t),e.map(e=>({...e,onlineStatus:"Online"}))),e=this._updateLocalGroupMemberMap(s,e);return ht({memberList:e,offset:t})}).catch(e=>(r.setError(e).end(),ct.e(o+" failed. error:",e),Kt(e)))}getGroupMemberProfile(e){var s="getGroupMemberProfile",o=this._n+"."+s;let r="groupID:"+e.groupID;5<e.userIDList.length?r+=" userIDList.length:"+e.userIDList.length:r+=" userIDList:"+e.userIDList,ct.l(o+" "+r),50<e.userIDList.length&&(e.userIDList=e.userIDList.slice(0,50));const{groupID:i,userIDList:n}=e,a=this._grpM.getLocalGroupProfile(i);if(a&&st(a.type)){const e=Pt;return Kt({code:e,message:this._grpM.getErrMsg(e,s)})}const u=new Zt(s);return u.setMessage(r),this._getGroupMemberProfileAdvance({...e,userIDList:n}).then(e=>{e=e.data.members;return je(e)&&0!==e.length?(this._updateLocalGroupMemberMap(i,e),this._grpM.get(t).getUserProfile({userIDList:e.map(({userID:e})=>e),tagList:[Re.NICK,Re.AVATAR]})):jt([])}).then(e=>{e=e.data.map(({userID:e,nick:t,avatar:s})=>({userID:e,nick:t,avatar:s})),this._updateLocalGroupMemberMap(i,e),e=n.filter(e=>this.hasLocalGroupMember(i,e)).map(e=>this.getLocalGroupMemberInfo(i,e));return u.end(),ht({memberList:e})})}addGroupMember(i){const n=this._n+".addGroupMember",e=i["groupID"],a=this._grpM.getLocalGroupProfile(e),t=a["type"],u=new Zt("addGroupMember");if(u.setMessage(`groupID:${e} groupType:`+t),st(t)){const i=new gt({code:Ct});return u.setError(i).end(),Kt(i)}return i.userIDList=i.userIDList.map(e=>({userID:e})),ct.l(n+" groupID:"+e),this._grpM.req({P:Fs,data:i}).then(({data:{members:e}})=>{ct.l(n+" ok");var t=e.filter(e=>1===e.result).map(e=>e.userID),s=e.filter(e=>0===e.result).map(e=>e.userID),o=e.filter(e=>2===e.result).map(e=>e.userID),e=e.filter(e=>4===e.result).map(e=>e.userID),r=`groupID:${i.groupID}, successUserIDList:${t}, failureUserIDList:${s}, existedUserIDList:${o}, overLimitUserIDList:`+e;return u.setMoreMessage(r).end(),0===t.length?ht({successUserIDList:t,failureUserIDList:s,existedUserIDList:o,overLimitUserIDList:e}):(this._updateConvGroupProfile(a),ht({successUserIDList:t,failureUserIDList:s,existedUserIDList:o,overLimitUserIDList:e,group:a}))}).catch(e=>(u.setError(e).end(),ct.e(n+" failed. error:",e),Kt(e)))}deleteGroupMember(e){const t=this._n+".deleteGroupMember",{groupID:s,userIDList:o}=e,r=this._grpM.getLocalGroupProfile(s);if(Ke(r))return Kt({code:Mt});if(st(r.type))return this._grpM.canIUse(I.AV_BAN_MBR)?this._banAVChatRoomMember(e):this._grpM.noUse("deleteGroupMember");var i=`groupID:${s} `+(5<o.length?"userIDList.length:"+o.length:"userIDList:"+o);ct.l(t+` groupID:${s} userIDList:`,o);const n=new Zt("deleteGroupMember");return n.setMessage(i),this._grpM.req({P:xs,data:e}).then(()=>(n.end(),ct.l(t+" ok"),this._updateConvGroupProfile(r),this.deleteLocalGroupMembers(s,o),ht({group:r,userIDList:o}))).catch(e=>(n.setError(e).end(),ct.e(t+" failed. error:",e),Kt(e)))}_updateConvGroupProfile(e){this._grpM.get(o).updateConvGroupProfile([e])}_banAVChatRoomMember(e){const t=this._n+"._banAVChatRoomMember",{groupID:s,userIDList:o}=e,r=`groupID:${s} `+(5<o.length?"userIDList.length:"+o.length:"userIDList:"+o),i=new Zt("_banAVChatRoomMember"),n=(i.setMessage(r),ct.l(t+` groupID:${s} userIDList:`,o),this._grpM.getLocalGroupProfile(s));return Ke(e.duration)||0===e.duration?Kt({code:vt}):this._grpM.req({P:Vs,data:e}).then(()=>(i.end(),ct.l(t+" ok"),this.deleteLocalGroupMembers(s,o),ht({group:n,userIDList:o}))).catch(e=>(i.setError(e).end(),ct.e(t+" failed. error:",e),Kt(e)))}setGroupMemberMuteTime(e){const{groupID:s,userID:t,muteTime:o}=e,r=this._n+".setGroupMemberMuteTime";if(t===this._grpM.getMyUserID())return Kt({code:St});e=`groupID:${s} userID:${t} muteTime:`+o;ct.l(r+" "+e);const i=new Zt("setGroupMemberMuteTime");return i.setMessage(e),this.modifyGroupMemberInfo({groupID:s,userID:t,muteTime:o}).then(e=>{i.end(),ct.l(r+" ok");var t=this._grpM.getLocalGroupProfile(s);return ht({group:t,member:e})}).catch(e=>(i.setError(e).end(),ct.e(r+" failed. error:",e),Kt(e)))}setGroupMemberRole(e){const t=this._n+".setGroupMemberRole",{groupID:s,userID:o,role:r}=e,i=`groupID:${s} userID:${o} role:`+r,n=this._grpM.getLocalGroupProfile(s);if(n&&n.selfInfo.role!==Me)return Kt({code:bt});e=[Ie,ye];if(ot({groupID:s})&&e.push(De),e.indexOf(r)<0)return Kt({code:At});if(o===this._grpM.getMyUserID())return Kt({code:Tt});const a=new Zt("setGroupMemberRole");return a.setMessage(i),ct.l(t+" "+i),this.modifyGroupMemberInfo({groupID:s,userID:o,role:r}).then(e=>(a.end(),ct.l(t+" ok"),ht({group:n,member:e}))).catch(e=>(a.setError(e).end(),ct.e(t+" failed. error:",e),Kt(e)))}_filterProfanity(e,t){var s,o=this._grpM.get(c);return!o||({isAllowedToSend:o,modifiedText:s}=o.filterText(t[e],D),!0===o&&(t[e]=s,!0))}setGroupMemberNameCard(e){const t="setGroupMemberNameCard",s=this._n+"."+t;if(e.nameCard&&!1===this._filterProfanity("nameCard",e))return Kt({code:wt});const{groupID:o,userID:r=this._grpM.getMyUserID(),nameCard:i}=e,n=`groupID:${o} userID:${r} nameCard:`+i;ct.l(s+" "+n);e=this._grpM.getLocalGroupProfile(o);if(e&&st(e.type)){const e=Pt;return Kt({code:e,message:this._grpM.getErrMsg(e,t)})}const a=new Zt(t);return a.setMessage(n),this.modifyGroupMemberInfo({groupID:o,userID:r,nameCard:i}).then(e=>{ct.l(s+" ok"),a.end();var t=this._grpM.getLocalGroupProfile(o);return r===this._grpM.getMyUserID()&&t&&t.setSelfNameCard(i),ht({group:t,member:e})}).catch(e=>(a.setError(e).end(),ct.e(s+" failed. error:",e),Kt(e)))}setGroupMemberCustomField(e){const t="setGroupMemberCustomField",s=this._n+"."+t,{groupID:o,userID:r=this._grpM.getMyUserID(),memberCustomField:i}=e,n=`groupID:${o} userID:${r} memberCustomField:`+JSON.stringify(i);ct.l(s+" "+n);e=this._grpM.getLocalGroupProfile(o);if(e&&st(e.type)){const e=Pt;return Kt({code:e,message:this._grpM.getErrMsg(e,t)})}const a=new Zt(t);return a.setMessage(n),this.modifyGroupMemberInfo({groupID:o,userID:r,memberCustomField:i}).then(e=>{a.end(),ct.l(s+" ok");var t=this._grpM.getLocalGroupProfile(o);return ht({group:t,member:e})}).catch(e=>(a.setError(e).end(),ct.e(s+" failed. error:",e),Kt(e)))}modifyGroupMemberInfo(t){let{groupID:s,userID:o}=t,e=void 0;return rt(s)&&(s=it(e=s)),this._grpM.req({P:Hs,data:{...t,groupID:s,topicID:e}}).then(()=>{if(this.hasLocalGroupMember(s,o)){const e=this.getLocalGroupMemberInfo(s,o);return Ke(t.muteTime)||e.updateMuteUntil(t.muteTime),Ke(t.role)||e.updateRole(t.role),Ke(t.nameCard)||e.updateNameCard(t.nameCard),Ke(t.memberCustomField)||e.updateMemberCustomField(t.memberCustomField),e}const e=this._grpM.getLocalGroupProfile(s);if(e&&!st(e.type))return this.getGroupMemberProfile({groupID:s,userIDList:[o]}).then(({data:{memberList:[e]}})=>e)})}markGroupMemberList(e){const r=this._n+".markGroupMemberList",{groupID:t,markType:s,enableMark:o,userIDList:i=[]}=e,n=`groupID:${t} markType:${s} enableMark:${o} userIDList count:`+i.length;ct.l(r+" "+n);let a=2;const u=[];!0===o&&(a=1);let p=[...i];500<i.length&&(p=i.slice(0,500),ct.w(r+" "+"the length of userIDList cannot exceed 500")),p.forEach(e=>{u.push({userID:e,markType:[s]})}),p=null;const l=new Zt("markGroupMemberList");return l.setMessage(n),this._grpM.req({P:js,data:{groupID:t,operationType:a,memberList:u}}).then(e=>{const{memberList:t=[]}=e.data,s=[],o=[];t.length===i.length?s.push(...i):(t.forEach(e=>{s.push(e.userID)}),i.forEach(e=>{s.includes(e)||o.push(e)}));e=`success count:${s.length} fail count:`+o.length;return l.setMessage(e).end(),ct.l(r+" ok. "+e),ht({successUserIDList:s,failureUserIDList:o})}).catch(e=>(l.setError(e).end(),ct.e(r+" failed. error:",e),Kt(e)))}_getGroupMemberProfileAdvance(e){return this._grpM.req({P:Os,data:{...e,memberInfoFilter:e.memberInfoFilter||this.DEFAULT_MEMBER_INFO_FILTER}})}_updateLocalGroupMemberMap(t,e){return je(e)&&0!==e.length?e.map(e=>(this.hasLocalGroupMember(t,e.userID)?this.getLocalGroupMemberInfo(t,e.userID).updateMember(e):this.setLocalGroupMember(t,new Uo(e)),this.getLocalGroupMemberInfo(t,e.userID))):[]}deleteLocalGroupMembers(e,t){const s=this.groupMemberListMap.get(e);s&&t.forEach(e=>{s.delete(e)})}getLocalGroupMemberInfo(e,t){return this.groupMemberListMap.has(e)?this.groupMemberListMap.get(e).get(t):null}setLocalGroupMember(e,t){this.groupMemberListMap.has(e)?this.groupMemberListMap.get(e).set(t.userID,t):(t=(new Map).set(t.userID,t),this.groupMemberListMap.set(e,t))}getLocalGroupMemberList(e){return this.groupMemberListMap.get(e)}hasLocalGroupMember(e,t){return this.groupMemberListMap.has(e)&&this.groupMemberListMap.get(e).has(t)}hasLocalGroupMemberMap(e){return this.groupMemberListMap.has(e)}reset(){this.groupMemberListMap.clear()}}function qo(e){var t=e.lastIndexOf(".");return-1===t?e:e.slice(0,t)}function ko(e){var{androidInfo:e={},androidOPPOChannelID:t=""}=e,t=e.OPPOChannelID||t;return{...e,Sound:qo(e.sound||""),OPPOChannelID:t,GoogleChannelID:e.FCMChannelID||""}}function Oo(e){var{apnsInfo:e={},ignoreIOSBadge:t=!1,disableVoipPush:s}=e,t=!0===e.ignoreIOSBadge||!0===t?1:0;let o=void 0;return Ke(s)||(o=!1===s?1:0),Ke(e.disableVoipPush)||(o=!1===e.disableVoipPush?1:0),{...e,badgeMode:t,isVoipPush:o}}function Fo(e){if(He(e))return{pushFlag:!0===e.disablePush?1:0,title:e.title||"",desc:e.description||"",ext:e.extension||"",apnsInfo:Oo(e),androidInfo:ko(e)}}const xo=1,Vo=15,Ho=[17,18,20];class jo{constructor(e){this._grpM=e,this._n="GroupSystemNoticeHandler",this.pendencyMap=new Map}onNewGroupSystemNotice(e){var{dataList:e,isSyncingEnded:t,isInstantMessage:s}=e,{eventDataList:e,result:r}=(ct.d(this._n+".onReceiveSystemNotice count:"+e.length),this._assembly({notifiesList:e,isInstantMessage:s}));0<e.length&&(this._grpM.get(o).onNewMessage({conversationOptionsList:e,isInstantMessage:s}),this._onReceivedGroupSystemNotice({result:r,isInstantMessage:s})),s?0<r.length&&this._grpM.emitOEvt(Ut,r):!0===t&&this._clearGroupSystemNotice()}_assembly({notifiesList:e,isInstantMessage:t}){var s=null;const r=e.length;let i=0;var n=[],a={conversationID:le,unreadCount:0,type:le,subType:null,lastMessage:null};for(i=0;i<r;i++){const r=e[i],{groupProfile:{communityType:u=0,topicID:p},elements:{topicIDList:l,operationType:h}}=r;if(!(2!==u||qe(p)&&qe(l))){if(Ho.includes(h)){this._handleTopicSystemNotice(r);continue}qe(p)||(r.to=p)}r.elements.operationType!==Vo&&(r.currentUser=this._grpM.getMyUserID(),r.conversationType=le,r.conversationID=le,(s=new _o(r)).setElement({type:ee,content:{...r.elements,groupProfile:{...r.groupProfile}}}),s.isSystemMessage=!0,(1===s.sequence&&1===s.random||2===s.sequence&&2===s.random)&&(s.sequence=ze(),s.random=ze(),s.generateMessageID(),ct.l(this._n+"._assembly regenerate ID:"+s.ID)),this._grpM.get(o).pushIntoNoticeResult(n,s))&&(t?a.unreadCount++:s.setIsRead(!0),a.subType=s.conversationSubType)}return a.lastMessage=n[n.length-1],{eventDataList:0<n.length?[a]:[],result:n}}_clearGroupSystemNotice(){this._getPendencyList().then(e=>{e.forEach(e=>{this.pendencyMap.set(`${e.from}_${e.groupID}_`+e.to,e)});const t=this._grpM.get(o).getLocalMessageList(le),i=[];t.forEach(e=>{const{operatorID:t,operationType:s,groupProfile:o}=e.payload;if(s===xo){const s=`${t}_${o.groupID}_`+o.to,r=this.pendencyMap.get(s);r&&xe(r.handled)&&0!==r.handled&&i.push(e)}}),this.deleteGroupSystemNotice({messageList:i})})}deleteGroupSystemNotice(e){const s=this._n+".deleteGroupSystemNotice";return je(e.messageList)&&0!==e.messageList.length?(ct.l(s+" "+e.messageList.map(e=>e.ID)),this._grpM.req({P:Ds,data:{messageListToDelete:e.messageList.map(e=>({from:le,messageSeq:e.clientSequence,messageRandom:e.random}))}}).then(()=>{ct.l(s+" ok");const t=this._grpM.get(o);return e.messageList.forEach(e=>{t.deleteLocalMessage(e)}),ht()}).catch(e=>(ct.e(s+" error:",e),Kt(e)))):jt()}_getPendencyList(e={}){var{type:e,startTime:t=0,limit:s=20}=e;return this._grpM.req({P:ys,data:{type:e,startTime:t,limit:s,handleAccount:this._grpM.getMyUserID()}}).then(e=>{const t=e.data.pendencyList;return 0!==e.data.nextStartTime?this._getPendencyList({startTime:e.data.nextStartTime}).then(e=>[...t,...e]):t})}getGroupApplicationList(){return this._getPendencyList().then(t=>this._getPendencyList({type:de}).then(e=>(t.push(...e),this._handlePendencyResult(t))).catch(e=>this._handlePendencyResult(t)))}_handlePendencyResult(e){const t=[];return e.forEach(e=>{this.pendencyMap.set(`${e.from}_${e.groupID}_`+e.to,e),0===e.handled&&t.push({applicant:e.from,applicantNick:e.fromUserNickName,groupName:e.groupName,groupID:e.groupID,authentication:e.authentication,messageKey:e.time,applicationType:e.applicationType,userID:e.userID,note:e.note})}),jt({applicationList:t})}_onReceivedGroupSystemNotice({result:e,isInstantMessage:t}){t&&e.forEach(e=>{switch(e.payload.operationType){case 1:break;case 2:this._onApplyJoinGroup(e);break;case 3:break;case 4:this._onMemberKicked(e);break;case 5:this._onGroupDismissed(e);break;case 6:break;case 7:this._onInviteGroup(e);break;case 8:this._onQuitGroup(e);break;case 9:this._onSetManager(e);break;case 10:this._onDeleteManager(e);break;case 11:case 12:case 15:break;case 20:this._onMessageRemindTypeSynced(e);break;case 21:this._grpM.onAVChatRoomMemberBanned(e)}})}_onApplyJoinGroup(e){var{groupID:e,groupType:t}=e.payload.groupProfile,s=this._grpM.hasLocalGroup(e);ct.l(this._n+`._onApplyJoinGroup groupID:${e} groupType:${t} hasGroup:`+s),s||st(t)||this._grpM.getGroupProfile({groupID:e}).then(({data:{group:e}})=>{e&&(this._grpM.updateGroupMap([e]),e=!e.isSupportTopic,this._grpM.emitGroupListUpdate(!0,e))})}_onMemberKicked(e){e=e.payload.groupProfile.groupID;this._grpM.hasLocalGroup(e)&&this._grpM.deleteLocalGroupAndConversation(e)}_onGroupDismissed(e){var e=e.payload.groupProfile.groupID,t=(this._grpM.hasLocalGroup(e)&&this._grpM.deleteLocalGroupAndConversation(e),this._grpM)["_AVChatRoomHandler"];t&&t.checkJoinedAVChatRoomByID(e)&&t.reset(e)}_onInviteGroup(e){const t=e.payload.groupProfile.groupID,s=this._grpM.hasLocalGroup(t);ct.l(`${this._n}._onInviteGroup groupID:${t} hasGroup:`+s),this._grpM.getGroupProfile({groupID:t}).then(()=>{this._grpM.emitGroupListUpdate(),this._grpM.get(o).pullMsgOnInvite(""+ue+t)})}_onQuitGroup(e){var{groupID:e,groupType:t}=e.payload.groupProfile,s=this._grpM.hasLocalGroup(e);ct.l(this._n+`._onQuitGroup groupID:${e} groupType:${t} hasGroup:`+s),s&&this._grpM.deleteLocalGroupAndConversation(e)}_onSetManager(e){var{to:e,groupID:t}=e.payload.groupProfile,t=this._grpM.getGroupMemberHandler().getLocalGroupMemberInfo(t,e);t&&t.updateRole(Ie)}_onDeleteManager(e){var{to:e,groupID:t}=e.payload.groupProfile,t=this._grpM.getGroupMemberHandler().getLocalGroupMemberInfo(t,e);t&&t.updateRole(ye)}_onMessageRemindTypeSynced(e){var t=e.payload.groupProfile["groupID"],e=e.payload.messageRemindType;this._grpM.get(o).onGroupMsgRemindTypeUpdated({groupID:t,messageRemindType:e})}_handleTopicSystemNotice(e){var{groupProfile:{groupID:e,topicID:t},elements:{operationType:o,topicIDList:r,messageRemindType:i}}=e,n=this._grpM.get(s);17===o?n.onTopicCreated({groupID:e,topicID:t}):18===o?n.onTopicDeleted({groupID:e,topicIDList:r}):20===o&&n.onMessageRemindTypeUpdated({groupID:e,topicID:t,messageRemindType:i})}reset(){this.pendencyMap.clear()}}class Ko extends class{constructor(e){this._m=e,this._n=""}isLoggedIn(){return this._m.get(r).isLoggedIn()}isOversea(){return this._m.get(r).isOversea()}isPrivateNetWork(){var e=this._m.get(r);return e.isPrivateNetWork()&&!e.getFileDownloadProxy()}getFileDownloadProxy(){return this._m.get(r).getFileDownloadProxy()}getDowloadFileAuthKey(){return this._m.get(r).getDowloadFileAuthKey()}getMyUserID(){return this._m.get(r).getUserID()}getMyTinyID(){return this._m.get(r).getTinyID()}getSDKAppID(){return this._m.get(r).getSDKAppID()}isIntl(){return this._m.get(r).isIntl()}isUsingChatCore(){return this._m.get(r).isUsingChatCore()}isDevMode(){return this._m.get(r).isDevMode()}get(e){return this._m.get(e)}getPlatform(){return k}getCloudConfig(e){return this._m.get(u).getCloudConfig(e)}emitOEvt(e,t){this._m.getOEmitInst().emit(e,t)}emitIEvt(e,t){this._m.getIEmitInst().emit(e,t)}getIEmitInst(){return this._m.getIEmitInst()}req(e){return this._m.get(a).req(e)}canIUse(e){return this._m.get(l).canIUse(e)}getErrMsg(e,t,s){return this._m.getErrMsg(e,t,s)}warn(e,t,s){e=this.getErrMsg(e,t,s);e&&ct.w(e)}noUse(e){var t=Et;return Kt({code:t,message:this.getErrMsg(t,e)})}}{constructor(e){super(e),this._n="GroupModule",this._commonGroupHandler=new Mo(this),this._groupAttributesHandler=new Go(this),this._groupCountersHandler=new So(this),this._AVChatRoomHandler=new wo(this),this._groupTipsHandler=new fo(this),this._groupSystemNoticeHandler=new jo(this),this._groupMemberHandler=new No(this),this.groupMap=new Map,this._unjoinedAVChatRoomList=new Map,this._receiptDetailCompleteMap=new Map,this._onlineMemberCountMap=new Map,this._timeoutIDs=[],this.getIEmitInst().on(Bt.CLOUD_CONFIG,this._onCloudConfig,this)}_onCloudConfig(){var e=this.getCloudConfig("polling_interval"),t=this.getCloudConfig("polling_interval_plus"),s=this.getCloudConfig("polling_no_msg_count"),o=this.getCloudConfig("polling_simplified_msg"),r=this.getCloudConfig("paging_grp_count");ct.l(this._n+`._onCloudConfig pollingInterval:${e} pollingIntervalPlus:${t} pollingNoMessageCount:${s} pollingSimplifiedMessage:${o} pagingGroupCount:`+r),this._AVChatRoomHandler.setPollingInterval(e),this._AVChatRoomHandler.setPollingIntervalPlus(t),this._AVChatRoomHandler.setPollingNoMessageCount(s),this._AVChatRoomHandler.setPollingSimplifiedMessage(o),this._commonGroupHandler.setPagingGroupCount(r)}onCheckTimer(e){this.isLoggedIn()&&(this._commonGroupHandler.onCheckTimer(e),this._groupTipsHandler.onCheckTimer(e))}guardForAVChatRoom(t){if(t.conversationType!==ue)return jt();{const s=rt(t.to)?it(t.to):t.to;return this.hasLocalGroup(s)?jt():this.getGroupProfile({groupID:s}).then(e=>{e=e.data.group.type;if(ct.l(`${this._n}.guardForAVChatRoom. groupID:${s} type:`+e),e!==me)return jt();{const e=mt;return Kt(new gt({code:e,message:this.getErrMsg(e,t.from,s),data:{message:t}}))}})}}checkJoinedAVChatRoomByID(e){return this._AVChatRoomHandler.checkJoinedAVChatRoomByID(e)}onNewMessage(e){this._commonGroupHandler.onNewMessage(e)}updateNextMessageSeq(e){if(je(e)){const o=this.get(s);e.forEach(e=>{var t=e.conversationID.replace(ue,"");rt(t)&&o.updateUnreadCountAndLastMsg(t,e.lastMessage),this.groupMap.has(t)&&(this.groupMap.get(t).nextMessageSeq=e.lastMessage.sequence+1)})}}onNewGroupTips(e){this._groupTipsHandler.onNewGroupTips(e)}onMsgRevoked(e,t=!0){this._commonGroupHandler.onMsgRevoked(e,t)}onNewGroupSystemNotice(e){this._groupSystemNoticeHandler.onNewGroupSystemNotice(e)}onMsgReadNotice(e){e.dataList.forEach(i=>{var e=i.elements["groupMessageReadNotice"];if(!Ke(e)){const i=this.get(o);e.forEach(e=>{var{groupID:e,topicID:t,lastMessageSeq:s}=e;ct.l(this._n+`.onMsgReadNotice groupID:${e} lastMessageSeq:`+s);let o=""+ue+e,r=!0;qe(t)||(o=""+ue+t,r=!1),i.updateIsReadAfterReadReport({conversationID:o,lastMessageSeq:s}),i.updateUnreadCount(o,r),i.clearGroupAtInfoList(o,r)})}})}onReadReceiptList(e){ct.l(this._n+".onReadReceiptList options:",e),e.dataList.forEach(e=>{var{groupProfile:e,elements:t}=e,e=e["groupID"],t=t["readReceiptList"];this.get(o).updateReadReceiptInfo({groupID:e,readReceiptList:t})})}onMsgModified(e){ct.l(this._n+".onMsgModified options:",e);const t=this.get(o);e.dataList.forEach(e=>{t.onMessageModified({...e,conversationType:ue,to:e.topicID||e.groupID})})}deleteGroupSystemNotice(e){this._groupSystemNoticeHandler.deleteGroupSystemNotice(e)}initGroupMap(e){this.groupMap.set(e.groupID,new $o(e))}clearGroupMap(){this.groupMap.clear()}deleteGroup(e){this.groupMap.delete(e)}updateGroupMap(e){const t=this.get(o);let s;e.forEach(e=>{s=e.groupID,this.groupMap.has(s)?this.groupMap.get(s).updateGroup(e):(this.groupMap.set(s,new $o(e)),t.deleteGroupRoamingInfo(s))});var r=this.getMyUserID();for(const[,o]of this.groupMap)o.selfInfo.userID=r,"Owner"===o.selfInfo.role&&(o.ownerID=r)}getGroupMap(){return this.groupMap}getLocalGroupList(){return[...this.groupMap.values()].filter(e=>e.type!==_e&&e.type!==fe)}getLocalGroupProfile(e){return this.groupMap.get(e)}sortLocalGroupList(){var e=[...this.groupMap].filter(([,e])=>!qe(e.lastMessage));e.sort((e,t)=>t[1].lastMessage.lastTime-e[1].lastMessage.lastTime),this.groupMap=new Map([...e])}updateGroupLastMessage(e){this._commonGroupHandler.updateLastMsg(e)}emitGroupListUpdate(e=!0,t=!0){var s=this.getLocalGroupList();if(e&&this.emitOEvt(kt),t){const e=JSON.parse(JSON.stringify(s));this.get(o).updateConvGroupProfile(e)}}getMyNameCardByGroupID(e){e=this.getLocalGroupProfile(e);return e?e.selfInfo.nameCard:""}isPagingGetCompleted(){return this._commonGroupHandler.isPagingGetCompleted()}getMsgRemindType(e){return!je(e)||0===e.length||0===(e=e.filter(e=>!st(this.getLocalGroupProfile(e).type))).length?Promise.resolve():(ct.l(this._n+".getMsgRemindType groupIDList:"+e),this.getGroupProfileAdvance({groupIDList:e,responseFilter:{memberInfoFilter:["MsgFlag"]}}).then(e=>{const t=e.data["successGroupList"],s=this.get(o);t.forEach(e=>{s.onGroupMsgRemindTypeUpdated({groupID:e.groupID,messageRemindType:je(e.members)?e.members[0].messageRemindType:""})})}))}getGroupList(){return this._commonGroupHandler.getGroupList()}syncCommunityWithTopic(){return this._commonGroupHandler.syncGroupList(!0)}getGroupProfile(t){const r=this._n+".getGroupProfile",i=new Zt("getGroupProfile"),{groupID:n,groupCustomFieldFilter:e}=t;ct.l(r+" groupID:"+n);var s={groupIDList:[n],responseFilter:{groupBaseInfoFilter:[...L],groupCustomFieldFilter:e,memberInfoFilter:[...C,"NameCard"]}};return this.getGroupProfileAdvance(s).then(({data:{successGroupList:e,failureGroupList:t}})=>{if(ct.l(r+" ok"),0<t.length)return Kt(t[0]);let s;return(s=st(e[0].type)&&!this.hasLocalGroup(n)?new $o(e[0]):(this.updateGroupMap(e),this.getLocalGroupProfile(n))).isSupportTopic||this.get(o).updateConvGroupProfile([s]),i.setMessage(`groupID:${n} type:${s.type} muteAllMembers:${s.muteAllMembers} ownerID:`+s.ownerID).end(),ht({group:s})}).catch(e=>(i.setError(e).setMessage("groupID:"+t.groupID).end(),ct.e(r+" failed. error:",e),Kt(e)))}getGroupProfileAdvance(e){const t=this._n+".getGroupProfileAdvance",s=e["groupIDList"],o=(je(s)&&50<s.length&&(this.warn("GetGroupProfileLimit"),s.length=50),[]),r=[];s.forEach(e=>{(ot({groupID:e})?r:o).push(e)});var i=[];if(0<o.length){const t=this._getGroupProfileAdvance({...e,groupIDList:o});i.push(t)}if(0<r.length){const t=this._getGroupProfileAdvance({...e,groupIDList:r,relayFlag:0<o.length});i.push(t)}return Promise.all(i).then(e=>{const t=[],s=[];return e.forEach(e=>{t.push(...e.successGroupList),s.push(...e.failureGroupList)}),ht({successGroupList:t,failureGroupList:s})}).catch(e=>(ct.e(t+" failed. error:",e),Kt(e)))}_getGroupProfileAdvance(t){const{relayFlag:s=!1,...o}=t;return this.req({P:ss,data:o}).then(e=>{ct.l(this._n+"._getGroupProfileAdvance ok. options:",o);e=e.data.groups;return{successGroupList:e.filter(e=>Ke(e.errorCode)||0===e.errorCode),failureGroupList:e.filter(e=>e.errorCode&&0!==e.errorCode).map(e=>new gt({code:e.errorCode,message:e.errorInfo,data:{groupID:e.groupID}}))}}).catch(e=>s&&ot({groupID:t.groupIDList[0]})?{successGroupList:[],failureGroupList:[]}:Kt(e))}createGroup(u){const s=[he,ce,ge,me,de],o=this._n+".createGroup",{type:r,groupID:i}=u;if(u.name&&!1===this._filterProfanity("name",u))return Kt({code:wt});if(u.introduction&&!1===this._filterProfanity("introduction",u))return Kt({code:wt});if(u.notification&&!1===this._filterProfanity("notification",u))return Kt({code:wt});if(!s.includes(r))return Kt({code:_t});if(!ot({type:r})){if(!qe(i)&&ot({groupID:i}))return Kt({code:ft});u.isSupportTopic=void 0}if(st(r)&&!Ke(u.memberList)&&0<u.memberList.length&&(u.memberList=void 0),this._canIUseJoinOption(r)||Ke(u.joinOption)||(u.joinOption=void 0),ot({type:r})){if(!qe(i)&&!ot({groupID:i}))return Kt({code:ft});u.isSupportTopic=!0===u.isSupportTopic?1:0}const p=new Zt("createGroup");ct.l(o+" options:",u);let l=null,h=[];return this.req({P:os,data:{...u,ownerID:this.getMyUserID(),webPushFlag:1}}).then(r=>{const{groupID:i,overLimitUserIDList:n=[]}=r.data;l=i,h=n;r=`groupType:${u.type} groupID:${i} overLimitUserIDList:`+n;if(p.setMessage(r).end(),ct.l(o+" ok. "+r),u.type!==me&&(u.type!==de||1!==u.isSupportTopic)){qe(u.memberList)||qe(n)||(u.memberList=u.memberList.filter(e=>-1===n.indexOf(e.userID))),this.updateGroupMap([{...u,groupID:i}]);r=this.get(e);let s="",o=0;u.type===de?(s=this.isIntl()?"Create Community":"创建社群",o=1):s=this.isIntl()?"Create Group":"创建群组";var a=this.get(t).getMyNick(),a=r.createCustomMessage({to:i,conversationType:ue,payload:{data:JSON.stringify({businessID:"group_create",content:s,cmd:o,opUser:a||this.getMyUserID(),version:4})}});r.sendMessageInstance(a),this.emitGroupListUpdate()}return this.getGroupProfile({groupID:i})}).then(e=>{var e=e.data["group"],{nameCard:t,joinTime:s}=e.selfInfo;return e.updateSelfInfo({nameCard:t,joinTime:s,messageRemindType:Ae,role:Me}),ht({group:e,overLimitUserIDList:h})}).catch(e=>{var t;return p.setMessage("groupType:"+u.type).setError(e).end(),10010===e.code||10007===e.code?(this._silentlyGetGroupProfile(e.code,l),this.updateGroupMap([{...u,groupID:l}]),(t=this.getLocalGroupProfile(l)).selfInfo.role=Me,ht({group:t,overLimitUserIDList:h})):(ct.e(o+" failed. error:",e),Kt(e))})}dismissGroup(e){const t=this._n+".dismissGroup",s="groupID:"+e,o=new Zt("dismissGroup");return o.setMessage(s),ct.l(t+" "+s),this.req({P:rs,data:{groupID:e}}).then(()=>(o.end(),ct.l(t+" ok"),this.deleteLocalGroupAndConversation(e),this.checkJoinedAVChatRoomByID(e)&&this._AVChatRoomHandler.reset(e),this._groupAttributesHandler.deleteLocalGroupAttributes(e),ht({groupID:e}))).catch(e=>(o.setError(e).end(),ct.e(t+" failed. error:",e),Kt(e)))}updateGroupProfile(e){const t=this._n+".updateGroupProfile";if(this.hasLocalGroup(e.groupID)){const s=this.getLocalGroupProfile(e.groupID).type;this._canIUseJoinOption(s)||Ke(e.joinOption)||(ct.w(t+" joinOption is unavailable for Work/Meeting/AVChatRoom"),e.joinOption=void 0)}if(Ke(e.muteAllMembers)||(e.muteAllMembers?e.muteAllMembers="On":e.muteAllMembers="Off"),e.name&&!1===this._filterProfanity("name",e))return Kt({code:wt});if(e.introduction&&!1===this._filterProfanity("introduction",e))return Kt({code:wt});if(e.notification&&!1===this._filterProfanity("notification",e))return Kt({code:wt});const s=new Zt("updateGroupProfile");return s.setMessage(JSON.stringify(e)),ct.l(t+" groupID:"+e.groupID),this.req({P:is,data:e}).then(()=>(s.end(),ct.l(t+" ok"),this.hasLocalGroup(e.groupID)&&this.groupMap.get(e.groupID).updateGroup(e),ht({group:this.groupMap.get(e.groupID)}))).catch(e=>(s.setError(e).end(),ct.l(t+" failed. error:",e),Kt(e)))}_filterProfanity(e,t){var s,o=this.get(c);return!o||({isAllowedToSend:o,modifiedText:s}=o.filterText(t[e],y),!0===o&&(t[e]=s,!0))}joinGroup(t){const s=t["groupID"],o=this._n+".joinGroup";if(this.deleteUnjoinedAVChatRoom(s),this.hasLocalGroup(s)){if(!this.isLoggedIn())return jt({status:Te});const r=new Zt("applyJoinGroup");return this.getGroupProfile({groupID:s}).then(()=>(r.setMessage(`groupID:${s} joinedStatus:`+Te).end(),jt({status:Te}))).catch(e=>(r.setMessage(`groupID:${s} unjoined`).end(),ct.w(o+` ${s} was unjoined, now join!`),this.groupMap.delete(s),this.applyJoinGroup(t)))}return ct.l(o+" groupID:"+s),this.isLoggedIn()?this.applyJoinGroup(t):this._AVChatRoomHandler.joinWithoutAuth(t)}applyJoinGroup(e){const a=this._n+".applyJoinGroup",{groupID:u,applyMessage:t}=e;if(!qe(t)&&!1===this._filterProfanity("applyMessage",e))return Kt({code:wt});const p=new Zt("applyJoinGroup"),s={...e},l=this.canIUse(I.AV_HISTORY_MSG);return l&&(s.historyMessageFlag=1),this.get(o).deleteTopicRoamingInfo(u),this.req({P:ns,data:s}).then(({data:{joinedStatus:e,longPollingKey:t,startSeq:s,avChatRoomFlag:o,avChatRoomKey:r,messageList:i}})=>{var n=`groupID:${u} joinedStatus:${e} longPollingKey:${t} startSeq:${s} avChatRoomFlag:${o} canGetAVChatRoomHistoryMsg:${l}, historyMsgCount:`+(qe(i)?0:i.length);switch(p.setMessage(n).end(),ct.l(a+" ok. "+n),e){case Ee:return ht({status:Ee});case $e:return this.getGroupProfile({groupID:u}).then(({data:{group:e}})=>this._handleJoinResult({group:e,avChatRoomFlag:o,longPollingKey:t,startSeq:s,avChatRoomKey:r,messageList:i})).catch(e=>{if(10010!==e.code&&10007!==e.code)return ct.e(a+" failed. error:",e),Kt(e);{this._silentlyGetGroupProfile(e.code,u);const a=new $o({groupID:u});return this.updateGroupMap([a]),this._handleJoinResult({group:a,avChatRoomFlag:o,longPollingKey:t,startSeq:s,avChatRoomKey:r,messageList:i})}});default:{const e=new gt({code:Lt});return ct.e(a+" failed. error:",e),Kt(e)}}}).catch(e=>(p.setMessage("groupID:"+u).setError(e).end(),ct.e(a+" failed. error:",e),Kt(e)))}_handleJoinResult(e){const{group:t,avChatRoomFlag:s,longPollingKey:r,startSeq:i,avChatRoomKey:n,messageList:a}=e,u=t["groupID"];return 1===s?(this.get(o).setCompleted(""+ue+u),this._groupAttributesHandler.initGroupAttributesCache({groupID:u,avChatRoomKey:n}),this._groupCountersHandler.initGroupCountersCache({groupID:u,avChatRoomKey:n}),(e=Ke(r)?this._AVChatRoomHandler.handleJoinResult({group:t}):this._AVChatRoomHandler.startRunLoop({group:t,longPollingKey:r,startSeq:i})).then(()=>{this._onAVChatRoomHistoryMessage(a,u)}),e):(this.emitGroupListUpdate(!0,!1),ht({status:$e,group:t}))}quitGroup(e){const t=this._n+".quitGroup",s="groupID:"+e,o=(ct.l(t+" "+s),this.checkJoinedAVChatRoomByID(e));if(!o&&!this.hasLocalGroup(e))return Kt({code:Dt});if(o&&!this.isLoggedIn())return ct.l(t+" anonymously ok. "+s),this.deleteLocalGroupAndConversation(e),this._AVChatRoomHandler.reset(e),jt({groupID:e});const r=new Zt("quitGroup");return r.setMessage(s),this.req({P:us,data:{groupID:e}}).then(()=>(r.end(),ct.l(t+" ok"),this.deleteLocalGroupAndConversation(e),o&&this._AVChatRoomHandler.reset(e),this._groupAttributesHandler.deleteLocalGroupAttributes(e),ht({groupID:e}))).catch(e=>(r.setError(e).end(),ct.e(t+" failed. error:",e),Kt(e)))}searchGroupByID(e){const t=this._n+".searchGroupByID",s={groupIDList:[e]},o=new Zt("searchGroupByID");return o.setMessage("groupID:"+e),ct.l(t+" groupID:"+e),this.req({P:ps,data:s}).then(({data:{groupProfile:e}})=>{if(0!==e[0].errorCode)throw new gt({code:e[0].errorCode,message:e[0].errorInfo});return o.end(),ct.l(t+" ok"),ht({group:new $o(e[0])})}).catch(e=>(o.setError(e).end(),ct.w(t+" failed. error:",e),Kt(e)))}changeGroupOwner(o){const r=this._n+".changeGroupOwner";if(this.hasLocalGroup(o.groupID)&&this.getLocalGroupProfile(o.groupID).type===me)return Kt({code:It});if(o.newOwnerID===this.getMyUserID())return Kt({code:yt});const i=new Zt("changeGroupOwner");return i.setMessage(`groupID:${o.groupID} newOwnerID:`+o.newOwnerID),ct.l(r+" groupID:"+o.groupID),this.req({P:ls,data:o}).then(()=>{i.end(),ct.l(r+" ok");var{groupID:e,newOwnerID:t}=o,s=(this.groupMap.get(e).ownerID=t,this._groupMemberHandler.getLocalGroupMemberList(e));if(s instanceof Map){const o=s.get(this.getMyUserID()),r=(Ke(o)||(o.updateRole("Member"),this.groupMap.get(e).selfInfo.role="Member"),s.get(t));Ke(r)||r.updateRole("Owner")}return this.emitGroupListUpdate(!0,!1),ht({group:this.groupMap.get(e)})}).catch(e=>(i.setError(e).end(),ct.e(r+" failed. error:",e),Kt(e)))}getGroupApplicationList(){return this._groupSystemNoticeHandler.getGroupApplicationList()}handleGroupApplication(e){const t=this._n+".handleGroupApplication",{handleAction:s,handleMessage:o,message:r,application:i}=e;let n,a,u,p,l,h=(r?(n=r.payload.operatorID,a=r.payload.groupProfile.groupID,u=r.payload.authentication,p=r.payload.messageKey):i&&(n=i.applicant,a=i.groupID,u=i.authentication,p=i.messageKey),cs);i&&2===i.applicationType&&(h=hs,l=i.userID);const c=new Zt("handleGroupApplication");return c.setMessage("groupID:"+a),ct.l(t+" groupID:"+a),this.req({P:h,data:{handleAction:s,handleMessage:o,applicant:n,invitee:l,groupID:a,authentication:u,messageKey:p}}).then(()=>(c.end(),ct.l(t+" ok"),r&&this._groupSystemNoticeHandler.deleteGroupSystemNotice({messageList:[e.message]}),ht({group:this.getLocalGroupProfile(a)}))).catch(e=>(c.setError(e).end(),ct.e(t+" failed. error",e),Kt(e)))}handleGroupInvitation(e){const t=this._n+".handleGroupInvitation",{groupProfile:{groupID:s},authentication:o,messageKey:r,operatorID:i}=e.message.payload,n=e["handleAction"],a=new Zt("handleGroupInvitation");return a.setMessage(`groupID:${s} inviter:${i} handleAction:`+n),ct.l(t+` groupID:${s} inviter:${i} handleAction:`+n),this.req({P:gs,data:{...e,inviter:i,groupID:s,authentication:o,messageKey:r}}).then(()=>(a.end(),ct.l(t+" ok"),this._groupSystemNoticeHandler.deleteGroupSystemNotice({messageList:[e.message]}),ht({group:this.getLocalGroupProfile(s)}))).catch(e=>(a.setError(e).end(),ct.e(t+" failed. error",e),Kt(e)))}getGroupOnlineMemberCount(t){const s=this._n+".getGroupOnlineMemberCount",e=this._AVChatRoomHandler.checkJoinedAVChatRoomByID(t),o=this.hasLocalGroup(t);if(ct.l(s+` groupID:${t} isAVChatRoom:${e} has:`+o),e)return this._AVChatRoomHandler.getGroupOnlineMemberCount(t);if(!o)return jt({memberCount:0});var r=Date.now();if(this._onlineMemberCountMap.has(t)){const s=this._onlineMemberCountMap.get(t);if(r-s.lastReqTime<=6e4)return jt({memberCount:s.memberCount});s.lastReqTime=r}return this.requestOnlineCount(t).then(e=>{var{memberCount:e=0}=e.data;return this._onlineMemberCountMap.set(t,{lastReqTime:Date.now(),memberCount:e}),ct.l(s+` ok. groupID:${t} memberCount:`+e),jt({memberCount:e})}).catch(e=>(ct.w(s+" failed. error:",e),Promise.reject(e)))}requestOnlineCount(e){return this.req({P:Gs,data:{groupID:e}})}hasLocalGroup(e){return this.groupMap.has(e)}deleteLocalGroupAndConversation(e){const t=this.checkJoinedAVChatRoomByID(e);ct.l(this._n+`.deleteLocalGroupAndConversation groupID:${e} isJoinedAVChatRoom:`+t);var r=this.get(o),i=""+ue+e;if(t&&(this.stopMessageLongPolling({groupID:e}),r.deleteLocalConv(i)),ot({groupID:e})){const t=this.getLocalGroupProfile(e);t&&!0===t.isSupportTopic&&this.get(s).deleteTopicListInCommunity(e)}r.clearUnreadCount(i),r.setCompleted(i),this._deleteLocalGroup(e),this._onlineMemberCountMap.delete(e),this.emitGroupListUpdate(!0,!1)}_deleteLocalGroup(e){this.groupMap.delete(e),this._groupMemberHandler.deleteGroupMemberList(e)}sendMessage(e,t){return je(e._receiverList)&&0<e._receiverList.length&&!this.canIUse(I.MSG_TO_SPECIFIED_GRP_MBR)?this.noUse("Targeted Group Message"):(e=this.createGroupMessagePack(e,t),this.req(e))}createGroupMessagePack(e,t){let s=null,o=(t&&t.offlinePushInfo&&(s=t.offlinePushInfo),"");Ve(e.cloudCustomData)&&0<e.cloudCustomData.length&&(o=e.cloudCustomData);var r=[];if(He(t)&&He(t.messageControlInfo)){const{excludedFromUnreadCount:e,excludedFromLastMessage:s,excludedFromContentModeration:o}=t.messageControlInfo;!0===e&&r.push("NoUnread"),!0===s&&r.push("NoLastMsg"),!0===o&&r.push("NoMsgCheck")}let i=void 0;je(e._receiverList)&&0<e._receiverList.length&&(i=e._receiverList,50<e._receiverList.length)&&(i=e._receiverList.slice(0,50),this.warn("ReceiverListLimit"));var t=this.isOnlineMessage(e,t)?1:0,a=JSON.parse(JSON.stringify(e.getElements())),u=this.get(n).getFileDNList(),p=e.getGroupAtInfoList(),a={fromAccount:this.getMyUserID(),groupID:e.to,msgBody:Qs(e.type,a,u),cloudCustomData:o,random:e.random,priority:e.priority,clientSequence:e.clientSequence,groupAtInfo:e.type!==B||qe(p)?void 0:p,onlineOnlyFlag:t,clientTime:e.clientTime,offlinePushInfo:Fo(s),messageControlInfo:0==t?r:void 0,needReadReceipt:!0!==e.needReadReceipt||this.isMessageFromOrToAVChatroom(e.to)?0:1,receiverList:i,isSupportExtension:!0===e.isSupportExtension?1:0,isRelayMessage:!0===e._relayFlag?1:0,cmConfigID:e._cmConfigID};return rt(e.to)&&(a.groupID=it(e.to),a.topicID=e.to),{P:es,data:a}}revokeMessage(e){var t={groupID:e.to,msgSeqList:[{msgSeq:e.sequence}]};return rt(e.to)&&(t.groupID=it(e.to),t.topicID=e.to),this.req({P:ms,data:t})}deleteMessage(e){var{to:e,keyList:t}=e,t=(ct.l(this._n+`.deleteMessage groupID:${e} count:`+t.length),{groupID:e,deleter:this.getMyUserID(),keyList:t});return rt(e)&&(t.groupID=it(e),t.topicID=e),this.req({P:bs,data:t})}modifyRemoteMessage(e){var{to:e,sequence:t,payload:s,type:o,version:r=0,cloudCustomData:i,_elements:n}=e;let a=e,u=void 0,p=(rt(e)&&(a=it(e),u=e),void 0);return(e=o)!==B&&e!==te&&e!==Q&&e!==X||(1<n.length&&n.splice(0,1,{type:o,content:s}),p=n),this.req({P:As,data:{groupID:a,topicID:u,sequence:t,version:r,elements:p,cloudCustomData:i}})}getRoamingMessage(e){const u=this._n+".getRoamingMessage";let{conversationID:p,groupID:l,sequence:t}=e;const h=new Zt("getRoamingMessage");let c=0,g=void 0;return rt(l)&&(l=it(g=l)),this._computeLastSequence({groupID:l,topicID:g,sequence:t}).then(e=>(c=e,ct.l(u+` groupID:${l} startSequence:`+c),this.req({P:_s,data:{groupID:l,count:21,sequence:c,topicID:g}}))).then(e=>{var{messageList:t,complete:s,invisibleSequenceList:r=[]}=e.data;let{nextSequence:i=0}=e.data;Ke(t)?ct.l(u+` ok. complete:${s} nextSequence:${i} but messageList is undefined!`):ct.l(u+` ok. complete:${s} nextSequence:${i} count:`+t.length),h.setMessage(`groupID:${l} topicID:${g} startSequence:${c} complete:${s} nextSequence:`+i).end();e=this.get(o);let n=[];var a=[],t=(qe(t)||(n=e.onRoamingMessage(t,p,!0,a),e.updateIsRead(p),e.patchConvLastMessage(p)),2===s||i<1);return t&&(e.setCompleted(p),i=""),ct.l(u+` isPullingCompleted:${t} nextReqID:${i} storedMsgCount:${n.length} invisibleSeqCount:`+r.length),{nextReqID:i+"",storedMessageList:n,assembledMessageList:a,isPullingCompleted:t}}).catch(e=>(h.setError(e).setMessage(`groupID:${l} topicID:${g} startSequence:`+c).end(),ct.w(u+" failed. error:",e),Kt(e)))}_getGroupIDOfMessage(e){return e.conversationID.replace(ue,"")}getReadReceiptList(s){const t=this._n+".getReadReceiptList",e=this._getGroupIDOfMessage(s[0]),o=this.getMyUserID(),r=s.filter(e=>e.from===o&&!0===e.needReadReceipt).map(e=>({sequence:e.sequence}));if(ct.l(t+` groupID:${e} sequenceList:`+JSON.stringify(r)),0===r.length)return jt({messageList:s});const i=new Zt("getReadReceiptList");return i.setMessage("groupID:"+e),this.req({P:fs,data:{groupID:e,sequenceList:r}}).then(e=>{i.end(),ct.l(t+" ok");e=e.data.readReceiptList;return je(e)&&e.forEach(t=>{s.forEach(e=>{0===t.code&&t.sequence===e.sequence&&(e.readReceiptInfo.readCount=t.readCount,e.readReceiptInfo.unreadCount=t.unreadCount)})}),ht({messageList:s})}).catch(e=>(i.setError(e).end(),ct.w(t+" failed. error:",e),Kt(e)))}sendReadReceipt(e){const t=this._n+".sendReadReceipt",s=this._getGroupIDOfMessage(e[0]),o=new Zt("sendReadReceipt"),r=(o.setMessage("groupID:"+s),this.getMyUserID()),i=e.filter(e=>e.from!==r&&!0===e.needReadReceipt).map(e=>({sequence:e.sequence}));return 0===i.length?Kt({code:dt}):(ct.l(t+". sequenceList:"+JSON.stringify(i)),this.req({P:Ms,data:{groupID:s,sequenceList:i}}).then(e=>(o.end(),ct.l(t+" ok"),ht())).catch(e=>(o.setError(e).end(),ct.w(t+" failed. error:",e),Kt(e))))}getReadReceiptDetail(e){const{message:t,filter:s,cursor:o,count:r}=e,i=this._getGroupIDOfMessage(t),n=t.ID,a=t.sequence,u=this._n+".getReadReceiptDetail",p=this._receiptDetailCompleteMap.get(n)||!1,l=0!==s&&1!==s?0:s,h=Ve(o)?o:"",c=!xe(r)||r<=0||100<=r?100:r,g=`groupID:${i} sequence:${a} cursor:${h} filter:${l} completeFlag:`+p,m=(ct.l(u+" "+g),{cursor:"",isCompleted:!1,messageID:n,unreadUserIDList:[],readUserIDList:[]}),d=new Zt("getReadReceiptDetail");return d.setMessage(g),this.req({P:Is,data:{groupID:i,sequence:a,flag:l,cursor:h,count:c}}).then(e=>{d.end();var{cursor:e,isCompleted:t,unreadUserIDList:s,readUserIDList:o}=e.data;return m.cursor=e,1===t&&(m.isCompleted=!0,this._receiptDetailCompleteMap.set(n,!0)),0===l?m.readUserIDList=o.map(e=>e.userID):1===l&&(m.unreadUserIDList=s.map(e=>e.userID)),ct.l(u+" ok"),ht(m)}).catch(e=>(d.setError(e).end(),ct.w(u+" failed. error:",e),Kt(e)))}getRoamingMessagesHopping(p){const l=this._n+".getRoamingMessagesHopping";let{groupID:t,count:s,sequence:h,direction:c}=p,r=void 0;return Ke(h)&&1===c?jt({messageList:[],isCompleted:!0,nextMessageSeq:""}):(rt(t)&&(t=it(r=t)),this._computeReqSeqHopping({groupID:t,topicID:r,sequence:h}).then(e=>{Ke(h)||1!==c||(e=h+s-1);const a=`${r?"topicID:"+r:"groupID:"+t} sequence:${h} reqSeq:${e} direction:`+c,u=(ct.l(l+" "+a),new Zt("getRoamingMessagesHopping"));return this.req({P:_s,data:{groupID:t,topicID:r,count:s,sequence:e}}).then(e=>{var{messageList:e=[],complete:t,nextSequence:s=0,invisibleSequenceList:r=[]}=e.data,i=`complete:${t} nextSequence:${s} remoteMsgCount:${e.length} invisibleSequenceList:`+r,i=(u.setMessage(a+" "+i).end(),ct.l(l+" ok. "+i),""+ue+p.groupID),n=this.get(o),i=n.onRoamingMessage(e,i,!1),e=this._computeResult({groupID:p.groupID,direction:c,sequence:h,remoteMessageList:e,processedMessageList:i,complete:t,nextSequence:s,invisibleSequenceList:r});return n.storeHoppingMessageList(e.messageList),ht(e)}).catch(e=>(u.setError(e).setMessage(`groupID:${t} sequence:${h} count:`+s).end(),ct.w(l+" failed. error:",e),Kt(e)))}))}_computeReqSeqHopping(e){const{groupID:s,topicID:t,sequence:o}=e;return 0<o?Promise.resolve(o):Ke(t)?this.getGroupProfileAdvance({groupIDList:[s],responseFilter:{groupBaseInfoFilter:["NextMsgSeq"]}}).then(({data:{successGroupList:e}})=>{let t=0;return qe(e)||(t=e[0].nextMessageSeq-1),ct.l(`${this._n}._computeReqSeqHopping groupID:${s} lastSequence:${t} from remote`),t}).catch(e=>Kt(e)):Promise.resolve(0)}_computeResult(e){const t={messageList:[],isCompleted:!1,nextMessageSeq:""},{groupID:s,direction:o,sequence:r,remoteMessageList:i=[],processedMessageList:n=[],complete:a,nextSequence:u,invisibleSequenceList:p}=e;if(0===o)return t.nextMessageSeq=u,(2===a||u<1)&&(t.isCompleted=!0,t.nextMessageSeq=""),t.messageList=n,t;if(1===o){if(qe(i)){if(qe(p))return t.isCompleted=!0,t.nextMessageSeq="",t;t.nextMessageSeq=p[0]+1}else{const e=i[0].sequence,s=p[0]||0;t.nextMessageSeq=e>s?e+1:s+1}return n.forEach(e=>{e.sequence>=r&&t.messageList.push(e)}),(ot({groupID:s})||rt(s))&&0===t.messageList.length&&i[0].sequence<r&&(t.isCompleted=!0,t.nextMessageSeq=""),t}}setMessageRead({conversationID:r,lastMessageSeq:i}){const n=this._n+".setMessageRead",e=`convID:${r} lastMessageSeq:`+i,a=(ct.l(n+" "+e),xe(i)||this.warn("DoNotModifyLastSeq"),new Zt("setMessageRead"));a.setMessage(e);let u=r.replace(ue,""),p=void 0;return rt(u)&&(u=it(p=u)),this.req({P:ds,data:{groupID:u,topicID:p,messageReadSeq:i}}).then(()=>{a.end(),ct.l(n+" ok");var e=this.get(o);e.updateIsReadAfterReadReport({conversationID:r,lastMessageSeq:i});let t=!0;if(!Ke(p)){t=!1;const r=this.get(s).getLocalTopic(u,p);r&&r.updateSelfInfo({readedSequence:i})}return e.updateUnreadCount(r,t),ht()}).catch(e=>(a.setError(e).end(),ct.l(n+" failed. error:",e),Kt(e)))}_computeLastSequence(e){var{groupID:e,topicID:t,sequence:s}=e;return 0<s?Promise.resolve(s):Ke(t)?this.getGroupLastSequence(e):Promise.resolve(0)}getGroupLastSequence(e){const t=this._n+".getGroupLastSequence",s=new Zt("getGroupLastSequence");let r=0,i="";const n="groupID:"+e;if(this.hasLocalGroup(e)){const o=this.getLocalGroupProfile(e),a=o.lastMessage;if(0<a.lastSequence&&!1===a.onlineOnlyFlag)return r=a.lastSequence,i=n+`, ${r} from group.lastMessage.lastSequence`,ct.l(t+" "+i),s.setMessage(i).end(),Promise.resolve(r);if(1<o.nextMessageSeq)return r=o.nextMessageSeq-1,i=n+`, ${r} from group.nextMessageSeq`,ct.l(t+" "+i),s.setMessage(i).end(),Promise.resolve(r)}const a=this.get(o).getLocalConversation("GROUP"+e);return a&&a.lastMessage.lastSequence&&!1===a.lastMessage.onlineOnlyFlag?(r=a.lastMessage.lastSequence,i=n+`, ${r} from conversation.lastMessage.lastSequence`,ct.l(t+" "+i),s.setMessage(i).end(),Promise.resolve(r)):this.getGroupProfileAdvance({groupIDList:[e],responseFilter:{groupBaseInfoFilter:["NextMsgSeq"]}}).then(({data:{successGroupList:e}})=>(qe(e)?ct.w(t+` ${n}, empty successGroupList`):(r=e[0].nextMessageSeq-1,i=n+`, ${r} from remote`,ct.l(t+" "+i)),s.setMessage(i).end(),r)).catch(e=>(s.setError(e).setMessage(n).end(),ct.w(t+" failed. error:",e),Kt(e)))}isMessageFromOrToAVChatroom(e){return this._AVChatRoomHandler.checkJoinedAVChatRoomByID(e)}hasJoinedAVChatRoom(){return this._AVChatRoomHandler.hasJoinedAVChatRoom()}getJoinedAVChatRoom(){return this._AVChatRoomHandler.getJoinedAVChatRoom()}getGroupRemoteLastSeq(e){e=this.getLocalGroupProfile(e);return e?e.nextMessageSeq-1:1}isOnlineMessage(e,t){return!(!this._canIUseOnlineOnlyFlag(e)||!t||!0!==t.onlineUserOnly)}_canIUseOnlineOnlyFlag(e){var t=this.getJoinedAVChatRoom();return!t||!t.includes(e.to)||e.conversationType!==ue}_onAVChatRoomHistoryMessage(e,t){if(!qe(e)){ct.l(this._n+`._onAVChatRoomHistoryMessage groupID:${t} count:`+e.length);const s=[];e.forEach(e=>{s.push({...e,isHistoryMessage:1})}),this.onAVChatRoomMessage(s,t)}}onAVChatRoomMessage(e,t=""){this._AVChatRoomHandler.onMessage(e,t)}onAVChatRoomMemberBanned(e){this._AVChatRoomHandler.onAVChatRoomMemberBanned(e)}setUnjoinedAVChatRoom(e){this._unjoinedAVChatRoomList.set(e,1)}deleteUnjoinedAVChatRoom(e){this._unjoinedAVChatRoomList.has(e)&&this._unjoinedAVChatRoomList.delete(e)}isUnjoinedAVChatRoom(e){return this._unjoinedAVChatRoomList.has(e)}isGroupAttributesUpdatedNotice(e){return this._groupAttributesHandler.isGroupAttributesUpdatedNotice(e)}updateLocalMainSequenceOnReconnected(){this._groupAttributesHandler.updateLocalMainSequenceOnReconnected()}initGroupAttributes(e){return this._groupAttributesHandler.initGroupAttributes(e)}setGroupAttributes(e){return this._groupAttributesHandler.setGroupAttributes(e)}deleteGroupAttributes(e){return this._groupAttributesHandler.deleteGroupAttributes(e)}getGroupAttributes(e){return this._groupAttributesHandler.getGroupAttributes(e)}isMessageFromTopic(e,t){return 2===e&&!qe(t)}isMessageFromCommunityOfTopic(e,t){return 2===e&&qe(t)}getMessageExtensions(e,t){return ct.l(this._n+".getMessageExtensions startSequence:"+t),this.req({P:Es,data:{groupID:e.to,messageSequence:e.sequence,startSequence:t}})}modifyMsgExts(e,t,s=1){return ct.l(this._n+".modifyMsgExts operateType:"+s),this.req({P:$s,data:{groupID:e.to,messageSequence:e.sequence,extensionList:t,operateType:s}})}_genNotifyReqList(s){var o,r,i,n,a=[];for(let e=0,t=s.length;e<t;e++)o=s[e],n=this.getLocalGroupProfile(o).type,r=this._getGroupLastRevokedTime(o),i=1e3*ve(),n={notifyType:1,limit:20,type:ot({type:n,groupID:o})?de:void 0,groupID:o,beginTime:r,endTime:i},a.push(n);return a}getNotice(e){const t=this._n+".getNotice",s=e.filter(e=>{var t;return!!this.hasLocalGroup(e)&&({type:e,isSupportTopic:t}=this.getLocalGroupProfile(e),!st(e))&&!t});0!==s.length&&(ct.l(t+" list:"+s),this.req({P:ws,data:{notifyReqList:this._genNotifyReqList(s)}}).then(i=>{const e=i.data["notifyRspList"],n=[];if(je(e)){const i={dataList:[]};let r=t+" ok.";e.forEach(e=>{var{nextRevokedTime:t,groupID:s,notifyList:o}=e;r+=` groupID:${s} nextRevokedTime:${t} count:${o.length}
`,i.dataList.push({elements:{revokedInfos:this._genRevokedInfos(e)}}),0!==t?(this._setGroupLastRevokedTime(s,t),n.push(s)):this._setGroupLastRevokedTime(s,1e3*ve())}),ct.l(r),this.onMsgRevoked(i,!1)}0<n.length&&this.getNotice(n)}).catch(e=>{ct.e(t+" failed. error:",e)}))}_genRevokedInfos(e){const{notifyList:t,groupID:s}=e,o=[];return je(t)&&t.forEach(e=>{o.push({groupID:s,sequence:e.sequence,random:e.random,revokerInfo:{...e.revokerInfo}})}),o}_getGroupLastRevokedTime(e){return this.hasLocalGroup(e)?this.getLocalGroupProfile(e)._lastRevokedTime:0}_setGroupLastRevokedTime(e,t){this.hasLocalGroup(e)&&(this.getLocalGroupProfile(e)._lastRevokedTime=t)}isGroupCountersNotice(e){return this._groupCountersHandler.isGroupCountersNotice(e)}setGroupCounters(e){return this._groupCountersHandler.setGroupCounters(e)}increaseGroupCounter(e){return this._groupCountersHandler.increaseGroupCounter(e)}decreaseGroupCounter(e){return this._groupCountersHandler.decreaseGroupCounter(e)}getGroupCounters(e){return this._groupCountersHandler.getGroupCounters(e)}getGroupMemberHandler(){return this._groupMemberHandler}getGroupMemberList(e){return this._groupMemberHandler.getGroupMemberList(e)}getGroupMemberProfile(e){return this._groupMemberHandler.getGroupMemberProfile(e)}addGroupMember(e){return this._groupMemberHandler.addGroupMember(e)}deleteGroupMember(e){return this._groupMemberHandler.deleteGroupMember(e)}setGroupMemberMuteTime(e){return this._groupMemberHandler.setGroupMemberMuteTime(e)}setGroupMemberRole(e){return this._groupMemberHandler.setGroupMemberRole(e)}setGroupMemberNameCard(e){return this._groupMemberHandler.setGroupMemberNameCard(e)}setGroupMemberCustomField(e){return this._groupMemberHandler.setGroupMemberCustomField(e)}markGroupMemberList(e){return this._groupMemberHandler.markGroupMemberList(e)}modifyGroupMemberInfo(e){return this._groupMemberHandler.modifyGroupMemberInfo(e)}restartPolling(){this._AVChatRoomHandler.restartPolling()}getPollingTimerID(e){var t;return e&&(t=this.getLocalGroupProfile(e))&&st(t.type)?this._AVChatRoomHandler.getPollingTimerID(e):-1}_canIUseJoinOption(e){return e===he||ot({type:e})}_silentlyGetGroupProfile(e,t){var s=setTimeout(this.getGroupProfile.bind(this,{groupID:t}),3e3);this._timeoutIDs.push(s),ct.l(this._n+`._silentlyGetGroupProfile errorCode:${e} groupID:${t} timeoutIDs:`+this._timeoutIDs)}_clearTimeoutIDs(){this._timeoutIDs.forEach(e=>{clearTimeout(e)}),this._timeoutIDs=[]}startMessageLongPolling(e){var{groupID:e,longPollingKey:t,longPollingSequence:s=1}=e,o=this.get(r).isUnlimitedAVChatRoom(),i=(this._AVChatRoomHandler.hasPollingInstance(e)&&this.stopMessageLongPolling({groupID:e}),this._AVChatRoomHandler.getJoinedLiveList()),o=(!o&&0<i.length&&this.stopMessageLongPolling({groupID:i[0]}),new $o({groupID:e,type:fe}));return ct.l(this._n+`.startMessageLongPolling groupID:${e} longPollingKey:${t} longPollingSequence:`+s),this._AVChatRoomHandler.startRunLoop({group:o,longPollingKey:t,startSeq:s})}stopMessageLongPolling(e){var e=e["groupID"],t=this.get(o);return this._AVChatRoomHandler.reset(e),this._deleteLocalGroup(e),t.deleteLocalConv(""+ue+e),ct.l(this._n+".stopMessageLongPolling ok, groupID:"+e),jt({groupID:e})}reset(){this.groupMap.clear(),this._unjoinedAVChatRoomList.clear(),this._receiptDetailCompleteMap.clear(),this._onlineMemberCountMap.clear(),this._commonGroupHandler.reset(),this._groupSystemNoticeHandler.reset(),this._groupTipsHandler.reset(),this._groupAttributesHandler.reset(),this._groupCountersHandler.reset(),this._AVChatRoomHandler.reset(),this._groupMemberHandler.reset(),this._clearTimeoutIDs()}}export{Ko as default};