UNPKG

superchats

Version:

SuperChats is a premium library with unique features that control Whatsapp functions. With Superchats you can build service bots, multiservice chats or any system that uses whatsapp

1 lines 12.1 kB
'use strict';function a50_0x1738(_0x2c76fb,_0x231921){const _0x5a4125=a50_0x5a41();return a50_0x1738=function(_0x17384c,_0xa46964){_0x17384c=_0x17384c-0x18d;let _0x4e2dce=_0x5a4125[_0x17384c];return _0x4e2dce;},a50_0x1738(_0x2c76fb,_0x231921);}function a50_0x5a41(){const _0x1c99fa=['447860TuWhdI','./internal','currentRatchet','12tNIyKf','remoteIdentityKey','writable','prototype','crypto','all','registrationId','hasOwnProperty','configurable','253NEJtzV','name','getSessionByBaseKey','uint8ArrayToArrayBuffer','keyId','updateSessionState','startSessionWthPreKeyMessage','./session-types','pubKey','getIdentityKeyPair','Unknown\x20identity\x20key:\x20','Identity\x20key\x20changed','820orwOvU','baseKeyType','publicKey','HKDF','startSessionAsInitiator','SessionBuilder','873600yituqy','identityKey','base64-js','./session-record','No\x20identity\x20key.\x20Cannot\x20initiate\x20session.','ephemeralKeyPair','isTrustedIdentity','./helpers','__esModule','privKey','storage','baseKey','Direction','5420LwflSX','deserialize','1185051MylcEl','540861DMXoyg','./types','WhisperRatchet','SENDING','Missing\x20key,\x20cannot\x20calculate\x20sending\x20ratchet','create','ChainType','toString','BaseKeyType','queueJobForNumber','indexInfo','2354238WbfQhJ','signedPreKey','set','Missing\x20Signed\x20PreKey\x20for\x20PreKeyWhisperMessage','pendingPreKey','142581ADkfZx','__importStar','default','createKeyPair','THEIRS','remoteAddress','archiveCurrentState','calculateSendingRatchet','preKeyId','ECDHE','processPreKey','getOpenSession','2KUJgwm','storeSession','saveIdentity','WhisperText','processV3','theirSignedPubKey\x20is\x20undefined.\x20Cannot\x20proceed\x20with\x20ECDHE','processPreKeyJob','__setModuleDefault','getOwnPropertyDescriptor','SessionRecord','defineProperty','serialize','OURS','signature'];a50_0x5a41=function(){return _0x1c99fa;};return a50_0x5a41();}const a50_0x481cdc=a50_0x1738;(function(_0x5e6c5c,_0x417068){const _0x4e5980=a50_0x1738,_0x4acef8=_0x5e6c5c();while(!![]){try{const _0xb0b5ff=-parseInt(_0x4e5980(0x1a4))/0x1+parseInt(_0x4e5980(0x1b0))/0x2*(-parseInt(_0x4e5980(0x194))/0x3)+parseInt(_0x4e5980(0x1d6))/0x4*(parseInt(_0x4e5980(0x191))/0x5)+-parseInt(_0x4e5980(0x1c1))/0x6*(parseInt(_0x4e5980(0x193))/0x7)+-parseInt(_0x4e5980(0x1dc))/0x8+parseInt(_0x4e5980(0x19f))/0x9+-parseInt(_0x4e5980(0x1be))/0xa*(-parseInt(_0x4e5980(0x1ca))/0xb);if(_0xb0b5ff===_0x417068)break;else _0x4acef8['push'](_0x4acef8['shift']());}catch(_0x5f1dad){_0x4acef8['push'](_0x4acef8['shift']());}}}(a50_0x5a41,0xb573a));var __createBinding=this&&this['__createBinding']||(Object[a50_0x481cdc(0x199)]?function(_0x811ca1,_0x378eb8,_0x438c3d,_0x398a4f){const _0x5b539a=a50_0x481cdc;if(_0x398a4f===undefined)_0x398a4f=_0x438c3d;var _0x525e7a=Object[_0x5b539a(0x1b8)](_0x378eb8,_0x438c3d);(!_0x525e7a||('get'in _0x525e7a?!_0x378eb8['__esModule']:_0x525e7a[_0x5b539a(0x1c3)]||_0x525e7a[_0x5b539a(0x1c9)]))&&(_0x525e7a={'enumerable':!![],'get':function(){return _0x378eb8[_0x438c3d];}}),Object['defineProperty'](_0x811ca1,_0x398a4f,_0x525e7a);}:function(_0x4a564f,_0x452a24,_0x26178c,_0x432000){if(_0x432000===undefined)_0x432000=_0x26178c;_0x4a564f[_0x432000]=_0x452a24[_0x26178c];}),__setModuleDefault=this&&this[a50_0x481cdc(0x1b7)]||(Object[a50_0x481cdc(0x199)]?function(_0x32de7c,_0x2ee30a){Object['defineProperty'](_0x32de7c,'default',{'enumerable':!![],'value':_0x2ee30a});}:function(_0x8f1eb0,_0x455a23){const _0x59408a=a50_0x481cdc;_0x8f1eb0[_0x59408a(0x1a6)]=_0x455a23;}),__importStar=this&&this[a50_0x481cdc(0x1a5)]||function(_0x1e9b2f){const _0x472ed6=a50_0x481cdc;if(_0x1e9b2f&&_0x1e9b2f[_0x472ed6(0x1e4)])return _0x1e9b2f;var _0x2e7987={};if(_0x1e9b2f!=null){for(var _0x35c0b8 in _0x1e9b2f)if(_0x35c0b8!==_0x472ed6(0x1a6)&&Object[_0x472ed6(0x1c4)][_0x472ed6(0x1c8)]['call'](_0x1e9b2f,_0x35c0b8))__createBinding(_0x2e7987,_0x1e9b2f,_0x35c0b8);}return __setModuleDefault(_0x2e7987,_0x1e9b2f),_0x2e7987;};Object[a50_0x481cdc(0x1ba)](exports,a50_0x481cdc(0x1e4),{'value':!![]}),exports[a50_0x481cdc(0x1db)]=void 0x0;const types_1=require(a50_0x481cdc(0x195)),session_types_1=require(a50_0x481cdc(0x1d1)),Internal=__importStar(require(a50_0x481cdc(0x1bf))),base64=__importStar(require(a50_0x481cdc(0x1de))),session_record_1=require(a50_0x481cdc(0x1df)),session_lock_1=require('./session-lock'),helpers_1=require(a50_0x481cdc(0x1e3));class SessionBuilder{constructor(_0x577aba,_0xa30a97){const _0xc53445=a50_0x481cdc;this['processPreKeyJob']=async _0x11b0e9=>{const _0x3ee8cc=a50_0x1738;var _0x3e78eb;const _0x127c60=await this[_0x3ee8cc(0x18e)][_0x3ee8cc(0x1e2)](this[_0x3ee8cc(0x1a9)][_0x3ee8cc(0x1cb)],_0x11b0e9[_0x3ee8cc(0x1dd)],types_1[_0x3ee8cc(0x190)][_0x3ee8cc(0x197)]);if(!_0x127c60)throw new Error(_0x3ee8cc(0x1d5));await Internal[_0x3ee8cc(0x1c5)]['Ed25519Verify'](_0x11b0e9[_0x3ee8cc(0x1dd)],_0x11b0e9['signedPreKey'][_0x3ee8cc(0x1d8)],_0x11b0e9[_0x3ee8cc(0x1a0)][_0x3ee8cc(0x1bd)]);const _0x2b2fe8=await Internal[_0x3ee8cc(0x1c5)][_0x3ee8cc(0x1a7)](),_0x302c4c=(_0x3e78eb=_0x11b0e9['preKey'])===null||_0x3e78eb===void 0x0?void 0x0:_0x3e78eb[_0x3ee8cc(0x1d8)],_0x1bda21=await this[_0x3ee8cc(0x1da)](_0x2b2fe8,_0x11b0e9[_0x3ee8cc(0x1dd)],_0x11b0e9[_0x3ee8cc(0x1a0)][_0x3ee8cc(0x1d8)],_0x302c4c,_0x11b0e9[_0x3ee8cc(0x1c7)]);_0x1bda21['pendingPreKey']={'signedKeyId':_0x11b0e9[_0x3ee8cc(0x1a0)][_0x3ee8cc(0x1ce)],'baseKey':_0x2b2fe8['pubKey']};_0x11b0e9['preKey']&&(_0x1bda21[_0x3ee8cc(0x1a3)]['preKeyId']=_0x11b0e9['preKey'][_0x3ee8cc(0x1ce)]);const _0x282501=this[_0x3ee8cc(0x1a9)][_0x3ee8cc(0x19b)](),_0x30de8e=await this[_0x3ee8cc(0x18e)]['loadSession'](_0x282501);let _0x747bc8;return _0x30de8e!==undefined?_0x747bc8=session_record_1['SessionRecord'][_0x3ee8cc(0x192)](_0x30de8e):_0x747bc8=new session_record_1[(_0x3ee8cc(0x1b9))](),_0x747bc8[_0x3ee8cc(0x1aa)](),_0x747bc8[_0x3ee8cc(0x1cf)](_0x1bda21),await Promise[_0x3ee8cc(0x1c6)]([this[_0x3ee8cc(0x18e)][_0x3ee8cc(0x1b1)](_0x282501,_0x747bc8[_0x3ee8cc(0x1bb)]()),this['storage'][_0x3ee8cc(0x1b2)](this[_0x3ee8cc(0x1a9)]['toString'](),_0x1bda21[_0x3ee8cc(0x19e)][_0x3ee8cc(0x1c2)])]),_0x1bda21;},this[_0xc53445(0x1da)]=async(_0x57d6f8,_0x2aa2ba,_0x158131,_0x4412b2,_0x1f3c89)=>{const _0x16a65f=_0xc53445,_0x30e632=await this[_0x16a65f(0x18e)][_0x16a65f(0x1d3)]();if(!_0x30e632)throw new Error(_0x16a65f(0x1e0));let _0x2dd8d4;_0x4412b2===undefined?_0x2dd8d4=new Uint8Array(0x20*0x4):_0x2dd8d4=new Uint8Array(0x20*0x5);for(let _0x393b13=0x0;_0x393b13<0x20;_0x393b13++){_0x2dd8d4[_0x393b13]=0xff;}if(!_0x158131)throw new Error(_0x16a65f(0x1b5));const _0x107d75=await Promise[_0x16a65f(0x1c6)]([Internal[_0x16a65f(0x1c5)][_0x16a65f(0x1ad)](_0x158131,_0x30e632[_0x16a65f(0x18d)]),Internal['crypto'][_0x16a65f(0x1ad)](_0x2aa2ba,_0x57d6f8[_0x16a65f(0x18d)]),Internal[_0x16a65f(0x1c5)][_0x16a65f(0x1ad)](_0x158131,_0x57d6f8['privKey'])]);_0x2dd8d4[_0x16a65f(0x1a1)](new Uint8Array(_0x107d75[0x0]),0x20),_0x2dd8d4[_0x16a65f(0x1a1)](new Uint8Array(_0x107d75[0x1]),0x20*0x2),_0x2dd8d4['set'](new Uint8Array(_0x107d75[0x2]),0x20*0x3);if(_0x4412b2!==undefined){const _0x3409cd=await Internal[_0x16a65f(0x1c5)][_0x16a65f(0x1ad)](_0x4412b2,_0x57d6f8[_0x16a65f(0x18d)]);_0x2dd8d4[_0x16a65f(0x1a1)](new Uint8Array(_0x3409cd),0x20*0x4);}const _0x2b7df5=await Internal[_0x16a65f(0x1d9)]((0x0,helpers_1[_0x16a65f(0x1cd)])(_0x2dd8d4),new ArrayBuffer(0x20),_0x16a65f(0x1b3)),_0x3c9384={'registrationId':_0x1f3c89,'currentRatchet':{'rootKey':_0x2b7df5[0x0],'lastRemoteEphemeralKey':_0x158131,'previousCounter':0x0},'indexInfo':{'remoteIdentityKey':_0x2aa2ba,'closed':-0x1},'oldRatchetList':[],'chains':{}};_0x3c9384['indexInfo'][_0x16a65f(0x18f)]=_0x57d6f8[_0x16a65f(0x1d2)],_0x3c9384[_0x16a65f(0x19e)][_0x16a65f(0x1d7)]=session_types_1['BaseKeyType'][_0x16a65f(0x1bc)];const _0x43e17f=await Internal[_0x16a65f(0x1c5)][_0x16a65f(0x1a7)]();return _0x3c9384[_0x16a65f(0x1c0)][_0x16a65f(0x1e1)]=_0x43e17f,await this['calculateSendingRatchet'](_0x3c9384,_0x158131),_0x3c9384;},this[_0xc53445(0x1d0)]=async(_0x58a845,_0x3b6b11,_0x4f9db1)=>{const _0x19b304=_0xc53445,_0x1bc8d4=await this['storage'][_0x19b304(0x1d3)](),_0x623cd0=_0x4f9db1['identityKey'],_0x390885=_0x4f9db1[_0x19b304(0x18f)];if(!_0x1bc8d4)throw new Error(_0x19b304(0x1e0));let _0x4a6c6e;!_0x58a845?_0x4a6c6e=new Uint8Array(0x20*0x4):_0x4a6c6e=new Uint8Array(0x20*0x5);for(let _0x2cc6db=0x0;_0x2cc6db<0x20;_0x2cc6db++){_0x4a6c6e[_0x2cc6db]=0xff;}const _0x56a542=await Promise[_0x19b304(0x1c6)]([Internal[_0x19b304(0x1c5)][_0x19b304(0x1ad)](_0x623cd0,_0x3b6b11[_0x19b304(0x18d)]),Internal[_0x19b304(0x1c5)][_0x19b304(0x1ad)](_0x390885,_0x1bc8d4[_0x19b304(0x18d)]),Internal['crypto'][_0x19b304(0x1ad)](_0x390885,_0x3b6b11[_0x19b304(0x18d)])]);_0x4a6c6e[_0x19b304(0x1a1)](new Uint8Array(_0x56a542[0x0]),0x20),_0x4a6c6e['set'](new Uint8Array(_0x56a542[0x1]),0x20*0x2),_0x4a6c6e[_0x19b304(0x1a1)](new Uint8Array(_0x56a542[0x2]),0x20*0x3);if(_0x58a845){const _0x2392eb=await Internal[_0x19b304(0x1c5)][_0x19b304(0x1ad)](_0x390885,_0x58a845['privKey']);_0x4a6c6e[_0x19b304(0x1a1)](new Uint8Array(_0x2392eb),0x20*0x4);}const _0x13fc49=await Internal[_0x19b304(0x1d9)]((0x0,helpers_1['uint8ArrayToArrayBuffer'])(_0x4a6c6e),new ArrayBuffer(0x20),_0x19b304(0x1b3)),_0x1c874d={'registrationId':_0x4f9db1[_0x19b304(0x1c7)],'currentRatchet':{'rootKey':_0x13fc49[0x0],'lastRemoteEphemeralKey':_0x390885,'previousCounter':0x0},'indexInfo':{'remoteIdentityKey':_0x623cd0,'closed':-0x1},'oldRatchetList':[],'chains':{}};return _0x1c874d[_0x19b304(0x19e)]['baseKey']=_0x390885,_0x1c874d[_0x19b304(0x19e)][_0x19b304(0x1d7)]=session_types_1[_0x19b304(0x19c)][_0x19b304(0x1a8)],_0x1c874d[_0x19b304(0x1c0)][_0x19b304(0x1e1)]=_0x3b6b11,_0x1c874d;},this[_0xc53445(0x1a9)]=_0xa30a97,this[_0xc53445(0x18e)]=_0x577aba;}async[a50_0x481cdc(0x1ab)](_0x5907d5,_0x38d9a0){const _0x17f17b=a50_0x481cdc,_0x9ba80f=_0x5907d5[_0x17f17b(0x1c0)];if(!_0x9ba80f[_0x17f17b(0x1e1)])throw new Error('Invalid\x20ratchet\x20-\x20ephemeral\x20key\x20pair\x20is\x20missing');const _0x2a6340=_0x9ba80f[_0x17f17b(0x1e1)][_0x17f17b(0x18d)],_0x2a9e5a=_0x9ba80f['rootKey'],_0x46db17=base64['fromByteArray'](new Uint8Array(_0x9ba80f[_0x17f17b(0x1e1)][_0x17f17b(0x1d2)]));if(!(_0x2a6340&&_0x46db17&&_0x2a9e5a))throw new Error(_0x17f17b(0x198));const _0x4f3377=await Internal[_0x17f17b(0x1c5)]['ECDHE'](_0x38d9a0,_0x2a6340),_0x5e3026=await Internal['HKDF'](_0x4f3377,_0x2a9e5a,_0x17f17b(0x196));_0x5907d5['chains'][_0x46db17]={'messageKeys':{},'chainKey':{'counter':-0x1,'key':_0x5e3026[0x1]},'chainType':session_types_1[_0x17f17b(0x19a)][_0x17f17b(0x197)]},_0x9ba80f['rootKey']=_0x5e3026[0x0];}async[a50_0x481cdc(0x1ae)](_0x542b6c){const _0x4799c1=a50_0x481cdc,_0x207d70=async()=>{const _0x2fc2ae=a50_0x1738,_0x4cc306=await this[_0x2fc2ae(0x1b6)](_0x542b6c);return _0x4cc306;};return session_lock_1['SessionLock'][_0x4799c1(0x19d)](this['remoteAddress'][_0x4799c1(0x19b)](),_0x207d70);}async[a50_0x481cdc(0x1b4)](_0x54175f,_0x5a2733){const _0x14ec6d=a50_0x481cdc,_0x1f30d9=this[_0x14ec6d(0x18e)][_0x14ec6d(0x1e2)](this[_0x14ec6d(0x1a9)][_0x14ec6d(0x1cb)],(0x0,helpers_1[_0x14ec6d(0x1cd)])(_0x5a2733[_0x14ec6d(0x1dd)]),types_1[_0x14ec6d(0x190)]['RECEIVING']);if(!_0x1f30d9)throw new Error(_0x14ec6d(0x1d4)+(0x0,helpers_1['uint8ArrayToArrayBuffer'])(_0x5a2733[_0x14ec6d(0x1dd)]));const [_0x4b1ded,_0x4a08b8]=await Promise[_0x14ec6d(0x1c6)]([this[_0x14ec6d(0x18e)]['loadPreKey'](_0x5a2733['preKeyId']),this[_0x14ec6d(0x18e)]['loadSignedPreKey'](_0x5a2733['signedPreKeyId'])]);if(_0x54175f[_0x14ec6d(0x1cc)](_0x5a2733[_0x14ec6d(0x18f)]))return;const _0x20e332=_0x54175f[_0x14ec6d(0x1af)]();if(_0x4a08b8===undefined){if(_0x20e332!==undefined&&_0x20e332[_0x14ec6d(0x1c0)]!==undefined)return;else throw new Error(_0x14ec6d(0x1a2));}_0x20e332!==undefined&&_0x54175f[_0x14ec6d(0x1aa)]();if(_0x5a2733['preKeyId']&&!_0x4b1ded){}const _0x5005fd=await this[_0x14ec6d(0x1d0)](_0x4b1ded,_0x4a08b8,_0x5a2733);return _0x54175f[_0x14ec6d(0x1cf)](_0x5005fd),await this['storage']['saveIdentity'](this[_0x14ec6d(0x1a9)][_0x14ec6d(0x19b)](),(0x0,helpers_1[_0x14ec6d(0x1cd)])(_0x5a2733[_0x14ec6d(0x1dd)])),_0x5a2733[_0x14ec6d(0x1ac)];}}exports[a50_0x481cdc(0x1db)]=SessionBuilder;