OverviewFilesCommitsIssuesDocsReleasesPeers

keet-cli / deobfuscated / contract / members / labels.js

60 lines · javascript ref:
const _0x1a9314=(function(){let _0x47b971=!![];return function(_0x1a6d71,_0x1231ca){_0x3eaeb5=_0x47b971?function(){if(_0x1231ca){const _0x1c71c6=_0x1231ca.apply(_0x1a6d71,arguments);return _0x1231ca=null,_0x1c71c6;}}:function(){};return _0x47b971=![],_0x3eaeb5;};}()),_0x18987b=_0x1a9314(this,function(){_0x23e50b={_0x17cebd:0xa},_0x911d55={_0x2fd0d4:0xdc};return _0x18987b.toString().search("(((.+)+)+)+$").toString().constructor(_0x18987b).search("(((.+)+)+)+$");});
_0x18987b();
const REGISTER_ROUTES=require('../registration'),{
  isMemberActive,getMemberForDeviceKey}
=require('../query'),b4a=require('b4a'),{
  KeetContractError}
=require('../errors');
async function handleAddMemberLabel({header:_0x3c6d4a,key:_0x224d03,label:_0x21e6b6},{db:_0x18f828,writer:_0x1adc53}){
  _0x5a1900={
    _0x3d3a55:0x394},_0x3972e9={
    _0x2d6b6b:0x18b},[_0x527451,_0x283cb2,_0x4bc775]=await Promise.all([getMemberForDeviceKey(_0x18f828,_0x1adc53.key),_0x18f828.get("@keet/members",{'key':_0x224d03}),_0x18f828.get("@keet/threads",{'id':0x0})]);
  if(!isMemberActive(_0x527451)||!_0x283cb2||b4a.equals(_0x527451.key,_0x283cb2.key))throw KeetContractError.ABORT();
  const _0x570585=await _0x18f828.get("@keet/member-labels",{'key':_0x283cb2.key,'sender':_0x527451.key,'label':_0x21e6b6});
  if(_0x570585)throw KeetContractError.ABORT();
  const _0x19fcc1={
    'key':_0x283cb2.key,'sender':_0x527451.key,'clock':_0x4bc775.stats.chat.clock,'label':_0x21e6b6}
  ;
  await _0x18f828.insert("@keet/member-labels",_0x19fcc1),await memberLabelStats(_0x18f828,_0x4bc775,_0x19fcc1,null,_0x3c6d4a.timestamp);
}
function registerRoutes(_0x470cb7){
  _0x3b7309={
    _0x5b3f13:0x25a},_0x1109d1={
    _0x29e1e1:0x230}
  ;
  _0x470cb7.add("@keet/add-member-label",handleAddMemberLabel);
}
module.exports={
  [REGISTER_ROUTES]:registerRoutes}
;
async function memberLabelStats(_0x386379,_0x5cdfa1,_0x5cf94e,_0x3c7116,_0x24a639){
  _0x1ab01c={
    _0x40a6ba:0x16e,_0x41aed8:0x19f},_0x39446f={
    _0xbd6c26:0x1dd,_0x20b327:0x1bf}
  ;
  if(_0x5cf94e&&_0x3c7116||!_0x5cf94e&&!_0x3c7116)return;
  const _0x4d02c5=_0x5cf94e?_0x5cf94e.key:_0x3c7116.key,_0x53264f=await _0x386379.get("@keet/member-label-digests",{'key':_0x4d02c5}),_0x32c873=_0x53264f||{
    'key':_0x4d02c5,'total':0x0,'labels':[],'editedAt':0x0,'flagsClock':0x0}
  ;
  const _0x4875aa=_0x5cf94e?_0x5cf94e:_0x3c7116,_0x89e3cf=_0x4875aa.label===-0x1c01;
  _0x89e3cf&&!_0x3c7116&&(_0x5cdfa1.stats.chat.flagsClock+=--0x15c7,_0x32c873.flagsClock=_0x5cdfa1.stats.chat.flagsClock),_0x32c873.editedAt=_0x24a639,_0x5cf94e?(insertLabel(_0x32c873,_0x5cf94e.label),_0x5cdfa1.stats.chat.clock+=0x1,_0x32c873.total+=--0x34d7):(deleteLabel(_0x32c873,_0x3c7116.label),_0x5cdfa1.stats.chat.clock-=-0x1001,_0x32c873.total-=-0x6f1),await Promise.all([_0x386379.insert("@keet/threads",_0x5cdfa1),_0x386379.insert("@keet/member-label-digests",_0x32c873)]);
}
function insertLabel(_0x988232,_0x7c4667){
  _0x33b6e5={
    _0x1f2500:0x1e0,_0x56d0a5:0x28b},_0x19672b={
    _0x4b1868:0x125,_0x2e70fc:0x17b,_0x652333:0x112}
  ;
  const _0x2b98fe=_0x988232.labels.findIndex(_0x117ad0=>_0x117ad0.label===_0x7c4667);
  _0x2b98fe===-(-0x2633)?_0x988232.labels.push({'label':_0x7c4667,'count':0x1}):_0x988232.labels[_0x2b98fe].count+=0x1;
}
function deleteLabel(_0x3866a5,_0x202864){
  _0xe9e546={
    _0x255d98:0x57,_0x39d3a2:0x193,_0x140871:0x6d},_0x2921ee={
    _0x129a93:0x1b8,_0x1ec65f:0x1a4},_0x21643c=_0x3866a5.labels.findIndex(_0x4f47d2=>_0x4f47d2.label===_0x202864);
  if(_0x21643c===-(0x1))return;
  const _0x5a8dd7=_0x3866a5.labels[_0x21643c];
  _0x5a8dd7.count-=0x1;
  if(_0x5a8dd7.count>0x0)return;
  _0x3866a5.labels.splice(_0x21643c,-0x1fa9);
}