@rongcloud/electron 5.6.0-beem → 5.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/rc-install.js +48 -0
- package/index.d.ts +4 -0
- package/index.esm.js +1 -1
- package/index.js +1 -1
- package/package.json +13 -4
- package/scripts/postinstall.js +31 -0
- package/scripts/tools.js +55 -0
- package/sub-process.js +1 -0
- package/binding/electron-v20.0-darwin-arm64.node +0 -0
- package/binding/electron-v20.0-darwin-x64.node +0 -0
- package/binding/electron-v20.0-win32-ia32.node +0 -0
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
"use strict";
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.getOptions = void 0;
|
|
5
|
+
/* eslint-disable no-console */
|
|
6
|
+
// 下载 electron node 包的命令脚本
|
|
7
|
+
const os_1 = require("os");
|
|
8
|
+
const tools_1 = require("../scripts/tools");
|
|
9
|
+
// 获取参数
|
|
10
|
+
function getOptions() {
|
|
11
|
+
const options = {};
|
|
12
|
+
const paramsList = process.argv.slice(2);
|
|
13
|
+
paramsList.forEach((item) => {
|
|
14
|
+
if (/--(.*)=/.test(item)) {
|
|
15
|
+
const key = item.match(/--(.*)=/)[1];
|
|
16
|
+
const val = item.match(/=(.*)/)[1];
|
|
17
|
+
options[key] = val;
|
|
18
|
+
}
|
|
19
|
+
else if (/--.*/.test(item)) {
|
|
20
|
+
const key = item.match(/--(.*)/)[1];
|
|
21
|
+
options[key] = true;
|
|
22
|
+
}
|
|
23
|
+
});
|
|
24
|
+
return options;
|
|
25
|
+
}
|
|
26
|
+
exports.getOptions = getOptions;
|
|
27
|
+
function main() {
|
|
28
|
+
// 取出参数
|
|
29
|
+
const options = getOptions();
|
|
30
|
+
let electronVersion = options['electron-version'];
|
|
31
|
+
if (!electronVersion) {
|
|
32
|
+
console.error('ParameterError: "electron-version" is required');
|
|
33
|
+
return;
|
|
34
|
+
}
|
|
35
|
+
electronVersion = electronVersion.replace(/\.\d+$/, '');
|
|
36
|
+
let { platform: _platform, arch: _arch } = options;
|
|
37
|
+
_platform = _platform || (0, os_1.platform)();
|
|
38
|
+
_arch = _arch || (0, os_1.arch)();
|
|
39
|
+
// 拼链接
|
|
40
|
+
const fileName = `electron-v${electronVersion}-${_platform}-${_arch}.node`;
|
|
41
|
+
(0, tools_1.downloadNode)(fileName).then(() => {
|
|
42
|
+
console.log('Download successed!');
|
|
43
|
+
}).catch((err) => {
|
|
44
|
+
console.error('Download error');
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
main();
|
|
48
|
+
//# sourceMappingURL=rc-install.js.map
|
package/index.d.ts
CHANGED
|
@@ -162,6 +162,10 @@ interface ICppProtocol {
|
|
|
162
162
|
* 获取指定会话
|
|
163
163
|
*/
|
|
164
164
|
getConversation: (conversationType: ConversationType, targetId: string, tag: string) => string;
|
|
165
|
+
/**
|
|
166
|
+
* 获取置顶的会话列表
|
|
167
|
+
*/
|
|
168
|
+
getTopConversations: (conversationTypes: ConversationType[], channelId?: string) => string;
|
|
165
169
|
/**
|
|
166
170
|
* 删除会话
|
|
167
171
|
*/
|
package/index.esm.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import*as e from"os";import{platform as t,arch as n}from"os";import{resolve as o}from"path";import{getUUID as r,BasicLogger as s,appendUrl as i,ErrorCode as a,HTTP_TIMEOUT as c,BasicReporter as u,StoreKeys as l,ConnectionStatus as p,ConversationType as d,SEND_MESSAGE_TYPE_OPTION as f,isObject as _,isUndefined as h,pushJSONToConfigs as v,MessageDirection as g,NotificationStatus as C,MessageType as S,pushConfigsToJSON as y,MentionedType as m,ReceivedStatus as P,isArray as E,getUploadFileName as T}from"@rongcloud/engine";import{app as I,ipcMain as R}from"electron";import{request as N}from"http";import{Agent as O,request as M}from"https";import{existsSync as U,readFileSync as L,writeFileSync as b}from"fs";import{createHash as A}from"crypto";var w=process.versions.electron.replace(/\.\d+$/,""),x=o(__dirname,"binding","electron-v".concat(w,"-").concat(t(),"-").concat(n(),".node")),D={addon:null};try{D.addon=require(x)}catch(e){console.error("error ->",x,"\n",e)}var J=D.addon,k=function(e,t){return k=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},k(e,t)};function H(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=e}k(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}var B=function(){return B=Object.assign||function(e){for(var t,n=1,o=arguments.length;n<o;n++)for(var r in t=arguments[n])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e},B.apply(this,arguments)};function F(e,t,n,o){return new(n||(n=Promise))((function(r,s){function i(e){try{c(o.next(e))}catch(e){s(e)}}function a(e){try{c(o.throw(e))}catch(e){s(e)}}function c(e){var t;e.done?r(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(i,a)}c((o=o.apply(e,t||[])).next())}))}function j(e,t){var n,o,r,s,i={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return s={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(s[Symbol.iterator]=function(){return this}),s;function a(s){return function(a){return function(s){if(n)throw new TypeError("Generator is already executing.");for(;i;)try{if(n=1,o&&(r=2&s[0]?o.return:s[0]?o.throw||((r=o.return)&&r.call(o),0):o.next)&&!(r=r.call(o,s[1])).done)return r;switch(o=0,r&&(s=[2&s[0],r.value]),s[0]){case 0:case 1:r=s;break;case 4:return i.label++,{value:s[1],done:!1};case 5:i.label++,o=s[1],s=[0];continue;case 7:s=i.ops.pop(),i.trys.pop();continue;default:if(!(r=i.trys,(r=r.length>0&&r[r.length-1])||6!==s[0]&&2!==s[0])){i=0;continue}if(3===s[0]&&(!r||s[1]>r[0]&&s[1]<r[3])){i.label=s[1];break}if(6===s[0]&&i.label<r[1]){i.label=r[1],r=s;break}if(r&&i.label<r[2]){i.label=r[2],i.ops.push(s);break}r[2]&&i.ops.pop(),i.trys.pop();continue}s=t.call(e,i)}catch(e){s=[6,e],o=0}finally{n=r=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,a])}}}function G(e,t,n){if(n||2===arguments.length)for(var o,r=0,s=t.length;r<s;r++)!o&&r in t||(o||(o=Array.prototype.slice.call(t,0,r)),o[r]=t[r]);return e.concat(o||Array.prototype.slice.call(t))}var V,K={flushTimestamp:Date.now(),queue:[],locked:!1};function q(e,t,n){n.initLogModule(t,e,r()),setInterval((function(){return function(e){return F(this,void 0,void 0,(function(){var t,n,o,r;return j(this,(function(s){if(t=K.queue,n=K.flushTimestamp,K.locked||0===t.length)return[2];if(Date.now()-n<3e4&&t.length<100)return[2];K.locked=!0;do{o=t.splice(0,100).map((function(e){var t=e.sessionId,n=e.level,o=e.time,r=e.type,s=e.tag,i=e.loggerId,a=e.content,c=e.traceId;return{level:n,time:o,type:r,tag:s,content:encodeURIComponent(JSON.stringify({loggerId:i,sessionId:t,content:a,traceId:c})).replace(/'/g,"%27")}})),r=o.length,null===console||void 0===console||console.time("write ".concat(r," logs -> ")),e.writeLog(JSON.stringify(o)),null===console||void 0===console||console.timeEnd("write ".concat(r," logs -> "))}while(t.length>=100);return K.flushTimestamp=Date.now(),K.locked=!1,[2]}))}))}(n)}),1e4)}function W(e){K.queue.push(e)}!function(e){e.P_INIT_O="P-init-O",e.P_DB_OPEN_O="P-db_open-O",e.P_CALL_MAIN_SYNC_T="P-call_main_sync-T",e.P_CALL_MAIN_SYNC_R="P-call_main_sync-R",e.P_CALL_MAIN_SYNC_E="P-call_main_sync-E",e.P_CALL_MAIN_T="P-call_main-T",e.P_CALL_MAIN_R="P-call_main-R",e.P_CALL_MAIN_E="P-call_main-E",e.P_SEND_2_MAIN_T="P-send_2_main-T",e.P_SEND_2_MAIN_E="P-send_2_main-E",e.P_REGTYP_O="P-regtype-O",e.P_CALL_ADDON_T="P-call_addon-T",e.P_CALL_ADDON_R="P-call_addon-R",e.P_CALL_ADDON_E="P-call_addon-E",e.P_CALL_EXTRA_T="P-call_extra-T",e.P_CALL_EXTRA_R="P-call_extra-R",e.P_CALL_EXTRA_E="P-call_extra-E",e.P_CONNECT_S="P-connect-S",e.P_CONNECT_O="P-connect-O",e.P_REPORT_VER_O="P-report_version-O",e.P_PARSE_JSON_MSGS_E="P-parse_json_messsages-E",e.P_HTTP_REQ_T="P-http_request-T",e.P_HTTP_REQ_R="P-http_request-R",e.P_SET_MSG_EXTEN_O="P-set_msg_extension-O",e.P_SEND_MSG_T="P-send_msg-T",e.P_SEND_MSG_R="P-send_msg-R"}(V||(V={}));var Y=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return H(t,e),t.prototype.flush=function(e){W(e)},t}(s);function X(e,t,n){void 0===n&&(n=!1);var o=t.url,r=t.headers,s=t.body,u=t.method,l=t.query,p=t.timeout,d=void 0===p?c:p;return new Promise((function(t){var c=/^https/.test(o),p={headers:r,method:u};c&&(p.rejectUnauthorized=n,p.agent=new O(p));var f=c?M:N,_=e.createTraceId();e.info(V.P_HTTP_REQ_T,JSON.stringify(p),_);var h=f(i(o,l),p,(function(e){var n=e.statusCode,o="";e.setEncoding("utf8"),e.on("data",(function(e){o+=e})),e.once("end",(function(){t({status:n||0,data:o})}))}));h.once("timeout",(function(){e.warn(V.P_HTTP_REQ_R,a.TIMEOUT,_),t({status:0})})),h.setTimeout(d),h.once("error",(function(n){e.error(V.P_HTTP_REQ_R,n.stack,_),t({status:0})})),h.write(s),h.end()}))}var Q,z=[],$=!1,Z=function(){return F(void 0,void 0,void 0,(function(){var e,t,n,o,r,s,i,a,c;return j(this,(function(u){return $||0===z.length||($=!0,e=z.shift(),t=e.args,n=e.resolve,o=t.addon,r=t.startTime,s=t.endTime,i=t.level,a=t.includeStatistics,c=[],o.setLogEventListener((function(e){var t=e.split(","),n=t[0],o=t[1],r=t[2],s=t[3],u=t[4],l=t.slice(5);try{var p=JSON.parse(decodeURIComponent(l.join(","))),d=p.loggerId,f=p.sessionId,_=p.content,h=p.traceId;if(!a&&i<0)return;var v={time:parseInt(o,10),level:parseInt(s,10),sessionId:"".concat(n,":").concat(f),type:r,tag:u,loggerId:d,content:_,traceId:h};c.push(v)}catch(e){console.error(e)}}),(function(e){n(c),$=!1,Z()}),(function(e,t,n){})),o.pullFullLog(i,r,s,!1)),[2]}))}))},ee=function(e){function t(t,n,o,r){var s="".concat(process.arch,"|").concat(process.platform);return e.call(this,n,o,s,{getLogs:function(e,n,o,r){return F(this,void 0,void 0,(function(){return j(this,(function(s){switch(s.label){case 0:return[4,(i={startTime:e,endTime:n,level:o,includeStatistics:r,addon:t},F(void 0,void 0,void 0,(function(){return j(this,(function(e){return[2,new Promise((function(e){z.push({resolve:e,args:i}),Z()}))]}))})))];case 1:return[2,{logs:s.sent(),dbReady:!0}]}var i}))}))},getTimestamp4RealtimeLog:function(e){return F(this,void 0,void 0,(function(){var n;return j(this,(function(o){return n=t.getStoreValue("".concat(l.REALTIME_LOG_TIMESTAMP,"_").concat(e)),[2,parseInt(n,10)||0]}))}))},setTimestamp4RealtimeLog:function(e,n){return F(this,void 0,void 0,(function(){return j(this,(function(o){return t.setStoreValue("".concat(l.REALTIME_LOG_TIMESTAMP,"_").concat(e),n.toString()),[2]}))}))}},r)||this}return H(t,e),t.prototype.send=function(e){return X(this.logger,e)},t}(u),te=null,ne=function(){var e,o=Date.now(),r=[n(),t(),process.pid,o,Math.floor(Math.random()*o)].join("__");return e=r,A("md5").update(e).digest("hex")},oe=function(e){if(te)return te;var t=o(e,"deviceId");return U(t)?te=L(t).toString():(te=ne(),b(t,te),te)},re=function(){function e(e,t){this._hasPingRes=e,this._reconnect=t,this._timerId=0,this._isFirstPing=!0,this._lossCount=0}return e.init=function(t,n){return Q?(Q.stop(),Q):Q=new e(t,n)},e.prototype.start=function(e){var t=this,n=this._isFirstPing?0:15e3;this._timerId=setTimeout((function(){return t._isFirstPing=!1,t._hasPingRes?(e(),t._hasPingRes=!1,t.start(e)):t._lossCount<4?(t._lossCount++,e(),t.start(e)):void t._reconnect()}),n)},e.prototype.stop=function(){this._lossCount=0,clearTimeout(this._timerId)},e.prototype.setHeartbeatRes=function(){this._hasPingRes=!0,this._lossCount=0},e}(),se=function(){function e(e){this._cppProto=e,this._setTime=15962112e5}return e.prototype._setToProtocol=function(e,t,n,o,r,s){var i=JSON.stringify(r);e.info(V.P_SET_MSG_EXTEN_O,JSON.stringify({messageUId:o,ext:r})),this._cppProto.setMessageExtension(t,n,o,i,s)},e.prototype.setLocalFromReceiveMsg=function(e,t){var n=t.channelId,o=t.conversationType,r=t.targetId,s=t.messageUId,i=t.expansion,a=t.sentTime,c={};for(var u in i)c[u]={v:"",ts:0},c[u].v=i[u],c[u].ts=a;this._setToProtocol(e,o,r,s,c,n||"")},e.prototype.setLocalFromExtMsg=function(e,t){var n=t.channelId,o=t.conversationType,r=t.targetId;t.messageUId;var s=t.content,i=t.sentTime,a=s,c=a.put,u=this._cppProto.getMessage(a.mid),l=JSON.parse(u).extMsg,p=JSON.parse(l||"{}");if(c)for(var d in c){var f=p[d];f&&f.ts<i-this._setTime?(f.v=c[d],f.ts=i-this._setTime):(p[d]={v:"",ts:0},p[d].v=c[d],p[d].ts=i-this._setTime)}a.del&&a.del.forEach((function(e){delete p[e]})),this._setToProtocol(e,o,r,a.mid,p,n||"")},e.prototype.parseReceiveExpansion=function(e){var t=JSON.parse(e.extMsg||"{}"),n={};for(var o in t)n[o]=t[o].v;return n},e.prototype.parseConverOrHisExpansion=function(e){var t=JSON.parse(e.extMsg),n=JSON.parse(t||"{}"),o={};for(var r in n)o[r]=n[r].v;return o},e}(),ie=null;function ae(e,t,n,o,r){return void 0===r&&(r=!0),F(this,void 0,void 0,(function(){var s;return j(this,(function(i){switch(i.label){case 0:return ie?[2,ie]:(ie=function(e,t,n,o,r){return void 0===r&&(r=!0),F(this,void 0,void 0,(function(){var s,i,a,c,u,l,p;return j(this,(function(d){switch(d.label){case 0:s="token=".concat(encodeURIComponent(o),"&v=").concat((f="5.6.0-beem",f.match(/\d+(\.\d+){2}/)[0]),"&p=PC&ev=").concat("5.6.0-beem"),i=0,a=t.length,d.label=1;case 1:return i<a?(c="".concat(t[i],"/navi.json?r=").concat(Date.now()),e.info("request navi -> url: ".concat(c,", body: ").concat(s)),[4,X(e,{method:"POST",headers:{appId:n},body:s,url:c},r)]):[3,4];case 2:if(200!==(u=d.sent()).status)return e.error("request navi failed -> ".concat(c)),u.data&&e.error(u.data),[3,3];e.info("request navi success -> ".concat(c));try{return l=JSON.parse(u.data),p=/^https/.test(c)?"https":"http",l.protocol=p,[2,l]}catch(t){e.error("parse navi err => ".concat(u.data))}d.label=3;case 3:return i+=1,[3,1];case 4:return[2,null]}var f}))}))}(e,t,n,o,r),[4,ie]);case 1:return s=i.sent(),ie=null,[2,s]}}))}))}var ce,ue=function(){function t(e,t,n,r){var s=this;this._appkey=e,this._cppProtocol=t,this._dbpath=n,this._reconnectKickEnable=r,this._currentToken="",this._connectionStatus=p.DISCONNECTED,this._promiseHandler={},this._customMessageType={},this._connectedTime=0,this._currentUserId="",this._naviInfo=null,this._version="5.6.0-beem",this._senders={},this.rtcHeartbeatResolves={};var i=this._dbpath||o(I.getPath("userData")),c=oe(i);this._cppProtocol.initWithAppkey(e,i,this._version.replace(/-.*/,"")),q(e,i,this._cppProtocol),this.logger=new Y(this._appkey,"RC-M","IM"),this.reporter=new ee(this._cppProtocol,e,c,this.logger),this.logger.info(V.P_INIT_O,JSON.stringify({appkey:e,dbpath:i,proto_commit:this._cppProtocol.getNodeVersion(),deviceId:c})),this._callCppProxy("setDeviceId",c),this._registerMsgTypes(),this._setConnectionStatusListener(),this._setOnReceiveMessageListener(),this._setConversationStatusListener(),this._setUserProfileListener(),this._setRTCHeartbeatListener(),this._setRTCLivingRoomEventListener(),this._setChatroomEventListener(),this._setCallInfoListener(),R.on("__RC_CHANNEL_CALL_MAIN_SYNC__",(function(e,t){for(var n=[],o=2;o<arguments.length;o++)n[o-2]=arguments[o];return F(s,void 0,void 0,(function(){var o,r,s,i;return j(this,(function(c){switch(c.label){case 0:if(o=this.logger.createTraceId(),this.logger.info(V.P_CALL_MAIN_SYNC_T,JSON.stringify({method:t}),o),"function"!=typeof(r=this[t]))return this.logger.warn(V.P_CALL_MAIN_SYNC_R,a.NOT_SUPPORT,o),e.returnValue=a.NOT_SUPPORT,[2];s=a.EXTRA_METHOD_UNDEFINED,c.label=1;case 1:return c.trys.push([1,3,,4]),[4,r.call.apply(r,G([this],n,!1))];case 2:return s=c.sent(),[3,4];case 3:return i=c.sent(),this.logger.error(V.P_CALL_MAIN_SYNC_E,null==i?void 0:i.stack,o),[3,4];case 4:return this.logger.info(V.P_CALL_MAIN_SYNC_R,a.SUCCESS,o),e.returnValue=s,[2]}}))}))})),R.on("__RC_CHANNEL_CALL_MAIN__",(function(e,t,n){for(var o=[],r=3;r<arguments.length;r++)o[r-3]=arguments[r];return F(s,void 0,void 0,(function(){var r,s,i,c,u,l=this;return j(this,(function(p){switch(p.label){case 0:if(r=this.logger.createTraceId(),this.logger.info(V.P_CALL_MAIN_T,JSON.stringify({method:n}),r),"function"!=typeof(s=this[n]))return this.logger.warn(V.P_CALL_MAIN_R,a.NOT_SUPPORT,r),this._send2Renderer(e.sender,"__RC_CHANNEL_RESULT_FROM_MAIN__",t,a.NOT_SUPPORT),[2];"sendMessage"===n&&(i=o[3],o[3]=function(t){l._send2Renderer(e.sender,"__RC_CHANNEL_RESULT_FROM_MAIN__",i,t)}),c=a.EXTRA_METHOD_UNDEFINED,p.label=1;case 1:return p.trys.push([1,3,,4]),[4,s.call.apply(s,G([this],o,!1))];case 2:return c=p.sent(),[3,4];case 3:return u=p.sent(),this.logger.error(V.P_CALL_MAIN_E,null==u?void 0:u.stack,r),[3,4];case 4:return this.logger.info(V.P_CALL_MAIN_R,a.SUCCESS,r),this._send2Renderer(e.sender,"__RC_CHANNEL_RESULT_FROM_MAIN__",t,c),[2]}}))}))})),R.on("__RC_CHANNEL_SEND_2_MAIN__",(function(e,t){for(var n=[],o=2;o<arguments.length;o++)n[o-2]=arguments[o];var r=s.logger.createTraceId();s.logger.info(V.P_SEND_2_MAIN_T,JSON.stringify({method:t}),r);var i=s[t];if("function"==typeof i)try{i.call.apply(i,G([s],n,!1))}catch(e){s.logger.error(V.P_SEND_2_MAIN_E,null==e?void 0:e.stack,r)}else s.logger.error(V.P_SEND_2_MAIN_E,"Method Not Found",r)})),R.on("__RC_INNER_COMMAND_INIT__",this._registerRenderers.bind(this)),this._msgExpansionHandler=new se(this._cppProtocol)}return t.prototype._callCppProxy=function(e){for(var t,n=[],o=1;o<arguments.length;o++)n[o-1]=arguments[o];var r=this.logger.createTraceId();try{this.logger.info(V.P_CALL_ADDON_T,JSON.stringify({method:e}),r);var s=(t=this._cppProtocol)[e].apply(t,n);return this.logger.info(V.P_CALL_ADDON_R,0,r),s}catch(e){this.logger.error(V.P_CALL_ADDON_E,null==e?void 0:e.stack,r)}},t.prototype.sendHTTPRequest=function(e){return X(this.logger,e)},t.prototype.onRendererLogReceived=function(e){W(e)},t.prototype.getCppProto=function(){var e=this;return{destroy:function(){e._cppProtocol.destroy()}}},t.prototype.destroy=function(){this._cppProtocol.destroy()},t.prototype.callExtra=function(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];var o=this.logger.createTraceId();this.logger.warn(V.P_CALL_EXTRA_T,JSON.stringify({method:e}),o);var r=this[e];if(!r)return this.logger.warn(V.P_CALL_EXTRA_R,a.EXTRA_METHOD_UNDEFINED,o),Promise.resolve({code:a.EXTRA_METHOD_UNDEFINED});try{var s=r.call.apply(r,G([this],t,!1));return this.logger.warn(V.P_CALL_EXTRA_R,a.SUCCESS,o),s}catch(e){this.logger.error(V.P_CALL_EXTRA_E,null==e?void 0:e.stack,o)}return Promise.resolve({code:a.MAIN_PROCESS_ERROR})},t.prototype.getConversationsByPage=function(e,t,n,o){var r,s=this,i=this._callCppProxy("getConversationListByPage",e,t,n,o||"");try{r=JSON.parse(i).list.map((function(e){return s._buildConversation(e.obj)}))}catch(e){return Promise.resolve({code:a.MAIN_PROCESS_ERROR})}return Promise.resolve({code:a.SUCCESS,data:r})},t.prototype.getConversationListWithAllChannel=function(){var e,t=this,n=[d.PRIVATE,d.GROUP],o=this._callCppProxy("getConversationListWithAllChannel",n);try{e=JSON.parse(o).list.map((function(e){return t._buildConversation(e.obj)}))}catch(e){return Promise.resolve({code:a.MAIN_PROCESS_ERROR})}return Promise.resolve({code:a.SUCCESS,data:e})},t.prototype.getConversationListWithAllChannelByPage=function(e,t){var n,o=this,r=[d.PRIVATE,d.GROUP],s=this._callCppProxy("getConversationListWithAllChannelByPage",r,e,t);try{n=JSON.parse(s).list.map((function(e){return o._buildConversation(e.obj)}))}catch(e){return Promise.resolve({code:a.MAIN_PROCESS_ERROR})}return Promise.resolve({code:a.SUCCESS,data:n})},t.prototype.getHistoryMessagesByObjectNames=function(e,t,n,o,r,s,i){var c=0===s,u=o+1,l=this._callCppProxy("getHistoryMessagesByObjectNames",e,t,n,u,r,c,i||""),p=[];try{var d=JSON.parse(l).list;d.reverse();for(var f=0;f<d.length;f++){var _=this._buildMessage(d[f].obj);p[f]=_}}catch(e){return Promise.resolve({code:a.MAIN_PROCESS_ERROR})}return Promise.resolve({code:a.SUCCESS,data:{list:u===p.length?p.slice(1,u):p,hasMore:o<p.length}})},t.prototype.updateMessageReceiptStatus=function(e,t,n,o){void 0===o&&(o="");var r=this._callCppProxy("updateMessageReceiptStatus",e,t,n,o);return Promise.resolve({code:a.SUCCESS,data:r})},t.prototype.requestNaviInfo=function(e,t,n,o){return F(this,void 0,void 0,(function(){return j(this,(function(r){switch(r.label){case 0:return[4,ae(this.logger,e,t,n,o)];case 1:return[2,r.sent()]}}))}))},t.prototype.getNaviInfoFromCache=function(){return this._naviInfo?B({},this._naviInfo):null},t.prototype.createLogger=function(e,t){return/^RC/.test(e)?null:new Y(this._appkey,e,t)},t.prototype.getConnectedTime=function(){return this._connectedTime},t.prototype.getServerTime=function(){return Date.now()-this._cppProtocol.getDeltaTime()},t.prototype.getCurrentUserId=function(){var e;return(null===(e=this._naviInfo)||void 0===e?void 0:e.userId)||""},t.prototype._send2Renderer=function(e,t){for(var n=[],o=2;o<arguments.length;o++)n[o-2]=arguments[o];e.isDestroyed()?delete this._senders[e.id]:e.send.apply(e,G([t],n,!1))},t.prototype._send2AllRenderer=function(e,t,n){var o=this;void 0===n&&(n=[]),Object.keys(this._senders).forEach((function(r){var s=o._senders[r];n.includes(s)||o._send2Renderer(s,"__RC_CHANNEL_NOTIFICATION_FROM_MAIN__",e,t)}))},t.prototype._registerRenderers=function(e){var t=this,n=e.sender,o=n.id;this._senders[o]||(this._senders[o]=n,n.once("destroyed",(function(){delete t._senders[o]})))},t.prototype._registerMsgTypes=function(){for(var e in f["RC:RcCmd"]={isCounted:!1,isPersited:!1},f){var t=f[e],n=t.isCounted,o=t.isPersited,r=t.searchProps,s=0;o&&(s|=1),n&&(s|=2),"RC:TypSts"===e&&(s=16),this.logger.info(V.P_REGTYP_O,JSON.stringify({type:e,opt:s,searchProps:r})),this._callCppProxy("registerMessageType",e,s,r)}},t.prototype._buildMessage=function(e,t){void 0===t&&(t={});var n=t.isOffLineMessage,o=t.buildFrom,r=JSON.parse(e),s=r.channelId,i=r.conversationType,a=r.targetId,c=r.senderUserId,u=r.content,l=r.objectName,p=r.messageUid,d=r.direction,C=r.status;r.source;var S=r.messageId,y=r.sentTime,m=r.readReceiptRequest,P=r.supportExt;r.extMsg;var E,T=r.pushContent,I=r.pushTitle,R=r.pushId,N=r.pushConfig,O=r.templateId,M=r.disableTitle,U=r.forcePushDetail;if(_(u))E=u;else try{E=u?JSON.parse(u):u}catch(e){E=u,this.logger.error(V.P_PARSE_JSON_MSGS_E,JSON.stringify({messageId:S}))}var L={isCounted:!1,isPersited:!1};l in f?L=f[l]:l in this._customMessageType&&(L=this._customMessageType[l]);var b=null;P&&(b=this._msgExpansionHandler.parseReceiveExpansion(r),"conversation"!==o&&"history"!==o||(b=this._msgExpansionHandler.parseConverOrHisExpansion(r)));var A=h(n)?y<this._connectedTime:n,w={};N&&(w=v(this.logger,N,R));var x=B(B({},w),{pushTitle:I,pushContent:T,pushData:T,disablePushTitle:M,forceShowDetailContent:U,templateId:O}),D={channelId:s,conversationType:i,targetId:a,senderUserId:c,content:E||{},messageType:l,messageUId:p||"",messageDirection:d,isOffLineMessage:A,sentTime:y,receivedTime:0,isPersited:L.isPersited,isCounted:L.isCounted,isMentioned:!1,disableNotification:!1,isStatusMessage:!1,canIncludeExpansion:P,expansion:P?b:null,receivedStatus:C,messageId:S,pushConfig:x};if(d===g.RECEIVE?D.receivedStatus=C:d===g.SEND&&(D.sentStatus=C),m){var J=JSON.parse(m),k=J.hasRespond,H=J.readerInfo,F={hasRespond:k,readCount:J.readCount,totalCount:J.totalCount},j=[];if(H)for(var G in H)j.push({userId:G,readTime:H[G]});F.readerList=j,D.readReceiptInfo=F}return D},t.prototype._updateReadReceiptInfo=function(e,t){var n=this._callCppProxy("getMessage",e),o=JSON.parse(n),r=o.readReceiptRequest?JSON.parse(o.readReceiptRequest):{},s=B(B({},r),t);this._callCppProxy("updateReadReceiptRequestInfo",e,JSON.stringify(s))},t.prototype._buildConversation=function(e){var t=JSON.parse(e),n=t.channelId,o=t.conversationType,r=t.targetId,s=t.unreadCount,i=t.lastestMsg,a=t.isTop,c=t.isBlocked,u=t.matchCount,l=c?C.OPEN:C.CLOSE;return{channelId:n,conversationType:o,targetId:r,unreadMessageCount:s,latestMessage:-1===JSON.parse(i).messageId?null:this._buildMessage(i),hasMentioned:!1,mentionedInfo:null,notificationStatus:l,isTop:a,lastUnreadTime:0,matchCount:u}},t.prototype._sendConnectionStatus2Renderer=function(e){this._send2AllRenderer("status",e)},t.prototype._convertResultList=function(e,t){var n=JSON.parse(e).list;return n=n.map((function(e){var n=JSON.parse(e.obj);return t?t(n):n}))},t.prototype._connectResolve=function(e){this._promiseHandler.connect&&this._promiseHandler.connect.length>0&&(this._promiseHandler.connect.forEach((function(t){t.resolve(e)})),delete this._promiseHandler.connect)},t.prototype._setConnectionStatusListener=function(){var e=this;this._cppProtocol.setConnectionStatusListener((function(t){var n,o;switch(e.logger.info(V.P_CONNECT_S,t),t){case 10:o=p.CONNECTING;break;case 31004:return void setTimeout((function(){e._connectResolve(a.RC_CONN_USER_OR_PASSWD_ERROR)}));case 12:o=p.DISCONNECTED;break;case 13:o=p.BLOCKED,setTimeout((function(){e._connectResolve(a.RC_CONN_USER_BLOCKED)}));break;case 31023:o=p.FORBID_RECONNECT_BY_OTHER_SAME_CLIENT,setTimeout((function(){e._connectResolve(a.RC_DISCONN_SAME_CLIENT_ON_LINE)}));break;case 31029:o=p.USER_LOGOUT;break;case 1:case 9:case 11:case 31011:case 3e4:case 30002:o=p.NETWORK_UNAVAILABLE;break;case 30010:o=p.NETWORK_UNAVAILABLE,setTimeout((function(){e._connectionStatus===p.NETWORK_UNAVAILABLE&&e._doConnect()}),5e3);break;case 0:case 33005:e.reporter.checkStart(e._naviInfo),o=p.CONNECTED,e._connectedTime=Date.now()-e._cppProtocol.getDeltaTime(),setTimeout((function(){e._connectResolve(a.SUCCESS),e._heartbeat=re.init(!0,e._handleHeartTimeout.bind(e)),e._heartbeat.start(e._sendHeartbeat.bind(e))}));break;case p.KICKED_OFFLINE_BY_OTHER_CLIENT:o=p.KICKED_OFFLINE_BY_OTHER_CLIENT;break;case 31030:o=p.RC_LICENSE_EXPIRED,setTimeout((function(){e._connectResolve(a.RC_LICENSE_EXPIRED)}));break;case 30004:return;case 8:case 31006:case 32061:case 32012:o=p.REDIRECT;break;default:o=t}o!==p.CONNECTED&&(null===(n=e._heartbeat)||void 0===n||n.stop()),e._connectionStatus=o,e._sendConnectionStatus2Renderer(o)}),this._dbOpenCallback.bind(this),(function(){var t;null===(t=e._heartbeat)||void 0===t||t.setHeartbeatRes()}))},t.prototype._handleHeartTimeout=function(){var e,t=this;this._sendConnectionStatus2Renderer(p.NETWORK_UNAVAILABLE),null===(e=this._heartbeat)||void 0===e||e.stop(),setTimeout((function(){return t._doConnect()}),5e3)},t.prototype._dbOpenCallback=function(e){this.logger.info(V.P_DB_OPEN_O,e)},t.prototype._sendHeartbeat=function(){this._cppProtocol.sendHeartbeat()},t.prototype._setOnReceiveMessageListener=function(){var e=this;this._cppProtocol.setOnReceiveMessageListener((function(t,n,o,r){var s,i=e._buildMessage(t,{isOffLineMessage:o}),a=i.messageType;if(a!==S.LOG_COMMAND||"rongcloudsystem"!==i.senderUserId){if(a===S.GROUP_READ_RECEIPT_REQUEST){var c=i.content,u=c.msgId,l=c.rrn,p=c.tmn;e._updateReadReceiptInfo(u,{readCount:l,totalCount:p})}if("RC:MsgExMsg"===a)return e._msgExpansionHandler.setLocalFromExtMsg(e.logger,i),void e._sendMessageExpansion(i);if(i.canIncludeExpansion&&e._msgExpansionHandler.setLocalFromReceiveMsg(e.logger,i),a===S.SYNC_READ_STATUS){if(i.senderUserId!==e._currentUserId)return;e._callCppProxy("clearUnreadCountByTimestamp",i.conversationType,i.targetId,i.content.lastMessageSendTime,i.channelId||"")}var d=!0;if(0!==n||r||(d=!1),a!==S.LOG_COMMAND||"rongcloudsystem"!==i.senderUserId){if(a===S.DELIVERED)return e._callCppProxy("setMessageDeliverTime",JSON.stringify(i.content)),void e._sendMessageDelivered(i.content.map((function(e){return{deliverTime:e.time,messageUId:e.messageUId,objectName:e.objectName,targetId:e.targetId}})));if(a!==S.DELIVERED_MSG){var f=i.conversationType,_=i.targetId;a===S.RECALL&&i.senderUserId===e._currentUserId&&(f=i.content.conversationType||f,_=i.content.targetId||_),e._sendMessageNotification(Object.assign(i,{hasMoreMsg:d,conversationType:f,targetId:_}))}else{var h={totalCount:i.content.tmn,list:null===(s=i.content.dl)||void 0===s?void 0:s.map((function(e){return{MessageUId:e.msgId,deliveryCount:e.drn}}))};e._sendGroupMessageDeliveredStatus(h)}}else{var v=Object.keys(e._senders).map((function(t){return e._senders[t]}));v.length>0&&e._sendMessageNotification(Object.assign(i,{hasMoreMsg:d}),v.slice(1))}}else{var g=i.content,C=g.startTime,y=g.endTime,m=g.platform,P=g.logId,E=g.uri;e.reporter.report(parseInt(C,10),parseInt(y,10),m,E,P,i.messageUId)}}),(function(){e._sendPullOfflineFinished()}))},t.prototype._sendMessageExpansion=function(e,t){void 0===t&&(t=[]);var n=e.channelId,o=e.content,r=o.put,s=o.del,i=o.mid,a={};r&&(a.updatedExpansion={channelId:n,messageUId:i,expansion:r}),s&&(a.deletedExpansion={channelId:n,messageUId:i,deletedKeys:s}),this._send2AllRenderer("expansion",a,t)},t.prototype._sendMessageNotification=function(e,t){void 0===t&&(t=[]),this._send2AllRenderer("batchMessage",e,t)},t.prototype._sendPullOfflineFinished=function(){this._send2AllRenderer("pullFinished",null)},t.prototype._sendMessageDelivered=function(e){this._send2AllRenderer("messageDelivered",e)},t.prototype._sendGroupMessageDeliveredStatus=function(e){this._send2AllRenderer("groupMessageDeliveredStatus",e)},t.prototype._setConversationStatusListener=function(){var e=this;this._cppProtocol.setConversationStatusListener((function(t){var n=JSON.parse(t).list,o=[];n.forEach((function(e){var t=JSON.parse(e.obj),n=t.conversationType,r=t.targetId,s=t.status,i=t.channelId,a={notificationStatus:2,isTop:!1};s.forEach((function(e){var t=JSON.parse(e.item);1===t.type?a.notificationStatus=1===Number(t.value)?C.OPEN:C.CLOSE:a.isTop=1===Number(t.value)})),o.push({channelId:i,conversationType:n,targetId:r,updatedItems:{notificationStatus:{val:a.notificationStatus,time:0},isTop:{val:a.isTop,time:0}}})})),e._send2AllRenderer("conversation",o)}),(function(t){e._send2AllRenderer("conversationTag",t)}))},t.prototype._setUserProfileListener=function(){var e=this;this._cppProtocol.setUserProfileListener((function(){}),(function(t){e._send2AllRenderer("tag",t),e._getRTCProfile()}))},t.prototype._getRTCProfile=function(){var e=this._callCppProxy("getRTCProfile");if(e&&this._naviInfo&&this._naviInfo.voipCallInfo!==e){var t=B(B({},this._naviInfo),{voipCallInfo:e});this._naviInfo=t,this._send2AllRenderer("onNaviDataChange",t)}},t.prototype._setRTCLivingRoomEventListener=function(){var e=this;this._cppProtocol.setRTCRoomEventListener((function(t){var n=new Uint8Array(t).buffer;e._send2AllRenderer("onRTCDataChange",n)}))},t.prototype._setChatroomEventListener=function(){var e=this;this._cppProtocol.setChatroomEventListener((function(t,n){e._send2AllRenderer("chatroom",{chatroomDestroyed:t})}))},t.prototype._setCallInfoListener=function(){var e=this;this._cppProtocol.setCallInfoListener((function(t){e._send2AllRenderer("callInfo",t)}))},t.prototype._clearListener=function(){this._cppProtocol.setOnReceiveMessageListener(),this._cppProtocol.setConnectionStatusListener(),this._cppProtocol.setOnReceiveStatusListener(),this._cppProtocol.setUserProfileListener()},t.prototype.registerMessageType=function(e,t,n,o){var r=0;t&&(r|=1),n&&(r|=2),this._customMessageType[e]={isCounted:n,isPersited:t},this.logger.info(V.P_REGTYP_O,JSON.stringify({type:e,opt:r,search:o})),this._callCppProxy("registerMessageType",e,r,o)},t.prototype.connect=function(e,t,n,o){var r=this;return this.logger.info(V.P_CONNECT_O,JSON.stringify({reconnectKickEnable:n,version:this._version}),o),this._currentToken===e&&this._connectionStatus===p.CONNECTED?(this._sendConnectionStatus2Renderer(this._connectionStatus),Promise.resolve(a.SUCCESS)):(this._currentToken=e,this._naviInfo=t,this._currentUserId=t.userId,this._promiseHandler.connect||this._doConnect(n),new Promise((function(e,t){r._promiseHandler.connect?r._promiseHandler.connect.push({resolve:e,reject:t}):r._promiseHandler.connect=[{resolve:e,reject:t}]})))},t.prototype._doConnect=function(e){var t=h(e)?!!this._reconnectKickEnable:!!e;this._callCppProxy("connectWithToken",this._currentToken,this._version,JSON.stringify(this._naviInfo),t)},t.prototype.reportSDKInfo=function(e){var t,n,o=JSON.stringify(e);this.logger.info(V.P_REPORT_VER_O,o),null===(n=(t=this._cppProtocol).uploadSDKVersion)||void 0===n||n.call(t,o)},t.prototype.disconnect=function(){var e;this.reporter.stop(),this._cppProtocol.disconnect(!0),null===(e=this._heartbeat)||void 0===e||e.stop(),this._connectResolve(a.TIMEOUT)},t.prototype.logout=function(){this.disconnect()},t.prototype.setUserStatusListener=function(e,t){this._cppProtocol.setOnReceiveStatusListener((function(e,n){t({userId:e,status:n})}));var n=e.userIds||[];n.length&&this.subscribeUserStatus(n)},t.prototype.subscribeUserStatus=function(e){var t=this;return new Promise((function(n,o){t._callCppProxy("subscribeUserStatus",e,(function(){n(a.SUCCESS)}),n)}))},t.prototype.setUserStatus=function(e){var t=this;return new Promise((function(n,o){t._callCppProxy("setUserStatus",e,(function(){n(a.SUCCESS)}),n)}))},t.prototype.getUserStatus=function(e){var t=this;return new Promise((function(n,o){t._callCppProxy("getUserStatus",e,(function(e){n({code:a.SUCCESS,data:{status:e}})}),(function(e){n({code:e})}))}))},t.prototype.sendMessage=function(e,t,n,o,r){var s=this;void 0===r&&(r=this.logger.createTraceId());var i=n.messageType,c=n.content,u=n.pushContent,l=n.pushData,p=n.directionalUserIdList,f=n.disableNotification,_=n.canIncludeExpansion,h=n.expansion,v=n.isVoipPush,g=n.pushConfig,C=n.channelId,P=n.isMentioned,E=n.mentionedType,T=n.mentionedUserIdList,I=n.messageId,R=g||{},N=R.iOSConfig,O=R.androidConfig,M=R.pushTitle,U=R.pushContent,L=R.pushData,b=R.disablePushTitle,A=R.forceShowDetailContent,w=R.templateId,x=y(N,O);return new Promise((function(n){u=U||u||"",l=L||l||"",f=f||!1,v=v||!1,M=M||"",U=U||"",L=L||"",b=b||!1,A=A||!1,_=_||!1;var g=(null==O?void 0:O.notificationId)||"";if(p=p||[],I=I||0,C=C||"",e===d.GROUP&&P&&c&&(c.mentionedInfo={userIdList:T,type:E||m.ALL}),e===d.GROUP&&i===S.READ_RECEIPT_RESPONSE&&c.receiptMessageDic)for(var y in c.receiptMessageDic)p.push(y);var R={};for(var y in h)R[y]={v:""},R[y].v=h[y];var N=w||"";s.logger.info(V.P_SEND_MSG_T,JSON.stringify({messageType:i,conversationType:e,targetId:t,channelId:C}),r);var D=s._callCppProxy("sendMessage",(function(e,t){var o=s._buildMessage(e,{isOffLineMessage:!1});return s.logger.info(V.P_SEND_MSG_R,JSON.stringify({code:t,messageUId:o.messageUId}),r),t===a.SENSITIVE_REPLACE?n({code:t}):("RC:MsgExMsg"===o.messageType&&s._msgExpansionHandler.setLocalFromExtMsg(s.logger,o),o.canIncludeExpansion&&s._msgExpansionHandler.setLocalFromReceiveMsg(s.logger,o),n({code:a.SUCCESS,data:o}))}),(function(e,t){var o=s._buildMessage(e,{isOffLineMessage:!1});return s.logger.warn(V.P_SEND_MSG_R,JSON.stringify({code:t,messageId:o.messageId}),r),o.sentTime=Date.now()-s._cppProtocol.getDeltaTime(),n({code:t,data:o})}),e,t,i,JSON.stringify(c),p,f,b,A,u,l,g,M,x,N,_,JSON.stringify(R),v,C,I),J=JSON.parse(D);null==o||o(J.messageId)}))},t.prototype.recallMsg=function(e,t,n,o,r){var s=this;return new Promise((function(i,c){var u,l=r.user,p=r.pushContent,d=r.channelId,f=r.extra,_=r.pushConfig,h=r.disableNotification,v=r.isDelete,C={conversationType:e,targetId:t,messageUId:n,sentTime:o,user:l,extra:f,channelId:d,isDelete:v||!1};l&&(C.user=l),f&&(C.extra=f);var m={conversationType:e,targetId:t,senderUserId:s._currentUserId,content:C,objectName:S.RECALL,messageUid:n,direction:g.SEND,status:P.UNREAD,sentTime:o,channelId:d},E=s._buildMessage(JSON.stringify(m),{isOffLineMessage:!1});s._callCppProxy("recallMessage",(function(){i({code:a.SUCCESS,data:E})}),(function(e){i({code:e})}),S.RECALL,JSON.stringify(C),h||!1,(null==_?void 0:_.disablePushTitle)||!1,(null==_?void 0:_.forceShowDetailContent)||!1,p||"",(null==_?void 0:_.pushData)||"",(null===(u=null==_?void 0:_.androidConfig)||void 0===u?void 0:u.notificationId)||"",(null==_?void 0:_.pushTitle)||"",y(null==_?void 0:_.iOSConfig,null==_?void 0:_.androidConfig),(null==_?void 0:_.templateId)||"",d)}))},t.prototype.getHistoryMessage=function(e,t,n,o,r,s,i){var c=this;return new Promise((function(u,l){n=n||0;var p=0===r,d=o+1,f=c._callCppProxy("getHistoryMessages",e,t,n,d,i,p,s),_=JSON.parse(f).list,h=[];_.reverse();for(var v=0;v<_.length;v++){var g=c._buildMessage(_[v].obj);h[v]=g}u({code:a.SUCCESS,data:{list:d===h.length?h.slice(1,d):h,hasMore:o<h.length}})}))},t.prototype.getRemoteHistoryMessages=function(e,t,n,o,r,s){var i=this;return new Promise((function(c,u){n=n||0;i._callCppProxy("getRemoteHistoryMessages",e,t,n,o,(function(e,t){var n=JSON.parse(e).list,o=[];n.reverse();for(var r=0;r<n.length;r++){var s=i._buildMessage(n[r].obj);o[r]=s}c({code:a.SUCCESS,data:{list:o,hasMore:!!t}})}),(function(e){c({code:e})}),r,!0,s)}))},t.prototype.deleteRemoteMessage=function(e,t,n,o){var r=this;return new Promise((function(s,i){var c=JSON.stringify(n);r._callCppProxy("deleteRemoteHistoryMessages",e,t,c,!1,o,(function(){s(a.SUCCESS)}),s)}))},t.prototype.deleteRemoteMessageByTimestamp=function(e,t,n,o){var r=this;return new Promise((function(s,i){r._callCppProxy("clearRemoteHistoryMessages",e,t,n,(function(){s(a.SUCCESS)}),(function(e){s(e)}),o)}))},t.prototype.clearMessages=function(e,t,n){var o=this;return new Promise((function(r,s){o._callCppProxy("clearMessages",e,t,n),r(a.SUCCESS)}))},t.prototype.getConversationList=function(e,t,n,o,r){var s=this;return void 0===r&&(r=""),new Promise((function(e,t){for(var n=s._callCppProxy("getConversationList",[1,3,6,7],r),o=JSON.parse(n).list,i=[],c=0;c<o.length;c++)i.push(s._buildConversation(o[c].obj));e({code:a.SUCCESS,data:i})}))},t.prototype.getConversation=function(e,t,n){var o=this;return new Promise((function(r,s){var i=o._callCppProxy("getConversation",e,t,n);if(i)r({code:a.SUCCESS,data:o._buildConversation(i)});else{var c=o._cppProtocol.getHistoryMessages(e,t,0,1,"",!0,n),u=void 0;try{u=JSON.parse(c).list}catch(e){o.logger.error(V.P_PARSE_JSON_MSGS_E,null==e?void 0:e.stack),u=[]}var l=null;u.length>0&&(l=o._buildMessage(u[0].obj));var p=o._callCppProxy("getConversationNotificationStatus",e,t,n),d=o._callCppProxy("getConversationTopStatus",e,t,n);r({code:a.SUCCESS,data:{conversationType:e,targetId:t,channelId:n,unreadMessageCount:0,latestMessage:l,notificationStatus:p?C.OPEN:C.CLOSE,isTop:Boolean(d),lastUnreadTime:0}})}}))},t.prototype.removeConversation=function(e,t,n){var o=this._callCppProxy("removeConversation",e,t,n);return Promise.resolve(o?a.SUCCESS:a.UNKNOWN)},t.prototype.clearConversations=function(e,t){var n=this;return new Promise((function(o,r){var s=[];s=E(e)?e:[d.PRIVATE,d.GROUP,d.SYSTEM,d.PUBLIC_SERVICE],n._callCppProxy("clearConversations",s,t),o(a.SUCCESS)}))},t.prototype.getAllConversationUnreadCount=function(e,t,n){var o=this._callCppProxy("getTotalUnreadCount",t,n,e);return Promise.resolve({code:a.SUCCESS,data:o})},t.prototype.getConversationUnreadCount=function(e,t,n){var o=this;return void 0===n&&(n=""),new Promise((function(r){var s=o._callCppProxy("getUnreadCount",e,t,n);r({code:a.SUCCESS,data:s})}))},t.prototype.clearConversationUnreadCount=function(e,t,n){var o=this;return void 0===n&&(n=""),new Promise((function(r,s){o._callCppProxy("clearUnreadCount",e,t,n),r(a.SUCCESS)}))},t.prototype.clearUnreadCountByTimestamp=function(e,t,n,o){var r=this;return new Promise((function(s,i){r._callCppProxy("clearUnreadCountByTimestamp",e,t,n,o),s(a.SUCCESS)}))},t.prototype.getFirstUnreadMessage=function(e,t,n){var o=this;return new Promise((function(r,s){var i=o._callCppProxy("getTheFirstUnreadMessage",e,t,n),c=o._buildMessage(i);r({code:a.SUCCESS,data:-1!==c.messageId?c:null})}))},t.prototype.setConversationToTop=function(e,t,n,o){var r=this;return void 0===o&&(o=""),new Promise((function(s,i){r._callCppProxy("setConversationToTop",e,t,n,o,!0),s(a.SUCCESS)}))},t.prototype.setConversationHidden=function(e,t,n,o){var r=this;return new Promise((function(s,i){r._callCppProxy("setConversationHidden",e,t,n,o),s(a.SUCCESS)}))},t.prototype.setConversationNotificationStatus=function(e,t,n,o){var r=this;return new Promise((function(s,i){r._callCppProxy("setConversationNotificationStatus",e,t,n,(function(){s(a.SUCCESS)}),s,o)}))},t.prototype.setConversationStatus=function(e,t,n,o,r){var s=this;return new Promise((function(i,c){s._callCppProxy("setConversationStatus",e,t,n,o,(function(){i(a.SUCCESS)}),i,r,!0)}))},t.prototype.getConversationNotificationStatus=function(e,t,n){var o=this;return new Promise((function(r,s){var i=o._callCppProxy("getConversationNotificationStatus",e,t,n);r({code:a.SUCCESS,data:i?C.OPEN:C.CLOSE})}))},t.prototype.searchConversationByContent=function(e,t,n,o){var r=this;return new Promise((function(s,i){o=o||[1,3,6,7];for(var c=r._callCppProxy("searchConversationByContent",o,e,t,n),u=JSON.parse(c).list,l=[],p=0;p<u.length;p++)l[p]=r._buildConversation(u[p].obj);s({code:a.SUCCESS,data:l})}))},t.prototype.searchConversationByContentWithAllChannel=function(e,t,n){var o=this;return new Promise((function(r,s){n=n||[1,3,6,7];for(var i=o._callCppProxy("searchConversationByContentWithAllChannel",n,e,t),c=JSON.parse(i).list,u=[],l=0;l<c.length;l++)u[l]=o._buildConversation(c[l].obj);r({code:a.SUCCESS,data:u})}))},t.prototype.searchMessageByContent=function(e,t,n,o,r,s,i){var c=this;return new Promise((function(s,u){c._callCppProxy("searchMessageByContent",e,t,n,o,r,1,(function(e,t){for(var n=e?JSON.parse(e).list:[],o=[],r=0;r<n.length;r++)o[r]=c._buildMessage(n[r].obj);s({code:a.SUCCESS,data:{messages:o,count:t}})}),i)}))},t.prototype.searchMessageByContentWithAllChannel=function(e,t,n,o,r){var s=this;return new Promise((function(i,c){s._callCppProxy("searchMessageByContentWithAllChannel",e,t,n,o,r,1,(function(e,t){for(var n=e?JSON.parse(e).list:[],o=[],r=0;r<n.length;r++)o[r]=s._buildMessage(n[r].obj);i({code:a.SUCCESS,data:{messages:o,count:t}})}))}))},t.prototype.searchMessageByContentInTimeRangeWithAllChannel=function(e,t,n,o,r,s,i){var c=this;return new Promise((function(u,l){c._callCppProxy("searchMessageByTimestampWithAllChannel",e,t,n,o,r,s,i,(function(e){for(var t=e?JSON.parse(e).list:[],n=[],o=0;o<t.length;o++)n[o]=c._buildMessage(t[o].obj);u({code:a.SUCCESS,data:{messages:n}})}))}))},t.prototype.getUnreadMentionedMessages=function(e,t,n){for(var o=JSON.parse(this._callCppProxy("getUnreadMentionedMessages",e,t,n)).list,r=0;r<o.length;r++)o[r]=this._buildMessage(o[r].obj);return o},t.prototype.addToBlacklist=function(e){var t=this;return new Promise((function(n,o){t._callCppProxy("addToBlacklist",e,(function(){n(a.SUCCESS)}),n)}))},t.prototype.removeFromBlacklist=function(e){var t=this;return new Promise((function(n,o){t._callCppProxy("removeFromBlacklist",e,(function(){n(a.SUCCESS)}),n)}))},t.prototype.getBlacklist=function(){var e=this;return new Promise((function(t,n){e._callCppProxy("getBlacklist",(function(e){t({code:a.SUCCESS,data:e})}),(function(e){t({code:e})}))}))},t.prototype.getBlacklistStatus=function(e){var t=this;return new Promise((function(n,o){t._callCppProxy("getBlacklistStatus",e,(function(e){n({code:a.SUCCESS,data:e})}),(function(e){n({code:e})}))}))},t.prototype.insertMessage=function(e,t,n){var o=this,r=n.content,s=n.senderUserId,i=n.messageType,c=n.messageDirection,u=n.readStatus,l=n.sentStatus,p=n.sentTime,d=n.searchContent,f=n.isUnread,_=n.messageUId,h=n.disableNotification,v=n.canIncludeExpansion,g=n.expansionMsg,C=n.channelId;return r=JSON.stringify(r),new Promise((function(n,S){var y=f?0:1,m=o._callCppProxy("insertMessage",e,t,s,i,r,(function(){}),(function(e){n({code:e})}),c,u,l,p,d,y,_,h,v,g,C),P=o._buildMessage(m,{isOffLineMessage:!1});P.messageUId=_,P.sentTime=p,n({code:-1===P.messageId?a.MSG_INSERT_ERROR:a.SUCCESS,data:P})}))},t.prototype.deleteMessages=function(e){var t=this;return new Promise((function(n,o){t._callCppProxy("deleteMessages",e),n(a.SUCCESS)}))},t.prototype.deleteMessagesByTimestamp=function(e,t,n,o,r){var s=this;return new Promise((function(i,c){s._callCppProxy("deleteMessagesByTimestamp",e,t,n,o,r),i(a.SUCCESS)}))},t.prototype.getMessage=function(e){var t=this;return new Promise((function(n,o){var r=t._callCppProxy("getMessage",e),s=t._buildMessage(r,{isOffLineMessage:!1});n({code:a.SUCCESS,data:s})}))},t.prototype.setMessageContent=function(e,t,n){var o=this;return new Promise((function(r,s){t=JSON.stringify(t),o._callCppProxy("setMessageContent",e,t,n),r(a.SUCCESS)}))},t.prototype.setMessageSearchField=function(e,t,n){var o=this;return new Promise((function(r,s){o._callCppProxy("setMessageSearchField",e,t,n),r(a.SUCCESS)}))},t.prototype.setMessageSentStatus=function(e,t){var n=this;return new Promise((function(o,r){n._callCppProxy("setMessageSentStatus",e,t),o(a.SUCCESS)}))},t.prototype.setMessageReceivedStatus=function(e,t){var n=this;return new Promise((function(o,r){n._callCppProxy("setMessageReceivedStatus",e,t),o(a.SUCCESS)}))},t.prototype.saveConversationMessageDraft=function(e,t,n,o){throw new Error("Method not implemented.")},t.prototype.getConversationMessageDraft=function(e,t,n){throw new Error("Method not implemented.")},t.prototype.clearConversationMessageDraft=function(e,t,n){throw new Error("Method not implemented.")},t.prototype.pullConversationStatus=function(e){throw new Error("Method not implemented.")},t.prototype.batchSetConversationStatus=function(e){var t=e[0],n=t.conversationType,o=t.targetId,r=t.isTop,s=t.notificationStatus,i=t.channelId;if(void 0!==r&&void 0===s)return this.setConversationToTop(n,o,r,i);if(void 0!==s&&void 0===r){var a=s===C.OPEN;return this.setConversationNotificationStatus(n,o,a,i)}var c=s===C.OPEN;return this.setConversationStatus(n,o,c,r,i)},t.prototype.pullUserSettings=function(e){throw new Error("Method not implemented.")},t.prototype.sendReadReceiptMessage=function(e,t,n){var o=this;return new Promise((function(r){o._callCppProxy("sendReadReceipt",e,n||"",t,(function(){t.forEach((function(e){o._updateReadReceiptInfo(e,{hasRespond:!0});try{var t=JSON.parse(o._callCppProxy("getMessage",e)).messageId;o.setMessageReceivedStatus(t,1)}catch(t){o.logger.error(V.P_PARSE_JSON_MSGS_E,JSON.stringify({messageUId:e,error:null==t?void 0:t.stack}))}})),r({code:a.SUCCESS})}),(function(e){r({code:e})}))}))},t.prototype.getMessageReader=function(e,t,n){var o=this;return new Promise((function(r,s){o._callCppProxy("getMessageReader",e,n,t,(function(e,n){var s=[],i={};(e=JSON.parse(e)).list.forEach((function(e){var t=JSON.parse(e.obj),n=t.id,o=t.time;s.push({userId:n,readTime:o}),i[n]=o}));var c={readerInfo:i,readCount:s.length,totalCount:n};o._updateReadReceiptInfo(t,c),r({code:a.SUCCESS,data:{list:s,totalMemberCount:n}})}),(function(e){r({code:e})}))}))},t.prototype.joinChatroom=function(e,t){var n=this;return new Promise((function(o,r){n._callCppProxy("clearMessages",d.CHATROOM,e,""),n._callCppProxy("joinChatRoom",e,t,(function(){o(a.SUCCESS)}),o)}))},t.prototype.joinExistChatroom=function(e,t){throw new Error("Method not implemented.")},t.prototype.quitChatroom=function(e){var t=this;return new Promise((function(n,o){t._callCppProxy("quitChatRoom",e,(function(){n(a.SUCCESS)}),n)}))},t.prototype.getChatroomInfo=function(e,t,n){var o=this;return new Promise((function(r,s){o._callCppProxy("getChatroomInfo",e,t,n,(function(e,t){var n=e?JSON.parse(e).list:[],o=[];if(n.length>0)for(var s=0;s<n.length;s++)o.push(JSON.parse(n[s].obj));r({code:a.SUCCESS,data:{userInfos:o,userCount:t}})}),(function(e){r({code:e})}))}))},t.prototype.getChatroomHistoryMessages=function(e,t,n,o){var r=this;return new Promise((function(s,i){r._callCppProxy("getChatroomHistoryMessage",e,t,n,o,(function(e){var t;try{t=JSON.parse(e)}catch(e){t={list:[]}}var n=t.list;if(n&&n.length)try{t.list=n.map((function(e){return r._buildMessage(e.obj)}))}catch(e){t.list=[]}s({code:a.SUCCESS,data:t})}),(function(e){s({code:e})}),"")}))},t.prototype.setChatroomEntry=function(e,t){var n=this;return new Promise((function(o,r){var s='[{"key":"'.concat(t.key,'", "value":"').concat(t.value,'"}]');n._callCppProxy("setChatroomKV",e,s,!!t.isAutoDelete,!!t.isOverwrite,(function(){o(a.SUCCESS)}),(function(e){o(e)}))}))},t.prototype.setChatroomEntries=function(e,t){var n=this;return new Promise((function(o){n._callCppProxy("setChatroomKV",e,JSON.stringify(t.entries),!!t.isAutoDelete,!!t.isOverwrite,(function(){o({code:a.SUCCESS})}),(function(e){o({code:e})}))}))},t.prototype.forceSetChatroomEntry=function(e,t){return t.isOverwrite=!0,t.userId=t.userId||this._currentUserId,this.setChatroomEntry(e,t)},t.prototype.removeChatroomEntry=function(e,t){var n=this,o=[t.key];return new Promise((function(r,s){n._callCppProxy("deleteChatroomKV",e,o,!!t.isOverwrite,(function(){r(a.SUCCESS)}),(function(e){r(e)}))}))},t.prototype.forceRemoveChatroomEntry=function(e,t){return t.isOverwrite=!0,t.userId=t.userId||this._currentUserId,this.removeChatroomEntry(e,t)},t.prototype.removeChatroomEntries=function(e,t){var n=this;return new Promise((function(o){var r=t.entries.map((function(e){return e.key}));n._callCppProxy("deleteChatroomKV",e,r,!!t.isOverwrite,(function(){o({code:a.SUCCESS})}),(function(e){o({code:e})}))}))},t.prototype.getChatroomEntry=function(e,t){return F(this,void 0,void 0,(function(){var n;return j(this,(function(o){switch(o.label){case 0:return[4,this.getAllChatroomEntry(e)];case 1:return(n=o.sent()).code===a.SUCCESS?[2,{code:a.SUCCESS,data:n.data?n.data[t]:null}]:[2,{code:n.code}]}}))}))},t.prototype.getAllChatroomEntry=function(e){var t=this;return new Promise((function(n,o){t._callCppProxy("getChatroomKV",e,(function(e){var t={};try{(e?JSON.parse(e):{list:[]}).list.map((function(e){return JSON.parse(e.obj)})).forEach((function(e){t[e.key]=e.value?e.value:""}))}catch(e){}n({code:a.SUCCESS,data:t})}),(function(e){n({code:e})}))}))},t.prototype.getFileToken=function(e,t,n,o){var r=this;return n=n||"",o=o||"",new Promise((function(s){var i;i=o&&"uploads"!==o?t||"":T(e,t),r._callCppProxy("getUploadToken",e,i,n,o,(function(e,t,n,o,r,c,u,l,p,d,f,_,h,v,g,C,S,y){s({code:a.SUCCESS,data:{token:e,deadline:0,bosToken:t,bosDate:n,path:o,osskeyId:r,ossPolicy:c,ossSign:u,ossBucketName:l,fileName:i,s3Credential:p,s3Algorithm:d,s3Date:f,s3Policy:_,s3Signature:h,s3BucketName:v,stcAuthorization:g,stcContentSha256:C,stcDate:S,stcBucketName:y}})}),(function(e){s({code:e})}))}))},t.prototype.getFileUrl=function(e,t,n,o){var r=this;return new Promise((function(s){r._callCppProxy("getDownloadUrl",e,n,o,t-1,(function(e){s({code:a.SUCCESS,data:{downloadUrl:e}})}),(function(e){s({code:e})}))}))},t.prototype.clearData=function(){var e=this;return new Promise((function(t,n){var o=e._callCppProxy("clearData");t({code:a.SUCCESS,data:o})}))},t.prototype.getDeviceId=function(){var e=this._dbpath||o(I.getPath("userData"));return oe(e)},t.prototype.getVoIPKey=function(e,t){var n=this;return new Promise((function(o,r){n._callCppProxy("getVoIPKey",e,t,"",(function(e){o({code:a.SUCCESS,data:e})}),(function(e){o({code:e})}))}))},t.prototype.bindRTCRoomForChatroom=function(e){var t=this;return new Promise((function(n,o){var r=e.chatRoomId,s=e.rtcRoomId;t._callCppProxy("bindRTCRoomForChatroom",r,s,(function(){n(a.SUCCESS)}),(function(e){n(e)}))}))},t.prototype.getGroupMessageDeliverList=function(e,t,n){var o=this;return new Promise((function(r,s){o._callCppProxy("getGroupMessageDeliverList",e,n,t,(function(e,t){var n=JSON.parse(e).list.map((function(e){return{time:JSON.parse(e.obj).time,userId:JSON.parse(e.obj).id}}));r({code:a.SUCCESS,data:{totalCount:t,list:n}})}),(function(e){r({code:e})}))}))},t.prototype.getPrivateMessageDeliverTime=function(e,t){var n=this;return new Promise((function(o,r){var s=n._callCppProxy("getMessageDeliverTime",e);if(s)o({code:a.SUCCESS,data:s});else{n._callCppProxy("getPrivateMessageDeliverList",t,e,(function(e){var t=0,n=JSON.parse(e).list;n.length>0&&(t=JSON.parse(n[0].obj).time);o({code:a.SUCCESS,data:t})}),(function(e){o({code:e})}))}}))},t.prototype.rtcSignaling=function(e,t,n,o){var r=this,s=Array.prototype.slice.call(new Uint8Array(o));return new Promise((function(o){r._callCppProxy("rtcSignaling",e,t,n,s,(function(e){var t=new Uint8Array(e).buffer;o({code:a.SUCCESS,buffer:t})}),(function(e){o({code:e})}))}))},t.prototype._setRTCHeartbeatListener=function(){var e=this;this._cppProtocol.setRTCHeartbeatListener((function(t,n){var o=e.rtcHeartbeatResolves[t];if(o){var r=o.find((function(e){return""===e.seqId}));r&&(r.seqId=n)}}),(function(t,n,o,r){var s=e.rtcHeartbeatResolves[t];if(s){var i=s.findIndex((function(e){return e.seqId===o}));-1!==i&&s.splice(i,1)[0].resolve({code:n,data:{version:Number(r)}})}}))},t.prototype.rtcPing=function(e,t,n){var o=this;return new Promise((function(t){var n={resolve:t,seqId:""},r=o.rtcHeartbeatResolves[e];r?r.push(n):o.rtcHeartbeatResolves[e]=[n],o._callCppProxy("sendRTCHeartbeat",[e])}))},t.prototype.createTag=function(e){var t=this;return new Promise((function(n,o){t._callCppProxy("addTag",e.tagId,e.tagName,(function(){n({code:a.SUCCESS})}),(function(e){n({code:e})}))}))},t.prototype.removeTag=function(e){var t=this;return new Promise((function(n,o){t._callCppProxy("deleteTag",e,(function(){n({code:a.SUCCESS})}),(function(e){n({code:e})}))}))},t.prototype.updateTag=function(e){var t=this;return new Promise((function(n,o){t._callCppProxy("renameTag",e.tagId,e.tagName,(function(){n({code:a.SUCCESS})}),(function(e){n({code:e})}))}))},t.prototype.getTagList=function(){var e=this;return new Promise((function(t,n){var o=e._callCppProxy("getTags"),r=e._convertResultList(o,(function(e){return{tagId:e.tagId,tagName:e.tagName,conversationCount:e.conversationCount,createdTime:e.tagTime}}));t({code:a.SUCCESS,data:r})}))},t.prototype.addTagForConversations=function(e,t){var n=this;return new Promise((function(o,r){t.forEach((function(e){e.conversationType&&(e.type=e.conversationType)}));n._callCppProxy("addConversationsForTag",e,JSON.stringify(t),(function(){o({code:a.SUCCESS})}),(function(e){o({code:e})}))}))},t.prototype.removeTagForConversations=function(e,t){var n=this;return new Promise((function(o,r){t.forEach((function(e){e.conversationType&&(e.type=e.conversationType)})),n._callCppProxy("removeConversationsForTag",e,JSON.stringify(t),(function(){o({code:a.SUCCESS})}),(function(e){o({code:e})}))}))},t.prototype.removeTagsForConversation=function(e,t){var n=this;return new Promise((function(o,r){n._callCppProxy("removeTagsForConversation",e.conversationType,e.targetId,e.channelId||"",t,(function(){o({code:a.SUCCESS})}),(function(e){o({code:e})}))}))},t.prototype.getConversationListByTag=function(e,t,n,o){var r=this;return new Promise((function(s){var i=r._callCppProxy("getConversationsForTagByPage",e,t,n||20,o||""),c=r._convertResultList(i,(function(e){return B(B({},r._buildConversation(JSON.stringify(e))),{isTopInTag:e.topForTag})}));s({code:a.SUCCESS,data:c})}))},t.prototype.getUnreadCountByTag=function(e,t){var n=this;return new Promise((function(o,r){var s=n._callCppProxy("getConversationUnreadCountForTag",e,t);o({code:a.SUCCESS,data:s})}))},t.prototype.setConversationStatusInTag=function(e,t,n){var o=this;return new Promise((function(r,s){o._callCppProxy("setConversationToTopForTag",e,t.conversationType,t.targetId,t.channelId||"",n.isTop||!1,(function(){r({code:a.SUCCESS})}),(function(e){r({code:e})}))}))},t.prototype.getTagsForConversation=function(e){var t=this;return new Promise((function(n,o){var r=t._callCppProxy("getTagsForConversation",e.conversationType,e.targetId,e.channelId||""),s=t._convertResultList(r,(function(e){return{tagId:e.tagId,tagName:e.tagName,isTop:e.isTop,createdTime:e.tagTime}}));n({code:a.SUCCESS,data:s})}))},t.prototype.getBlockConversationList=function(){throw new Error("Method not implemented.")},t.prototype.getTopConversationList=function(){throw new Error("Method not implemented.")},t.prototype.getUnreadMentionedCount=function(e){throw new Error("Method not implemented.")},t.prototype.getAllUnreadMentionedCount=function(){throw new Error("Method not implemented.")},t.prototype.getOSInfo=function(){return F(this,void 0,void 0,(function(){var t;return j(this,(function(n){return t={arch:e.arch(),platform:e.platform(),type:e.type(),version:e.version(),release:e.release(),uptime:e.uptime(),cpus:e.cpus(),freemem:e.freemem(),totalmem:e.totalmem(),networkInterfaces:e.networkInterfaces()},[2,{code:a.SUCCESS,data:t}]}))}))},t.prototype.getMainProcessInfo=function(){return F(this,void 0,void 0,(function(){return j(this,(function(e){return[2,{code:a.SUCCESS,data:{title:process.title,pid:process.pid,ppid:process.ppid,platform:process.platform,arch:process.arch,uptime:process.uptime(),cpuUsage:process.cpuUsage(),memoryUsage:process.memoryUsage(),resourceUsage:process.resourceUsage()}}]}))}))},t.prototype.setCallInfo=function(e,t,n){var o=this;return new Promise((function(r){o._callCppProxy("callInfoSignaling",e,t,n,(function(e,t){r({code:a.SUCCESS,data:{key:e,value:t}})}),(function(e){r({code:e})}))}))},t}(),le=function(){function e(e,t,n,o){void 0===n&&(n=""),void 0===o&&(o=!1),this._cppService=new ue(e,t,n,o)}return e.prototype.getCppProto=function(){var e=this;return{destroy:function(){e._cppService.destroy()}}},e.prototype.destroy=function(){this._cppService.destroy()},e.prototype.getDeviceId=function(){return this._cppService.getDeviceId()},e.prototype.getServerTime=function(){return this._cppService.getServerTime()},e.prototype.__createLogger=function(e,t){return this._cppService.createLogger(e,t)},e}(),pe=function(e){return function(e,t,n){if(ce)return ce;if(!t)throw new Error("Initializ failed, `appkey` is required!");return ce=new le(t,e,null==n?void 0:n.dbpath,null==n?void 0:n.reconnectKickEnable)}(J,e.appkey,e)};export{pe as default};
|
|
1
|
+
import*as e from"os";import{platform as t,arch as n}from"os";import{resolve as o}from"path";import{getUUID as r,BasicLogger as s,appendUrl as i,HTTP_TIMEOUT as a,StoreKeys as c,BasicReporter as u,LogTagId as p,ConnectionStatus as l,ErrorCode as d,ConversationType as f,SEND_MESSAGE_TYPE_OPTION as _,isObject as h,isUndefined as v,pushJSONToConfigs as g,MessageDirection as C,NotificationStatus as S,MessageType as y,pushConfigsToJSON as m,MentionedType as P,ReceivedStatus as E,isArray as I,getUploadFileName as T}from"@rongcloud/engine";import{fork as R}from"child_process";import{app as N,ipcMain as O}from"electron";import{existsSync as M,readFileSync as U,writeFileSync as b,mkdirSync as L}from"fs";import{request as w}from"http";import{Agent as x,request as A}from"https";import{createHash as D}from"crypto";var J=process.versions.electron.replace(/\.\d+$/,""),k=o(__dirname,"binding","electron-v".concat(J,"-").concat(t(),"-").concat(n(),".node")),H={addon:null};try{H.addon=require(k)}catch(e){console.error("error ->",k,"\n",e)}var B=H.addon,j=function(e,t){return j=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},j(e,t)};function F(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=e}j(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}var G,q=function(){return q=Object.assign||function(e){for(var t,n=1,o=arguments.length;n<o;n++)for(var r in t=arguments[n])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e},q.apply(this,arguments)};function V(e,t,n,o){return new(n||(n=Promise))((function(r,s){function i(e){try{c(o.next(e))}catch(e){s(e)}}function a(e){try{c(o.throw(e))}catch(e){s(e)}}function c(e){var t;e.done?r(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(i,a)}c((o=o.apply(e,t||[])).next())}))}function K(e,t){var n,o,r,s,i={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return s={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(s[Symbol.iterator]=function(){return this}),s;function a(a){return function(c){return function(a){if(n)throw new TypeError("Generator is already executing.");for(;s&&(s=0,a[0]&&(i=0)),i;)try{if(n=1,o&&(r=2&a[0]?o.return:a[0]?o.throw||((r=o.return)&&r.call(o),0):o.next)&&!(r=r.call(o,a[1])).done)return r;switch(o=0,r&&(a=[2&a[0],r.value]),a[0]){case 0:case 1:r=a;break;case 4:return i.label++,{value:a[1],done:!1};case 5:i.label++,o=a[1],a=[0];continue;case 7:a=i.ops.pop(),i.trys.pop();continue;default:if(!(r=i.trys,(r=r.length>0&&r[r.length-1])||6!==a[0]&&2!==a[0])){i=0;continue}if(3===a[0]&&(!r||a[1]>r[0]&&a[1]<r[3])){i.label=a[1];break}if(6===a[0]&&i.label<r[1]){i.label=r[1],r=a;break}if(r&&i.label<r[2]){i.label=r[2],i.ops.push(a);break}r[2]&&i.ops.pop(),i.trys.pop();continue}a=t.call(e,i)}catch(e){a=[6,e],o=0}finally{n=r=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}([a,c])}}}function W(e,t,n){if(n||2===arguments.length)for(var o,r=0,s=t.length;r<s;r++)!o&&r in t||(o||(o=Array.prototype.slice.call(t,0,r)),o[r]=t[r]);return e.concat(o||Array.prototype.slice.call(t))}!function(e){e.P_INIT_O="P-init-O",e.P_DB_OPEN_O="P-db_open-O",e.P_CALL_MAIN_SYNC_E="P-call_main_sync-E",e.P_CALL_MAIN_E="P-call_main-E",e.P_SEND_2_MAIN_E="P-send_2_main-E",e.P_REGTYP_O="P-regtype-O",e.P_CALL_ADDON_E="P-call_addon-E",e.P_CALL_EXTRA_E="P-call_extra-E",e.P_CONNECT_S="P-connect-S",e.P_CONNECT_O="P-connect-O",e.P_REPORT_VER_O="P-report_version-O",e.P_PARSE_JSON_MSGS_E="P-parse_json_messsages-E",e.P_HTTP_REQ_E="P-http_request-E",e.P_SET_MSG_EXTEN_O="P-set_msg_extension-O",e.P_SEND_MSG_T="P-send_msg-T",e.P_SEND_MSG_R="P-send_msg-R",e.P_WRITE_LOG_T="P_WRITE_LOG_T",e.P_WRITE_LOG_R="P_WRITE_LOG_R"}(G||(G={}));var Y,X={flushTimestamp:Date.now(),queue:[],locked:!1};function Q(e,t){Y&&clearInterval(Y),Y=setInterval((function(){return $(e,t)}),1e4)}function z(){for(var e,t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];(e=X.queue).push.apply(e,t)}function $(e,t){var n=X.queue,o=X.flushTimestamp;if(!(X.locked||0===n.length||Date.now()-o<3e4&&n.length<200)){X.locked=!0;var r=t.createTraceId(),s=n.splice(0,200).map((function(e){var t=e.sessionId,n=e.level,o=e.time,r=e.type,s=e.tag,i=e.loggerId,a=e.content,c=e.traceId;return{level:n,time:o,type:r,tag:s,content:encodeURIComponent(JSON.stringify({loggerId:i,sessionId:t,content:a,traceId:c})).replace(/'/g,"%27")}}));t.debug(G.P_WRITE_LOG_T,"writingLen: ".concat(s.length,", queueLen: ").concat(n.length),r);var i=JSON.stringify(s);e.writeLog(i),t.debug(G.P_WRITE_LOG_R,"write done, queueLen: ".concat(n.length),r),X.flushTimestamp=Date.now(),X.locked=!1,setTimeout((function(){return $(e,t)}))}}var Z=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return F(t,e),t.prototype.flush=function(e){z(e)},t}(s);function ee(e,t,n){void 0===n&&(n=!1);var o=t.url,r=t.headers,s=t.body,c=t.method,u=t.query,p=t.timeout,l=void 0===p?a:p;return new Promise((function(t){var a=/^https/.test(o),p={headers:r,method:c};a&&(p.rejectUnauthorized=n,p.agent=new x(p));var d=(a?A:w)(i(o,u),p,(function(e){var n=e.statusCode,o="";e.setEncoding("utf8"),e.on("data",(function(e){o+=e})),e.once("end",(function(){t({status:n||0,data:o})}))}));d.once("timeout",(function(){e.warn(G.P_HTTP_REQ_E,JSON.stringify({msg:"timeout",url:o,method:c,query:u,timeout:l})),t({status:0})})),d.setTimeout(l),d.once("error",(function(n){e.warn(G.P_HTTP_REQ_E,JSON.stringify({msg:n.stack,url:o,method:c,query:u,timeout:l})),t({status:0})})),d.write(s),d.end()}))}var te,ne=[],oe=!1,re=function(){return V(void 0,void 0,void 0,(function(){var e,t,n,o,r,s,i,a,c;return K(this,(function(u){return oe||0===ne.length||(oe=!0,e=ne.shift(),t=e.args,n=e.resolve,o=t.addon,r=t.startTime,s=t.endTime,i=t.level,a=t.realtimeReport,c=[],o.setLogEventListener((function(e){var t=e.split(","),n=t[0],o=t[1],r=t[2],s=t[3],u=t[4],p=t.slice(5);try{var l=JSON.parse(decodeURIComponent(p.join(","))),d=l.loggerId,f=l.sessionId,_=l.content,h=l.traceId;if(!a&&i<0)return;var v={time:parseInt(o,10),level:parseInt(s,10),sessionId:"".concat(n,":").concat(f),type:r,tag:u,loggerId:d,content:_,traceId:h};c.push(v)}catch(e){console.error(e)}}),(function(e){n(c),oe=!1,re()}),(function(e,t,n){})),o.pullFullLog(i,r,s,!1)),[2]}))}))},se=function(e){function t(t,n,o,r,s){var i=this,a=process.versions.electron,u="Electron|".concat(a,"|").concat(process.arch,"|").concat(process.platform);return i=e.call(this,n,o,u,{getLogs:function(e,n,o,r){return V(this,void 0,void 0,(function(){return K(this,(function(s){switch(s.label){case 0:return[4,(i={startTime:e,endTime:n,level:o,realtimeReport:r,addon:t},V(void 0,void 0,void 0,(function(){return K(this,(function(e){return[2,new Promise((function(e){ne.push({resolve:e,args:i}),re()}))]}))})))];case 1:return[2,{logs:s.sent(),dbReady:!0}]}var i}))}))},getTimestamp4RealtimeLog:function(){var e=t.getStoreValue(c.REALTIME_LOG_TIMESTAMP);return parseInt(e,10)||0},setTimestamp4RealtimeLog:function(e){t.setStoreValue(c.REALTIME_LOG_TIMESTAMP,e.toString())}},r)||this,i.subProcess=s,i}return F(t,e),t.prototype.send=function(e){return ee(this.logger,e)},t.prototype.compressLogs=function(e){return V(this,void 0,void 0,(function(){var t,n,o;return K(this,(function(r){switch(r.label){case 0:return[4,this.subProcess.call("compressLogs",e)];case 1:return t=r.sent(),n=t.success,o=t.data,n?[2,{success:n,data:o}]:[2,{success:n,data:""}]}}))}))},t}(u),ie=null,ae=function(){var e,o=Date.now(),r=[n(),t(),process.pid,o,Math.floor(Math.random()*o)].join("__");return e=r,D("md5").update(e).digest("hex")},ce=function(e){if(ie)return ie;var t=o(e,"deviceId");return M(t)?ie=U(t).toString():(ie=ae(),b(t,ie),ie)},ue=function(){function e(e,t){this._hasPingRes=e,this._reconnect=t,this._timerId=0,this._isFirstPing=!0,this._lossCount=0}return e.init=function(t,n){return te?(te.stop(),te):te=new e(t,n)},e.prototype.start=function(e){var t=this,n=this._isFirstPing?0:15e3;this._timerId=setTimeout((function(){return t._isFirstPing=!1,t._hasPingRes?(e(),t._hasPingRes=!1,t.start(e)):t._lossCount<4?(t._lossCount++,e(),t.start(e)):void t._reconnect()}),n)},e.prototype.stop=function(){this._lossCount=0,clearTimeout(this._timerId)},e.prototype.setHeartbeatRes=function(){this._hasPingRes=!0,this._lossCount=0},e}(),pe=function(){function e(e){this._cppProto=e,this._setTime=15962112e5}return e.prototype._setToProtocol=function(e,t,n,o,r,s){var i=JSON.stringify(r);"{}"!==i&&e.info(G.P_SET_MSG_EXTEN_O,JSON.stringify({messageUId:o,ext:r})),this._cppProto.setMessageExtension(t,n,o,i,s)},e.prototype.setLocalFromReceiveMsg=function(e,t){var n=t.channelId,o=t.conversationType,r=t.targetId,s=t.messageUId,i=t.expansion,a=t.sentTime,c={};for(var u in i)c[u]={v:"",ts:0},c[u].v=i[u],c[u].ts=a;this._setToProtocol(e,o,r,s,c,n||"")},e.prototype.setLocalFromExtMsg=function(e,t){var n=t.channelId,o=t.conversationType,r=t.targetId;t.messageUId;var s=t.content,i=t.sentTime,a=s,c=a.put,u=this._cppProto.getMessage(a.mid),p=JSON.parse(u).extMsg,l=JSON.parse(p||"{}");if(c)for(var d in c){var f=l[d];f&&f.ts<i-this._setTime?(f.v=c[d],f.ts=i-this._setTime):(l[d]={v:"",ts:0},l[d].v=c[d],l[d].ts=i-this._setTime)}a.del&&a.del.forEach((function(e){delete l[e]})),this._setToProtocol(e,o,r,a.mid,l,n||"")},e.prototype.parseReceiveExpansion=function(e){var t=JSON.parse(e.extMsg||"{}"),n={};for(var o in t)n[o]=t[o].v;return n},e.prototype.parseConverOrHisExpansion=function(e){var t=JSON.parse(e.extMsg),n=JSON.parse(t||"{}"),o={};for(var r in n)o[r]=n[r].v;return o},e}(),le=null;function de(e,t,n,o,r){return void 0===r&&(r=!0),V(this,void 0,void 0,(function(){var s;return K(this,(function(i){switch(i.label){case 0:return le?[2,le]:(le=function(e,t,n,o,r){return void 0===r&&(r=!0),V(this,void 0,void 0,(function(){var s,i,a,c,u,l,d;return K(this,(function(f){switch(f.label){case 0:s="token=".concat(encodeURIComponent(o),"&v=").concat((_="5.6.0",_.match(/\d+(\.\d+){2}/)[0]),"&p=PC&ev=").concat("5.6.0"),i=0,a=t.length,f.label=1;case 1:return i<a?(c="".concat(t[i],"/navi.json?r=").concat(Date.now()),e.info(p.O,"request navi -> url: ".concat(c,", body: ").concat(s)),[4,ee(e,{method:"POST",headers:{appId:n},body:s,url:c},r)]):[3,4];case 2:if(200!==(u=f.sent()).status)return e.error("request navi failed -> ".concat(c)),u.data&&e.error(u.data),[3,3];e.info(p.O,"request navi success -> ".concat(c));try{return l=JSON.parse(u.data),d=/^https/.test(c)?"https":"http",l.protocol=d,[2,l]}catch(t){e.error("parse navi err => ".concat(u.data))}f.label=3;case 3:return i+=1,[3,1];case 4:return[2,null]}var _}))}))}(e,t,n,o,r),[4,le]);case 1:return s=i.sent(),le=null,[2,s]}}))}))}var fe,_e=function(){function e(e){var t=this;this.p=e,this.count=0,this.maps={},this.p.on("message",(function(e){var n=e.reqId,o=e.success,r=e.data,s=t.maps[n];s&&(s({success:o,data:r}),delete t.maps[n])}))}return e.prototype.call=function(e){for(var t=this,n=[],o=1;o<arguments.length;o++)n[o-1]=arguments[o];return new Promise((function(o){var r=++t.count;t.maps[r]=o;var s={reqId:r,method:e,args:n};t.p.send(s)}))},e}(),he=function(e){if(!M(e)){var t=o(e,"..");M(t)||he(t),L(e)}},ve=function(){function t(e,t,n,s){var i=this;this._appkey=e,this._cppProtocol=t,this._dbpath=n,this._reconnectKickEnable=s,this._currentToken="",this._connectionStatus=l.DISCONNECTED,this._promiseHandler={},this._customMessageType={},this._connectedTime=0,this._currentUserId="",this._naviInfo=null,this._version="5.6.0",this._senders={},this.rtcHeartbeatResolves={};var a=this._dbpath||o(N.getPath("userData")),c=ce(a);this._cppProtocol.initWithAppkey(e,a,this._version.replace(/-.*/,""));var u=R(o(__dirname,"sub-process.js"));this.subProxy=new _e(u);var p=o(a,"RongCloud/rclogs",e);he(p),function(e,t,n){n.initLogModule(t,e,r())}(e,p,this._cppProtocol),this.logger=new Z(this._appkey,"RC-M","IM"),Q(this._cppProtocol,this.logger),this.reporter=new se(this._cppProtocol,e,c,this.logger,this.subProxy),this.logger.info(G.P_INIT_O,JSON.stringify({appkey:e,dbpath:a,proto_commit:this._cppProtocol.getNodeVersion(),deviceId:c,commit:"6c29872ce3b2c278ea6be6a73043dc71c366888b"})),this._callCppProxy("setDeviceId",c),this._registerMsgTypes(),this._setConnectionStatusListener(),this._setOnReceiveMessageListener(),this._setConversationStatusListener(),this._setUserProfileListener(),this._setRTCHeartbeatListener(),this._setRTCLivingRoomEventListener(),this._setChatroomEventListener(),this._setCallInfoListener(),O.on("__RC_CHANNEL_CALL_MAIN_SYNC__",(function(e,t){for(var n=[],o=2;o<arguments.length;o++)n[o-2]=arguments[o];return V(i,void 0,void 0,(function(){var o,r,s;return K(this,(function(i){switch(i.label){case 0:if("function"!=typeof(o=this[t]))return this.logger.error(G.P_CALL_MAIN_SYNC_E,JSON.stringify({method:t,error:"not found"})),e.returnValue=d.NOT_SUPPORT,[2];r=d.EXTRA_METHOD_UNDEFINED,i.label=1;case 1:return i.trys.push([1,3,,4]),[4,o.call.apply(o,W([this],n,!1))];case 2:return r=i.sent(),[3,4];case 3:return s=i.sent(),this.logger.error(G.P_CALL_MAIN_SYNC_E,JSON.stringify({error:null==s?void 0:s.stack,method:t})),[3,4];case 4:return e.returnValue=r,[2]}}))}))})),O.on("__RC_CHANNEL_CALL_MAIN__",(function(e,t,n){for(var o=[],r=3;r<arguments.length;r++)o[r-3]=arguments[r];return V(i,void 0,void 0,(function(){var r,s,i,a,c=this;return K(this,(function(u){switch(u.label){case 0:if("function"!=typeof(r=this[n]))return this.logger.error(G.P_CALL_MAIN_E,JSON.stringify({method:n,error:"not found"})),this._send2Renderer(e.sender,"__RC_CHANNEL_RESULT_FROM_MAIN__",t,d.NOT_SUPPORT),[2];"sendMessage"===n&&(s=o[3],o[3]=function(t){c._send2Renderer(e.sender,"__RC_CHANNEL_RESULT_FROM_MAIN__",s,t)}),i=d.EXTRA_METHOD_UNDEFINED,u.label=1;case 1:return u.trys.push([1,3,,4]),[4,r.call.apply(r,W([this],o,!1))];case 2:return i=u.sent(),[3,4];case 3:return a=u.sent(),this.logger.error(G.P_CALL_MAIN_E,JSON.stringify({error:null==a?void 0:a.stack,method:n})),[3,4];case 4:return this._send2Renderer(e.sender,"__RC_CHANNEL_RESULT_FROM_MAIN__",t,i),[2]}}))}))})),O.on("__RC_CHANNEL_SEND_2_MAIN__",(function(e,t){for(var n=[],o=2;o<arguments.length;o++)n[o-2]=arguments[o];var r=i[t];if("function"==typeof r)try{r.call.apply(r,W([i],n,!1))}catch(e){i.logger.error(G.P_SEND_2_MAIN_E,JSON.stringify({error:null==e?void 0:e.stack,method:t}))}else i.logger.error(G.P_SEND_2_MAIN_E,JSON.stringify({method:t,error:"not found"}))})),O.on("__RC_INNER_COMMAND_INIT__",this._registerRenderers.bind(this)),this._msgExpansionHandler=new pe(this._cppProtocol)}return t.prototype._callCppProxy=function(e){for(var t,n=[],o=1;o<arguments.length;o++)n[o-1]=arguments[o];var r=this.logger.createTraceId();try{var s=(t=this._cppProtocol)[e].apply(t,n);return s}catch(t){this.logger.error(G.P_CALL_ADDON_E,JSON.stringify({stack:null==t?void 0:t.stack,method:e}),r)}},t.prototype.sendHTTPRequest=function(e){return ee(this.logger,e)},t.prototype.onRendererLogsReceived=function(e){z.apply(void 0,e)},t.prototype.getCppProto=function(){var e=this;return{destroy:function(){e._cppProtocol.destroy()}}},t.prototype.destroy=function(){this._cppProtocol.destroy()},t.prototype.callExtra=function(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];var o=this[e];if(!o)return this.logger.warn(G.P_CALL_EXTRA_E,JSON.stringify({method:e,error:"not found"})),Promise.resolve({code:d.EXTRA_METHOD_UNDEFINED});try{var r=o.call.apply(o,W([this],t,!1));return r}catch(t){this.logger.error(G.P_CALL_EXTRA_E,JSON.stringify({error:null==t?void 0:t.stack,method:e}))}return Promise.resolve({code:d.MAIN_PROCESS_ERROR})},t.prototype.getConversationsByPage=function(e,t,n,o){var r,s=this,i=this._callCppProxy("getConversationListByPage",e,t,n,o||"");try{r=JSON.parse(i).list.map((function(e){return s._buildConversation(e.obj)}))}catch(e){return Promise.resolve({code:d.MAIN_PROCESS_ERROR})}return Promise.resolve({code:d.SUCCESS,data:r})},t.prototype.getConversationListWithAllChannel=function(){var e,t=this,n=[f.PRIVATE,f.GROUP],o=this._callCppProxy("getConversationListWithAllChannel",n);try{e=JSON.parse(o).list.map((function(e){return t._buildConversation(e.obj)}))}catch(e){return Promise.resolve({code:d.MAIN_PROCESS_ERROR})}return Promise.resolve({code:d.SUCCESS,data:e})},t.prototype.getConversationListWithAllChannelByPage=function(e,t){var n,o=this,r=[f.PRIVATE,f.GROUP],s=this._callCppProxy("getConversationListWithAllChannelByPage",r,e,t);try{n=JSON.parse(s).list.map((function(e){return o._buildConversation(e.obj)}))}catch(e){return Promise.resolve({code:d.MAIN_PROCESS_ERROR})}return Promise.resolve({code:d.SUCCESS,data:n})},t.prototype.getHistoryMessagesByObjectNames=function(e,t,n,o,r,s,i){var a=0===s,c=o+1,u=this._callCppProxy("getHistoryMessagesByObjectNames",e,t,n,c,r,a,i||""),p=[];try{var l=JSON.parse(u).list;l.reverse();for(var f=0;f<l.length;f++){var _=this._buildMessage(l[f].obj);p[f]=_}}catch(e){return Promise.resolve({code:d.MAIN_PROCESS_ERROR})}return Promise.resolve({code:d.SUCCESS,data:{list:c===p.length?p.slice(1,c):p,hasMore:o<p.length}})},t.prototype.updateMessageReceiptStatus=function(e,t,n,o){void 0===o&&(o="");var r=this._callCppProxy("updateMessageReceiptStatus",e,t,n,o);return Promise.resolve({code:d.SUCCESS,data:r})},t.prototype.requestNaviInfo=function(e,t,n,o){return V(this,void 0,void 0,(function(){var r;return K(this,(function(s){switch(s.label){case 0:return[4,de(this.logger,e,t,n,o)];case 1:return(r=s.sent())&&(this._naviInfo=r),[2,r]}}))}))},t.prototype.getNaviInfoFromCache=function(){return this._naviInfo?q({},this._naviInfo):null},t.prototype.createLogger=function(e,t){return/^RC/.test(e)?null:new Z(this._appkey,e,t)},t.prototype.getConnectedTime=function(){return this._connectedTime},t.prototype.getServerTime=function(){return Date.now()-this._cppProtocol.getDeltaTime()},t.prototype.getCurrentUserId=function(){var e;return(null===(e=this._naviInfo)||void 0===e?void 0:e.userId)||""},t.prototype._send2Renderer=function(e,t){for(var n=[],o=2;o<arguments.length;o++)n[o-2]=arguments[o];e.isDestroyed()?delete this._senders[e.id]:e.send.apply(e,W([t],n,!1))},t.prototype._send2AllRenderer=function(e,t,n){var o=this;void 0===n&&(n=[]),Object.keys(this._senders).forEach((function(r){var s=o._senders[r];n.includes(s)||o._send2Renderer(s,"__RC_CHANNEL_NOTIFICATION_FROM_MAIN__",e,t)}))},t.prototype._registerRenderers=function(e){var t=this,n=e.sender,o=n.id;this._senders[o]||(this._senders[o]=n,n.once("destroyed",(function(){delete t._senders[o]})))},t.prototype._registerMsgTypes=function(){for(var e in _["RC:RcCmd"]={isCounted:!1,isPersited:!1},_){var t=_[e],n=t.isCounted,o=t.isPersited,r=t.searchProps,s=0;o&&(s|=1),n&&(s|=2),"RC:TypSts"===e&&(s=16),this._callCppProxy("registerMessageType",e,s,r)}},t.prototype._buildMessage=function(e,t){void 0===t&&(t={});var n=t.isOffLineMessage,o=t.buildFrom,r=JSON.parse(e),s=r.channelId,i=r.conversationType,a=r.targetId,c=r.senderUserId,u=r.content,p=r.objectName,l=r.messageUid,d=r.direction,f=r.status;r.source;var S=r.messageId,y=r.sentTime,m=r.readReceiptRequest,P=r.supportExt;r.extMsg;var E,I=r.pushContent,T=r.pushTitle,R=r.pushId,N=r.pushConfig,O=r.templateId,M=r.disableTitle,U=r.forcePushDetail;if(h(u))E=u;else try{E=u?JSON.parse(u):u}catch(e){E=u,this.logger.error(G.P_PARSE_JSON_MSGS_E,JSON.stringify({messageId:S}))}var b={isCounted:!1,isPersited:!1};p in _?b=_[p]:p in this._customMessageType&&(b=this._customMessageType[p]);var L=null;P&&(L=this._msgExpansionHandler.parseReceiveExpansion(r),"conversation"!==o&&"history"!==o||(L=this._msgExpansionHandler.parseConverOrHisExpansion(r)));var w=v(n)?y<this._connectedTime:n,x={};N&&(x=g(this.logger,N,R));var A=q(q({},x),{pushTitle:T,pushContent:I,pushData:I,disablePushTitle:M,forceShowDetailContent:U,templateId:O}),D={channelId:s,conversationType:i,targetId:a,senderUserId:c,content:E||{},messageType:p,messageUId:l||"",messageDirection:d,isOffLineMessage:w,sentTime:y,receivedTime:0,isPersited:b.isPersited,isCounted:b.isCounted,isMentioned:!1,disableNotification:!1,isStatusMessage:!1,canIncludeExpansion:P,expansion:P?L:null,receivedStatus:f,messageId:S,pushConfig:A};if(d===C.RECEIVE?D.receivedStatus=f:d===C.SEND&&(D.sentStatus=f),m){var J=JSON.parse(m),k=J.hasRespond,H=J.readerInfo,B={hasRespond:k,readCount:J.readCount,totalCount:J.totalCount},j=[];if(H)for(var F in H)j.push({userId:F,readTime:H[F]});B.readerList=j,D.readReceiptInfo=B}return D},t.prototype._updateReadReceiptInfo=function(e,t){var n=this._callCppProxy("getMessage",e),o=JSON.parse(n),r=o.readReceiptRequest?JSON.parse(o.readReceiptRequest):{},s=q(q({},r),t);this._callCppProxy("updateReadReceiptRequestInfo",e,JSON.stringify(s))},t.prototype._buildConversation=function(e){var t=JSON.parse(e),n=t.channelId,o=t.conversationType,r=t.targetId,s=t.unreadCount,i=t.lastestMsg,a=t.isTop,c=t.isBlocked,u=t.matchCount,p=c?S.OPEN:S.CLOSE;return{channelId:n,conversationType:o,targetId:r,unreadMessageCount:s,latestMessage:-1===JSON.parse(i).messageId?null:this._buildMessage(i),hasMentioned:!1,mentionedInfo:null,notificationStatus:p,isTop:a,lastUnreadTime:0,matchCount:u}},t.prototype._sendConnectionStatus2Renderer=function(e){this._send2AllRenderer("status",e)},t.prototype._convertResultList=function(e,t){var n=JSON.parse(e).list;return n=n.map((function(e){var n=JSON.parse(e.obj);return t?t(n):n}))},t.prototype._connectResolve=function(e){this._promiseHandler.connect&&this._promiseHandler.connect.length>0&&(this._promiseHandler.connect.forEach((function(t){t.resolve(e)})),delete this._promiseHandler.connect)},t.prototype._setConnectionStatusListener=function(){var e=this;this._cppProtocol.setConnectionStatusListener((function(t){var n,o;switch(e.logger.info(G.P_CONNECT_S,t),t){case 10:o=l.CONNECTING;break;case 31004:setTimeout((function(){e._connectResolve(d.RC_CONN_USER_OR_PASSWD_ERROR)})),o=l.RC_CONN_USER_OR_PASSWD_ERROR;break;case 12:o=l.DISCONNECTED;break;case 13:o=l.BLOCKED,setTimeout((function(){e._connectResolve(d.RC_CONN_USER_BLOCKED)}));break;case 31023:o=l.FORBID_RECONNECT_BY_OTHER_SAME_CLIENT,setTimeout((function(){e._connectResolve(d.RC_DISCONN_SAME_CLIENT_ON_LINE)}));break;case 31029:o=l.USER_LOGOUT;break;case 1:case 9:case 11:case 31011:case 3e4:case 30002:o=l.NETWORK_UNAVAILABLE;break;case 30010:o=l.NETWORK_UNAVAILABLE,setTimeout((function(){e._connectionStatus===l.NETWORK_UNAVAILABLE&&e._doConnect()}),5e3);break;case 0:case 33005:e.reporter.checkStart(e._naviInfo),o=l.CONNECTED,e._connectedTime=Date.now()-e._cppProtocol.getDeltaTime(),setTimeout((function(){e._connectResolve(d.SUCCESS),e._heartbeat=ue.init(!0,e._handleHeartTimeout.bind(e)),e._heartbeat.start(e._sendHeartbeat.bind(e))}));break;case l.KICKED_OFFLINE_BY_OTHER_CLIENT:o=l.KICKED_OFFLINE_BY_OTHER_CLIENT;break;case 31030:o=l.RC_LICENSE_EXPIRED,setTimeout((function(){e._connectResolve(d.RC_LICENSE_EXPIRED)}));break;case 30004:return;case 8:case 31006:case 32061:case 32012:o=l.REDIRECT;break;default:o=t}o!==l.CONNECTED&&(null===(n=e._heartbeat)||void 0===n||n.stop()),e._connectionStatus=o,e._sendConnectionStatus2Renderer(o)}),this._dbOpenCallback.bind(this),(function(){var t;null===(t=e._heartbeat)||void 0===t||t.setHeartbeatRes()}))},t.prototype._handleHeartTimeout=function(){var e,t=this;this._sendConnectionStatus2Renderer(l.NETWORK_UNAVAILABLE),null===(e=this._heartbeat)||void 0===e||e.stop(),setTimeout((function(){return t._doConnect()}),5e3)},t.prototype._dbOpenCallback=function(e){this.logger.info(G.P_DB_OPEN_O,e)},t.prototype._sendHeartbeat=function(){this._cppProtocol.sendHeartbeat()},t.prototype._setOnReceiveMessageListener=function(){var e=this;this._cppProtocol.setOnReceiveMessageListener((function(t,n,o,r){var s,i=e._buildMessage(t,{isOffLineMessage:o}),a=i.messageType;if(a!==y.LOG_COMMAND||"rongcloudsystem"!==i.senderUserId){if(a===y.GROUP_READ_RECEIPT_REQUEST){var c=i.content,u=c.msgId,p=c.rrn,l=c.tmn;e._updateReadReceiptInfo(u,{readCount:p,totalCount:l})}if("RC:MsgExMsg"===a)return e._msgExpansionHandler.setLocalFromExtMsg(e.logger,i),void e._sendMessageExpansion(i);if(i.canIncludeExpansion&&e._msgExpansionHandler.setLocalFromReceiveMsg(e.logger,i),a===y.SYNC_READ_STATUS){if(i.senderUserId!==e._currentUserId)return;e._callCppProxy("clearUnreadCountByTimestamp",i.conversationType,i.targetId,i.content.lastMessageSendTime,i.channelId||"")}var d=!0;if(0!==n||r||(d=!1),a!==y.LOG_COMMAND||"rongcloudsystem"!==i.senderUserId){if(a===y.DELIVERED)return e._callCppProxy("setMessageDeliverTime",JSON.stringify(i.content)),void e._sendMessageDelivered(i.content.map((function(e){return{deliverTime:e.time,messageUId:e.messageUId,objectName:e.objectName,targetId:e.targetId}})));if(a!==y.DELIVERED_MSG){var f=i.conversationType,_=i.targetId;a===y.RECALL&&i.senderUserId===e._currentUserId&&(f=i.content.conversationType||f,_=i.content.targetId||_),e._sendMessageNotification(Object.assign(i,{hasMoreMsg:d,conversationType:f,targetId:_}))}else{var h={totalCount:i.content.tmn,list:null===(s=i.content.dl)||void 0===s?void 0:s.map((function(e){return{MessageUId:e.msgId,deliveryCount:e.drn}}))};e._sendGroupMessageDeliveredStatus(h)}}else{var v=Object.keys(e._senders).map((function(t){return e._senders[t]}));v.length>0&&e._sendMessageNotification(Object.assign(i,{hasMoreMsg:d}),v.slice(1))}}else{var g=i.content,C=g.startTime,S=g.endTime,m=g.platform,P=g.logId,E=g.uri;e.reporter.report(parseInt(C,10),parseInt(S,10),m,E,P,i.messageUId)}}),(function(){e._sendPullOfflineFinished()}))},t.prototype._sendMessageExpansion=function(e,t){void 0===t&&(t=[]);var n=e.channelId,o=e.content,r=o.put,s=o.del,i=o.mid,a={};r&&(a.updatedExpansion={channelId:n,messageUId:i,expansion:r}),s&&(a.deletedExpansion={channelId:n,messageUId:i,deletedKeys:s}),this._send2AllRenderer("expansion",a,t)},t.prototype._sendMessageNotification=function(e,t){void 0===t&&(t=[]),this._send2AllRenderer("batchMessage",e,t)},t.prototype._sendPullOfflineFinished=function(){this._send2AllRenderer("pullFinished",null)},t.prototype._sendMessageDelivered=function(e){this._send2AllRenderer("messageDelivered",e)},t.prototype._sendGroupMessageDeliveredStatus=function(e){this._send2AllRenderer("groupMessageDeliveredStatus",e)},t.prototype._setConversationStatusListener=function(){var e=this;this._cppProtocol.setConversationStatusListener((function(t){var n=JSON.parse(t).list,o=[];n.forEach((function(e){var t=JSON.parse(e.obj),n=t.conversationType,r=t.targetId,s=t.status,i=t.channelId,a={notificationStatus:2,isTop:!1};s.forEach((function(e){var t=JSON.parse(e.item);1===t.type?a.notificationStatus=1===Number(t.value)?S.OPEN:S.CLOSE:a.isTop=1===Number(t.value)})),o.push({channelId:i,conversationType:n,targetId:r,updatedItems:{notificationStatus:{val:a.notificationStatus,time:0},isTop:{val:a.isTop,time:0}}})})),e._send2AllRenderer("conversation",o)}),(function(t){e._send2AllRenderer("conversationTag",t)}))},t.prototype._setUserProfileListener=function(){var e=this;this._cppProtocol.setUserProfileListener((function(){}),(function(t){e._send2AllRenderer("tag",t),e._getRTCProfile()}))},t.prototype._getRTCProfile=function(){var e=this._callCppProxy("getRTCProfile");if(e&&this._naviInfo&&this._naviInfo.voipCallInfo!==e){var t=q(q({},this._naviInfo),{voipCallInfo:e});this._naviInfo=t,this._send2AllRenderer("onNaviDataChange",t)}},t.prototype._setRTCLivingRoomEventListener=function(){var e=this;this._cppProtocol.setRTCRoomEventListener((function(t){var n=new Uint8Array(t).buffer;e._send2AllRenderer("onRTCDataChange",n)}))},t.prototype._setChatroomEventListener=function(){var e=this;this._cppProtocol.setChatroomEventListener((function(t,n){e._send2AllRenderer("chatroom",{chatroomDestroyed:t})}))},t.prototype._setCallInfoListener=function(){var e=this;this._cppProtocol.setCallInfoListener((function(t){e._send2AllRenderer("callInfo",t)}))},t.prototype._clearListener=function(){this._cppProtocol.setOnReceiveMessageListener(),this._cppProtocol.setConnectionStatusListener(),this._cppProtocol.setOnReceiveStatusListener(),this._cppProtocol.setUserProfileListener()},t.prototype.registerMessageType=function(e,t,n,o){var r=0;t&&(r|=1),n&&(r|=2),this._customMessageType[e]={isCounted:n,isPersited:t},this.logger.info(G.P_REGTYP_O,JSON.stringify({type:e,opt:r,search:o})),this._callCppProxy("registerMessageType",e,r,o)},t.prototype.connect=function(e,t,n,o){var r=this;return this.logger.info(G.P_CONNECT_O,JSON.stringify({reconnectKickEnable:n,version:this._version}),o),this._currentToken===e&&this._connectionStatus===l.CONNECTED?(this._sendConnectionStatus2Renderer(this._connectionStatus),Promise.resolve(d.SUCCESS)):(this._currentToken=e,this._naviInfo=t,this._currentUserId=t.userId,this._promiseHandler.connect||this._doConnect(n),new Promise((function(e,t){r._promiseHandler.connect?r._promiseHandler.connect.push({resolve:e,reject:t}):r._promiseHandler.connect=[{resolve:e,reject:t}]})))},t.prototype._doConnect=function(e){var t=v(e)?!!this._reconnectKickEnable:!!e;this._callCppProxy("connectWithToken",this._currentToken,this._version,JSON.stringify(this._naviInfo),t)},t.prototype.reportSDKInfo=function(e){var t,n,o=JSON.stringify(q(q({},e),{"electron-main":"5.6.0"}));this.logger.info(G.P_REPORT_VER_O,o),null===(n=(t=this._cppProtocol).uploadSDKVersion)||void 0===n||n.call(t,o)},t.prototype.disconnect=function(){var e;this.reporter.stop(),this._cppProtocol.disconnect(!0),null===(e=this._heartbeat)||void 0===e||e.stop(),this._connectResolve(d.TIMEOUT)},t.prototype.logout=function(){this.disconnect()},t.prototype.setUserStatusListener=function(e,t){this._cppProtocol.setOnReceiveStatusListener((function(e,n){t({userId:e,status:n})}));var n=e.userIds||[];n.length&&this.subscribeUserStatus(n)},t.prototype.subscribeUserStatus=function(e){var t=this;return new Promise((function(n,o){t._callCppProxy("subscribeUserStatus",e,(function(){n(d.SUCCESS)}),n)}))},t.prototype.setUserStatus=function(e){var t=this;return new Promise((function(n,o){t._callCppProxy("setUserStatus",e,(function(){n(d.SUCCESS)}),n)}))},t.prototype.getUserStatus=function(e){var t=this;return new Promise((function(n,o){t._callCppProxy("getUserStatus",e,(function(e){n({code:d.SUCCESS,data:{status:e}})}),(function(e){n({code:e})}))}))},t.prototype.sendMessage=function(e,t,n,o,r){var s=this;void 0===r&&(r=this.logger.createTraceId());var i=n.messageType,a=n.content,c=n.pushContent,u=n.pushData,p=n.directionalUserIdList,l=n.disableNotification,_=n.canIncludeExpansion,h=n.expansion,v=n.isVoipPush,g=n.pushConfig,C=n.channelId,S=n.isMentioned,E=n.mentionedType,I=n.mentionedUserIdList,T=n.messageId,R=g||{},N=R.iOSConfig,O=R.androidConfig,M=R.pushTitle,U=R.pushContent,b=R.pushData,L=R.disablePushTitle,w=R.forceShowDetailContent,x=R.templateId,A=m(N,O);return new Promise((function(n){var g,m,R;c=U||c||"",u=b||u||"",l=l||!1,v=v||!1,M=M||"",U=U||"",b=b||"",L=L||!1,w=w||!1,_=_||!1;var N=(null==O?void 0:O.notificationId)||"";if(p=p||[],T=T||0,C=C||"",e===f.GROUP&&S&&a&&(a.mentionedInfo={userIdList:(null===(g=a.mentionedInfo)||void 0===g?void 0:g.userIdList)||I||[],type:(null===(m=a.mentionedInfo)||void 0===m?void 0:m.type)||E||P.ALL,mentionedContent:(null===(R=a.mentionedInfo)||void 0===R?void 0:R.mentionedContent)||""}),e===f.GROUP&&i===y.READ_RECEIPT_RESPONSE&&a.receiptMessageDic)for(var D in a.receiptMessageDic)p.push(D);var J={};for(var D in h)J[D]={v:""},J[D].v=h[D];var k=x||"";s.logger.info(G.P_SEND_MSG_T,JSON.stringify({messageType:i,conversationType:e,targetId:t,channelId:C}),r);var H=s._callCppProxy("sendMessage",(function(e,t){var o=s._buildMessage(e,{isOffLineMessage:!1});return s.logger.info(G.P_SEND_MSG_R,JSON.stringify({code:t,messageUId:o.messageUId}),r),t===d.SENSITIVE_REPLACE?n({code:t}):("RC:MsgExMsg"===o.messageType&&s._msgExpansionHandler.setLocalFromExtMsg(s.logger,o),o.canIncludeExpansion&&s._msgExpansionHandler.setLocalFromReceiveMsg(s.logger,o),n({code:d.SUCCESS,data:o}))}),(function(e,t){var o=s._buildMessage(e,{isOffLineMessage:!1});return s.logger.warn(G.P_SEND_MSG_R,JSON.stringify({code:t,messageId:o.messageId}),r),o.sentTime=Date.now()-s._cppProtocol.getDeltaTime(),n({code:t,data:o})}),e,t,i,JSON.stringify(a),p,l,L,w,c,u,N,M,A,k,_,JSON.stringify(J),v,C,T),B=JSON.parse(H);null==o||o(B.messageId)}))},t.prototype.recallMsg=function(e,t,n,o,r){var s=this;return new Promise((function(i,a){var c,u=r.user,p=r.pushContent,l=r.channelId,f=r.extra,_=r.pushConfig,h=r.disableNotification,v=r.isDelete,g={conversationType:e,targetId:t,messageUId:n,sentTime:o,user:u,extra:f,channelId:l,isDelete:v||!1};u&&(g.user=u),f&&(g.extra=f);var S={conversationType:e,targetId:t,senderUserId:s._currentUserId,content:g,objectName:y.RECALL,messageUid:n,direction:C.SEND,status:E.UNREAD,sentTime:o,channelId:l},P=s._buildMessage(JSON.stringify(S),{isOffLineMessage:!1});s._callCppProxy("recallMessage",(function(){i({code:d.SUCCESS,data:P})}),(function(e){i({code:e})}),y.RECALL,JSON.stringify(g),h||!1,(null==_?void 0:_.disablePushTitle)||!1,(null==_?void 0:_.forceShowDetailContent)||!1,p||"",(null==_?void 0:_.pushData)||"",(null===(c=null==_?void 0:_.androidConfig)||void 0===c?void 0:c.notificationId)||"",(null==_?void 0:_.pushTitle)||"",m(null==_?void 0:_.iOSConfig,null==_?void 0:_.androidConfig),(null==_?void 0:_.templateId)||"",l)}))},t.prototype.getHistoryMessage=function(e,t,n,o,r,s,i){var a=this;return new Promise((function(c,u){n=n||0;var p=0===r,l=o+1,f=a._callCppProxy("getHistoryMessages",e,t,n,l,i,p,s),_=JSON.parse(f).list,h=[];_.reverse();for(var v=0;v<_.length;v++){var g=a._buildMessage(_[v].obj);h[v]=g}c({code:d.SUCCESS,data:{list:l===h.length?h.slice(1,l):h,hasMore:o<h.length}})}))},t.prototype.getRemoteHistoryMessages=function(e,t,n,o,r,s){var i=this;return new Promise((function(a,c){n=n||0;i._callCppProxy("getRemoteHistoryMessages",e,t,n,o,(function(e,t){var n=JSON.parse(e).list,o=[];n.reverse();for(var r=0;r<n.length;r++){var s=i._buildMessage(n[r].obj);o[r]=s}a({code:d.SUCCESS,data:{list:o,hasMore:!!t}})}),(function(e){a({code:e})}),r,!0,s)}))},t.prototype.deleteRemoteMessage=function(e,t,n,o){var r=this;return new Promise((function(s,i){var a=JSON.stringify(n);r._callCppProxy("deleteRemoteHistoryMessages",e,t,a,!1,o,(function(){s(d.SUCCESS)}),s)}))},t.prototype.deleteRemoteMessageByTimestamp=function(e,t,n,o){var r=this;return new Promise((function(s,i){r._callCppProxy("clearRemoteHistoryMessages",e,t,n,(function(){s(d.SUCCESS)}),(function(e){s(e)}),o)}))},t.prototype.clearMessages=function(e,t,n){var o=this;return new Promise((function(r,s){o._callCppProxy("clearMessages",e,t,n),r(d.SUCCESS)}))},t.prototype.getConversationList=function(e,t,n,o,r){var s=this;return void 0===r&&(r=""),new Promise((function(e,t){for(var n=s._callCppProxy("getConversationList",[1,3,6,7],r),o=JSON.parse(n).list,i=[],a=0;a<o.length;a++)i.push(s._buildConversation(o[a].obj));e({code:d.SUCCESS,data:i})}))},t.prototype.getConversation=function(e,t,n){var o=this;return new Promise((function(r,s){var i=o._callCppProxy("getConversation",e,t,n);if(i)r({code:d.SUCCESS,data:o._buildConversation(i)});else{var a=o._cppProtocol.getHistoryMessages(e,t,0,1,"",!0,n),c=void 0;try{c=JSON.parse(a).list}catch(e){o.logger.error(G.P_PARSE_JSON_MSGS_E,null==e?void 0:e.stack),c=[]}var u=null;c.length>0&&(u=o._buildMessage(c[0].obj));var p=o._callCppProxy("getConversationNotificationStatus",e,t,n),l=o._callCppProxy("getConversationTopStatus",e,t,n);r({code:d.SUCCESS,data:{conversationType:e,targetId:t,channelId:n,unreadMessageCount:0,latestMessage:u,notificationStatus:p?S.OPEN:S.CLOSE,isTop:Boolean(l),lastUnreadTime:0}})}}))},t.prototype.removeConversation=function(e,t,n){var o=this._callCppProxy("removeConversation",e,t,n);return Promise.resolve(o?d.SUCCESS:d.UNKNOWN)},t.prototype.clearConversations=function(e,t){var n=this;return new Promise((function(o,r){var s=[];s=I(e)?e:[f.PRIVATE,f.GROUP,f.SYSTEM,f.PUBLIC_SERVICE],n._callCppProxy("clearConversations",s,t),o(d.SUCCESS)}))},t.prototype.getAllConversationUnreadCount=function(e,t,n){var o=this._callCppProxy("getTotalUnreadCount",t,n,e);return Promise.resolve({code:d.SUCCESS,data:o})},t.prototype.getConversationUnreadCount=function(e,t,n){var o=this;return void 0===n&&(n=""),new Promise((function(r){var s=o._callCppProxy("getUnreadCount",e,t,n);r({code:d.SUCCESS,data:s})}))},t.prototype.clearConversationUnreadCount=function(e,t,n){var o=this;return void 0===n&&(n=""),new Promise((function(r,s){o._callCppProxy("clearUnreadCount",e,t,n),r(d.SUCCESS)}))},t.prototype.clearUnreadCountByTimestamp=function(e,t,n,o){var r=this;return new Promise((function(s,i){r._callCppProxy("clearUnreadCountByTimestamp",e,t,n,o),s(d.SUCCESS)}))},t.prototype.getFirstUnreadMessage=function(e,t,n){var o=this;return new Promise((function(r,s){var i=o._callCppProxy("getTheFirstUnreadMessage",e,t,n),a=o._buildMessage(i);r({code:d.SUCCESS,data:-1!==a.messageId?a:null})}))},t.prototype.setConversationToTop=function(e,t,n,o){var r=this;return void 0===o&&(o=""),new Promise((function(s,i){r._callCppProxy("setConversationToTop",e,t,n,o,!0),s(d.SUCCESS)}))},t.prototype.setConversationHidden=function(e,t,n,o){var r=this;return new Promise((function(s,i){r._callCppProxy("setConversationHidden",e,t,n,o),s(d.SUCCESS)}))},t.prototype.setConversationNotificationStatus=function(e,t,n,o){var r=this;return new Promise((function(s,i){r._callCppProxy("setConversationNotificationStatus",e,t,n,(function(){s(d.SUCCESS)}),s,o)}))},t.prototype.setConversationStatus=function(e,t,n,o,r){var s=this;return new Promise((function(i,a){s._callCppProxy("setConversationStatus",e,t,n,o,(function(){i(d.SUCCESS)}),i,r,!0)}))},t.prototype.getConversationNotificationStatus=function(e,t,n){var o=this;return new Promise((function(r,s){var i=o._callCppProxy("getConversationNotificationStatus",e,t,n);r({code:d.SUCCESS,data:i?S.OPEN:S.CLOSE})}))},t.prototype.searchConversationByContent=function(e,t,n,o){var r=this;return new Promise((function(s,i){o=o||[1,3,6,7];for(var a=r._callCppProxy("searchConversationByContent",o,e,t,n),c=JSON.parse(a).list,u=[],p=0;p<c.length;p++)u[p]=r._buildConversation(c[p].obj);s({code:d.SUCCESS,data:u})}))},t.prototype.searchConversationByContentWithAllChannel=function(e,t,n){var o=this;return new Promise((function(r,s){n=n||[1,3,6,7];for(var i=o._callCppProxy("searchConversationByContentWithAllChannel",n,e,t),a=JSON.parse(i).list,c=[],u=0;u<a.length;u++)c[u]=o._buildConversation(a[u].obj);r({code:d.SUCCESS,data:c})}))},t.prototype.searchMessageByContent=function(e,t,n,o,r,s,i){var a=this;return new Promise((function(s,c){a._callCppProxy("searchMessageByContent",e,t,n,o,r,1,(function(e,t){for(var n=e?JSON.parse(e).list:[],o=[],r=0;r<n.length;r++)o[r]=a._buildMessage(n[r].obj);s({code:d.SUCCESS,data:{messages:o,count:t}})}),i)}))},t.prototype.searchMessageByContentWithAllChannel=function(e,t,n,o,r){var s=this;return new Promise((function(i,a){s._callCppProxy("searchMessageByContentWithAllChannel",e,t,n,o,r,1,(function(e,t){for(var n=e?JSON.parse(e).list:[],o=[],r=0;r<n.length;r++)o[r]=s._buildMessage(n[r].obj);i({code:d.SUCCESS,data:{messages:o,count:t}})}))}))},t.prototype.searchMessageByContentInTimeRangeWithAllChannel=function(e,t,n,o,r,s,i){var a=this;return new Promise((function(c,u){a._callCppProxy("searchMessageByTimestampWithAllChannel",e,t,n,o,r,s,i,(function(e){for(var t=e?JSON.parse(e).list:[],n=[],o=0;o<t.length;o++)n[o]=a._buildMessage(t[o].obj);c({code:d.SUCCESS,data:{messages:n}})}))}))},t.prototype.getUnreadMentionedMessages=function(e,t,n){for(var o=JSON.parse(this._callCppProxy("getUnreadMentionedMessages",e,t,n)).list,r=0;r<o.length;r++)o[r]=this._buildMessage(o[r].obj);return o},t.prototype.addToBlacklist=function(e){var t=this;return new Promise((function(n,o){t._callCppProxy("addToBlacklist",e,(function(){n(d.SUCCESS)}),n)}))},t.prototype.removeFromBlacklist=function(e){var t=this;return new Promise((function(n,o){t._callCppProxy("removeFromBlacklist",e,(function(){n(d.SUCCESS)}),n)}))},t.prototype.getBlacklist=function(){var e=this;return new Promise((function(t,n){e._callCppProxy("getBlacklist",(function(e){t({code:d.SUCCESS,data:e})}),(function(e){t({code:e})}))}))},t.prototype.getBlacklistStatus=function(e){var t=this;return new Promise((function(n,o){t._callCppProxy("getBlacklistStatus",e,(function(e){n({code:d.SUCCESS,data:e})}),(function(e){n({code:e})}))}))},t.prototype.insertMessage=function(e,t,n){var o=this,r=n.content,s=n.senderUserId,i=n.messageType,a=n.messageDirection,c=n.readStatus,u=n.sentStatus,p=n.sentTime,l=n.searchContent,f=n.isUnread,_=n.messageUId,h=n.disableNotification,v=n.canIncludeExpansion,g=n.expansionMsg,C=n.channelId;return r=JSON.stringify(r),new Promise((function(n,S){var y=f?0:1,m=o._callCppProxy("insertMessage",e,t,s,i,r,(function(){}),(function(e){n({code:e})}),a,c,u,p,l,y,_,h,v,g,C),P=o._buildMessage(m,{isOffLineMessage:!1});P.messageUId=_,P.sentTime=p,n({code:-1===P.messageId?d.MSG_INSERT_ERROR:d.SUCCESS,data:P})}))},t.prototype.deleteMessages=function(e){var t=this;return new Promise((function(n,o){t._callCppProxy("deleteMessages",e),n(d.SUCCESS)}))},t.prototype.deleteMessagesByTimestamp=function(e,t,n,o,r){var s=this;return new Promise((function(i,a){s._callCppProxy("deleteMessagesByTimestamp",e,t,n,o,r),i(d.SUCCESS)}))},t.prototype.getMessage=function(e){var t=this;return new Promise((function(n,o){var r=t._callCppProxy("getMessage",e),s=t._buildMessage(r,{isOffLineMessage:!1});n({code:d.SUCCESS,data:s})}))},t.prototype.setMessageContent=function(e,t,n){var o=this;return new Promise((function(r,s){t=JSON.stringify(t),o._callCppProxy("setMessageContent",e,t,n),r(d.SUCCESS)}))},t.prototype.setMessageSearchField=function(e,t,n){var o=this;return new Promise((function(r,s){o._callCppProxy("setMessageSearchField",e,t,n),r(d.SUCCESS)}))},t.prototype.setMessageSentStatus=function(e,t){var n=this;return new Promise((function(o,r){n._callCppProxy("setMessageSentStatus",e,t),o(d.SUCCESS)}))},t.prototype.setMessageReceivedStatus=function(e,t){var n=this;return new Promise((function(o,r){n._callCppProxy("setMessageReceivedStatus",e,t),o(d.SUCCESS)}))},t.prototype.saveConversationMessageDraft=function(e,t,n,o){throw new Error("Method not implemented.")},t.prototype.getConversationMessageDraft=function(e,t,n){throw new Error("Method not implemented.")},t.prototype.clearConversationMessageDraft=function(e,t,n){throw new Error("Method not implemented.")},t.prototype.pullConversationStatus=function(e){throw new Error("Method not implemented.")},t.prototype.batchSetConversationStatus=function(e){var t=e[0],n=t.conversationType,o=t.targetId,r=t.isTop,s=t.notificationStatus,i=t.channelId;if(void 0!==r&&void 0===s)return this.setConversationToTop(n,o,r,i);if(void 0!==s&&void 0===r){var a=s===S.OPEN;return this.setConversationNotificationStatus(n,o,a,i)}var c=s===S.OPEN;return this.setConversationStatus(n,o,c,r,i)},t.prototype.pullUserSettings=function(e){throw new Error("Method not implemented.")},t.prototype.sendReadReceiptMessage=function(e,t,n){var o=this;return new Promise((function(r){o._callCppProxy("sendReadReceipt",e,n||"",t,(function(){t.forEach((function(e){o._updateReadReceiptInfo(e,{hasRespond:!0});try{var t=JSON.parse(o._callCppProxy("getMessage",e)).messageId;o.setMessageReceivedStatus(t,1)}catch(t){o.logger.error(G.P_PARSE_JSON_MSGS_E,JSON.stringify({messageUId:e,error:null==t?void 0:t.stack}))}})),r({code:d.SUCCESS})}),(function(e){r({code:e})}))}))},t.prototype.getMessageReader=function(e,t,n){var o=this;return new Promise((function(r,s){o._callCppProxy("getMessageReader",e,n,t,(function(e,n){var s=[],i={};(e=JSON.parse(e)).list.forEach((function(e){var t=JSON.parse(e.obj),n=t.id,o=t.time;s.push({userId:n,readTime:o}),i[n]=o}));var a={readerInfo:i,readCount:s.length,totalCount:n};o._updateReadReceiptInfo(t,a),r({code:d.SUCCESS,data:{list:s,totalMemberCount:n}})}),(function(e){r({code:e})}))}))},t.prototype.joinChatroom=function(e,t){var n=this;return new Promise((function(o,r){n._callCppProxy("clearMessages",f.CHATROOM,e,""),n._callCppProxy("joinChatRoom",e,t,(function(){o(d.SUCCESS)}),o)}))},t.prototype.joinExistChatroom=function(e,t){throw new Error("Method not implemented.")},t.prototype.quitChatroom=function(e){var t=this;return new Promise((function(n,o){t._callCppProxy("quitChatRoom",e,(function(){n(d.SUCCESS)}),n)}))},t.prototype.getChatroomInfo=function(e,t,n){var o=this;return new Promise((function(r,s){o._callCppProxy("getChatroomInfo",e,t,n,(function(e,t){var n=e?JSON.parse(e).list:[],o=[];if(n.length>0)for(var s=0;s<n.length;s++)o.push(JSON.parse(n[s].obj));r({code:d.SUCCESS,data:{userInfos:o,userCount:t}})}),(function(e){r({code:e})}))}))},t.prototype.getChatroomHistoryMessages=function(e,t,n,o){var r=this;return new Promise((function(s,i){r._callCppProxy("getChatroomHistoryMessage",e,t,n,o,(function(e){var t;try{t=JSON.parse(e)}catch(e){t={list:[]}}var n=t.list;if(n&&n.length)try{t.list=n.map((function(e){return r._buildMessage(e.obj)}))}catch(e){t.list=[]}s({code:d.SUCCESS,data:t})}),(function(e){s({code:e})}),"")}))},t.prototype.setChatroomEntry=function(e,t){var n=this;return new Promise((function(o,r){var s='[{"key":"'.concat(t.key,'", "value":"').concat(t.value,'"}]');n._callCppProxy("setChatroomKV",e,s,!!t.isAutoDelete,!!t.isOverwrite,(function(){o(d.SUCCESS)}),(function(e){o(e)}))}))},t.prototype.setChatroomEntries=function(e,t){var n=this;return new Promise((function(o){n._callCppProxy("setChatroomKV",e,JSON.stringify(t.entries),!!t.isAutoDelete,!!t.isOverwrite,(function(){o({code:d.SUCCESS})}),(function(e){o({code:e})}))}))},t.prototype.forceSetChatroomEntry=function(e,t){return t.isOverwrite=!0,t.userId=t.userId||this._currentUserId,this.setChatroomEntry(e,t)},t.prototype.removeChatroomEntry=function(e,t){var n=this,o=[t.key];return new Promise((function(r,s){n._callCppProxy("deleteChatroomKV",e,o,!!t.isOverwrite,(function(){r(d.SUCCESS)}),(function(e){r(e)}))}))},t.prototype.forceRemoveChatroomEntry=function(e,t){return t.isOverwrite=!0,t.userId=t.userId||this._currentUserId,this.removeChatroomEntry(e,t)},t.prototype.removeChatroomEntries=function(e,t){var n=this;return new Promise((function(o){var r=t.entries.map((function(e){return e.key}));n._callCppProxy("deleteChatroomKV",e,r,!!t.isOverwrite,(function(){o({code:d.SUCCESS})}),(function(e){o({code:e})}))}))},t.prototype.getChatroomEntry=function(e,t){return V(this,void 0,void 0,(function(){var n;return K(this,(function(o){switch(o.label){case 0:return[4,this.getAllChatroomEntry(e)];case 1:return(n=o.sent()).code===d.SUCCESS?[2,{code:d.SUCCESS,data:n.data?n.data[t]:null}]:[2,{code:n.code}]}}))}))},t.prototype.getAllChatroomEntry=function(e){var t=this;return new Promise((function(n,o){t._callCppProxy("getChatroomKV",e,(function(e){var t={};try{(e?JSON.parse(e):{list:[]}).list.map((function(e){return JSON.parse(e.obj)})).forEach((function(e){t[e.key]=e.value?e.value:""}))}catch(e){}n({code:d.SUCCESS,data:t})}),(function(e){n({code:e})}))}))},t.prototype.getFileToken=function(e,t,n,o){var r=this;return n=n||"",o=o||"",new Promise((function(s){var i;i=o&&"uploads"!==o?t||"":T(e,t),r._callCppProxy("getUploadToken",e,i,n,o,(function(e,t,n,o,r,a,c,u,p,l,f,_,h,v,g,C,S,y){s({code:d.SUCCESS,data:{token:e,deadline:0,bosToken:t,bosDate:n,path:o,osskeyId:r,ossPolicy:a,ossSign:c,ossBucketName:u,fileName:i,s3Credential:p,s3Algorithm:l,s3Date:f,s3Policy:_,s3Signature:h,s3BucketName:v,stcAuthorization:g,stcContentSha256:C,stcDate:S,stcBucketName:y}})}),(function(e){s({code:e})}))}))},t.prototype.getFileUrl=function(e,t,n,o){var r=this;return new Promise((function(s){r._callCppProxy("getDownloadUrl",e,n,o,t-1,(function(e){s({code:d.SUCCESS,data:{downloadUrl:e}})}),(function(e){s({code:e})}))}))},t.prototype.clearData=function(){var e=this;return new Promise((function(t,n){var o=e._callCppProxy("clearData");t({code:d.SUCCESS,data:o})}))},t.prototype.getDeviceId=function(){var e=this._dbpath||o(N.getPath("userData"));return ce(e)},t.prototype.getVoIPKey=function(e,t){var n=this;return new Promise((function(o,r){n._callCppProxy("getVoIPKey",e,t,"",(function(e){o({code:d.SUCCESS,data:e})}),(function(e){o({code:e})}))}))},t.prototype.bindRTCRoomForChatroom=function(e){var t=this;return new Promise((function(n,o){var r=e.chatRoomId,s=e.rtcRoomId;t._callCppProxy("bindRTCRoomForChatroom",r,s,(function(){n(d.SUCCESS)}),(function(e){n(e)}))}))},t.prototype.getGroupMessageDeliverList=function(e,t,n){var o=this;return new Promise((function(r,s){o._callCppProxy("getGroupMessageDeliverList",e,n,t,(function(e,t){var n=JSON.parse(e).list.map((function(e){return{time:JSON.parse(e.obj).time,userId:JSON.parse(e.obj).id}}));r({code:d.SUCCESS,data:{totalCount:t,list:n}})}),(function(e){r({code:e})}))}))},t.prototype.getPrivateMessageDeliverTime=function(e,t){var n=this;return new Promise((function(o,r){var s=n._callCppProxy("getMessageDeliverTime",e);if(s)o({code:d.SUCCESS,data:s});else{n._callCppProxy("getPrivateMessageDeliverList",t,e,(function(e){var t=0,n=JSON.parse(e).list;n.length>0&&(t=JSON.parse(n[0].obj).time);o({code:d.SUCCESS,data:t})}),(function(e){o({code:e})}))}}))},t.prototype.rtcSignaling=function(e,t,n,o){var r=this,s=Array.prototype.slice.call(new Uint8Array(o));return new Promise((function(o){r._callCppProxy("rtcSignaling",e,t,n,s,(function(e){var t=new Uint8Array(e).buffer;o({code:d.SUCCESS,buffer:t})}),(function(e){o({code:e})}))}))},t.prototype._setRTCHeartbeatListener=function(){var e=this;this._cppProtocol.setRTCHeartbeatListener((function(t,n){var o=e.rtcHeartbeatResolves[t];if(o){var r=o.find((function(e){return""===e.seqId}));r&&(r.seqId=n)}}),(function(t,n,o,r){var s=e.rtcHeartbeatResolves[t];if(s){var i=s.findIndex((function(e){return e.seqId===o}));-1!==i&&s.splice(i,1)[0].resolve({code:n,data:{version:Number(r)}})}}))},t.prototype.rtcPing=function(e,t,n){var o=this;return new Promise((function(t){var n={resolve:t,seqId:""},r=o.rtcHeartbeatResolves[e];r?r.push(n):o.rtcHeartbeatResolves[e]=[n],o._callCppProxy("sendRTCHeartbeat",[e])}))},t.prototype.createTag=function(e){var t=this;return new Promise((function(n,o){t._callCppProxy("addTag",e.tagId,e.tagName,(function(){n({code:d.SUCCESS})}),(function(e){n({code:e})}))}))},t.prototype.removeTag=function(e){var t=this;return new Promise((function(n,o){t._callCppProxy("deleteTag",e,(function(){n({code:d.SUCCESS})}),(function(e){n({code:e})}))}))},t.prototype.updateTag=function(e){var t=this;return new Promise((function(n,o){t._callCppProxy("renameTag",e.tagId,e.tagName,(function(){n({code:d.SUCCESS})}),(function(e){n({code:e})}))}))},t.prototype.getTagList=function(){var e=this;return new Promise((function(t,n){var o=e._callCppProxy("getTags"),r=e._convertResultList(o,(function(e){return{tagId:e.tagId,tagName:e.tagName,conversationCount:e.conversationCount,createdTime:e.tagTime}}));t({code:d.SUCCESS,data:r})}))},t.prototype.addTagForConversations=function(e,t){var n=this;return new Promise((function(o,r){t.forEach((function(e){e.conversationType&&(e.type=e.conversationType)}));n._callCppProxy("addConversationsForTag",e,JSON.stringify(t),(function(){o({code:d.SUCCESS})}),(function(e){o({code:e})}))}))},t.prototype.removeTagForConversations=function(e,t){var n=this;return new Promise((function(o,r){t.forEach((function(e){e.conversationType&&(e.type=e.conversationType)})),n._callCppProxy("removeConversationsForTag",e,JSON.stringify(t),(function(){o({code:d.SUCCESS})}),(function(e){o({code:e})}))}))},t.prototype.removeTagsForConversation=function(e,t){var n=this;return new Promise((function(o,r){n._callCppProxy("removeTagsForConversation",e.conversationType,e.targetId,e.channelId||"",t,(function(){o({code:d.SUCCESS})}),(function(e){o({code:e})}))}))},t.prototype.getConversationListByTag=function(e,t,n,o){var r=this;return new Promise((function(s){var i=r._callCppProxy("getConversationsForTagByPage",e,t,n||20,o||""),a=r._convertResultList(i,(function(e){return q(q({},r._buildConversation(JSON.stringify(e))),{isTopInTag:e.topForTag})}));s({code:d.SUCCESS,data:a})}))},t.prototype.getUnreadCountByTag=function(e,t){var n=this;return new Promise((function(o,r){var s=n._callCppProxy("getConversationUnreadCountForTag",e,t);o({code:d.SUCCESS,data:s})}))},t.prototype.setConversationStatusInTag=function(e,t,n){var o=this;return new Promise((function(r,s){o._callCppProxy("setConversationToTopForTag",e,t.conversationType,t.targetId,t.channelId||"",n.isTop||!1,(function(){r({code:d.SUCCESS})}),(function(e){r({code:e})}))}))},t.prototype.getTagsForConversation=function(e){var t=this;return new Promise((function(n,o){var r=t._callCppProxy("getTagsForConversation",e.conversationType,e.targetId,e.channelId||""),s=t._convertResultList(r,(function(e){return{tagId:e.tagId,tagName:e.tagName,isTop:e.isTop,createdTime:e.tagTime}}));n({code:d.SUCCESS,data:s})}))},t.prototype.getBlockConversationList=function(){throw new Error("Method not implemented.")},t.prototype.getTopConversationList=function(e,t){var n=this;return new Promise((function(o){var r=v(t)?n._callCppProxy("getTopConversations",e):n._callCppProxy("getTopConversations",e,t),s=JSON.parse(r).list.map((function(e){return n._buildConversation(e.obj)}));o({code:d.SUCCESS,data:s})}))},t.prototype.getUnreadMentionedCount=function(e){throw new Error("Method not implemented.")},t.prototype.getAllUnreadMentionedCount=function(){throw new Error("Method not implemented.")},t.prototype.getOSInfo=function(){return V(this,void 0,void 0,(function(){var t;return K(this,(function(n){return t={arch:e.arch(),platform:e.platform(),type:e.type(),version:e.version(),release:e.release(),uptime:e.uptime(),cpus:e.cpus(),freemem:e.freemem(),totalmem:e.totalmem(),networkInterfaces:e.networkInterfaces()},[2,{code:d.SUCCESS,data:t}]}))}))},t.prototype.getMainProcessInfo=function(){return V(this,void 0,void 0,(function(){return K(this,(function(e){return[2,{code:d.SUCCESS,data:{title:process.title,pid:process.pid,ppid:process.ppid,platform:process.platform,arch:process.arch,uptime:process.uptime(),cpuUsage:process.cpuUsage(),memoryUsage:process.memoryUsage(),resourceUsage:process.resourceUsage()}}]}))}))},t.prototype.setCallInfo=function(e,t,n){var o=this;return new Promise((function(r){o._callCppProxy("callInfoSignaling",e,t,n,(function(e,t){r({code:d.SUCCESS,data:{key:e,value:t}})}),(function(e){r({code:e})}))}))},t}(),ge=function(){function e(e,t,n,o){void 0===n&&(n=""),void 0===o&&(o=!1),this._cppService=new ve(e,t,n,o)}return e.prototype.getCppProto=function(){var e=this;return{destroy:function(){e._cppService.destroy()}}},e.prototype.destroy=function(){this._cppService.destroy()},e.prototype.getDeviceId=function(){return this._cppService.getDeviceId()},e.prototype.getServerTime=function(){return this._cppService.getServerTime()},e.prototype.__createLogger=function(e,t){return null},e}(),Ce=function(e){return function(e,t,n){if(fe)return fe;if(!t)throw new Error("Initializ failed, `appkey` is required!");return fe=new ge(t,e,null==n?void 0:n.dbpath,null==n?void 0:n.reconnectKickEnable)}(B,e.appkey,e)};export{Ce as default};
|
package/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var e=require("os"),t=require("path"),o=require("@rongcloud/engine"),r=require("electron"),n=require("http"),s=require("https"),i=require("fs"),a=require("crypto");function c(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(o){if("default"!==o){var r=Object.getOwnPropertyDescriptor(e,o);Object.defineProperty(t,o,r.get?r:{enumerable:!0,get:function(){return e[o]}})}})),t.default=e,Object.freeze(t)}var u=c(e),p=process.versions.electron.replace(/\.\d+$/,""),l=t.resolve(__dirname,"binding","electron-v".concat(p,"-").concat(e.platform(),"-").concat(e.arch(),".node")),d={addon:null};try{d.addon=require(l)}catch(e){console.error("error ->",l,"\n",e)}var C=d.addon,f=function(e,t){return f=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o])},f(e,t)};function _(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function o(){this.constructor=e}f(e,t),e.prototype=null===t?Object.create(t):(o.prototype=t.prototype,new o)}var h=function(){return h=Object.assign||function(e){for(var t,o=1,r=arguments.length;o<r;o++)for(var n in t=arguments[o])Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e},h.apply(this,arguments)};function g(e,t,o,r){return new(o||(o=Promise))((function(n,s){function i(e){try{c(r.next(e))}catch(e){s(e)}}function a(e){try{c(r.throw(e))}catch(e){s(e)}}function c(e){var t;e.done?n(e.value):(t=e.value,t instanceof o?t:new o((function(e){e(t)}))).then(i,a)}c((r=r.apply(e,t||[])).next())}))}function v(e,t){var o,r,n,s,i={label:0,sent:function(){if(1&n[0])throw n[1];return n[1]},trys:[],ops:[]};return s={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(s[Symbol.iterator]=function(){return this}),s;function a(s){return function(a){return function(s){if(o)throw new TypeError("Generator is already executing.");for(;i;)try{if(o=1,r&&(n=2&s[0]?r.return:s[0]?r.throw||((n=r.return)&&n.call(r),0):r.next)&&!(n=n.call(r,s[1])).done)return n;switch(r=0,n&&(s=[2&s[0],n.value]),s[0]){case 0:case 1:n=s;break;case 4:return i.label++,{value:s[1],done:!1};case 5:i.label++,r=s[1],s=[0];continue;case 7:s=i.ops.pop(),i.trys.pop();continue;default:if(!(n=i.trys,(n=n.length>0&&n[n.length-1])||6!==s[0]&&2!==s[0])){i=0;continue}if(3===s[0]&&(!n||s[1]>n[0]&&s[1]<n[3])){i.label=s[1];break}if(6===s[0]&&i.label<n[1]){i.label=n[1],n=s;break}if(n&&i.label<n[2]){i.label=n[2],i.ops.push(s);break}n[2]&&i.ops.pop(),i.trys.pop();continue}s=t.call(e,i)}catch(e){s=[6,e],r=0}finally{o=n=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,a])}}}function S(e,t,o){if(o||2===arguments.length)for(var r,n=0,s=t.length;n<s;n++)!r&&n in t||(r||(r=Array.prototype.slice.call(t,0,n)),r[n]=t[n]);return e.concat(r||Array.prototype.slice.call(t))}var y,E={flushTimestamp:Date.now(),queue:[],locked:!1};function m(e,t,r){r.initLogModule(t,e,o.getUUID()),setInterval((function(){return function(e){return g(this,void 0,void 0,(function(){var t,o,r,n;return v(this,(function(s){if(t=E.queue,o=E.flushTimestamp,E.locked||0===t.length)return[2];if(Date.now()-o<3e4&&t.length<100)return[2];E.locked=!0;do{r=t.splice(0,100).map((function(e){var t=e.sessionId,o=e.level,r=e.time,n=e.type,s=e.tag,i=e.loggerId,a=e.content,c=e.traceId;return{level:o,time:r,type:n,tag:s,content:encodeURIComponent(JSON.stringify({loggerId:i,sessionId:t,content:a,traceId:c})).replace(/'/g,"%27")}})),n=r.length,null===console||void 0===console||console.time("write ".concat(n," logs -> ")),e.writeLog(JSON.stringify(r)),null===console||void 0===console||console.timeEnd("write ".concat(n," logs -> "))}while(t.length>=100);return E.flushTimestamp=Date.now(),E.locked=!1,[2]}))}))}(r)}),1e4)}function P(e){E.queue.push(e)}!function(e){e.P_INIT_O="P-init-O",e.P_DB_OPEN_O="P-db_open-O",e.P_CALL_MAIN_SYNC_T="P-call_main_sync-T",e.P_CALL_MAIN_SYNC_R="P-call_main_sync-R",e.P_CALL_MAIN_SYNC_E="P-call_main_sync-E",e.P_CALL_MAIN_T="P-call_main-T",e.P_CALL_MAIN_R="P-call_main-R",e.P_CALL_MAIN_E="P-call_main-E",e.P_SEND_2_MAIN_T="P-send_2_main-T",e.P_SEND_2_MAIN_E="P-send_2_main-E",e.P_REGTYP_O="P-regtype-O",e.P_CALL_ADDON_T="P-call_addon-T",e.P_CALL_ADDON_R="P-call_addon-R",e.P_CALL_ADDON_E="P-call_addon-E",e.P_CALL_EXTRA_T="P-call_extra-T",e.P_CALL_EXTRA_R="P-call_extra-R",e.P_CALL_EXTRA_E="P-call_extra-E",e.P_CONNECT_S="P-connect-S",e.P_CONNECT_O="P-connect-O",e.P_REPORT_VER_O="P-report_version-O",e.P_PARSE_JSON_MSGS_E="P-parse_json_messsages-E",e.P_HTTP_REQ_T="P-http_request-T",e.P_HTTP_REQ_R="P-http_request-R",e.P_SET_MSG_EXTEN_O="P-set_msg_extension-O",e.P_SEND_MSG_T="P-send_msg-T",e.P_SEND_MSG_R="P-send_msg-R"}(y||(y={}));var T=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return _(t,e),t.prototype.flush=function(e){P(e)},t}(o.BasicLogger);function I(e,t,r){void 0===r&&(r=!1);var i=t.url,a=t.headers,c=t.body,u=t.method,p=t.query,l=t.timeout,d=void 0===l?o.HTTP_TIMEOUT:l;return new Promise((function(t){var l=/^https/.test(i),C={headers:a,method:u};l&&(C.rejectUnauthorized=r,C.agent=new s.Agent(C));var f=l?s.request:n.request,_=e.createTraceId();e.info(y.P_HTTP_REQ_T,JSON.stringify(C),_);var h=f(o.appendUrl(i,p),C,(function(e){var o=e.statusCode,r="";e.setEncoding("utf8"),e.on("data",(function(e){r+=e})),e.once("end",(function(){t({status:o||0,data:r})}))}));h.once("timeout",(function(){e.warn(y.P_HTTP_REQ_R,o.ErrorCode.TIMEOUT,_),t({status:0})})),h.setTimeout(d),h.once("error",(function(o){e.error(y.P_HTTP_REQ_R,o.stack,_),t({status:0})})),h.write(c),h.end()}))}var N,R=[],M=!1,O=function(){return g(void 0,void 0,void 0,(function(){var e,t,o,r,n,s,i,a,c;return v(this,(function(u){return M||0===R.length||(M=!0,e=R.shift(),t=e.args,o=e.resolve,r=t.addon,n=t.startTime,s=t.endTime,i=t.level,a=t.includeStatistics,c=[],r.setLogEventListener((function(e){var t=e.split(","),o=t[0],r=t[1],n=t[2],s=t[3],u=t[4],p=t.slice(5);try{var l=JSON.parse(decodeURIComponent(p.join(","))),d=l.loggerId,C=l.sessionId,f=l.content,_=l.traceId;if(!a&&i<0)return;var h={time:parseInt(r,10),level:parseInt(s,10),sessionId:"".concat(o,":").concat(C),type:n,tag:u,loggerId:d,content:f,traceId:_};c.push(h)}catch(e){console.error(e)}}),(function(e){o(c),M=!1,O()}),(function(e,t,o){})),r.pullFullLog(i,n,s,!1)),[2]}))}))},U=function(e){function t(t,r,n,s){var i="".concat(process.arch,"|").concat(process.platform);return e.call(this,r,n,i,{getLogs:function(e,o,r,n){return g(this,void 0,void 0,(function(){return v(this,(function(s){switch(s.label){case 0:return[4,(i={startTime:e,endTime:o,level:r,includeStatistics:n,addon:t},g(void 0,void 0,void 0,(function(){return v(this,(function(e){return[2,new Promise((function(e){R.push({resolve:e,args:i}),O()}))]}))})))];case 1:return[2,{logs:s.sent(),dbReady:!0}]}var i}))}))},getTimestamp4RealtimeLog:function(e){return g(this,void 0,void 0,(function(){var r;return v(this,(function(n){return r=t.getStoreValue("".concat(o.StoreKeys.REALTIME_LOG_TIMESTAMP,"_").concat(e)),[2,parseInt(r,10)||0]}))}))},setTimestamp4RealtimeLog:function(e,r){return g(this,void 0,void 0,(function(){return v(this,(function(n){return t.setStoreValue("".concat(o.StoreKeys.REALTIME_LOG_TIMESTAMP,"_").concat(e),r.toString()),[2]}))}))}},s)||this}return _(t,e),t.prototype.send=function(e){return I(this.logger,e)},t}(o.BasicReporter),L=null,b=function(){var t,o=Date.now(),r=[e.arch(),e.platform(),process.pid,o,Math.floor(Math.random()*o)].join("__");return t=r,a.createHash("md5").update(t).digest("hex")},A=function(e){if(L)return L;var o=t.resolve(e,"deviceId");return i.existsSync(o)?L=i.readFileSync(o).toString():(L=b(),i.writeFileSync(o,L),L)},w=function(){function e(e,t){this._hasPingRes=e,this._reconnect=t,this._timerId=0,this._isFirstPing=!0,this._lossCount=0}return e.init=function(t,o){return N?(N.stop(),N):N=new e(t,o)},e.prototype.start=function(e){var t=this,o=this._isFirstPing?0:15e3;this._timerId=setTimeout((function(){return t._isFirstPing=!1,t._hasPingRes?(e(),t._hasPingRes=!1,t.start(e)):t._lossCount<4?(t._lossCount++,e(),t.start(e)):void t._reconnect()}),o)},e.prototype.stop=function(){this._lossCount=0,clearTimeout(this._timerId)},e.prototype.setHeartbeatRes=function(){this._hasPingRes=!0,this._lossCount=0},e}(),x=function(){function e(e){this._cppProto=e,this._setTime=15962112e5}return e.prototype._setToProtocol=function(e,t,o,r,n,s){var i=JSON.stringify(n);e.info(y.P_SET_MSG_EXTEN_O,JSON.stringify({messageUId:r,ext:n})),this._cppProto.setMessageExtension(t,o,r,i,s)},e.prototype.setLocalFromReceiveMsg=function(e,t){var o=t.channelId,r=t.conversationType,n=t.targetId,s=t.messageUId,i=t.expansion,a=t.sentTime,c={};for(var u in i)c[u]={v:"",ts:0},c[u].v=i[u],c[u].ts=a;this._setToProtocol(e,r,n,s,c,o||"")},e.prototype.setLocalFromExtMsg=function(e,t){var o=t.channelId,r=t.conversationType,n=t.targetId;t.messageUId;var s=t.content,i=t.sentTime,a=s,c=a.put,u=this._cppProto.getMessage(a.mid),p=JSON.parse(u).extMsg,l=JSON.parse(p||"{}");if(c)for(var d in c){var C=l[d];C&&C.ts<i-this._setTime?(C.v=c[d],C.ts=i-this._setTime):(l[d]={v:"",ts:0},l[d].v=c[d],l[d].ts=i-this._setTime)}a.del&&a.del.forEach((function(e){delete l[e]})),this._setToProtocol(e,r,n,a.mid,l,o||"")},e.prototype.parseReceiveExpansion=function(e){var t=JSON.parse(e.extMsg||"{}"),o={};for(var r in t)o[r]=t[r].v;return o},e.prototype.parseConverOrHisExpansion=function(e){var t=JSON.parse(e.extMsg),o=JSON.parse(t||"{}"),r={};for(var n in o)r[n]=o[n].v;return r},e}(),D=null;function J(e,t,o,r,n){return void 0===n&&(n=!0),g(this,void 0,void 0,(function(){var s;return v(this,(function(i){switch(i.label){case 0:return D?[2,D]:(D=function(e,t,o,r,n){return void 0===n&&(n=!0),g(this,void 0,void 0,(function(){var s,i,a,c,u,p,l;return v(this,(function(d){switch(d.label){case 0:s="token=".concat(encodeURIComponent(r),"&v=").concat((C="5.6.0-beem",C.match(/\d+(\.\d+){2}/)[0]),"&p=PC&ev=").concat("5.6.0-beem"),i=0,a=t.length,d.label=1;case 1:return i<a?(c="".concat(t[i],"/navi.json?r=").concat(Date.now()),e.info("request navi -> url: ".concat(c,", body: ").concat(s)),[4,I(e,{method:"POST",headers:{appId:o},body:s,url:c},n)]):[3,4];case 2:if(200!==(u=d.sent()).status)return e.error("request navi failed -> ".concat(c)),u.data&&e.error(u.data),[3,3];e.info("request navi success -> ".concat(c));try{return p=JSON.parse(u.data),l=/^https/.test(c)?"https":"http",p.protocol=l,[2,p]}catch(t){e.error("parse navi err => ".concat(u.data))}d.label=3;case 3:return i+=1,[3,1];case 4:return[2,null]}var C}))}))}(e,t,o,r,n),[4,D]);case 1:return s=i.sent(),D=null,[2,s]}}))}))}var k,H=function(){function e(e,n,s,i){var a=this;this._appkey=e,this._cppProtocol=n,this._dbpath=s,this._reconnectKickEnable=i,this._currentToken="",this._connectionStatus=o.ConnectionStatus.DISCONNECTED,this._promiseHandler={},this._customMessageType={},this._connectedTime=0,this._currentUserId="",this._naviInfo=null,this._version="5.6.0-beem",this._senders={},this.rtcHeartbeatResolves={};var c=this._dbpath||t.resolve(r.app.getPath("userData")),u=A(c);this._cppProtocol.initWithAppkey(e,c,this._version.replace(/-.*/,"")),m(e,c,this._cppProtocol),this.logger=new T(this._appkey,"RC-M","IM"),this.reporter=new U(this._cppProtocol,e,u,this.logger),this.logger.info(y.P_INIT_O,JSON.stringify({appkey:e,dbpath:c,proto_commit:this._cppProtocol.getNodeVersion(),deviceId:u})),this._callCppProxy("setDeviceId",u),this._registerMsgTypes(),this._setConnectionStatusListener(),this._setOnReceiveMessageListener(),this._setConversationStatusListener(),this._setUserProfileListener(),this._setRTCHeartbeatListener(),this._setRTCLivingRoomEventListener(),this._setChatroomEventListener(),this._setCallInfoListener(),r.ipcMain.on("__RC_CHANNEL_CALL_MAIN_SYNC__",(function(e,t){for(var r=[],n=2;n<arguments.length;n++)r[n-2]=arguments[n];return g(a,void 0,void 0,(function(){var n,s,i,a;return v(this,(function(c){switch(c.label){case 0:if(n=this.logger.createTraceId(),this.logger.info(y.P_CALL_MAIN_SYNC_T,JSON.stringify({method:t}),n),"function"!=typeof(s=this[t]))return this.logger.warn(y.P_CALL_MAIN_SYNC_R,o.ErrorCode.NOT_SUPPORT,n),e.returnValue=o.ErrorCode.NOT_SUPPORT,[2];i=o.ErrorCode.EXTRA_METHOD_UNDEFINED,c.label=1;case 1:return c.trys.push([1,3,,4]),[4,s.call.apply(s,S([this],r,!1))];case 2:return i=c.sent(),[3,4];case 3:return a=c.sent(),this.logger.error(y.P_CALL_MAIN_SYNC_E,null==a?void 0:a.stack,n),[3,4];case 4:return this.logger.info(y.P_CALL_MAIN_SYNC_R,o.ErrorCode.SUCCESS,n),e.returnValue=i,[2]}}))}))})),r.ipcMain.on("__RC_CHANNEL_CALL_MAIN__",(function(e,t,r){for(var n=[],s=3;s<arguments.length;s++)n[s-3]=arguments[s];return g(a,void 0,void 0,(function(){var s,i,a,c,u,p=this;return v(this,(function(l){switch(l.label){case 0:if(s=this.logger.createTraceId(),this.logger.info(y.P_CALL_MAIN_T,JSON.stringify({method:r}),s),"function"!=typeof(i=this[r]))return this.logger.warn(y.P_CALL_MAIN_R,o.ErrorCode.NOT_SUPPORT,s),this._send2Renderer(e.sender,"__RC_CHANNEL_RESULT_FROM_MAIN__",t,o.ErrorCode.NOT_SUPPORT),[2];"sendMessage"===r&&(a=n[3],n[3]=function(t){p._send2Renderer(e.sender,"__RC_CHANNEL_RESULT_FROM_MAIN__",a,t)}),c=o.ErrorCode.EXTRA_METHOD_UNDEFINED,l.label=1;case 1:return l.trys.push([1,3,,4]),[4,i.call.apply(i,S([this],n,!1))];case 2:return c=l.sent(),[3,4];case 3:return u=l.sent(),this.logger.error(y.P_CALL_MAIN_E,null==u?void 0:u.stack,s),[3,4];case 4:return this.logger.info(y.P_CALL_MAIN_R,o.ErrorCode.SUCCESS,s),this._send2Renderer(e.sender,"__RC_CHANNEL_RESULT_FROM_MAIN__",t,c),[2]}}))}))})),r.ipcMain.on("__RC_CHANNEL_SEND_2_MAIN__",(function(e,t){for(var o=[],r=2;r<arguments.length;r++)o[r-2]=arguments[r];var n=a.logger.createTraceId();a.logger.info(y.P_SEND_2_MAIN_T,JSON.stringify({method:t}),n);var s=a[t];if("function"==typeof s)try{s.call.apply(s,S([a],o,!1))}catch(e){a.logger.error(y.P_SEND_2_MAIN_E,null==e?void 0:e.stack,n)}else a.logger.error(y.P_SEND_2_MAIN_E,"Method Not Found",n)})),r.ipcMain.on("__RC_INNER_COMMAND_INIT__",this._registerRenderers.bind(this)),this._msgExpansionHandler=new x(this._cppProtocol)}return e.prototype._callCppProxy=function(e){for(var t,o=[],r=1;r<arguments.length;r++)o[r-1]=arguments[r];var n=this.logger.createTraceId();try{this.logger.info(y.P_CALL_ADDON_T,JSON.stringify({method:e}),n);var s=(t=this._cppProtocol)[e].apply(t,o);return this.logger.info(y.P_CALL_ADDON_R,0,n),s}catch(e){this.logger.error(y.P_CALL_ADDON_E,null==e?void 0:e.stack,n)}},e.prototype.sendHTTPRequest=function(e){return I(this.logger,e)},e.prototype.onRendererLogReceived=function(e){P(e)},e.prototype.getCppProto=function(){var e=this;return{destroy:function(){e._cppProtocol.destroy()}}},e.prototype.destroy=function(){this._cppProtocol.destroy()},e.prototype.callExtra=function(e){for(var t=[],r=1;r<arguments.length;r++)t[r-1]=arguments[r];var n=this.logger.createTraceId();this.logger.warn(y.P_CALL_EXTRA_T,JSON.stringify({method:e}),n);var s=this[e];if(!s)return this.logger.warn(y.P_CALL_EXTRA_R,o.ErrorCode.EXTRA_METHOD_UNDEFINED,n),Promise.resolve({code:o.ErrorCode.EXTRA_METHOD_UNDEFINED});try{var i=s.call.apply(s,S([this],t,!1));return this.logger.warn(y.P_CALL_EXTRA_R,o.ErrorCode.SUCCESS,n),i}catch(e){this.logger.error(y.P_CALL_EXTRA_E,null==e?void 0:e.stack,n)}return Promise.resolve({code:o.ErrorCode.MAIN_PROCESS_ERROR})},e.prototype.getConversationsByPage=function(e,t,r,n){var s,i=this,a=this._callCppProxy("getConversationListByPage",e,t,r,n||"");try{s=JSON.parse(a).list.map((function(e){return i._buildConversation(e.obj)}))}catch(e){return Promise.resolve({code:o.ErrorCode.MAIN_PROCESS_ERROR})}return Promise.resolve({code:o.ErrorCode.SUCCESS,data:s})},e.prototype.getConversationListWithAllChannel=function(){var e,t=this,r=[o.ConversationType.PRIVATE,o.ConversationType.GROUP],n=this._callCppProxy("getConversationListWithAllChannel",r);try{e=JSON.parse(n).list.map((function(e){return t._buildConversation(e.obj)}))}catch(e){return Promise.resolve({code:o.ErrorCode.MAIN_PROCESS_ERROR})}return Promise.resolve({code:o.ErrorCode.SUCCESS,data:e})},e.prototype.getConversationListWithAllChannelByPage=function(e,t){var r,n=this,s=[o.ConversationType.PRIVATE,o.ConversationType.GROUP],i=this._callCppProxy("getConversationListWithAllChannelByPage",s,e,t);try{r=JSON.parse(i).list.map((function(e){return n._buildConversation(e.obj)}))}catch(e){return Promise.resolve({code:o.ErrorCode.MAIN_PROCESS_ERROR})}return Promise.resolve({code:o.ErrorCode.SUCCESS,data:r})},e.prototype.getHistoryMessagesByObjectNames=function(e,t,r,n,s,i,a){var c=0===i,u=n+1,p=this._callCppProxy("getHistoryMessagesByObjectNames",e,t,r,u,s,c,a||""),l=[];try{var d=JSON.parse(p).list;d.reverse();for(var C=0;C<d.length;C++){var f=this._buildMessage(d[C].obj);l[C]=f}}catch(e){return Promise.resolve({code:o.ErrorCode.MAIN_PROCESS_ERROR})}return Promise.resolve({code:o.ErrorCode.SUCCESS,data:{list:u===l.length?l.slice(1,u):l,hasMore:n<l.length}})},e.prototype.updateMessageReceiptStatus=function(e,t,r,n){void 0===n&&(n="");var s=this._callCppProxy("updateMessageReceiptStatus",e,t,r,n);return Promise.resolve({code:o.ErrorCode.SUCCESS,data:s})},e.prototype.requestNaviInfo=function(e,t,o,r){return g(this,void 0,void 0,(function(){return v(this,(function(n){switch(n.label){case 0:return[4,J(this.logger,e,t,o,r)];case 1:return[2,n.sent()]}}))}))},e.prototype.getNaviInfoFromCache=function(){return this._naviInfo?h({},this._naviInfo):null},e.prototype.createLogger=function(e,t){return/^RC/.test(e)?null:new T(this._appkey,e,t)},e.prototype.getConnectedTime=function(){return this._connectedTime},e.prototype.getServerTime=function(){return Date.now()-this._cppProtocol.getDeltaTime()},e.prototype.getCurrentUserId=function(){var e;return(null===(e=this._naviInfo)||void 0===e?void 0:e.userId)||""},e.prototype._send2Renderer=function(e,t){for(var o=[],r=2;r<arguments.length;r++)o[r-2]=arguments[r];e.isDestroyed()?delete this._senders[e.id]:e.send.apply(e,S([t],o,!1))},e.prototype._send2AllRenderer=function(e,t,o){var r=this;void 0===o&&(o=[]),Object.keys(this._senders).forEach((function(n){var s=r._senders[n];o.includes(s)||r._send2Renderer(s,"__RC_CHANNEL_NOTIFICATION_FROM_MAIN__",e,t)}))},e.prototype._registerRenderers=function(e){var t=this,o=e.sender,r=o.id;this._senders[r]||(this._senders[r]=o,o.once("destroyed",(function(){delete t._senders[r]})))},e.prototype._registerMsgTypes=function(){for(var e in o.SEND_MESSAGE_TYPE_OPTION["RC:RcCmd"]={isCounted:!1,isPersited:!1},o.SEND_MESSAGE_TYPE_OPTION){var t=o.SEND_MESSAGE_TYPE_OPTION[e],r=t.isCounted,n=t.isPersited,s=t.searchProps,i=0;n&&(i|=1),r&&(i|=2),"RC:TypSts"===e&&(i=16),this.logger.info(y.P_REGTYP_O,JSON.stringify({type:e,opt:i,searchProps:s})),this._callCppProxy("registerMessageType",e,i,s)}},e.prototype._buildMessage=function(e,t){void 0===t&&(t={});var r=t.isOffLineMessage,n=t.buildFrom,s=JSON.parse(e),i=s.channelId,a=s.conversationType,c=s.targetId,u=s.senderUserId,p=s.content,l=s.objectName,d=s.messageUid,C=s.direction,f=s.status;s.source;var _=s.messageId,g=s.sentTime,v=s.readReceiptRequest,S=s.supportExt;s.extMsg;var E,m=s.pushContent,P=s.pushTitle,T=s.pushId,I=s.pushConfig,N=s.templateId,R=s.disableTitle,M=s.forcePushDetail;if(o.isObject(p))E=p;else try{E=p?JSON.parse(p):p}catch(e){E=p,this.logger.error(y.P_PARSE_JSON_MSGS_E,JSON.stringify({messageId:_}))}var O={isCounted:!1,isPersited:!1};l in o.SEND_MESSAGE_TYPE_OPTION?O=o.SEND_MESSAGE_TYPE_OPTION[l]:l in this._customMessageType&&(O=this._customMessageType[l]);var U=null;S&&(U=this._msgExpansionHandler.parseReceiveExpansion(s),"conversation"!==n&&"history"!==n||(U=this._msgExpansionHandler.parseConverOrHisExpansion(s)));var L=o.isUndefined(r)?g<this._connectedTime:r,b={};I&&(b=o.pushJSONToConfigs(this.logger,I,T));var A=h(h({},b),{pushTitle:P,pushContent:m,pushData:m,disablePushTitle:R,forceShowDetailContent:M,templateId:N}),w={channelId:i,conversationType:a,targetId:c,senderUserId:u,content:E||{},messageType:l,messageUId:d||"",messageDirection:C,isOffLineMessage:L,sentTime:g,receivedTime:0,isPersited:O.isPersited,isCounted:O.isCounted,isMentioned:!1,disableNotification:!1,isStatusMessage:!1,canIncludeExpansion:S,expansion:S?U:null,receivedStatus:f,messageId:_,pushConfig:A};if(C===o.MessageDirection.RECEIVE?w.receivedStatus=f:C===o.MessageDirection.SEND&&(w.sentStatus=f),v){var x=JSON.parse(v),D=x.hasRespond,J=x.readerInfo,k={hasRespond:D,readCount:x.readCount,totalCount:x.totalCount},H=[];if(J)for(var F in J)H.push({userId:F,readTime:J[F]});k.readerList=H,w.readReceiptInfo=k}return w},e.prototype._updateReadReceiptInfo=function(e,t){var o=this._callCppProxy("getMessage",e),r=JSON.parse(o),n=r.readReceiptRequest?JSON.parse(r.readReceiptRequest):{},s=h(h({},n),t);this._callCppProxy("updateReadReceiptRequestInfo",e,JSON.stringify(s))},e.prototype._buildConversation=function(e){var t=JSON.parse(e),r=t.channelId,n=t.conversationType,s=t.targetId,i=t.unreadCount,a=t.lastestMsg,c=t.isTop,u=t.isBlocked,p=t.matchCount,l=u?o.NotificationStatus.OPEN:o.NotificationStatus.CLOSE;return{channelId:r,conversationType:n,targetId:s,unreadMessageCount:i,latestMessage:-1===JSON.parse(a).messageId?null:this._buildMessage(a),hasMentioned:!1,mentionedInfo:null,notificationStatus:l,isTop:c,lastUnreadTime:0,matchCount:p}},e.prototype._sendConnectionStatus2Renderer=function(e){this._send2AllRenderer("status",e)},e.prototype._convertResultList=function(e,t){var o=JSON.parse(e).list;return o=o.map((function(e){var o=JSON.parse(e.obj);return t?t(o):o}))},e.prototype._connectResolve=function(e){this._promiseHandler.connect&&this._promiseHandler.connect.length>0&&(this._promiseHandler.connect.forEach((function(t){t.resolve(e)})),delete this._promiseHandler.connect)},e.prototype._setConnectionStatusListener=function(){var e=this;this._cppProtocol.setConnectionStatusListener((function(t){var r,n;switch(e.logger.info(y.P_CONNECT_S,t),t){case 10:n=o.ConnectionStatus.CONNECTING;break;case 31004:return void setTimeout((function(){e._connectResolve(o.ErrorCode.RC_CONN_USER_OR_PASSWD_ERROR)}));case 12:n=o.ConnectionStatus.DISCONNECTED;break;case 13:n=o.ConnectionStatus.BLOCKED,setTimeout((function(){e._connectResolve(o.ErrorCode.RC_CONN_USER_BLOCKED)}));break;case 31023:n=o.ConnectionStatus.FORBID_RECONNECT_BY_OTHER_SAME_CLIENT,setTimeout((function(){e._connectResolve(o.ErrorCode.RC_DISCONN_SAME_CLIENT_ON_LINE)}));break;case 31029:n=o.ConnectionStatus.USER_LOGOUT;break;case 1:case 9:case 11:case 31011:case 3e4:case 30002:n=o.ConnectionStatus.NETWORK_UNAVAILABLE;break;case 30010:n=o.ConnectionStatus.NETWORK_UNAVAILABLE,setTimeout((function(){e._connectionStatus===o.ConnectionStatus.NETWORK_UNAVAILABLE&&e._doConnect()}),5e3);break;case 0:case 33005:e.reporter.checkStart(e._naviInfo),n=o.ConnectionStatus.CONNECTED,e._connectedTime=Date.now()-e._cppProtocol.getDeltaTime(),setTimeout((function(){e._connectResolve(o.ErrorCode.SUCCESS),e._heartbeat=w.init(!0,e._handleHeartTimeout.bind(e)),e._heartbeat.start(e._sendHeartbeat.bind(e))}));break;case o.ConnectionStatus.KICKED_OFFLINE_BY_OTHER_CLIENT:n=o.ConnectionStatus.KICKED_OFFLINE_BY_OTHER_CLIENT;break;case 31030:n=o.ConnectionStatus.RC_LICENSE_EXPIRED,setTimeout((function(){e._connectResolve(o.ErrorCode.RC_LICENSE_EXPIRED)}));break;case 30004:return;case 8:case 31006:case 32061:case 32012:n=o.ConnectionStatus.REDIRECT;break;default:n=t}n!==o.ConnectionStatus.CONNECTED&&(null===(r=e._heartbeat)||void 0===r||r.stop()),e._connectionStatus=n,e._sendConnectionStatus2Renderer(n)}),this._dbOpenCallback.bind(this),(function(){var t;null===(t=e._heartbeat)||void 0===t||t.setHeartbeatRes()}))},e.prototype._handleHeartTimeout=function(){var e,t=this;this._sendConnectionStatus2Renderer(o.ConnectionStatus.NETWORK_UNAVAILABLE),null===(e=this._heartbeat)||void 0===e||e.stop(),setTimeout((function(){return t._doConnect()}),5e3)},e.prototype._dbOpenCallback=function(e){this.logger.info(y.P_DB_OPEN_O,e)},e.prototype._sendHeartbeat=function(){this._cppProtocol.sendHeartbeat()},e.prototype._setOnReceiveMessageListener=function(){var e=this;this._cppProtocol.setOnReceiveMessageListener((function(t,r,n,s){var i,a=e._buildMessage(t,{isOffLineMessage:n}),c=a.messageType;if(c!==o.MessageType.LOG_COMMAND||"rongcloudsystem"!==a.senderUserId){if(c===o.MessageType.GROUP_READ_RECEIPT_REQUEST){var u=a.content,p=u.msgId,l=u.rrn,d=u.tmn;e._updateReadReceiptInfo(p,{readCount:l,totalCount:d})}if("RC:MsgExMsg"===c)return e._msgExpansionHandler.setLocalFromExtMsg(e.logger,a),void e._sendMessageExpansion(a);if(a.canIncludeExpansion&&e._msgExpansionHandler.setLocalFromReceiveMsg(e.logger,a),c===o.MessageType.SYNC_READ_STATUS){if(a.senderUserId!==e._currentUserId)return;e._callCppProxy("clearUnreadCountByTimestamp",a.conversationType,a.targetId,a.content.lastMessageSendTime,a.channelId||"")}var C=!0;if(0!==r||s||(C=!1),c!==o.MessageType.LOG_COMMAND||"rongcloudsystem"!==a.senderUserId){if(c===o.MessageType.DELIVERED)return e._callCppProxy("setMessageDeliverTime",JSON.stringify(a.content)),void e._sendMessageDelivered(a.content.map((function(e){return{deliverTime:e.time,messageUId:e.messageUId,objectName:e.objectName,targetId:e.targetId}})));if(c!==o.MessageType.DELIVERED_MSG){var f=a.conversationType,_=a.targetId;c===o.MessageType.RECALL&&a.senderUserId===e._currentUserId&&(f=a.content.conversationType||f,_=a.content.targetId||_),e._sendMessageNotification(Object.assign(a,{hasMoreMsg:C,conversationType:f,targetId:_}))}else{var h={totalCount:a.content.tmn,list:null===(i=a.content.dl)||void 0===i?void 0:i.map((function(e){return{MessageUId:e.msgId,deliveryCount:e.drn}}))};e._sendGroupMessageDeliveredStatus(h)}}else{var g=Object.keys(e._senders).map((function(t){return e._senders[t]}));g.length>0&&e._sendMessageNotification(Object.assign(a,{hasMoreMsg:C}),g.slice(1))}}else{var v=a.content,S=v.startTime,y=v.endTime,E=v.platform,m=v.logId,P=v.uri;e.reporter.report(parseInt(S,10),parseInt(y,10),E,P,m,a.messageUId)}}),(function(){e._sendPullOfflineFinished()}))},e.prototype._sendMessageExpansion=function(e,t){void 0===t&&(t=[]);var o=e.channelId,r=e.content,n=r.put,s=r.del,i=r.mid,a={};n&&(a.updatedExpansion={channelId:o,messageUId:i,expansion:n}),s&&(a.deletedExpansion={channelId:o,messageUId:i,deletedKeys:s}),this._send2AllRenderer("expansion",a,t)},e.prototype._sendMessageNotification=function(e,t){void 0===t&&(t=[]),this._send2AllRenderer("batchMessage",e,t)},e.prototype._sendPullOfflineFinished=function(){this._send2AllRenderer("pullFinished",null)},e.prototype._sendMessageDelivered=function(e){this._send2AllRenderer("messageDelivered",e)},e.prototype._sendGroupMessageDeliveredStatus=function(e){this._send2AllRenderer("groupMessageDeliveredStatus",e)},e.prototype._setConversationStatusListener=function(){var e=this;this._cppProtocol.setConversationStatusListener((function(t){var r=JSON.parse(t).list,n=[];r.forEach((function(e){var t=JSON.parse(e.obj),r=t.conversationType,s=t.targetId,i=t.status,a=t.channelId,c={notificationStatus:2,isTop:!1};i.forEach((function(e){var t=JSON.parse(e.item);1===t.type?c.notificationStatus=1===Number(t.value)?o.NotificationStatus.OPEN:o.NotificationStatus.CLOSE:c.isTop=1===Number(t.value)})),n.push({channelId:a,conversationType:r,targetId:s,updatedItems:{notificationStatus:{val:c.notificationStatus,time:0},isTop:{val:c.isTop,time:0}}})})),e._send2AllRenderer("conversation",n)}),(function(t){e._send2AllRenderer("conversationTag",t)}))},e.prototype._setUserProfileListener=function(){var e=this;this._cppProtocol.setUserProfileListener((function(){}),(function(t){e._send2AllRenderer("tag",t),e._getRTCProfile()}))},e.prototype._getRTCProfile=function(){var e=this._callCppProxy("getRTCProfile");if(e&&this._naviInfo&&this._naviInfo.voipCallInfo!==e){var t=h(h({},this._naviInfo),{voipCallInfo:e});this._naviInfo=t,this._send2AllRenderer("onNaviDataChange",t)}},e.prototype._setRTCLivingRoomEventListener=function(){var e=this;this._cppProtocol.setRTCRoomEventListener((function(t){var o=new Uint8Array(t).buffer;e._send2AllRenderer("onRTCDataChange",o)}))},e.prototype._setChatroomEventListener=function(){var e=this;this._cppProtocol.setChatroomEventListener((function(t,o){e._send2AllRenderer("chatroom",{chatroomDestroyed:t})}))},e.prototype._setCallInfoListener=function(){var e=this;this._cppProtocol.setCallInfoListener((function(t){e._send2AllRenderer("callInfo",t)}))},e.prototype._clearListener=function(){this._cppProtocol.setOnReceiveMessageListener(),this._cppProtocol.setConnectionStatusListener(),this._cppProtocol.setOnReceiveStatusListener(),this._cppProtocol.setUserProfileListener()},e.prototype.registerMessageType=function(e,t,o,r){var n=0;t&&(n|=1),o&&(n|=2),this._customMessageType[e]={isCounted:o,isPersited:t},this.logger.info(y.P_REGTYP_O,JSON.stringify({type:e,opt:n,search:r})),this._callCppProxy("registerMessageType",e,n,r)},e.prototype.connect=function(e,t,r,n){var s=this;return this.logger.info(y.P_CONNECT_O,JSON.stringify({reconnectKickEnable:r,version:this._version}),n),this._currentToken===e&&this._connectionStatus===o.ConnectionStatus.CONNECTED?(this._sendConnectionStatus2Renderer(this._connectionStatus),Promise.resolve(o.ErrorCode.SUCCESS)):(this._currentToken=e,this._naviInfo=t,this._currentUserId=t.userId,this._promiseHandler.connect||this._doConnect(r),new Promise((function(e,t){s._promiseHandler.connect?s._promiseHandler.connect.push({resolve:e,reject:t}):s._promiseHandler.connect=[{resolve:e,reject:t}]})))},e.prototype._doConnect=function(e){var t=o.isUndefined(e)?!!this._reconnectKickEnable:!!e;this._callCppProxy("connectWithToken",this._currentToken,this._version,JSON.stringify(this._naviInfo),t)},e.prototype.reportSDKInfo=function(e){var t,o,r=JSON.stringify(e);this.logger.info(y.P_REPORT_VER_O,r),null===(o=(t=this._cppProtocol).uploadSDKVersion)||void 0===o||o.call(t,r)},e.prototype.disconnect=function(){var e;this.reporter.stop(),this._cppProtocol.disconnect(!0),null===(e=this._heartbeat)||void 0===e||e.stop(),this._connectResolve(o.ErrorCode.TIMEOUT)},e.prototype.logout=function(){this.disconnect()},e.prototype.setUserStatusListener=function(e,t){this._cppProtocol.setOnReceiveStatusListener((function(e,o){t({userId:e,status:o})}));var o=e.userIds||[];o.length&&this.subscribeUserStatus(o)},e.prototype.subscribeUserStatus=function(e){var t=this;return new Promise((function(r,n){t._callCppProxy("subscribeUserStatus",e,(function(){r(o.ErrorCode.SUCCESS)}),r)}))},e.prototype.setUserStatus=function(e){var t=this;return new Promise((function(r,n){t._callCppProxy("setUserStatus",e,(function(){r(o.ErrorCode.SUCCESS)}),r)}))},e.prototype.getUserStatus=function(e){var t=this;return new Promise((function(r,n){t._callCppProxy("getUserStatus",e,(function(e){r({code:o.ErrorCode.SUCCESS,data:{status:e}})}),(function(e){r({code:e})}))}))},e.prototype.sendMessage=function(e,t,r,n,s){var i=this;void 0===s&&(s=this.logger.createTraceId());var a=r.messageType,c=r.content,u=r.pushContent,p=r.pushData,l=r.directionalUserIdList,d=r.disableNotification,C=r.canIncludeExpansion,f=r.expansion,_=r.isVoipPush,h=r.pushConfig,g=r.channelId,v=r.isMentioned,S=r.mentionedType,E=r.mentionedUserIdList,m=r.messageId,P=h||{},T=P.iOSConfig,I=P.androidConfig,N=P.pushTitle,R=P.pushContent,M=P.pushData,O=P.disablePushTitle,U=P.forceShowDetailContent,L=P.templateId,b=o.pushConfigsToJSON(T,I);return new Promise((function(r){u=R||u||"",p=M||p||"",d=d||!1,_=_||!1,N=N||"",R=R||"",M=M||"",O=O||!1,U=U||!1,C=C||!1;var h=(null==I?void 0:I.notificationId)||"";if(l=l||[],m=m||0,g=g||"",e===o.ConversationType.GROUP&&v&&c&&(c.mentionedInfo={userIdList:E,type:S||o.MentionedType.ALL}),e===o.ConversationType.GROUP&&a===o.MessageType.READ_RECEIPT_RESPONSE&&c.receiptMessageDic)for(var P in c.receiptMessageDic)l.push(P);var T={};for(var P in f)T[P]={v:""},T[P].v=f[P];var A=L||"";i.logger.info(y.P_SEND_MSG_T,JSON.stringify({messageType:a,conversationType:e,targetId:t,channelId:g}),s);var w=i._callCppProxy("sendMessage",(function(e,t){var n=i._buildMessage(e,{isOffLineMessage:!1});return i.logger.info(y.P_SEND_MSG_R,JSON.stringify({code:t,messageUId:n.messageUId}),s),t===o.ErrorCode.SENSITIVE_REPLACE?r({code:t}):("RC:MsgExMsg"===n.messageType&&i._msgExpansionHandler.setLocalFromExtMsg(i.logger,n),n.canIncludeExpansion&&i._msgExpansionHandler.setLocalFromReceiveMsg(i.logger,n),r({code:o.ErrorCode.SUCCESS,data:n}))}),(function(e,t){var o=i._buildMessage(e,{isOffLineMessage:!1});return i.logger.warn(y.P_SEND_MSG_R,JSON.stringify({code:t,messageId:o.messageId}),s),o.sentTime=Date.now()-i._cppProtocol.getDeltaTime(),r({code:t,data:o})}),e,t,a,JSON.stringify(c),l,d,O,U,u,p,h,N,b,A,C,JSON.stringify(T),_,g,m),x=JSON.parse(w);null==n||n(x.messageId)}))},e.prototype.recallMsg=function(e,t,r,n,s){var i=this;return new Promise((function(a,c){var u,p=s.user,l=s.pushContent,d=s.channelId,C=s.extra,f=s.pushConfig,_=s.disableNotification,h=s.isDelete,g={conversationType:e,targetId:t,messageUId:r,sentTime:n,user:p,extra:C,channelId:d,isDelete:h||!1};p&&(g.user=p),C&&(g.extra=C);var v={conversationType:e,targetId:t,senderUserId:i._currentUserId,content:g,objectName:o.MessageType.RECALL,messageUid:r,direction:o.MessageDirection.SEND,status:o.ReceivedStatus.UNREAD,sentTime:n,channelId:d},S=i._buildMessage(JSON.stringify(v),{isOffLineMessage:!1});i._callCppProxy("recallMessage",(function(){a({code:o.ErrorCode.SUCCESS,data:S})}),(function(e){a({code:e})}),o.MessageType.RECALL,JSON.stringify(g),_||!1,(null==f?void 0:f.disablePushTitle)||!1,(null==f?void 0:f.forceShowDetailContent)||!1,l||"",(null==f?void 0:f.pushData)||"",(null===(u=null==f?void 0:f.androidConfig)||void 0===u?void 0:u.notificationId)||"",(null==f?void 0:f.pushTitle)||"",o.pushConfigsToJSON(null==f?void 0:f.iOSConfig,null==f?void 0:f.androidConfig),(null==f?void 0:f.templateId)||"",d)}))},e.prototype.getHistoryMessage=function(e,t,r,n,s,i,a){var c=this;return new Promise((function(u,p){r=r||0;var l=0===s,d=n+1,C=c._callCppProxy("getHistoryMessages",e,t,r,d,a,l,i),f=JSON.parse(C).list,_=[];f.reverse();for(var h=0;h<f.length;h++){var g=c._buildMessage(f[h].obj);_[h]=g}u({code:o.ErrorCode.SUCCESS,data:{list:d===_.length?_.slice(1,d):_,hasMore:n<_.length}})}))},e.prototype.getRemoteHistoryMessages=function(e,t,r,n,s,i){var a=this;return new Promise((function(c,u){r=r||0;a._callCppProxy("getRemoteHistoryMessages",e,t,r,n,(function(e,t){var r=JSON.parse(e).list,n=[];r.reverse();for(var s=0;s<r.length;s++){var i=a._buildMessage(r[s].obj);n[s]=i}c({code:o.ErrorCode.SUCCESS,data:{list:n,hasMore:!!t}})}),(function(e){c({code:e})}),s,!0,i)}))},e.prototype.deleteRemoteMessage=function(e,t,r,n){var s=this;return new Promise((function(i,a){var c=JSON.stringify(r);s._callCppProxy("deleteRemoteHistoryMessages",e,t,c,!1,n,(function(){i(o.ErrorCode.SUCCESS)}),i)}))},e.prototype.deleteRemoteMessageByTimestamp=function(e,t,r,n){var s=this;return new Promise((function(i,a){s._callCppProxy("clearRemoteHistoryMessages",e,t,r,(function(){i(o.ErrorCode.SUCCESS)}),(function(e){i(e)}),n)}))},e.prototype.clearMessages=function(e,t,r){var n=this;return new Promise((function(s,i){n._callCppProxy("clearMessages",e,t,r),s(o.ErrorCode.SUCCESS)}))},e.prototype.getConversationList=function(e,t,r,n,s){var i=this;return void 0===s&&(s=""),new Promise((function(e,t){for(var r=i._callCppProxy("getConversationList",[1,3,6,7],s),n=JSON.parse(r).list,a=[],c=0;c<n.length;c++)a.push(i._buildConversation(n[c].obj));e({code:o.ErrorCode.SUCCESS,data:a})}))},e.prototype.getConversation=function(e,t,r){var n=this;return new Promise((function(s,i){var a=n._callCppProxy("getConversation",e,t,r);if(a)s({code:o.ErrorCode.SUCCESS,data:n._buildConversation(a)});else{var c=n._cppProtocol.getHistoryMessages(e,t,0,1,"",!0,r),u=void 0;try{u=JSON.parse(c).list}catch(e){n.logger.error(y.P_PARSE_JSON_MSGS_E,null==e?void 0:e.stack),u=[]}var p=null;u.length>0&&(p=n._buildMessage(u[0].obj));var l=n._callCppProxy("getConversationNotificationStatus",e,t,r),d=n._callCppProxy("getConversationTopStatus",e,t,r);s({code:o.ErrorCode.SUCCESS,data:{conversationType:e,targetId:t,channelId:r,unreadMessageCount:0,latestMessage:p,notificationStatus:l?o.NotificationStatus.OPEN:o.NotificationStatus.CLOSE,isTop:Boolean(d),lastUnreadTime:0}})}}))},e.prototype.removeConversation=function(e,t,r){var n=this._callCppProxy("removeConversation",e,t,r);return Promise.resolve(n?o.ErrorCode.SUCCESS:o.ErrorCode.UNKNOWN)},e.prototype.clearConversations=function(e,t){var r=this;return new Promise((function(n,s){var i=[];i=o.isArray(e)?e:[o.ConversationType.PRIVATE,o.ConversationType.GROUP,o.ConversationType.SYSTEM,o.ConversationType.PUBLIC_SERVICE],r._callCppProxy("clearConversations",i,t),n(o.ErrorCode.SUCCESS)}))},e.prototype.getAllConversationUnreadCount=function(e,t,r){var n=this._callCppProxy("getTotalUnreadCount",t,r,e);return Promise.resolve({code:o.ErrorCode.SUCCESS,data:n})},e.prototype.getConversationUnreadCount=function(e,t,r){var n=this;return void 0===r&&(r=""),new Promise((function(s){var i=n._callCppProxy("getUnreadCount",e,t,r);s({code:o.ErrorCode.SUCCESS,data:i})}))},e.prototype.clearConversationUnreadCount=function(e,t,r){var n=this;return void 0===r&&(r=""),new Promise((function(s,i){n._callCppProxy("clearUnreadCount",e,t,r),s(o.ErrorCode.SUCCESS)}))},e.prototype.clearUnreadCountByTimestamp=function(e,t,r,n){var s=this;return new Promise((function(i,a){s._callCppProxy("clearUnreadCountByTimestamp",e,t,r,n),i(o.ErrorCode.SUCCESS)}))},e.prototype.getFirstUnreadMessage=function(e,t,r){var n=this;return new Promise((function(s,i){var a=n._callCppProxy("getTheFirstUnreadMessage",e,t,r),c=n._buildMessage(a);s({code:o.ErrorCode.SUCCESS,data:-1!==c.messageId?c:null})}))},e.prototype.setConversationToTop=function(e,t,r,n){var s=this;return void 0===n&&(n=""),new Promise((function(i,a){s._callCppProxy("setConversationToTop",e,t,r,n,!0),i(o.ErrorCode.SUCCESS)}))},e.prototype.setConversationHidden=function(e,t,r,n){var s=this;return new Promise((function(i,a){s._callCppProxy("setConversationHidden",e,t,r,n),i(o.ErrorCode.SUCCESS)}))},e.prototype.setConversationNotificationStatus=function(e,t,r,n){var s=this;return new Promise((function(i,a){s._callCppProxy("setConversationNotificationStatus",e,t,r,(function(){i(o.ErrorCode.SUCCESS)}),i,n)}))},e.prototype.setConversationStatus=function(e,t,r,n,s){var i=this;return new Promise((function(a,c){i._callCppProxy("setConversationStatus",e,t,r,n,(function(){a(o.ErrorCode.SUCCESS)}),a,s,!0)}))},e.prototype.getConversationNotificationStatus=function(e,t,r){var n=this;return new Promise((function(s,i){var a=n._callCppProxy("getConversationNotificationStatus",e,t,r);s({code:o.ErrorCode.SUCCESS,data:a?o.NotificationStatus.OPEN:o.NotificationStatus.CLOSE})}))},e.prototype.searchConversationByContent=function(e,t,r,n){var s=this;return new Promise((function(i,a){n=n||[1,3,6,7];for(var c=s._callCppProxy("searchConversationByContent",n,e,t,r),u=JSON.parse(c).list,p=[],l=0;l<u.length;l++)p[l]=s._buildConversation(u[l].obj);i({code:o.ErrorCode.SUCCESS,data:p})}))},e.prototype.searchConversationByContentWithAllChannel=function(e,t,r){var n=this;return new Promise((function(s,i){r=r||[1,3,6,7];for(var a=n._callCppProxy("searchConversationByContentWithAllChannel",r,e,t),c=JSON.parse(a).list,u=[],p=0;p<c.length;p++)u[p]=n._buildConversation(c[p].obj);s({code:o.ErrorCode.SUCCESS,data:u})}))},e.prototype.searchMessageByContent=function(e,t,r,n,s,i,a){var c=this;return new Promise((function(i,u){c._callCppProxy("searchMessageByContent",e,t,r,n,s,1,(function(e,t){for(var r=e?JSON.parse(e).list:[],n=[],s=0;s<r.length;s++)n[s]=c._buildMessage(r[s].obj);i({code:o.ErrorCode.SUCCESS,data:{messages:n,count:t}})}),a)}))},e.prototype.searchMessageByContentWithAllChannel=function(e,t,r,n,s){var i=this;return new Promise((function(a,c){i._callCppProxy("searchMessageByContentWithAllChannel",e,t,r,n,s,1,(function(e,t){for(var r=e?JSON.parse(e).list:[],n=[],s=0;s<r.length;s++)n[s]=i._buildMessage(r[s].obj);a({code:o.ErrorCode.SUCCESS,data:{messages:n,count:t}})}))}))},e.prototype.searchMessageByContentInTimeRangeWithAllChannel=function(e,t,r,n,s,i,a){var c=this;return new Promise((function(u,p){c._callCppProxy("searchMessageByTimestampWithAllChannel",e,t,r,n,s,i,a,(function(e){for(var t=e?JSON.parse(e).list:[],r=[],n=0;n<t.length;n++)r[n]=c._buildMessage(t[n].obj);u({code:o.ErrorCode.SUCCESS,data:{messages:r}})}))}))},e.prototype.getUnreadMentionedMessages=function(e,t,o){for(var r=JSON.parse(this._callCppProxy("getUnreadMentionedMessages",e,t,o)).list,n=0;n<r.length;n++)r[n]=this._buildMessage(r[n].obj);return r},e.prototype.addToBlacklist=function(e){var t=this;return new Promise((function(r,n){t._callCppProxy("addToBlacklist",e,(function(){r(o.ErrorCode.SUCCESS)}),r)}))},e.prototype.removeFromBlacklist=function(e){var t=this;return new Promise((function(r,n){t._callCppProxy("removeFromBlacklist",e,(function(){r(o.ErrorCode.SUCCESS)}),r)}))},e.prototype.getBlacklist=function(){var e=this;return new Promise((function(t,r){e._callCppProxy("getBlacklist",(function(e){t({code:o.ErrorCode.SUCCESS,data:e})}),(function(e){t({code:e})}))}))},e.prototype.getBlacklistStatus=function(e){var t=this;return new Promise((function(r,n){t._callCppProxy("getBlacklistStatus",e,(function(e){r({code:o.ErrorCode.SUCCESS,data:e})}),(function(e){r({code:e})}))}))},e.prototype.insertMessage=function(e,t,r){var n=this,s=r.content,i=r.senderUserId,a=r.messageType,c=r.messageDirection,u=r.readStatus,p=r.sentStatus,l=r.sentTime,d=r.searchContent,C=r.isUnread,f=r.messageUId,_=r.disableNotification,h=r.canIncludeExpansion,g=r.expansionMsg,v=r.channelId;return s=JSON.stringify(s),new Promise((function(r,S){var y=C?0:1,E=n._callCppProxy("insertMessage",e,t,i,a,s,(function(){}),(function(e){r({code:e})}),c,u,p,l,d,y,f,_,h,g,v),m=n._buildMessage(E,{isOffLineMessage:!1});m.messageUId=f,m.sentTime=l,r({code:-1===m.messageId?o.ErrorCode.MSG_INSERT_ERROR:o.ErrorCode.SUCCESS,data:m})}))},e.prototype.deleteMessages=function(e){var t=this;return new Promise((function(r,n){t._callCppProxy("deleteMessages",e),r(o.ErrorCode.SUCCESS)}))},e.prototype.deleteMessagesByTimestamp=function(e,t,r,n,s){var i=this;return new Promise((function(a,c){i._callCppProxy("deleteMessagesByTimestamp",e,t,r,n,s),a(o.ErrorCode.SUCCESS)}))},e.prototype.getMessage=function(e){var t=this;return new Promise((function(r,n){var s=t._callCppProxy("getMessage",e),i=t._buildMessage(s,{isOffLineMessage:!1});r({code:o.ErrorCode.SUCCESS,data:i})}))},e.prototype.setMessageContent=function(e,t,r){var n=this;return new Promise((function(s,i){t=JSON.stringify(t),n._callCppProxy("setMessageContent",e,t,r),s(o.ErrorCode.SUCCESS)}))},e.prototype.setMessageSearchField=function(e,t,r){var n=this;return new Promise((function(s,i){n._callCppProxy("setMessageSearchField",e,t,r),s(o.ErrorCode.SUCCESS)}))},e.prototype.setMessageSentStatus=function(e,t){var r=this;return new Promise((function(n,s){r._callCppProxy("setMessageSentStatus",e,t),n(o.ErrorCode.SUCCESS)}))},e.prototype.setMessageReceivedStatus=function(e,t){var r=this;return new Promise((function(n,s){r._callCppProxy("setMessageReceivedStatus",e,t),n(o.ErrorCode.SUCCESS)}))},e.prototype.saveConversationMessageDraft=function(e,t,o,r){throw new Error("Method not implemented.")},e.prototype.getConversationMessageDraft=function(e,t,o){throw new Error("Method not implemented.")},e.prototype.clearConversationMessageDraft=function(e,t,o){throw new Error("Method not implemented.")},e.prototype.pullConversationStatus=function(e){throw new Error("Method not implemented.")},e.prototype.batchSetConversationStatus=function(e){var t=e[0],r=t.conversationType,n=t.targetId,s=t.isTop,i=t.notificationStatus,a=t.channelId;if(void 0!==s&&void 0===i)return this.setConversationToTop(r,n,s,a);if(void 0!==i&&void 0===s){var c=i===o.NotificationStatus.OPEN;return this.setConversationNotificationStatus(r,n,c,a)}var u=i===o.NotificationStatus.OPEN;return this.setConversationStatus(r,n,u,s,a)},e.prototype.pullUserSettings=function(e){throw new Error("Method not implemented.")},e.prototype.sendReadReceiptMessage=function(e,t,r){var n=this;return new Promise((function(s){n._callCppProxy("sendReadReceipt",e,r||"",t,(function(){t.forEach((function(e){n._updateReadReceiptInfo(e,{hasRespond:!0});try{var t=JSON.parse(n._callCppProxy("getMessage",e)).messageId;n.setMessageReceivedStatus(t,1)}catch(t){n.logger.error(y.P_PARSE_JSON_MSGS_E,JSON.stringify({messageUId:e,error:null==t?void 0:t.stack}))}})),s({code:o.ErrorCode.SUCCESS})}),(function(e){s({code:e})}))}))},e.prototype.getMessageReader=function(e,t,r){var n=this;return new Promise((function(s,i){n._callCppProxy("getMessageReader",e,r,t,(function(e,r){var i=[],a={};(e=JSON.parse(e)).list.forEach((function(e){var t=JSON.parse(e.obj),o=t.id,r=t.time;i.push({userId:o,readTime:r}),a[o]=r}));var c={readerInfo:a,readCount:i.length,totalCount:r};n._updateReadReceiptInfo(t,c),s({code:o.ErrorCode.SUCCESS,data:{list:i,totalMemberCount:r}})}),(function(e){s({code:e})}))}))},e.prototype.joinChatroom=function(e,t){var r=this;return new Promise((function(n,s){r._callCppProxy("clearMessages",o.ConversationType.CHATROOM,e,""),r._callCppProxy("joinChatRoom",e,t,(function(){n(o.ErrorCode.SUCCESS)}),n)}))},e.prototype.joinExistChatroom=function(e,t){throw new Error("Method not implemented.")},e.prototype.quitChatroom=function(e){var t=this;return new Promise((function(r,n){t._callCppProxy("quitChatRoom",e,(function(){r(o.ErrorCode.SUCCESS)}),r)}))},e.prototype.getChatroomInfo=function(e,t,r){var n=this;return new Promise((function(s,i){n._callCppProxy("getChatroomInfo",e,t,r,(function(e,t){var r=e?JSON.parse(e).list:[],n=[];if(r.length>0)for(var i=0;i<r.length;i++)n.push(JSON.parse(r[i].obj));s({code:o.ErrorCode.SUCCESS,data:{userInfos:n,userCount:t}})}),(function(e){s({code:e})}))}))},e.prototype.getChatroomHistoryMessages=function(e,t,r,n){var s=this;return new Promise((function(i,a){s._callCppProxy("getChatroomHistoryMessage",e,t,r,n,(function(e){var t;try{t=JSON.parse(e)}catch(e){t={list:[]}}var r=t.list;if(r&&r.length)try{t.list=r.map((function(e){return s._buildMessage(e.obj)}))}catch(e){t.list=[]}i({code:o.ErrorCode.SUCCESS,data:t})}),(function(e){i({code:e})}),"")}))},e.prototype.setChatroomEntry=function(e,t){var r=this;return new Promise((function(n,s){var i='[{"key":"'.concat(t.key,'", "value":"').concat(t.value,'"}]');r._callCppProxy("setChatroomKV",e,i,!!t.isAutoDelete,!!t.isOverwrite,(function(){n(o.ErrorCode.SUCCESS)}),(function(e){n(e)}))}))},e.prototype.setChatroomEntries=function(e,t){var r=this;return new Promise((function(n){r._callCppProxy("setChatroomKV",e,JSON.stringify(t.entries),!!t.isAutoDelete,!!t.isOverwrite,(function(){n({code:o.ErrorCode.SUCCESS})}),(function(e){n({code:e})}))}))},e.prototype.forceSetChatroomEntry=function(e,t){return t.isOverwrite=!0,t.userId=t.userId||this._currentUserId,this.setChatroomEntry(e,t)},e.prototype.removeChatroomEntry=function(e,t){var r=this,n=[t.key];return new Promise((function(s,i){r._callCppProxy("deleteChatroomKV",e,n,!!t.isOverwrite,(function(){s(o.ErrorCode.SUCCESS)}),(function(e){s(e)}))}))},e.prototype.forceRemoveChatroomEntry=function(e,t){return t.isOverwrite=!0,t.userId=t.userId||this._currentUserId,this.removeChatroomEntry(e,t)},e.prototype.removeChatroomEntries=function(e,t){var r=this;return new Promise((function(n){var s=t.entries.map((function(e){return e.key}));r._callCppProxy("deleteChatroomKV",e,s,!!t.isOverwrite,(function(){n({code:o.ErrorCode.SUCCESS})}),(function(e){n({code:e})}))}))},e.prototype.getChatroomEntry=function(e,t){return g(this,void 0,void 0,(function(){var r;return v(this,(function(n){switch(n.label){case 0:return[4,this.getAllChatroomEntry(e)];case 1:return(r=n.sent()).code===o.ErrorCode.SUCCESS?[2,{code:o.ErrorCode.SUCCESS,data:r.data?r.data[t]:null}]:[2,{code:r.code}]}}))}))},e.prototype.getAllChatroomEntry=function(e){var t=this;return new Promise((function(r,n){t._callCppProxy("getChatroomKV",e,(function(e){var t={};try{(e?JSON.parse(e):{list:[]}).list.map((function(e){return JSON.parse(e.obj)})).forEach((function(e){t[e.key]=e.value?e.value:""}))}catch(e){}r({code:o.ErrorCode.SUCCESS,data:t})}),(function(e){r({code:e})}))}))},e.prototype.getFileToken=function(e,t,r,n){var s=this;return r=r||"",n=n||"",new Promise((function(i){var a;a=n&&"uploads"!==n?t||"":o.getUploadFileName(e,t),s._callCppProxy("getUploadToken",e,a,r,n,(function(e,t,r,n,s,c,u,p,l,d,C,f,_,h,g,v,S,y){i({code:o.ErrorCode.SUCCESS,data:{token:e,deadline:0,bosToken:t,bosDate:r,path:n,osskeyId:s,ossPolicy:c,ossSign:u,ossBucketName:p,fileName:a,s3Credential:l,s3Algorithm:d,s3Date:C,s3Policy:f,s3Signature:_,s3BucketName:h,stcAuthorization:g,stcContentSha256:v,stcDate:S,stcBucketName:y}})}),(function(e){i({code:e})}))}))},e.prototype.getFileUrl=function(e,t,r,n){var s=this;return new Promise((function(i){s._callCppProxy("getDownloadUrl",e,r,n,t-1,(function(e){i({code:o.ErrorCode.SUCCESS,data:{downloadUrl:e}})}),(function(e){i({code:e})}))}))},e.prototype.clearData=function(){var e=this;return new Promise((function(t,r){var n=e._callCppProxy("clearData");t({code:o.ErrorCode.SUCCESS,data:n})}))},e.prototype.getDeviceId=function(){var e=this._dbpath||t.resolve(r.app.getPath("userData"));return A(e)},e.prototype.getVoIPKey=function(e,t){var r=this;return new Promise((function(n,s){r._callCppProxy("getVoIPKey",e,t,"",(function(e){n({code:o.ErrorCode.SUCCESS,data:e})}),(function(e){n({code:e})}))}))},e.prototype.bindRTCRoomForChatroom=function(e){var t=this;return new Promise((function(r,n){var s=e.chatRoomId,i=e.rtcRoomId;t._callCppProxy("bindRTCRoomForChatroom",s,i,(function(){r(o.ErrorCode.SUCCESS)}),(function(e){r(e)}))}))},e.prototype.getGroupMessageDeliverList=function(e,t,r){var n=this;return new Promise((function(s,i){n._callCppProxy("getGroupMessageDeliverList",e,r,t,(function(e,t){var r=JSON.parse(e).list.map((function(e){return{time:JSON.parse(e.obj).time,userId:JSON.parse(e.obj).id}}));s({code:o.ErrorCode.SUCCESS,data:{totalCount:t,list:r}})}),(function(e){s({code:e})}))}))},e.prototype.getPrivateMessageDeliverTime=function(e,t){var r=this;return new Promise((function(n,s){var i=r._callCppProxy("getMessageDeliverTime",e);if(i)n({code:o.ErrorCode.SUCCESS,data:i});else{r._callCppProxy("getPrivateMessageDeliverList",t,e,(function(e){var t=0,r=JSON.parse(e).list;r.length>0&&(t=JSON.parse(r[0].obj).time);n({code:o.ErrorCode.SUCCESS,data:t})}),(function(e){n({code:e})}))}}))},e.prototype.rtcSignaling=function(e,t,r,n){var s=this,i=Array.prototype.slice.call(new Uint8Array(n));return new Promise((function(n){s._callCppProxy("rtcSignaling",e,t,r,i,(function(e){var t=new Uint8Array(e).buffer;n({code:o.ErrorCode.SUCCESS,buffer:t})}),(function(e){n({code:e})}))}))},e.prototype._setRTCHeartbeatListener=function(){var e=this;this._cppProtocol.setRTCHeartbeatListener((function(t,o){var r=e.rtcHeartbeatResolves[t];if(r){var n=r.find((function(e){return""===e.seqId}));n&&(n.seqId=o)}}),(function(t,o,r,n){var s=e.rtcHeartbeatResolves[t];if(s){var i=s.findIndex((function(e){return e.seqId===r}));-1!==i&&s.splice(i,1)[0].resolve({code:o,data:{version:Number(n)}})}}))},e.prototype.rtcPing=function(e,t,o){var r=this;return new Promise((function(t){var o={resolve:t,seqId:""},n=r.rtcHeartbeatResolves[e];n?n.push(o):r.rtcHeartbeatResolves[e]=[o],r._callCppProxy("sendRTCHeartbeat",[e])}))},e.prototype.createTag=function(e){var t=this;return new Promise((function(r,n){t._callCppProxy("addTag",e.tagId,e.tagName,(function(){r({code:o.ErrorCode.SUCCESS})}),(function(e){r({code:e})}))}))},e.prototype.removeTag=function(e){var t=this;return new Promise((function(r,n){t._callCppProxy("deleteTag",e,(function(){r({code:o.ErrorCode.SUCCESS})}),(function(e){r({code:e})}))}))},e.prototype.updateTag=function(e){var t=this;return new Promise((function(r,n){t._callCppProxy("renameTag",e.tagId,e.tagName,(function(){r({code:o.ErrorCode.SUCCESS})}),(function(e){r({code:e})}))}))},e.prototype.getTagList=function(){var e=this;return new Promise((function(t,r){var n=e._callCppProxy("getTags"),s=e._convertResultList(n,(function(e){return{tagId:e.tagId,tagName:e.tagName,conversationCount:e.conversationCount,createdTime:e.tagTime}}));t({code:o.ErrorCode.SUCCESS,data:s})}))},e.prototype.addTagForConversations=function(e,t){var r=this;return new Promise((function(n,s){t.forEach((function(e){e.conversationType&&(e.type=e.conversationType)}));r._callCppProxy("addConversationsForTag",e,JSON.stringify(t),(function(){n({code:o.ErrorCode.SUCCESS})}),(function(e){n({code:e})}))}))},e.prototype.removeTagForConversations=function(e,t){var r=this;return new Promise((function(n,s){t.forEach((function(e){e.conversationType&&(e.type=e.conversationType)})),r._callCppProxy("removeConversationsForTag",e,JSON.stringify(t),(function(){n({code:o.ErrorCode.SUCCESS})}),(function(e){n({code:e})}))}))},e.prototype.removeTagsForConversation=function(e,t){var r=this;return new Promise((function(n,s){r._callCppProxy("removeTagsForConversation",e.conversationType,e.targetId,e.channelId||"",t,(function(){n({code:o.ErrorCode.SUCCESS})}),(function(e){n({code:e})}))}))},e.prototype.getConversationListByTag=function(e,t,r,n){var s=this;return new Promise((function(i){var a=s._callCppProxy("getConversationsForTagByPage",e,t,r||20,n||""),c=s._convertResultList(a,(function(e){return h(h({},s._buildConversation(JSON.stringify(e))),{isTopInTag:e.topForTag})}));i({code:o.ErrorCode.SUCCESS,data:c})}))},e.prototype.getUnreadCountByTag=function(e,t){var r=this;return new Promise((function(n,s){var i=r._callCppProxy("getConversationUnreadCountForTag",e,t);n({code:o.ErrorCode.SUCCESS,data:i})}))},e.prototype.setConversationStatusInTag=function(e,t,r){var n=this;return new Promise((function(s,i){n._callCppProxy("setConversationToTopForTag",e,t.conversationType,t.targetId,t.channelId||"",r.isTop||!1,(function(){s({code:o.ErrorCode.SUCCESS})}),(function(e){s({code:e})}))}))},e.prototype.getTagsForConversation=function(e){var t=this;return new Promise((function(r,n){var s=t._callCppProxy("getTagsForConversation",e.conversationType,e.targetId,e.channelId||""),i=t._convertResultList(s,(function(e){return{tagId:e.tagId,tagName:e.tagName,isTop:e.isTop,createdTime:e.tagTime}}));r({code:o.ErrorCode.SUCCESS,data:i})}))},e.prototype.getBlockConversationList=function(){throw new Error("Method not implemented.")},e.prototype.getTopConversationList=function(){throw new Error("Method not implemented.")},e.prototype.getUnreadMentionedCount=function(e){throw new Error("Method not implemented.")},e.prototype.getAllUnreadMentionedCount=function(){throw new Error("Method not implemented.")},e.prototype.getOSInfo=function(){return g(this,void 0,void 0,(function(){var e;return v(this,(function(t){return e={arch:u.arch(),platform:u.platform(),type:u.type(),version:u.version(),release:u.release(),uptime:u.uptime(),cpus:u.cpus(),freemem:u.freemem(),totalmem:u.totalmem(),networkInterfaces:u.networkInterfaces()},[2,{code:o.ErrorCode.SUCCESS,data:e}]}))}))},e.prototype.getMainProcessInfo=function(){return g(this,void 0,void 0,(function(){return v(this,(function(e){return[2,{code:o.ErrorCode.SUCCESS,data:{title:process.title,pid:process.pid,ppid:process.ppid,platform:process.platform,arch:process.arch,uptime:process.uptime(),cpuUsage:process.cpuUsage(),memoryUsage:process.memoryUsage(),resourceUsage:process.resourceUsage()}}]}))}))},e.prototype.setCallInfo=function(e,t,r){var n=this;return new Promise((function(s){n._callCppProxy("callInfoSignaling",e,t,r,(function(e,t){s({code:o.ErrorCode.SUCCESS,data:{key:e,value:t}})}),(function(e){s({code:e})}))}))},e}(),F=function(){function e(e,t,o,r){void 0===o&&(o=""),void 0===r&&(r=!1),this._cppService=new H(e,t,o,r)}return e.prototype.getCppProto=function(){var e=this;return{destroy:function(){e._cppService.destroy()}}},e.prototype.destroy=function(){this._cppService.destroy()},e.prototype.getDeviceId=function(){return this._cppService.getDeviceId()},e.prototype.getServerTime=function(){return this._cppService.getServerTime()},e.prototype.__createLogger=function(e,t){return this._cppService.createLogger(e,t)},e}();module.exports=function(e){return function(e,t,o){if(k)return k;if(!t)throw new Error("Initializ failed, `appkey` is required!");return k=new F(t,e,null==o?void 0:o.dbpath,null==o?void 0:o.reconnectKickEnable)}(C,e.appkey,e)};
|
|
1
|
+
"use strict";var e=require("os"),t=require("path"),o=require("@rongcloud/engine"),r=require("child_process"),n=require("electron"),s=require("fs"),i=require("http"),a=require("https"),c=require("crypto");function u(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(o){if("default"!==o){var r=Object.getOwnPropertyDescriptor(e,o);Object.defineProperty(t,o,r.get?r:{enumerable:!0,get:function(){return e[o]}})}})),t.default=e,Object.freeze(t)}var p=u(e),l=process.versions.electron.replace(/\.\d+$/,""),d=t.resolve(__dirname,"binding","electron-v".concat(l,"-").concat(e.platform(),"-").concat(e.arch(),".node")),f={addon:null};try{f.addon=require(d)}catch(e){console.error("error ->",d,"\n",e)}var C=f.addon,_=function(e,t){return _=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o])},_(e,t)};function v(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function o(){this.constructor=e}_(e,t),e.prototype=null===t?Object.create(t):(o.prototype=t.prototype,new o)}var h,g=function(){return g=Object.assign||function(e){for(var t,o=1,r=arguments.length;o<r;o++)for(var n in t=arguments[o])Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e},g.apply(this,arguments)};function S(e,t,o,r){return new(o||(o=Promise))((function(n,s){function i(e){try{c(r.next(e))}catch(e){s(e)}}function a(e){try{c(r.throw(e))}catch(e){s(e)}}function c(e){var t;e.done?n(e.value):(t=e.value,t instanceof o?t:new o((function(e){e(t)}))).then(i,a)}c((r=r.apply(e,t||[])).next())}))}function y(e,t){var o,r,n,s,i={label:0,sent:function(){if(1&n[0])throw n[1];return n[1]},trys:[],ops:[]};return s={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(s[Symbol.iterator]=function(){return this}),s;function a(a){return function(c){return function(a){if(o)throw new TypeError("Generator is already executing.");for(;s&&(s=0,a[0]&&(i=0)),i;)try{if(o=1,r&&(n=2&a[0]?r.return:a[0]?r.throw||((n=r.return)&&n.call(r),0):r.next)&&!(n=n.call(r,a[1])).done)return n;switch(r=0,n&&(a=[2&a[0],n.value]),a[0]){case 0:case 1:n=a;break;case 4:return i.label++,{value:a[1],done:!1};case 5:i.label++,r=a[1],a=[0];continue;case 7:a=i.ops.pop(),i.trys.pop();continue;default:if(!(n=i.trys,(n=n.length>0&&n[n.length-1])||6!==a[0]&&2!==a[0])){i=0;continue}if(3===a[0]&&(!n||a[1]>n[0]&&a[1]<n[3])){i.label=a[1];break}if(6===a[0]&&i.label<n[1]){i.label=n[1],n=a;break}if(n&&i.label<n[2]){i.label=n[2],i.ops.push(a);break}n[2]&&i.ops.pop(),i.trys.pop();continue}a=t.call(e,i)}catch(e){a=[6,e],r=0}finally{o=n=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}([a,c])}}}function E(e,t,o){if(o||2===arguments.length)for(var r,n=0,s=t.length;n<s;n++)!r&&n in t||(r||(r=Array.prototype.slice.call(t,0,n)),r[n]=t[n]);return e.concat(r||Array.prototype.slice.call(t))}!function(e){e.P_INIT_O="P-init-O",e.P_DB_OPEN_O="P-db_open-O",e.P_CALL_MAIN_SYNC_E="P-call_main_sync-E",e.P_CALL_MAIN_E="P-call_main-E",e.P_SEND_2_MAIN_E="P-send_2_main-E",e.P_REGTYP_O="P-regtype-O",e.P_CALL_ADDON_E="P-call_addon-E",e.P_CALL_EXTRA_E="P-call_extra-E",e.P_CONNECT_S="P-connect-S",e.P_CONNECT_O="P-connect-O",e.P_REPORT_VER_O="P-report_version-O",e.P_PARSE_JSON_MSGS_E="P-parse_json_messsages-E",e.P_HTTP_REQ_E="P-http_request-E",e.P_SET_MSG_EXTEN_O="P-set_msg_extension-O",e.P_SEND_MSG_T="P-send_msg-T",e.P_SEND_MSG_R="P-send_msg-R",e.P_WRITE_LOG_T="P_WRITE_LOG_T",e.P_WRITE_LOG_R="P_WRITE_LOG_R"}(h||(h={}));var m,P={flushTimestamp:Date.now(),queue:[],locked:!1};function T(e,t){m&&clearInterval(m),m=setInterval((function(){return N(e,t)}),1e4)}function I(){for(var e,t=[],o=0;o<arguments.length;o++)t[o]=arguments[o];(e=P.queue).push.apply(e,t)}function N(e,t){var o=P.queue,r=P.flushTimestamp;if(!(P.locked||0===o.length||Date.now()-r<3e4&&o.length<200)){P.locked=!0;var n=t.createTraceId(),s=o.splice(0,200).map((function(e){var t=e.sessionId,o=e.level,r=e.time,n=e.type,s=e.tag,i=e.loggerId,a=e.content,c=e.traceId;return{level:o,time:r,type:n,tag:s,content:encodeURIComponent(JSON.stringify({loggerId:i,sessionId:t,content:a,traceId:c})).replace(/'/g,"%27")}}));t.debug(h.P_WRITE_LOG_T,"writingLen: ".concat(s.length,", queueLen: ").concat(o.length),n);var i=JSON.stringify(s);e.writeLog(i),t.debug(h.P_WRITE_LOG_R,"write done, queueLen: ".concat(o.length),n),P.flushTimestamp=Date.now(),P.locked=!1,setTimeout((function(){return N(e,t)}))}}var R=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return v(t,e),t.prototype.flush=function(e){I(e)},t}(o.BasicLogger);function O(e,t,r){void 0===r&&(r=!1);var n=t.url,s=t.headers,c=t.body,u=t.method,p=t.query,l=t.timeout,d=void 0===l?o.HTTP_TIMEOUT:l;return new Promise((function(t){var l=/^https/.test(n),f={headers:s,method:u};l&&(f.rejectUnauthorized=r,f.agent=new a.Agent(f));var C=(l?a.request:i.request)(o.appendUrl(n,p),f,(function(e){var o=e.statusCode,r="";e.setEncoding("utf8"),e.on("data",(function(e){r+=e})),e.once("end",(function(){t({status:o||0,data:r})}))}));C.once("timeout",(function(){e.warn(h.P_HTTP_REQ_E,JSON.stringify({msg:"timeout",url:n,method:u,query:p,timeout:d})),t({status:0})})),C.setTimeout(d),C.once("error",(function(o){e.warn(h.P_HTTP_REQ_E,JSON.stringify({msg:o.stack,url:n,method:u,query:p,timeout:d})),t({status:0})})),C.write(c),C.end()}))}var M,U=[],b=!1,L=function(){return S(void 0,void 0,void 0,(function(){var e,t,o,r,n,s,i,a,c;return y(this,(function(u){return b||0===U.length||(b=!0,e=U.shift(),t=e.args,o=e.resolve,r=t.addon,n=t.startTime,s=t.endTime,i=t.level,a=t.realtimeReport,c=[],r.setLogEventListener((function(e){var t=e.split(","),o=t[0],r=t[1],n=t[2],s=t[3],u=t[4],p=t.slice(5);try{var l=JSON.parse(decodeURIComponent(p.join(","))),d=l.loggerId,f=l.sessionId,C=l.content,_=l.traceId;if(!a&&i<0)return;var v={time:parseInt(r,10),level:parseInt(s,10),sessionId:"".concat(o,":").concat(f),type:n,tag:u,loggerId:d,content:C,traceId:_};c.push(v)}catch(e){console.error(e)}}),(function(e){o(c),b=!1,L()}),(function(e,t,o){})),r.pullFullLog(i,n,s,!1)),[2]}))}))},w=function(e){function t(t,r,n,s,i){var a=this,c=process.versions.electron,u="Electron|".concat(c,"|").concat(process.arch,"|").concat(process.platform);return(a=e.call(this,r,n,u,{getLogs:function(e,o,r,n){return S(this,void 0,void 0,(function(){return y(this,(function(s){switch(s.label){case 0:return[4,(i={startTime:e,endTime:o,level:r,realtimeReport:n,addon:t},S(void 0,void 0,void 0,(function(){return y(this,(function(e){return[2,new Promise((function(e){U.push({resolve:e,args:i}),L()}))]}))})))];case 1:return[2,{logs:s.sent(),dbReady:!0}]}var i}))}))},getTimestamp4RealtimeLog:function(){var e=t.getStoreValue(o.StoreKeys.REALTIME_LOG_TIMESTAMP);return parseInt(e,10)||0},setTimestamp4RealtimeLog:function(e){t.setStoreValue(o.StoreKeys.REALTIME_LOG_TIMESTAMP,e.toString())}},s)||this).subProcess=i,a}return v(t,e),t.prototype.send=function(e){return O(this.logger,e)},t.prototype.compressLogs=function(e){return S(this,void 0,void 0,(function(){var t,o,r;return y(this,(function(n){switch(n.label){case 0:return[4,this.subProcess.call("compressLogs",e)];case 1:return t=n.sent(),o=t.success,r=t.data,o?[2,{success:o,data:r}]:[2,{success:o,data:""}]}}))}))},t}(o.BasicReporter),x=null,A=function(){var t,o=Date.now(),r=[e.arch(),e.platform(),process.pid,o,Math.floor(Math.random()*o)].join("__");return t=r,c.createHash("md5").update(t).digest("hex")},D=function(e){if(x)return x;var o=t.resolve(e,"deviceId");return s.existsSync(o)?x=s.readFileSync(o).toString():(x=A(),s.writeFileSync(o,x),x)},J=function(){function e(e,t){this._hasPingRes=e,this._reconnect=t,this._timerId=0,this._isFirstPing=!0,this._lossCount=0}return e.init=function(t,o){return M?(M.stop(),M):M=new e(t,o)},e.prototype.start=function(e){var t=this,o=this._isFirstPing?0:15e3;this._timerId=setTimeout((function(){return t._isFirstPing=!1,t._hasPingRes?(e(),t._hasPingRes=!1,t.start(e)):t._lossCount<4?(t._lossCount++,e(),t.start(e)):void t._reconnect()}),o)},e.prototype.stop=function(){this._lossCount=0,clearTimeout(this._timerId)},e.prototype.setHeartbeatRes=function(){this._hasPingRes=!0,this._lossCount=0},e}(),k=function(){function e(e){this._cppProto=e,this._setTime=15962112e5}return e.prototype._setToProtocol=function(e,t,o,r,n,s){var i=JSON.stringify(n);"{}"!==i&&e.info(h.P_SET_MSG_EXTEN_O,JSON.stringify({messageUId:r,ext:n})),this._cppProto.setMessageExtension(t,o,r,i,s)},e.prototype.setLocalFromReceiveMsg=function(e,t){var o=t.channelId,r=t.conversationType,n=t.targetId,s=t.messageUId,i=t.expansion,a=t.sentTime,c={};for(var u in i)c[u]={v:"",ts:0},c[u].v=i[u],c[u].ts=a;this._setToProtocol(e,r,n,s,c,o||"")},e.prototype.setLocalFromExtMsg=function(e,t){var o=t.channelId,r=t.conversationType,n=t.targetId;t.messageUId;var s=t.content,i=t.sentTime,a=s,c=a.put,u=this._cppProto.getMessage(a.mid),p=JSON.parse(u).extMsg,l=JSON.parse(p||"{}");if(c)for(var d in c){var f=l[d];f&&f.ts<i-this._setTime?(f.v=c[d],f.ts=i-this._setTime):(l[d]={v:"",ts:0},l[d].v=c[d],l[d].ts=i-this._setTime)}a.del&&a.del.forEach((function(e){delete l[e]})),this._setToProtocol(e,r,n,a.mid,l,o||"")},e.prototype.parseReceiveExpansion=function(e){var t=JSON.parse(e.extMsg||"{}"),o={};for(var r in t)o[r]=t[r].v;return o},e.prototype.parseConverOrHisExpansion=function(e){var t=JSON.parse(e.extMsg),o=JSON.parse(t||"{}"),r={};for(var n in o)r[n]=o[n].v;return r},e}(),H=null;function j(e,t,r,n,s){return void 0===s&&(s=!0),S(this,void 0,void 0,(function(){var i;return y(this,(function(a){switch(a.label){case 0:return H?[2,H]:(H=function(e,t,r,n,s){return void 0===s&&(s=!0),S(this,void 0,void 0,(function(){var i,a,c,u,p,l,d;return y(this,(function(f){switch(f.label){case 0:i="token=".concat(encodeURIComponent(n),"&v=").concat((C="5.6.0",C.match(/\d+(\.\d+){2}/)[0]),"&p=PC&ev=").concat("5.6.0"),a=0,c=t.length,f.label=1;case 1:return a<c?(u="".concat(t[a],"/navi.json?r=").concat(Date.now()),e.info(o.LogTagId.O,"request navi -> url: ".concat(u,", body: ").concat(i)),[4,O(e,{method:"POST",headers:{appId:r},body:i,url:u},s)]):[3,4];case 2:if(200!==(p=f.sent()).status)return e.error("request navi failed -> ".concat(u)),p.data&&e.error(p.data),[3,3];e.info(o.LogTagId.O,"request navi success -> ".concat(u));try{return l=JSON.parse(p.data),d=/^https/.test(u)?"https":"http",l.protocol=d,[2,l]}catch(t){e.error("parse navi err => ".concat(p.data))}f.label=3;case 3:return a+=1,[3,1];case 4:return[2,null]}var C}))}))}(e,t,r,n,s),[4,H]);case 1:return i=a.sent(),H=null,[2,i]}}))}))}var B,F=function(){function e(e){var t=this;this.p=e,this.count=0,this.maps={},this.p.on("message",(function(e){var o=e.reqId,r=e.success,n=e.data,s=t.maps[o];s&&(s({success:r,data:n}),delete t.maps[o])}))}return e.prototype.call=function(e){for(var t=this,o=[],r=1;r<arguments.length;r++)o[r-1]=arguments[r];return new Promise((function(r){var n=++t.count;t.maps[n]=r;var s={reqId:n,method:e,args:o};t.p.send(s)}))},e}(),G=function(e){if(!s.existsSync(e)){var o=t.resolve(e,"..");s.existsSync(o)||G(o),s.mkdirSync(e)}},q=function(){function e(e,s,i,a){var c=this;this._appkey=e,this._cppProtocol=s,this._dbpath=i,this._reconnectKickEnable=a,this._currentToken="",this._connectionStatus=o.ConnectionStatus.DISCONNECTED,this._promiseHandler={},this._customMessageType={},this._connectedTime=0,this._currentUserId="",this._naviInfo=null,this._version="5.6.0",this._senders={},this.rtcHeartbeatResolves={};var u=this._dbpath||t.resolve(n.app.getPath("userData")),p=D(u);this._cppProtocol.initWithAppkey(e,u,this._version.replace(/-.*/,""));var l=r.fork(t.resolve(__dirname,"sub-process.js"));this.subProxy=new F(l);var d=t.resolve(u,"RongCloud/rclogs",e);G(d),function(e,t,r){r.initLogModule(t,e,o.getUUID())}(e,d,this._cppProtocol),this.logger=new R(this._appkey,"RC-M","IM"),T(this._cppProtocol,this.logger),this.reporter=new w(this._cppProtocol,e,p,this.logger,this.subProxy),this.logger.info(h.P_INIT_O,JSON.stringify({appkey:e,dbpath:u,proto_commit:this._cppProtocol.getNodeVersion(),deviceId:p,commit:"6c29872ce3b2c278ea6be6a73043dc71c366888b"})),this._callCppProxy("setDeviceId",p),this._registerMsgTypes(),this._setConnectionStatusListener(),this._setOnReceiveMessageListener(),this._setConversationStatusListener(),this._setUserProfileListener(),this._setRTCHeartbeatListener(),this._setRTCLivingRoomEventListener(),this._setChatroomEventListener(),this._setCallInfoListener(),n.ipcMain.on("__RC_CHANNEL_CALL_MAIN_SYNC__",(function(e,t){for(var r=[],n=2;n<arguments.length;n++)r[n-2]=arguments[n];return S(c,void 0,void 0,(function(){var n,s,i;return y(this,(function(a){switch(a.label){case 0:if("function"!=typeof(n=this[t]))return this.logger.error(h.P_CALL_MAIN_SYNC_E,JSON.stringify({method:t,error:"not found"})),e.returnValue=o.ErrorCode.NOT_SUPPORT,[2];s=o.ErrorCode.EXTRA_METHOD_UNDEFINED,a.label=1;case 1:return a.trys.push([1,3,,4]),[4,n.call.apply(n,E([this],r,!1))];case 2:return s=a.sent(),[3,4];case 3:return i=a.sent(),this.logger.error(h.P_CALL_MAIN_SYNC_E,JSON.stringify({error:null==i?void 0:i.stack,method:t})),[3,4];case 4:return e.returnValue=s,[2]}}))}))})),n.ipcMain.on("__RC_CHANNEL_CALL_MAIN__",(function(e,t,r){for(var n=[],s=3;s<arguments.length;s++)n[s-3]=arguments[s];return S(c,void 0,void 0,(function(){var s,i,a,c,u=this;return y(this,(function(p){switch(p.label){case 0:if("function"!=typeof(s=this[r]))return this.logger.error(h.P_CALL_MAIN_E,JSON.stringify({method:r,error:"not found"})),this._send2Renderer(e.sender,"__RC_CHANNEL_RESULT_FROM_MAIN__",t,o.ErrorCode.NOT_SUPPORT),[2];"sendMessage"===r&&(i=n[3],n[3]=function(t){u._send2Renderer(e.sender,"__RC_CHANNEL_RESULT_FROM_MAIN__",i,t)}),a=o.ErrorCode.EXTRA_METHOD_UNDEFINED,p.label=1;case 1:return p.trys.push([1,3,,4]),[4,s.call.apply(s,E([this],n,!1))];case 2:return a=p.sent(),[3,4];case 3:return c=p.sent(),this.logger.error(h.P_CALL_MAIN_E,JSON.stringify({error:null==c?void 0:c.stack,method:r})),[3,4];case 4:return this._send2Renderer(e.sender,"__RC_CHANNEL_RESULT_FROM_MAIN__",t,a),[2]}}))}))})),n.ipcMain.on("__RC_CHANNEL_SEND_2_MAIN__",(function(e,t){for(var o=[],r=2;r<arguments.length;r++)o[r-2]=arguments[r];var n=c[t];if("function"==typeof n)try{n.call.apply(n,E([c],o,!1))}catch(e){c.logger.error(h.P_SEND_2_MAIN_E,JSON.stringify({error:null==e?void 0:e.stack,method:t}))}else c.logger.error(h.P_SEND_2_MAIN_E,JSON.stringify({method:t,error:"not found"}))})),n.ipcMain.on("__RC_INNER_COMMAND_INIT__",this._registerRenderers.bind(this)),this._msgExpansionHandler=new k(this._cppProtocol)}return e.prototype._callCppProxy=function(e){for(var t,o=[],r=1;r<arguments.length;r++)o[r-1]=arguments[r];var n=this.logger.createTraceId();try{var s=(t=this._cppProtocol)[e].apply(t,o);return s}catch(t){this.logger.error(h.P_CALL_ADDON_E,JSON.stringify({stack:null==t?void 0:t.stack,method:e}),n)}},e.prototype.sendHTTPRequest=function(e){return O(this.logger,e)},e.prototype.onRendererLogsReceived=function(e){I.apply(void 0,e)},e.prototype.getCppProto=function(){var e=this;return{destroy:function(){e._cppProtocol.destroy()}}},e.prototype.destroy=function(){this._cppProtocol.destroy()},e.prototype.callExtra=function(e){for(var t=[],r=1;r<arguments.length;r++)t[r-1]=arguments[r];var n=this[e];if(!n)return this.logger.warn(h.P_CALL_EXTRA_E,JSON.stringify({method:e,error:"not found"})),Promise.resolve({code:o.ErrorCode.EXTRA_METHOD_UNDEFINED});try{var s=n.call.apply(n,E([this],t,!1));return s}catch(t){this.logger.error(h.P_CALL_EXTRA_E,JSON.stringify({error:null==t?void 0:t.stack,method:e}))}return Promise.resolve({code:o.ErrorCode.MAIN_PROCESS_ERROR})},e.prototype.getConversationsByPage=function(e,t,r,n){var s,i=this,a=this._callCppProxy("getConversationListByPage",e,t,r,n||"");try{s=JSON.parse(a).list.map((function(e){return i._buildConversation(e.obj)}))}catch(e){return Promise.resolve({code:o.ErrorCode.MAIN_PROCESS_ERROR})}return Promise.resolve({code:o.ErrorCode.SUCCESS,data:s})},e.prototype.getConversationListWithAllChannel=function(){var e,t=this,r=[o.ConversationType.PRIVATE,o.ConversationType.GROUP],n=this._callCppProxy("getConversationListWithAllChannel",r);try{e=JSON.parse(n).list.map((function(e){return t._buildConversation(e.obj)}))}catch(e){return Promise.resolve({code:o.ErrorCode.MAIN_PROCESS_ERROR})}return Promise.resolve({code:o.ErrorCode.SUCCESS,data:e})},e.prototype.getConversationListWithAllChannelByPage=function(e,t){var r,n=this,s=[o.ConversationType.PRIVATE,o.ConversationType.GROUP],i=this._callCppProxy("getConversationListWithAllChannelByPage",s,e,t);try{r=JSON.parse(i).list.map((function(e){return n._buildConversation(e.obj)}))}catch(e){return Promise.resolve({code:o.ErrorCode.MAIN_PROCESS_ERROR})}return Promise.resolve({code:o.ErrorCode.SUCCESS,data:r})},e.prototype.getHistoryMessagesByObjectNames=function(e,t,r,n,s,i,a){var c=0===i,u=n+1,p=this._callCppProxy("getHistoryMessagesByObjectNames",e,t,r,u,s,c,a||""),l=[];try{var d=JSON.parse(p).list;d.reverse();for(var f=0;f<d.length;f++){var C=this._buildMessage(d[f].obj);l[f]=C}}catch(e){return Promise.resolve({code:o.ErrorCode.MAIN_PROCESS_ERROR})}return Promise.resolve({code:o.ErrorCode.SUCCESS,data:{list:u===l.length?l.slice(1,u):l,hasMore:n<l.length}})},e.prototype.updateMessageReceiptStatus=function(e,t,r,n){void 0===n&&(n="");var s=this._callCppProxy("updateMessageReceiptStatus",e,t,r,n);return Promise.resolve({code:o.ErrorCode.SUCCESS,data:s})},e.prototype.requestNaviInfo=function(e,t,o,r){return S(this,void 0,void 0,(function(){var n;return y(this,(function(s){switch(s.label){case 0:return[4,j(this.logger,e,t,o,r)];case 1:return(n=s.sent())&&(this._naviInfo=n),[2,n]}}))}))},e.prototype.getNaviInfoFromCache=function(){return this._naviInfo?g({},this._naviInfo):null},e.prototype.createLogger=function(e,t){return/^RC/.test(e)?null:new R(this._appkey,e,t)},e.prototype.getConnectedTime=function(){return this._connectedTime},e.prototype.getServerTime=function(){return Date.now()-this._cppProtocol.getDeltaTime()},e.prototype.getCurrentUserId=function(){var e;return(null===(e=this._naviInfo)||void 0===e?void 0:e.userId)||""},e.prototype._send2Renderer=function(e,t){for(var o=[],r=2;r<arguments.length;r++)o[r-2]=arguments[r];e.isDestroyed()?delete this._senders[e.id]:e.send.apply(e,E([t],o,!1))},e.prototype._send2AllRenderer=function(e,t,o){var r=this;void 0===o&&(o=[]),Object.keys(this._senders).forEach((function(n){var s=r._senders[n];o.includes(s)||r._send2Renderer(s,"__RC_CHANNEL_NOTIFICATION_FROM_MAIN__",e,t)}))},e.prototype._registerRenderers=function(e){var t=this,o=e.sender,r=o.id;this._senders[r]||(this._senders[r]=o,o.once("destroyed",(function(){delete t._senders[r]})))},e.prototype._registerMsgTypes=function(){for(var e in o.SEND_MESSAGE_TYPE_OPTION["RC:RcCmd"]={isCounted:!1,isPersited:!1},o.SEND_MESSAGE_TYPE_OPTION){var t=o.SEND_MESSAGE_TYPE_OPTION[e],r=t.isCounted,n=t.isPersited,s=t.searchProps,i=0;n&&(i|=1),r&&(i|=2),"RC:TypSts"===e&&(i=16),this._callCppProxy("registerMessageType",e,i,s)}},e.prototype._buildMessage=function(e,t){void 0===t&&(t={});var r=t.isOffLineMessage,n=t.buildFrom,s=JSON.parse(e),i=s.channelId,a=s.conversationType,c=s.targetId,u=s.senderUserId,p=s.content,l=s.objectName,d=s.messageUid,f=s.direction,C=s.status;s.source;var _=s.messageId,v=s.sentTime,S=s.readReceiptRequest,y=s.supportExt;s.extMsg;var E,m=s.pushContent,P=s.pushTitle,T=s.pushId,I=s.pushConfig,N=s.templateId,R=s.disableTitle,O=s.forcePushDetail;if(o.isObject(p))E=p;else try{E=p?JSON.parse(p):p}catch(e){E=p,this.logger.error(h.P_PARSE_JSON_MSGS_E,JSON.stringify({messageId:_}))}var M={isCounted:!1,isPersited:!1};l in o.SEND_MESSAGE_TYPE_OPTION?M=o.SEND_MESSAGE_TYPE_OPTION[l]:l in this._customMessageType&&(M=this._customMessageType[l]);var U=null;y&&(U=this._msgExpansionHandler.parseReceiveExpansion(s),"conversation"!==n&&"history"!==n||(U=this._msgExpansionHandler.parseConverOrHisExpansion(s)));var b=o.isUndefined(r)?v<this._connectedTime:r,L={};I&&(L=o.pushJSONToConfigs(this.logger,I,T));var w=g(g({},L),{pushTitle:P,pushContent:m,pushData:m,disablePushTitle:R,forceShowDetailContent:O,templateId:N}),x={channelId:i,conversationType:a,targetId:c,senderUserId:u,content:E||{},messageType:l,messageUId:d||"",messageDirection:f,isOffLineMessage:b,sentTime:v,receivedTime:0,isPersited:M.isPersited,isCounted:M.isCounted,isMentioned:!1,disableNotification:!1,isStatusMessage:!1,canIncludeExpansion:y,expansion:y?U:null,receivedStatus:C,messageId:_,pushConfig:w};if(f===o.MessageDirection.RECEIVE?x.receivedStatus=C:f===o.MessageDirection.SEND&&(x.sentStatus=C),S){var A=JSON.parse(S),D=A.hasRespond,J=A.readerInfo,k={hasRespond:D,readCount:A.readCount,totalCount:A.totalCount},H=[];if(J)for(var j in J)H.push({userId:j,readTime:J[j]});k.readerList=H,x.readReceiptInfo=k}return x},e.prototype._updateReadReceiptInfo=function(e,t){var o=this._callCppProxy("getMessage",e),r=JSON.parse(o),n=r.readReceiptRequest?JSON.parse(r.readReceiptRequest):{},s=g(g({},n),t);this._callCppProxy("updateReadReceiptRequestInfo",e,JSON.stringify(s))},e.prototype._buildConversation=function(e){var t=JSON.parse(e),r=t.channelId,n=t.conversationType,s=t.targetId,i=t.unreadCount,a=t.lastestMsg,c=t.isTop,u=t.isBlocked,p=t.matchCount,l=u?o.NotificationStatus.OPEN:o.NotificationStatus.CLOSE;return{channelId:r,conversationType:n,targetId:s,unreadMessageCount:i,latestMessage:-1===JSON.parse(a).messageId?null:this._buildMessage(a),hasMentioned:!1,mentionedInfo:null,notificationStatus:l,isTop:c,lastUnreadTime:0,matchCount:p}},e.prototype._sendConnectionStatus2Renderer=function(e){this._send2AllRenderer("status",e)},e.prototype._convertResultList=function(e,t){var o=JSON.parse(e).list;return o=o.map((function(e){var o=JSON.parse(e.obj);return t?t(o):o}))},e.prototype._connectResolve=function(e){this._promiseHandler.connect&&this._promiseHandler.connect.length>0&&(this._promiseHandler.connect.forEach((function(t){t.resolve(e)})),delete this._promiseHandler.connect)},e.prototype._setConnectionStatusListener=function(){var e=this;this._cppProtocol.setConnectionStatusListener((function(t){var r,n;switch(e.logger.info(h.P_CONNECT_S,t),t){case 10:n=o.ConnectionStatus.CONNECTING;break;case 31004:setTimeout((function(){e._connectResolve(o.ErrorCode.RC_CONN_USER_OR_PASSWD_ERROR)})),n=o.ConnectionStatus.RC_CONN_USER_OR_PASSWD_ERROR;break;case 12:n=o.ConnectionStatus.DISCONNECTED;break;case 13:n=o.ConnectionStatus.BLOCKED,setTimeout((function(){e._connectResolve(o.ErrorCode.RC_CONN_USER_BLOCKED)}));break;case 31023:n=o.ConnectionStatus.FORBID_RECONNECT_BY_OTHER_SAME_CLIENT,setTimeout((function(){e._connectResolve(o.ErrorCode.RC_DISCONN_SAME_CLIENT_ON_LINE)}));break;case 31029:n=o.ConnectionStatus.USER_LOGOUT;break;case 1:case 9:case 11:case 31011:case 3e4:case 30002:n=o.ConnectionStatus.NETWORK_UNAVAILABLE;break;case 30010:n=o.ConnectionStatus.NETWORK_UNAVAILABLE,setTimeout((function(){e._connectionStatus===o.ConnectionStatus.NETWORK_UNAVAILABLE&&e._doConnect()}),5e3);break;case 0:case 33005:e.reporter.checkStart(e._naviInfo),n=o.ConnectionStatus.CONNECTED,e._connectedTime=Date.now()-e._cppProtocol.getDeltaTime(),setTimeout((function(){e._connectResolve(o.ErrorCode.SUCCESS),e._heartbeat=J.init(!0,e._handleHeartTimeout.bind(e)),e._heartbeat.start(e._sendHeartbeat.bind(e))}));break;case o.ConnectionStatus.KICKED_OFFLINE_BY_OTHER_CLIENT:n=o.ConnectionStatus.KICKED_OFFLINE_BY_OTHER_CLIENT;break;case 31030:n=o.ConnectionStatus.RC_LICENSE_EXPIRED,setTimeout((function(){e._connectResolve(o.ErrorCode.RC_LICENSE_EXPIRED)}));break;case 30004:return;case 8:case 31006:case 32061:case 32012:n=o.ConnectionStatus.REDIRECT;break;default:n=t}n!==o.ConnectionStatus.CONNECTED&&(null===(r=e._heartbeat)||void 0===r||r.stop()),e._connectionStatus=n,e._sendConnectionStatus2Renderer(n)}),this._dbOpenCallback.bind(this),(function(){var t;null===(t=e._heartbeat)||void 0===t||t.setHeartbeatRes()}))},e.prototype._handleHeartTimeout=function(){var e,t=this;this._sendConnectionStatus2Renderer(o.ConnectionStatus.NETWORK_UNAVAILABLE),null===(e=this._heartbeat)||void 0===e||e.stop(),setTimeout((function(){return t._doConnect()}),5e3)},e.prototype._dbOpenCallback=function(e){this.logger.info(h.P_DB_OPEN_O,e)},e.prototype._sendHeartbeat=function(){this._cppProtocol.sendHeartbeat()},e.prototype._setOnReceiveMessageListener=function(){var e=this;this._cppProtocol.setOnReceiveMessageListener((function(t,r,n,s){var i,a=e._buildMessage(t,{isOffLineMessage:n}),c=a.messageType;if(c!==o.MessageType.LOG_COMMAND||"rongcloudsystem"!==a.senderUserId){if(c===o.MessageType.GROUP_READ_RECEIPT_REQUEST){var u=a.content,p=u.msgId,l=u.rrn,d=u.tmn;e._updateReadReceiptInfo(p,{readCount:l,totalCount:d})}if("RC:MsgExMsg"===c)return e._msgExpansionHandler.setLocalFromExtMsg(e.logger,a),void e._sendMessageExpansion(a);if(a.canIncludeExpansion&&e._msgExpansionHandler.setLocalFromReceiveMsg(e.logger,a),c===o.MessageType.SYNC_READ_STATUS){if(a.senderUserId!==e._currentUserId)return;e._callCppProxy("clearUnreadCountByTimestamp",a.conversationType,a.targetId,a.content.lastMessageSendTime,a.channelId||"")}var f=!0;if(0!==r||s||(f=!1),c!==o.MessageType.LOG_COMMAND||"rongcloudsystem"!==a.senderUserId){if(c===o.MessageType.DELIVERED)return e._callCppProxy("setMessageDeliverTime",JSON.stringify(a.content)),void e._sendMessageDelivered(a.content.map((function(e){return{deliverTime:e.time,messageUId:e.messageUId,objectName:e.objectName,targetId:e.targetId}})));if(c!==o.MessageType.DELIVERED_MSG){var C=a.conversationType,_=a.targetId;c===o.MessageType.RECALL&&a.senderUserId===e._currentUserId&&(C=a.content.conversationType||C,_=a.content.targetId||_),e._sendMessageNotification(Object.assign(a,{hasMoreMsg:f,conversationType:C,targetId:_}))}else{var v={totalCount:a.content.tmn,list:null===(i=a.content.dl)||void 0===i?void 0:i.map((function(e){return{MessageUId:e.msgId,deliveryCount:e.drn}}))};e._sendGroupMessageDeliveredStatus(v)}}else{var h=Object.keys(e._senders).map((function(t){return e._senders[t]}));h.length>0&&e._sendMessageNotification(Object.assign(a,{hasMoreMsg:f}),h.slice(1))}}else{var g=a.content,S=g.startTime,y=g.endTime,E=g.platform,m=g.logId,P=g.uri;e.reporter.report(parseInt(S,10),parseInt(y,10),E,P,m,a.messageUId)}}),(function(){e._sendPullOfflineFinished()}))},e.prototype._sendMessageExpansion=function(e,t){void 0===t&&(t=[]);var o=e.channelId,r=e.content,n=r.put,s=r.del,i=r.mid,a={};n&&(a.updatedExpansion={channelId:o,messageUId:i,expansion:n}),s&&(a.deletedExpansion={channelId:o,messageUId:i,deletedKeys:s}),this._send2AllRenderer("expansion",a,t)},e.prototype._sendMessageNotification=function(e,t){void 0===t&&(t=[]),this._send2AllRenderer("batchMessage",e,t)},e.prototype._sendPullOfflineFinished=function(){this._send2AllRenderer("pullFinished",null)},e.prototype._sendMessageDelivered=function(e){this._send2AllRenderer("messageDelivered",e)},e.prototype._sendGroupMessageDeliveredStatus=function(e){this._send2AllRenderer("groupMessageDeliveredStatus",e)},e.prototype._setConversationStatusListener=function(){var e=this;this._cppProtocol.setConversationStatusListener((function(t){var r=JSON.parse(t).list,n=[];r.forEach((function(e){var t=JSON.parse(e.obj),r=t.conversationType,s=t.targetId,i=t.status,a=t.channelId,c={notificationStatus:2,isTop:!1};i.forEach((function(e){var t=JSON.parse(e.item);1===t.type?c.notificationStatus=1===Number(t.value)?o.NotificationStatus.OPEN:o.NotificationStatus.CLOSE:c.isTop=1===Number(t.value)})),n.push({channelId:a,conversationType:r,targetId:s,updatedItems:{notificationStatus:{val:c.notificationStatus,time:0},isTop:{val:c.isTop,time:0}}})})),e._send2AllRenderer("conversation",n)}),(function(t){e._send2AllRenderer("conversationTag",t)}))},e.prototype._setUserProfileListener=function(){var e=this;this._cppProtocol.setUserProfileListener((function(){}),(function(t){e._send2AllRenderer("tag",t),e._getRTCProfile()}))},e.prototype._getRTCProfile=function(){var e=this._callCppProxy("getRTCProfile");if(e&&this._naviInfo&&this._naviInfo.voipCallInfo!==e){var t=g(g({},this._naviInfo),{voipCallInfo:e});this._naviInfo=t,this._send2AllRenderer("onNaviDataChange",t)}},e.prototype._setRTCLivingRoomEventListener=function(){var e=this;this._cppProtocol.setRTCRoomEventListener((function(t){var o=new Uint8Array(t).buffer;e._send2AllRenderer("onRTCDataChange",o)}))},e.prototype._setChatroomEventListener=function(){var e=this;this._cppProtocol.setChatroomEventListener((function(t,o){e._send2AllRenderer("chatroom",{chatroomDestroyed:t})}))},e.prototype._setCallInfoListener=function(){var e=this;this._cppProtocol.setCallInfoListener((function(t){e._send2AllRenderer("callInfo",t)}))},e.prototype._clearListener=function(){this._cppProtocol.setOnReceiveMessageListener(),this._cppProtocol.setConnectionStatusListener(),this._cppProtocol.setOnReceiveStatusListener(),this._cppProtocol.setUserProfileListener()},e.prototype.registerMessageType=function(e,t,o,r){var n=0;t&&(n|=1),o&&(n|=2),this._customMessageType[e]={isCounted:o,isPersited:t},this.logger.info(h.P_REGTYP_O,JSON.stringify({type:e,opt:n,search:r})),this._callCppProxy("registerMessageType",e,n,r)},e.prototype.connect=function(e,t,r,n){var s=this;return this.logger.info(h.P_CONNECT_O,JSON.stringify({reconnectKickEnable:r,version:this._version}),n),this._currentToken===e&&this._connectionStatus===o.ConnectionStatus.CONNECTED?(this._sendConnectionStatus2Renderer(this._connectionStatus),Promise.resolve(o.ErrorCode.SUCCESS)):(this._currentToken=e,this._naviInfo=t,this._currentUserId=t.userId,this._promiseHandler.connect||this._doConnect(r),new Promise((function(e,t){s._promiseHandler.connect?s._promiseHandler.connect.push({resolve:e,reject:t}):s._promiseHandler.connect=[{resolve:e,reject:t}]})))},e.prototype._doConnect=function(e){var t=o.isUndefined(e)?!!this._reconnectKickEnable:!!e;this._callCppProxy("connectWithToken",this._currentToken,this._version,JSON.stringify(this._naviInfo),t)},e.prototype.reportSDKInfo=function(e){var t,o,r=JSON.stringify(g(g({},e),{"electron-main":"5.6.0"}));this.logger.info(h.P_REPORT_VER_O,r),null===(o=(t=this._cppProtocol).uploadSDKVersion)||void 0===o||o.call(t,r)},e.prototype.disconnect=function(){var e;this.reporter.stop(),this._cppProtocol.disconnect(!0),null===(e=this._heartbeat)||void 0===e||e.stop(),this._connectResolve(o.ErrorCode.TIMEOUT)},e.prototype.logout=function(){this.disconnect()},e.prototype.setUserStatusListener=function(e,t){this._cppProtocol.setOnReceiveStatusListener((function(e,o){t({userId:e,status:o})}));var o=e.userIds||[];o.length&&this.subscribeUserStatus(o)},e.prototype.subscribeUserStatus=function(e){var t=this;return new Promise((function(r,n){t._callCppProxy("subscribeUserStatus",e,(function(){r(o.ErrorCode.SUCCESS)}),r)}))},e.prototype.setUserStatus=function(e){var t=this;return new Promise((function(r,n){t._callCppProxy("setUserStatus",e,(function(){r(o.ErrorCode.SUCCESS)}),r)}))},e.prototype.getUserStatus=function(e){var t=this;return new Promise((function(r,n){t._callCppProxy("getUserStatus",e,(function(e){r({code:o.ErrorCode.SUCCESS,data:{status:e}})}),(function(e){r({code:e})}))}))},e.prototype.sendMessage=function(e,t,r,n,s){var i=this;void 0===s&&(s=this.logger.createTraceId());var a=r.messageType,c=r.content,u=r.pushContent,p=r.pushData,l=r.directionalUserIdList,d=r.disableNotification,f=r.canIncludeExpansion,C=r.expansion,_=r.isVoipPush,v=r.pushConfig,g=r.channelId,S=r.isMentioned,y=r.mentionedType,E=r.mentionedUserIdList,m=r.messageId,P=v||{},T=P.iOSConfig,I=P.androidConfig,N=P.pushTitle,R=P.pushContent,O=P.pushData,M=P.disablePushTitle,U=P.forceShowDetailContent,b=P.templateId,L=o.pushConfigsToJSON(T,I);return new Promise((function(r){var v,P,T;u=R||u||"",p=O||p||"",d=d||!1,_=_||!1,N=N||"",R=R||"",O=O||"",M=M||!1,U=U||!1,f=f||!1;var w=(null==I?void 0:I.notificationId)||"";if(l=l||[],m=m||0,g=g||"",e===o.ConversationType.GROUP&&S&&c&&(c.mentionedInfo={userIdList:(null===(v=c.mentionedInfo)||void 0===v?void 0:v.userIdList)||E||[],type:(null===(P=c.mentionedInfo)||void 0===P?void 0:P.type)||y||o.MentionedType.ALL,mentionedContent:(null===(T=c.mentionedInfo)||void 0===T?void 0:T.mentionedContent)||""}),e===o.ConversationType.GROUP&&a===o.MessageType.READ_RECEIPT_RESPONSE&&c.receiptMessageDic)for(var x in c.receiptMessageDic)l.push(x);var A={};for(var x in C)A[x]={v:""},A[x].v=C[x];var D=b||"";i.logger.info(h.P_SEND_MSG_T,JSON.stringify({messageType:a,conversationType:e,targetId:t,channelId:g}),s);var J=i._callCppProxy("sendMessage",(function(e,t){var n=i._buildMessage(e,{isOffLineMessage:!1});return i.logger.info(h.P_SEND_MSG_R,JSON.stringify({code:t,messageUId:n.messageUId}),s),t===o.ErrorCode.SENSITIVE_REPLACE?r({code:t}):("RC:MsgExMsg"===n.messageType&&i._msgExpansionHandler.setLocalFromExtMsg(i.logger,n),n.canIncludeExpansion&&i._msgExpansionHandler.setLocalFromReceiveMsg(i.logger,n),r({code:o.ErrorCode.SUCCESS,data:n}))}),(function(e,t){var o=i._buildMessage(e,{isOffLineMessage:!1});return i.logger.warn(h.P_SEND_MSG_R,JSON.stringify({code:t,messageId:o.messageId}),s),o.sentTime=Date.now()-i._cppProtocol.getDeltaTime(),r({code:t,data:o})}),e,t,a,JSON.stringify(c),l,d,M,U,u,p,w,N,L,D,f,JSON.stringify(A),_,g,m),k=JSON.parse(J);null==n||n(k.messageId)}))},e.prototype.recallMsg=function(e,t,r,n,s){var i=this;return new Promise((function(a,c){var u,p=s.user,l=s.pushContent,d=s.channelId,f=s.extra,C=s.pushConfig,_=s.disableNotification,v=s.isDelete,h={conversationType:e,targetId:t,messageUId:r,sentTime:n,user:p,extra:f,channelId:d,isDelete:v||!1};p&&(h.user=p),f&&(h.extra=f);var g={conversationType:e,targetId:t,senderUserId:i._currentUserId,content:h,objectName:o.MessageType.RECALL,messageUid:r,direction:o.MessageDirection.SEND,status:o.ReceivedStatus.UNREAD,sentTime:n,channelId:d},S=i._buildMessage(JSON.stringify(g),{isOffLineMessage:!1});i._callCppProxy("recallMessage",(function(){a({code:o.ErrorCode.SUCCESS,data:S})}),(function(e){a({code:e})}),o.MessageType.RECALL,JSON.stringify(h),_||!1,(null==C?void 0:C.disablePushTitle)||!1,(null==C?void 0:C.forceShowDetailContent)||!1,l||"",(null==C?void 0:C.pushData)||"",(null===(u=null==C?void 0:C.androidConfig)||void 0===u?void 0:u.notificationId)||"",(null==C?void 0:C.pushTitle)||"",o.pushConfigsToJSON(null==C?void 0:C.iOSConfig,null==C?void 0:C.androidConfig),(null==C?void 0:C.templateId)||"",d)}))},e.prototype.getHistoryMessage=function(e,t,r,n,s,i,a){var c=this;return new Promise((function(u,p){r=r||0;var l=0===s,d=n+1,f=c._callCppProxy("getHistoryMessages",e,t,r,d,a,l,i),C=JSON.parse(f).list,_=[];C.reverse();for(var v=0;v<C.length;v++){var h=c._buildMessage(C[v].obj);_[v]=h}u({code:o.ErrorCode.SUCCESS,data:{list:d===_.length?_.slice(1,d):_,hasMore:n<_.length}})}))},e.prototype.getRemoteHistoryMessages=function(e,t,r,n,s,i){var a=this;return new Promise((function(c,u){r=r||0;a._callCppProxy("getRemoteHistoryMessages",e,t,r,n,(function(e,t){var r=JSON.parse(e).list,n=[];r.reverse();for(var s=0;s<r.length;s++){var i=a._buildMessage(r[s].obj);n[s]=i}c({code:o.ErrorCode.SUCCESS,data:{list:n,hasMore:!!t}})}),(function(e){c({code:e})}),s,!0,i)}))},e.prototype.deleteRemoteMessage=function(e,t,r,n){var s=this;return new Promise((function(i,a){var c=JSON.stringify(r);s._callCppProxy("deleteRemoteHistoryMessages",e,t,c,!1,n,(function(){i(o.ErrorCode.SUCCESS)}),i)}))},e.prototype.deleteRemoteMessageByTimestamp=function(e,t,r,n){var s=this;return new Promise((function(i,a){s._callCppProxy("clearRemoteHistoryMessages",e,t,r,(function(){i(o.ErrorCode.SUCCESS)}),(function(e){i(e)}),n)}))},e.prototype.clearMessages=function(e,t,r){var n=this;return new Promise((function(s,i){n._callCppProxy("clearMessages",e,t,r),s(o.ErrorCode.SUCCESS)}))},e.prototype.getConversationList=function(e,t,r,n,s){var i=this;return void 0===s&&(s=""),new Promise((function(e,t){for(var r=i._callCppProxy("getConversationList",[1,3,6,7],s),n=JSON.parse(r).list,a=[],c=0;c<n.length;c++)a.push(i._buildConversation(n[c].obj));e({code:o.ErrorCode.SUCCESS,data:a})}))},e.prototype.getConversation=function(e,t,r){var n=this;return new Promise((function(s,i){var a=n._callCppProxy("getConversation",e,t,r);if(a)s({code:o.ErrorCode.SUCCESS,data:n._buildConversation(a)});else{var c=n._cppProtocol.getHistoryMessages(e,t,0,1,"",!0,r),u=void 0;try{u=JSON.parse(c).list}catch(e){n.logger.error(h.P_PARSE_JSON_MSGS_E,null==e?void 0:e.stack),u=[]}var p=null;u.length>0&&(p=n._buildMessage(u[0].obj));var l=n._callCppProxy("getConversationNotificationStatus",e,t,r),d=n._callCppProxy("getConversationTopStatus",e,t,r);s({code:o.ErrorCode.SUCCESS,data:{conversationType:e,targetId:t,channelId:r,unreadMessageCount:0,latestMessage:p,notificationStatus:l?o.NotificationStatus.OPEN:o.NotificationStatus.CLOSE,isTop:Boolean(d),lastUnreadTime:0}})}}))},e.prototype.removeConversation=function(e,t,r){var n=this._callCppProxy("removeConversation",e,t,r);return Promise.resolve(n?o.ErrorCode.SUCCESS:o.ErrorCode.UNKNOWN)},e.prototype.clearConversations=function(e,t){var r=this;return new Promise((function(n,s){var i=[];i=o.isArray(e)?e:[o.ConversationType.PRIVATE,o.ConversationType.GROUP,o.ConversationType.SYSTEM,o.ConversationType.PUBLIC_SERVICE],r._callCppProxy("clearConversations",i,t),n(o.ErrorCode.SUCCESS)}))},e.prototype.getAllConversationUnreadCount=function(e,t,r){var n=this._callCppProxy("getTotalUnreadCount",t,r,e);return Promise.resolve({code:o.ErrorCode.SUCCESS,data:n})},e.prototype.getConversationUnreadCount=function(e,t,r){var n=this;return void 0===r&&(r=""),new Promise((function(s){var i=n._callCppProxy("getUnreadCount",e,t,r);s({code:o.ErrorCode.SUCCESS,data:i})}))},e.prototype.clearConversationUnreadCount=function(e,t,r){var n=this;return void 0===r&&(r=""),new Promise((function(s,i){n._callCppProxy("clearUnreadCount",e,t,r),s(o.ErrorCode.SUCCESS)}))},e.prototype.clearUnreadCountByTimestamp=function(e,t,r,n){var s=this;return new Promise((function(i,a){s._callCppProxy("clearUnreadCountByTimestamp",e,t,r,n),i(o.ErrorCode.SUCCESS)}))},e.prototype.getFirstUnreadMessage=function(e,t,r){var n=this;return new Promise((function(s,i){var a=n._callCppProxy("getTheFirstUnreadMessage",e,t,r),c=n._buildMessage(a);s({code:o.ErrorCode.SUCCESS,data:-1!==c.messageId?c:null})}))},e.prototype.setConversationToTop=function(e,t,r,n){var s=this;return void 0===n&&(n=""),new Promise((function(i,a){s._callCppProxy("setConversationToTop",e,t,r,n,!0),i(o.ErrorCode.SUCCESS)}))},e.prototype.setConversationHidden=function(e,t,r,n){var s=this;return new Promise((function(i,a){s._callCppProxy("setConversationHidden",e,t,r,n),i(o.ErrorCode.SUCCESS)}))},e.prototype.setConversationNotificationStatus=function(e,t,r,n){var s=this;return new Promise((function(i,a){s._callCppProxy("setConversationNotificationStatus",e,t,r,(function(){i(o.ErrorCode.SUCCESS)}),i,n)}))},e.prototype.setConversationStatus=function(e,t,r,n,s){var i=this;return new Promise((function(a,c){i._callCppProxy("setConversationStatus",e,t,r,n,(function(){a(o.ErrorCode.SUCCESS)}),a,s,!0)}))},e.prototype.getConversationNotificationStatus=function(e,t,r){var n=this;return new Promise((function(s,i){var a=n._callCppProxy("getConversationNotificationStatus",e,t,r);s({code:o.ErrorCode.SUCCESS,data:a?o.NotificationStatus.OPEN:o.NotificationStatus.CLOSE})}))},e.prototype.searchConversationByContent=function(e,t,r,n){var s=this;return new Promise((function(i,a){n=n||[1,3,6,7];for(var c=s._callCppProxy("searchConversationByContent",n,e,t,r),u=JSON.parse(c).list,p=[],l=0;l<u.length;l++)p[l]=s._buildConversation(u[l].obj);i({code:o.ErrorCode.SUCCESS,data:p})}))},e.prototype.searchConversationByContentWithAllChannel=function(e,t,r){var n=this;return new Promise((function(s,i){r=r||[1,3,6,7];for(var a=n._callCppProxy("searchConversationByContentWithAllChannel",r,e,t),c=JSON.parse(a).list,u=[],p=0;p<c.length;p++)u[p]=n._buildConversation(c[p].obj);s({code:o.ErrorCode.SUCCESS,data:u})}))},e.prototype.searchMessageByContent=function(e,t,r,n,s,i,a){var c=this;return new Promise((function(i,u){c._callCppProxy("searchMessageByContent",e,t,r,n,s,1,(function(e,t){for(var r=e?JSON.parse(e).list:[],n=[],s=0;s<r.length;s++)n[s]=c._buildMessage(r[s].obj);i({code:o.ErrorCode.SUCCESS,data:{messages:n,count:t}})}),a)}))},e.prototype.searchMessageByContentWithAllChannel=function(e,t,r,n,s){var i=this;return new Promise((function(a,c){i._callCppProxy("searchMessageByContentWithAllChannel",e,t,r,n,s,1,(function(e,t){for(var r=e?JSON.parse(e).list:[],n=[],s=0;s<r.length;s++)n[s]=i._buildMessage(r[s].obj);a({code:o.ErrorCode.SUCCESS,data:{messages:n,count:t}})}))}))},e.prototype.searchMessageByContentInTimeRangeWithAllChannel=function(e,t,r,n,s,i,a){var c=this;return new Promise((function(u,p){c._callCppProxy("searchMessageByTimestampWithAllChannel",e,t,r,n,s,i,a,(function(e){for(var t=e?JSON.parse(e).list:[],r=[],n=0;n<t.length;n++)r[n]=c._buildMessage(t[n].obj);u({code:o.ErrorCode.SUCCESS,data:{messages:r}})}))}))},e.prototype.getUnreadMentionedMessages=function(e,t,o){for(var r=JSON.parse(this._callCppProxy("getUnreadMentionedMessages",e,t,o)).list,n=0;n<r.length;n++)r[n]=this._buildMessage(r[n].obj);return r},e.prototype.addToBlacklist=function(e){var t=this;return new Promise((function(r,n){t._callCppProxy("addToBlacklist",e,(function(){r(o.ErrorCode.SUCCESS)}),r)}))},e.prototype.removeFromBlacklist=function(e){var t=this;return new Promise((function(r,n){t._callCppProxy("removeFromBlacklist",e,(function(){r(o.ErrorCode.SUCCESS)}),r)}))},e.prototype.getBlacklist=function(){var e=this;return new Promise((function(t,r){e._callCppProxy("getBlacklist",(function(e){t({code:o.ErrorCode.SUCCESS,data:e})}),(function(e){t({code:e})}))}))},e.prototype.getBlacklistStatus=function(e){var t=this;return new Promise((function(r,n){t._callCppProxy("getBlacklistStatus",e,(function(e){r({code:o.ErrorCode.SUCCESS,data:e})}),(function(e){r({code:e})}))}))},e.prototype.insertMessage=function(e,t,r){var n=this,s=r.content,i=r.senderUserId,a=r.messageType,c=r.messageDirection,u=r.readStatus,p=r.sentStatus,l=r.sentTime,d=r.searchContent,f=r.isUnread,C=r.messageUId,_=r.disableNotification,v=r.canIncludeExpansion,h=r.expansionMsg,g=r.channelId;return s=JSON.stringify(s),new Promise((function(r,S){var y=f?0:1,E=n._callCppProxy("insertMessage",e,t,i,a,s,(function(){}),(function(e){r({code:e})}),c,u,p,l,d,y,C,_,v,h,g),m=n._buildMessage(E,{isOffLineMessage:!1});m.messageUId=C,m.sentTime=l,r({code:-1===m.messageId?o.ErrorCode.MSG_INSERT_ERROR:o.ErrorCode.SUCCESS,data:m})}))},e.prototype.deleteMessages=function(e){var t=this;return new Promise((function(r,n){t._callCppProxy("deleteMessages",e),r(o.ErrorCode.SUCCESS)}))},e.prototype.deleteMessagesByTimestamp=function(e,t,r,n,s){var i=this;return new Promise((function(a,c){i._callCppProxy("deleteMessagesByTimestamp",e,t,r,n,s),a(o.ErrorCode.SUCCESS)}))},e.prototype.getMessage=function(e){var t=this;return new Promise((function(r,n){var s=t._callCppProxy("getMessage",e),i=t._buildMessage(s,{isOffLineMessage:!1});r({code:o.ErrorCode.SUCCESS,data:i})}))},e.prototype.setMessageContent=function(e,t,r){var n=this;return new Promise((function(s,i){t=JSON.stringify(t),n._callCppProxy("setMessageContent",e,t,r),s(o.ErrorCode.SUCCESS)}))},e.prototype.setMessageSearchField=function(e,t,r){var n=this;return new Promise((function(s,i){n._callCppProxy("setMessageSearchField",e,t,r),s(o.ErrorCode.SUCCESS)}))},e.prototype.setMessageSentStatus=function(e,t){var r=this;return new Promise((function(n,s){r._callCppProxy("setMessageSentStatus",e,t),n(o.ErrorCode.SUCCESS)}))},e.prototype.setMessageReceivedStatus=function(e,t){var r=this;return new Promise((function(n,s){r._callCppProxy("setMessageReceivedStatus",e,t),n(o.ErrorCode.SUCCESS)}))},e.prototype.saveConversationMessageDraft=function(e,t,o,r){throw new Error("Method not implemented.")},e.prototype.getConversationMessageDraft=function(e,t,o){throw new Error("Method not implemented.")},e.prototype.clearConversationMessageDraft=function(e,t,o){throw new Error("Method not implemented.")},e.prototype.pullConversationStatus=function(e){throw new Error("Method not implemented.")},e.prototype.batchSetConversationStatus=function(e){var t=e[0],r=t.conversationType,n=t.targetId,s=t.isTop,i=t.notificationStatus,a=t.channelId;if(void 0!==s&&void 0===i)return this.setConversationToTop(r,n,s,a);if(void 0!==i&&void 0===s){var c=i===o.NotificationStatus.OPEN;return this.setConversationNotificationStatus(r,n,c,a)}var u=i===o.NotificationStatus.OPEN;return this.setConversationStatus(r,n,u,s,a)},e.prototype.pullUserSettings=function(e){throw new Error("Method not implemented.")},e.prototype.sendReadReceiptMessage=function(e,t,r){var n=this;return new Promise((function(s){n._callCppProxy("sendReadReceipt",e,r||"",t,(function(){t.forEach((function(e){n._updateReadReceiptInfo(e,{hasRespond:!0});try{var t=JSON.parse(n._callCppProxy("getMessage",e)).messageId;n.setMessageReceivedStatus(t,1)}catch(t){n.logger.error(h.P_PARSE_JSON_MSGS_E,JSON.stringify({messageUId:e,error:null==t?void 0:t.stack}))}})),s({code:o.ErrorCode.SUCCESS})}),(function(e){s({code:e})}))}))},e.prototype.getMessageReader=function(e,t,r){var n=this;return new Promise((function(s,i){n._callCppProxy("getMessageReader",e,r,t,(function(e,r){var i=[],a={};(e=JSON.parse(e)).list.forEach((function(e){var t=JSON.parse(e.obj),o=t.id,r=t.time;i.push({userId:o,readTime:r}),a[o]=r}));var c={readerInfo:a,readCount:i.length,totalCount:r};n._updateReadReceiptInfo(t,c),s({code:o.ErrorCode.SUCCESS,data:{list:i,totalMemberCount:r}})}),(function(e){s({code:e})}))}))},e.prototype.joinChatroom=function(e,t){var r=this;return new Promise((function(n,s){r._callCppProxy("clearMessages",o.ConversationType.CHATROOM,e,""),r._callCppProxy("joinChatRoom",e,t,(function(){n(o.ErrorCode.SUCCESS)}),n)}))},e.prototype.joinExistChatroom=function(e,t){throw new Error("Method not implemented.")},e.prototype.quitChatroom=function(e){var t=this;return new Promise((function(r,n){t._callCppProxy("quitChatRoom",e,(function(){r(o.ErrorCode.SUCCESS)}),r)}))},e.prototype.getChatroomInfo=function(e,t,r){var n=this;return new Promise((function(s,i){n._callCppProxy("getChatroomInfo",e,t,r,(function(e,t){var r=e?JSON.parse(e).list:[],n=[];if(r.length>0)for(var i=0;i<r.length;i++)n.push(JSON.parse(r[i].obj));s({code:o.ErrorCode.SUCCESS,data:{userInfos:n,userCount:t}})}),(function(e){s({code:e})}))}))},e.prototype.getChatroomHistoryMessages=function(e,t,r,n){var s=this;return new Promise((function(i,a){s._callCppProxy("getChatroomHistoryMessage",e,t,r,n,(function(e){var t;try{t=JSON.parse(e)}catch(e){t={list:[]}}var r=t.list;if(r&&r.length)try{t.list=r.map((function(e){return s._buildMessage(e.obj)}))}catch(e){t.list=[]}i({code:o.ErrorCode.SUCCESS,data:t})}),(function(e){i({code:e})}),"")}))},e.prototype.setChatroomEntry=function(e,t){var r=this;return new Promise((function(n,s){var i='[{"key":"'.concat(t.key,'", "value":"').concat(t.value,'"}]');r._callCppProxy("setChatroomKV",e,i,!!t.isAutoDelete,!!t.isOverwrite,(function(){n(o.ErrorCode.SUCCESS)}),(function(e){n(e)}))}))},e.prototype.setChatroomEntries=function(e,t){var r=this;return new Promise((function(n){r._callCppProxy("setChatroomKV",e,JSON.stringify(t.entries),!!t.isAutoDelete,!!t.isOverwrite,(function(){n({code:o.ErrorCode.SUCCESS})}),(function(e){n({code:e})}))}))},e.prototype.forceSetChatroomEntry=function(e,t){return t.isOverwrite=!0,t.userId=t.userId||this._currentUserId,this.setChatroomEntry(e,t)},e.prototype.removeChatroomEntry=function(e,t){var r=this,n=[t.key];return new Promise((function(s,i){r._callCppProxy("deleteChatroomKV",e,n,!!t.isOverwrite,(function(){s(o.ErrorCode.SUCCESS)}),(function(e){s(e)}))}))},e.prototype.forceRemoveChatroomEntry=function(e,t){return t.isOverwrite=!0,t.userId=t.userId||this._currentUserId,this.removeChatroomEntry(e,t)},e.prototype.removeChatroomEntries=function(e,t){var r=this;return new Promise((function(n){var s=t.entries.map((function(e){return e.key}));r._callCppProxy("deleteChatroomKV",e,s,!!t.isOverwrite,(function(){n({code:o.ErrorCode.SUCCESS})}),(function(e){n({code:e})}))}))},e.prototype.getChatroomEntry=function(e,t){return S(this,void 0,void 0,(function(){var r;return y(this,(function(n){switch(n.label){case 0:return[4,this.getAllChatroomEntry(e)];case 1:return(r=n.sent()).code===o.ErrorCode.SUCCESS?[2,{code:o.ErrorCode.SUCCESS,data:r.data?r.data[t]:null}]:[2,{code:r.code}]}}))}))},e.prototype.getAllChatroomEntry=function(e){var t=this;return new Promise((function(r,n){t._callCppProxy("getChatroomKV",e,(function(e){var t={};try{(e?JSON.parse(e):{list:[]}).list.map((function(e){return JSON.parse(e.obj)})).forEach((function(e){t[e.key]=e.value?e.value:""}))}catch(e){}r({code:o.ErrorCode.SUCCESS,data:t})}),(function(e){r({code:e})}))}))},e.prototype.getFileToken=function(e,t,r,n){var s=this;return r=r||"",n=n||"",new Promise((function(i){var a;a=n&&"uploads"!==n?t||"":o.getUploadFileName(e,t),s._callCppProxy("getUploadToken",e,a,r,n,(function(e,t,r,n,s,c,u,p,l,d,f,C,_,v,h,g,S,y){i({code:o.ErrorCode.SUCCESS,data:{token:e,deadline:0,bosToken:t,bosDate:r,path:n,osskeyId:s,ossPolicy:c,ossSign:u,ossBucketName:p,fileName:a,s3Credential:l,s3Algorithm:d,s3Date:f,s3Policy:C,s3Signature:_,s3BucketName:v,stcAuthorization:h,stcContentSha256:g,stcDate:S,stcBucketName:y}})}),(function(e){i({code:e})}))}))},e.prototype.getFileUrl=function(e,t,r,n){var s=this;return new Promise((function(i){s._callCppProxy("getDownloadUrl",e,r,n,t-1,(function(e){i({code:o.ErrorCode.SUCCESS,data:{downloadUrl:e}})}),(function(e){i({code:e})}))}))},e.prototype.clearData=function(){var e=this;return new Promise((function(t,r){var n=e._callCppProxy("clearData");t({code:o.ErrorCode.SUCCESS,data:n})}))},e.prototype.getDeviceId=function(){var e=this._dbpath||t.resolve(n.app.getPath("userData"));return D(e)},e.prototype.getVoIPKey=function(e,t){var r=this;return new Promise((function(n,s){r._callCppProxy("getVoIPKey",e,t,"",(function(e){n({code:o.ErrorCode.SUCCESS,data:e})}),(function(e){n({code:e})}))}))},e.prototype.bindRTCRoomForChatroom=function(e){var t=this;return new Promise((function(r,n){var s=e.chatRoomId,i=e.rtcRoomId;t._callCppProxy("bindRTCRoomForChatroom",s,i,(function(){r(o.ErrorCode.SUCCESS)}),(function(e){r(e)}))}))},e.prototype.getGroupMessageDeliverList=function(e,t,r){var n=this;return new Promise((function(s,i){n._callCppProxy("getGroupMessageDeliverList",e,r,t,(function(e,t){var r=JSON.parse(e).list.map((function(e){return{time:JSON.parse(e.obj).time,userId:JSON.parse(e.obj).id}}));s({code:o.ErrorCode.SUCCESS,data:{totalCount:t,list:r}})}),(function(e){s({code:e})}))}))},e.prototype.getPrivateMessageDeliverTime=function(e,t){var r=this;return new Promise((function(n,s){var i=r._callCppProxy("getMessageDeliverTime",e);if(i)n({code:o.ErrorCode.SUCCESS,data:i});else{r._callCppProxy("getPrivateMessageDeliverList",t,e,(function(e){var t=0,r=JSON.parse(e).list;r.length>0&&(t=JSON.parse(r[0].obj).time);n({code:o.ErrorCode.SUCCESS,data:t})}),(function(e){n({code:e})}))}}))},e.prototype.rtcSignaling=function(e,t,r,n){var s=this,i=Array.prototype.slice.call(new Uint8Array(n));return new Promise((function(n){s._callCppProxy("rtcSignaling",e,t,r,i,(function(e){var t=new Uint8Array(e).buffer;n({code:o.ErrorCode.SUCCESS,buffer:t})}),(function(e){n({code:e})}))}))},e.prototype._setRTCHeartbeatListener=function(){var e=this;this._cppProtocol.setRTCHeartbeatListener((function(t,o){var r=e.rtcHeartbeatResolves[t];if(r){var n=r.find((function(e){return""===e.seqId}));n&&(n.seqId=o)}}),(function(t,o,r,n){var s=e.rtcHeartbeatResolves[t];if(s){var i=s.findIndex((function(e){return e.seqId===r}));-1!==i&&s.splice(i,1)[0].resolve({code:o,data:{version:Number(n)}})}}))},e.prototype.rtcPing=function(e,t,o){var r=this;return new Promise((function(t){var o={resolve:t,seqId:""},n=r.rtcHeartbeatResolves[e];n?n.push(o):r.rtcHeartbeatResolves[e]=[o],r._callCppProxy("sendRTCHeartbeat",[e])}))},e.prototype.createTag=function(e){var t=this;return new Promise((function(r,n){t._callCppProxy("addTag",e.tagId,e.tagName,(function(){r({code:o.ErrorCode.SUCCESS})}),(function(e){r({code:e})}))}))},e.prototype.removeTag=function(e){var t=this;return new Promise((function(r,n){t._callCppProxy("deleteTag",e,(function(){r({code:o.ErrorCode.SUCCESS})}),(function(e){r({code:e})}))}))},e.prototype.updateTag=function(e){var t=this;return new Promise((function(r,n){t._callCppProxy("renameTag",e.tagId,e.tagName,(function(){r({code:o.ErrorCode.SUCCESS})}),(function(e){r({code:e})}))}))},e.prototype.getTagList=function(){var e=this;return new Promise((function(t,r){var n=e._callCppProxy("getTags"),s=e._convertResultList(n,(function(e){return{tagId:e.tagId,tagName:e.tagName,conversationCount:e.conversationCount,createdTime:e.tagTime}}));t({code:o.ErrorCode.SUCCESS,data:s})}))},e.prototype.addTagForConversations=function(e,t){var r=this;return new Promise((function(n,s){t.forEach((function(e){e.conversationType&&(e.type=e.conversationType)}));r._callCppProxy("addConversationsForTag",e,JSON.stringify(t),(function(){n({code:o.ErrorCode.SUCCESS})}),(function(e){n({code:e})}))}))},e.prototype.removeTagForConversations=function(e,t){var r=this;return new Promise((function(n,s){t.forEach((function(e){e.conversationType&&(e.type=e.conversationType)})),r._callCppProxy("removeConversationsForTag",e,JSON.stringify(t),(function(){n({code:o.ErrorCode.SUCCESS})}),(function(e){n({code:e})}))}))},e.prototype.removeTagsForConversation=function(e,t){var r=this;return new Promise((function(n,s){r._callCppProxy("removeTagsForConversation",e.conversationType,e.targetId,e.channelId||"",t,(function(){n({code:o.ErrorCode.SUCCESS})}),(function(e){n({code:e})}))}))},e.prototype.getConversationListByTag=function(e,t,r,n){var s=this;return new Promise((function(i){var a=s._callCppProxy("getConversationsForTagByPage",e,t,r||20,n||""),c=s._convertResultList(a,(function(e){return g(g({},s._buildConversation(JSON.stringify(e))),{isTopInTag:e.topForTag})}));i({code:o.ErrorCode.SUCCESS,data:c})}))},e.prototype.getUnreadCountByTag=function(e,t){var r=this;return new Promise((function(n,s){var i=r._callCppProxy("getConversationUnreadCountForTag",e,t);n({code:o.ErrorCode.SUCCESS,data:i})}))},e.prototype.setConversationStatusInTag=function(e,t,r){var n=this;return new Promise((function(s,i){n._callCppProxy("setConversationToTopForTag",e,t.conversationType,t.targetId,t.channelId||"",r.isTop||!1,(function(){s({code:o.ErrorCode.SUCCESS})}),(function(e){s({code:e})}))}))},e.prototype.getTagsForConversation=function(e){var t=this;return new Promise((function(r,n){var s=t._callCppProxy("getTagsForConversation",e.conversationType,e.targetId,e.channelId||""),i=t._convertResultList(s,(function(e){return{tagId:e.tagId,tagName:e.tagName,isTop:e.isTop,createdTime:e.tagTime}}));r({code:o.ErrorCode.SUCCESS,data:i})}))},e.prototype.getBlockConversationList=function(){throw new Error("Method not implemented.")},e.prototype.getTopConversationList=function(e,t){var r=this;return new Promise((function(n){var s=o.isUndefined(t)?r._callCppProxy("getTopConversations",e):r._callCppProxy("getTopConversations",e,t),i=JSON.parse(s).list.map((function(e){return r._buildConversation(e.obj)}));n({code:o.ErrorCode.SUCCESS,data:i})}))},e.prototype.getUnreadMentionedCount=function(e){throw new Error("Method not implemented.")},e.prototype.getAllUnreadMentionedCount=function(){throw new Error("Method not implemented.")},e.prototype.getOSInfo=function(){return S(this,void 0,void 0,(function(){var e;return y(this,(function(t){return e={arch:p.arch(),platform:p.platform(),type:p.type(),version:p.version(),release:p.release(),uptime:p.uptime(),cpus:p.cpus(),freemem:p.freemem(),totalmem:p.totalmem(),networkInterfaces:p.networkInterfaces()},[2,{code:o.ErrorCode.SUCCESS,data:e}]}))}))},e.prototype.getMainProcessInfo=function(){return S(this,void 0,void 0,(function(){return y(this,(function(e){return[2,{code:o.ErrorCode.SUCCESS,data:{title:process.title,pid:process.pid,ppid:process.ppid,platform:process.platform,arch:process.arch,uptime:process.uptime(),cpuUsage:process.cpuUsage(),memoryUsage:process.memoryUsage(),resourceUsage:process.resourceUsage()}}]}))}))},e.prototype.setCallInfo=function(e,t,r){var n=this;return new Promise((function(s){n._callCppProxy("callInfoSignaling",e,t,r,(function(e,t){s({code:o.ErrorCode.SUCCESS,data:{key:e,value:t}})}),(function(e){s({code:e})}))}))},e}(),V=function(){function e(e,t,o,r){void 0===o&&(o=""),void 0===r&&(r=!1),this._cppService=new q(e,t,o,r)}return e.prototype.getCppProto=function(){var e=this;return{destroy:function(){e._cppService.destroy()}}},e.prototype.destroy=function(){this._cppService.destroy()},e.prototype.getDeviceId=function(){return this._cppService.getDeviceId()},e.prototype.getServerTime=function(){return this._cppService.getServerTime()},e.prototype.__createLogger=function(e,t){return null},e}();module.exports=function(e){return function(e,t,o){if(B)return B;if(!t)throw new Error("Initializ failed, `appkey` is required!");return B=new V(t,e,null==o?void 0:o.dbpath,null==o?void 0:o.reconnectKickEnable)}(C,e.appkey,e)};
|
package/package.json
CHANGED
|
@@ -1,17 +1,26 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@rongcloud/electron",
|
|
3
3
|
"main": "index.js",
|
|
4
|
+
"scripts": {
|
|
5
|
+
"postinstall": "node scripts/postinstall.js"
|
|
6
|
+
},
|
|
4
7
|
"files": [
|
|
5
|
-
"binding",
|
|
6
8
|
"README.md",
|
|
9
|
+
"bin/rc-install.js",
|
|
10
|
+
"scripts/tools.js",
|
|
11
|
+
"scripts/postinstall.js",
|
|
7
12
|
"LICENSE",
|
|
8
13
|
"index.js",
|
|
9
14
|
"index.d.ts",
|
|
10
|
-
"index.esm.js"
|
|
15
|
+
"index.esm.js",
|
|
16
|
+
"sub-process.js"
|
|
11
17
|
],
|
|
18
|
+
"bin": {
|
|
19
|
+
"rc-install": "./bin/rc-install.js"
|
|
20
|
+
},
|
|
12
21
|
"types": "index.d.ts",
|
|
13
22
|
"module": "index.esm.js",
|
|
14
|
-
"version": "5.6.0
|
|
23
|
+
"version": "5.6.0",
|
|
15
24
|
"author": "pass-web@rongcloud.cn",
|
|
16
25
|
"license": "LGPL 2.1",
|
|
17
26
|
"homepage": "https://www.rongcloud.cn",
|
|
@@ -22,6 +31,6 @@
|
|
|
22
31
|
"globals": "RCMain"
|
|
23
32
|
},
|
|
24
33
|
"peerDependencies": {
|
|
25
|
-
"@rongcloud/engine": "=5.6.0
|
|
34
|
+
"@rongcloud/engine": "=5.6.0"
|
|
26
35
|
}
|
|
27
36
|
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
/* eslint-disable no-console */
|
|
4
|
+
const os_1 = require("os");
|
|
5
|
+
const path_1 = require("path");
|
|
6
|
+
const child_process_1 = require("child_process");
|
|
7
|
+
const tools_1 = require("./tools");
|
|
8
|
+
async function main() {
|
|
9
|
+
// 下载 electron-node 文件
|
|
10
|
+
(0, child_process_1.exec)('npm ls electron', { cwd: (0, path_1.join)(__dirname, '../../../../') }, (err, stdout, stderr) => {
|
|
11
|
+
console.log(stdout.toString());
|
|
12
|
+
if (err) {
|
|
13
|
+
console.error(err);
|
|
14
|
+
return;
|
|
15
|
+
}
|
|
16
|
+
const arr = stdout.toString().match(/electron@(\d+\.\d+\.\d+)/);
|
|
17
|
+
if (!arr) {
|
|
18
|
+
console.error('Download failed, did not check to the electron version, please go to https://doc.rongcloud.cn/im/Web/5.X/noui/electron/integration for download manually.');
|
|
19
|
+
return;
|
|
20
|
+
}
|
|
21
|
+
const version = arr?.[1].replace(/\.\d+$/, '');
|
|
22
|
+
const fileName = `electron-v${version}-${(0, os_1.platform)()}-${(0, os_1.arch)()}.node`;
|
|
23
|
+
(0, tools_1.downloadNode)(fileName).then(() => {
|
|
24
|
+
console.log('Download successed!');
|
|
25
|
+
}).catch((err) => {
|
|
26
|
+
console.error(err);
|
|
27
|
+
});
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
main();
|
|
31
|
+
//# sourceMappingURL=postinstall.js.map
|
package/scripts/tools.js
ADDED
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/* eslint-disable no-console */
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.downloadNode = void 0;
|
|
5
|
+
const fs_1 = require("fs");
|
|
6
|
+
const path_1 = require("path");
|
|
7
|
+
const https_1 = require("https");
|
|
8
|
+
function downloadNode(fileName) {
|
|
9
|
+
// eslint-disable-next-line global-require, import/no-dynamic-require
|
|
10
|
+
const pkg = require('../package.json');
|
|
11
|
+
const { version } = pkg;
|
|
12
|
+
const url = `https://cdn.ronghub.com/electron-node/${version}/${fileName}`;
|
|
13
|
+
const dir = (0, path_1.join)(__dirname, '../binding');
|
|
14
|
+
if (!(0, fs_1.existsSync)(dir)) {
|
|
15
|
+
(0, fs_1.mkdirSync)(dir);
|
|
16
|
+
}
|
|
17
|
+
console.log(`Start to Download: ${url}`);
|
|
18
|
+
return new Promise((resolve, reject) => {
|
|
19
|
+
const req = (0, https_1.request)(url, (res) => {
|
|
20
|
+
if (res.statusCode === 404) {
|
|
21
|
+
console.error(res.statusCode, `File '${url}' does not exist, View all files: https://cdn.ronghub.com/electron-node/home/index.html`);
|
|
22
|
+
reject(res);
|
|
23
|
+
return;
|
|
24
|
+
}
|
|
25
|
+
if (res.statusCode !== 200) {
|
|
26
|
+
console.error(res.statusCode, res.statusMessage);
|
|
27
|
+
reject(res);
|
|
28
|
+
return;
|
|
29
|
+
}
|
|
30
|
+
// 先下载到临时文件,下载完成后删除老文件,并修改临时文件的文件名
|
|
31
|
+
const filePath = (0, path_1.join)(dir, fileName);
|
|
32
|
+
const filePathTmp = `${filePath}.tmp`;
|
|
33
|
+
const writeStream = (0, fs_1.createWriteStream)(filePathTmp);
|
|
34
|
+
res.on('end', () => {
|
|
35
|
+
console.log('Download succeeded!', url);
|
|
36
|
+
(0, fs_1.access)(filePath, fs_1.constants.F_OK, (err) => {
|
|
37
|
+
if (!err) {
|
|
38
|
+
(0, fs_1.rmSync)(filePath);
|
|
39
|
+
}
|
|
40
|
+
(0, fs_1.renameSync)(filePathTmp, filePath);
|
|
41
|
+
console.log('Rename succeeded!');
|
|
42
|
+
resolve(res);
|
|
43
|
+
});
|
|
44
|
+
});
|
|
45
|
+
res.pipe(writeStream);
|
|
46
|
+
});
|
|
47
|
+
req.on('error', (err) => {
|
|
48
|
+
console.error(err);
|
|
49
|
+
reject(err);
|
|
50
|
+
});
|
|
51
|
+
req.end();
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
exports.downloadNode = downloadNode;
|
|
55
|
+
//# sourceMappingURL=tools.js.map
|
package/sub-process.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var n=require("@rongcloud/engine");function e(n,e,t,r){return new(t||(t=Promise))((function(o,a){function h(n){try{u(r.next(n))}catch(n){a(n)}}function l(n){try{u(r.throw(n))}catch(n){a(n)}}function u(n){var e;n.done?o(n.value):(e=n.value,e instanceof t?e:new t((function(n){n(e)}))).then(h,l)}u((r=r.apply(n,e||[])).next())}))}function t(n,e){var t,r,o,a,h={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return a={next:l(0),throw:l(1),return:l(2)},"function"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function l(l){return function(u){return function(l){if(t)throw new TypeError("Generator is already executing.");for(;a&&(a=0,l[0]&&(h=0)),h;)try{if(t=1,r&&(o=2&l[0]?r.return:l[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,l[1])).done)return o;switch(r=0,o&&(l=[2&l[0],o.value]),l[0]){case 0:case 1:o=l;break;case 4:return h.label++,{value:l[1],done:!1};case 5:h.label++,r=l[1],l=[0];continue;case 7:l=h.ops.pop(),h.trys.pop();continue;default:if(!(o=h.trys,(o=o.length>0&&o[o.length-1])||6!==l[0]&&2!==l[0])){h=0;continue}if(3===l[0]&&(!o||l[1]>o[0]&&l[1]<o[3])){h.label=l[1];break}if(6===l[0]&&h.label<o[1]){h.label=o[1],o=l;break}if(o&&h.label<o[2]){h.label=o[2],h.ops.push(l);break}o[2]&&h.ops.pop(),h.trys.pop();continue}l=e.call(n,h)}catch(n){l=[6,n],r=0}finally{t=o=0}if(5&l[0])throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}([l,u])}}}var r=48,o=64,a=80,h=96,l="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",u=l.length,i=function(n,e,t){var r={length:0,offset:-1};if(e.length,t>=e.length-1)return r;var o=n[e.charAt(t)+e.charAt(t+1)];if(o[0]===t)return r;for(var a=e.length-t,h=0,l=o.length;h<l;h++){var u=o[h],i=t-u;if(!(i>238327)){var s=Math.min(a,i);if(s<=r.length)break;if(!(r.length>2&&e.charAt(u+r.length-1)!==e.charAt(t+r.length-1))){for(var c=2,f=c;f<s&&e.charAt(u+f)===e.charAt(t+f);f++)c++;c>=r.length&&(r.length=c,r.offset=u)}}}return r},s=function(n){var e=[],t=0;do{t=n%u,e.push(l.charAt(t)),n=(n-t)/u}while(n>0);return e.join("")},c=function(n){process.send(n)},f=function(e){return function(n){for(var e={},t=0;t<n.length-1;t++){var l=n.charAt(t)+n.charAt(t+1);e.hasOwnProperty(l)?e[l].push(t):e[l]=[t]}for(var u=[],c=[],f=function(){if(c.length>0){var n=c.join("");if(c=[],n.length>26){var e=s(n.length),t=String.fromCharCode(a|e.length);u.push(t+e)}else{var r=String.fromCharCode(h|n.length);u.push(r)}u.push(n)}},g=0;g<n.length;){var p=i(e,n,g);if(p.length<2)c.push(n.charAt(g++));else if(p.length<4)c.push(n.substr(g,p.length)),g+=p.length;else{var v=s(g-p.offset),d=s(p.length);if(v.length+d.length>=p.length)c.push(n.substr(g,p.length)),g+=p.length;else{f();var b=String.fromCharCode(o|v.length<<2|d.length);u.push(b+v+d),g+=p.length}}}f();var y=s(n.length),m=String.fromCharCode(r|y.length);return u.push(m+y),u.join("")}(e.map(n.transcsv).join(""))};process.on("message",(function(n){return e(void 0,void 0,void 0,(function(){var e,r,o,a;return t(this,(function(t){return e=n.reqId,r=n.method,o=n.args,"compressLogs"===r?(a=f(o[0]),c({reqId:e,success:!0,data:a})):c({reqId:e,success:!1}),[2]}))}))}));
|
|
Binary file
|
|
Binary file
|
|
Binary file
|