sahil5426

js2

Sep 28th, 2021 (edited)
993
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
JSON 8.32 KB | None | 0 0
  1. if (!window.Store||!window.Store.Msg) {
  2.     (function () {
  3.         function getStore(modules) {
  4.             let foundCount = 0;
  5.             let neededObjects = [
  6.                 { id: "Store", conditions: (module) => (module.default && module.default.Chat && module.default.Msg) ? module.default : null},
  7.                 { id: "Conn", conditions: (module) => (module.default && module.default.ref && module.default.refTTL) ? module.default : (module.Conn ? module.Conn : null)},
  8.                 { id: "MediaCollection", conditions: (module) => (module.default && module.default.prototype && (module.default.prototype.processFiles !== undefined||module.default.prototype.processAttachments !== undefined)) ? module.default : null },
  9.                 { id: "MediaProcess", conditions: (module) => (module.BLOB) ? module : null },
  10.                 { id: "Archive", conditions: (module) => (module.setArchive) ? module : null },
  11.                 { id: "Block", conditions: (module) => (module.blockContact && module.unblockContact) ? module : null },
  12.                 { id: "ChatUtil", conditions: (module) => (module.sendClear) ? module : null },
  13.                 { id: "GroupInvite", conditions: (module) => (module.sendQueryGroupInviteCode ) ? module : null },
  14.                 { id: "Wap", conditions: (module) => (module.createGroup) ? module : null },
  15.                 { id: "ServiceWorker", conditions: (module) => (module.default && module.default.killServiceWorker) ? module : null },
  16.                 { id: "State", conditions: (module) => (module.STATE && module.STREAM) ? module : null },
  17.                 { id: "_Presence", conditions: (module) => (module.setPresenceAvailable && module.setPresenceUnavailable) ? module : null },
  18.                 { id: "WapDelete", conditions: (module) => (module.sendConversationDelete && module.sendConversationDelete.length == 2) ? module : null },
  19.                 { id: 'FindChat', conditions: (module) => (module && module.findChat) ? module : null},            
  20.                 { id: "WapQuery", conditions: (module) => (module.default && module.default.queryExist) ? module.default : null },             
  21.                 { id: "WapQueryMD", conditions: (module) => (module.queryExist && module) ? module : null },
  22.                 { id: 'Perfil', conditions: (module) => module.__esModule === true && module.setPushname && !module.getComposeContents ? module : null},
  23.                 { id: "CryptoLib", conditions: (module) => (module.decryptE2EMedia) ? module : null },
  24.                 { id: "OpenChat", conditions: (module) => (module.default && module.default.prototype && module.default.prototype.openChat) ? module.default : null },
  25.                 { id: "UserConstructor", conditions: (module) => (module.default && module.default.prototype && module.default.prototype.isServer && module.default.prototype.isUser) ? module.default : null },
  26.                 { id: "SendTextMsgToChat", conditions: (module) => (module.sendTextMsgToChat) ? module.sendTextMsgToChat : null },
  27.                 { id: "ReadSeen", conditions: (module) => (module.sendSeen) ? module : null },
  28.                 { id: "sendDelete", conditions: (module) => (module.sendDelete) ? module.sendDelete : null },
  29.                 { id: "addAndSendMsgToChat", conditions: (module) => (module.addAndSendMsgToChat) ? module.addAndSendMsgToChat : null },
  30.                 { id: "sendMsgToChat", conditions: (module) => (module.sendMsgToChat) ? module.sendMsgToChat : null },
  31.                 { id: "Catalog", conditions: (module) => (module.Catalog) ? module.Catalog : null },
  32.                 { id: "bp", conditions: (module) => (module.default&&module.default.toString&&module.default.toString().includes('bp_unknown_version')) ? module.default : null },
  33.                 { id: "MsgKey", conditions: (module) => (module.default&&module.default.toString&&module.default.toString().includes('MsgKey error: obj is null/undefined')) ? module.default : null },
  34.                 { id: "Parser", conditions: (module) => (module.convertToTextWithoutSpecialEmojis) ? module.default : null },
  35.                 { id: "Builders", conditions: (module) => (module.TemplateMessage && module.HydratedFourRowTemplate) ? module : null },
  36.                 { id: "Me", conditions: (module) => (module.PLATFORMS && module.Conn) ? module.default : null },
  37.                 { id: "CallUtils", conditions: (module) => (module.sendCallEnd && module.parseCall) ? module : null },
  38.                 { id: "Identity", conditions: (module) => (module.queryIdentity && module.updateIdentity) ? module : null },
  39.                 { id: "MyStatus", conditions: (module) => (module.getStatus && module.setMyStatus) ? module : null },                
  40.                 { id: "ChatStates", conditions: (module) => (module.sendChatStatePaused && module.sendChatStateRecording && module.sendChatStateComposing) ? module : null },              
  41.                 { id: "GroupActions", conditions: (module) => (module.sendExitGroup && module.localExitGroup) ? module : null },
  42.                 { id: "Features", conditions: (module) => (module.FEATURE_CHANGE_EVENT && module.features) ? module : null },
  43.                 { id: "MessageUtils", conditions: (module) => (module.storeMessages && module.appendMessage) ? module : null },
  44.                 { id: "WebMessageInfo", conditions: (module) => (module.WebMessageInfo && module.WebFeatures) ? module.WebMessageInfo : null },
  45.                 { id: "createMessageKey", conditions: (module) => (module.createMessageKey && module.createDeviceSentMessage) ? module.createMessageKey : null },
  46.                 { id: "Participants", conditions: (module) => (module.addParticipants && module.removeParticipants && module.promoteParticipants && module.demoteParticipants) ? module : null },
  47.                 { id: "WidFactory", conditions: (module) => (module.isWidlike && module.createWid && module.createWidFromWidLike) ? module : null },
  48.                 { id: "Base", conditions: (module) => (module.setSubProtocol && module.binSend && module.actionNode) ? module : null },
  49.                 { id: "Versions", conditions: (module) => (module.loadProtoVersions && module.default && module.default["15"] && module.default["16"] && module.default["17"]) ? module : null },
  50.                 { id: "Sticker", conditions: (module) => (module.default && module.default.Sticker) ? module.default.Sticker : null },
  51.                 { id: "MediaUpload", conditions: (module) => (module.default && module.default.mediaUpload) ? module.default : null },
  52.                 { id: "UploadUtils", conditions: (module) => (module.default && module.default.encryptAndUpload) ? module.default : null },
  53.                 { id: 'UserPrefs', conditions: (module) => (module.getMaybeMeUser ? module : null), },
  54.                 { id: 'Vcard', conditions: (module) => (module.vcardFromContactModel ? module : null)}
  55.             ];
  56.             for (let idx in modules) {
  57.                 if ((typeof modules[idx] === "object") && (modules[idx] !== null)) {
  58.                     neededObjects.forEach((needObj) => {
  59.                         if (!needObj.conditions || needObj.foundedModule)
  60.                             return;
  61.                         let neededModule = needObj.conditions(modules[idx]);
  62.                         if (neededModule !== null) {
  63.                             foundCount++;
  64.                             needObj.foundedModule = neededModule;
  65.                         }
  66.             });
  67.  
  68.                     if (foundCount == neededObjects.length) {
  69.                         break;
  70.                     }
  71.                 }
  72.             }
  73.         let neededStore = neededObjects.find((needObj) => needObj.id === "Store");
  74.             window.Store = neededStore.foundedModule ? neededStore.foundedModule : {};
  75.             neededObjects.splice(neededObjects.indexOf(neededStore), 1);
  76.             neededObjects.forEach((needObj) => {
  77.                 if (needObj.foundedModule) {
  78.                     window.Store[needObj.id] = needObj.foundedModule;
  79.                 }
  80.             });
  81.         window.Store.Chat.modelClass.prototype.sendMessage = function (e) {
  82.         window.Store.SendTextMsgToChat(this, ...arguments);
  83.         }
  84.             return window.Store;
  85.         }
  86.         const parasite = `parasite${Date.now()}`
  87.  
  88.         if (typeof webpackJsonp === 'function') webpackJsonp([], {[parasite]: (x, y, z) => getStore(z)}, [parasite]);
  89.         else webpackChunkwhatsapp_web_client.push([[parasite], {}, function (o, e, t) {let modules = []; for (let idx in o.m) {modules.push(o(idx));}   getStore(modules);}]);
  90.        
  91.     })();
  92. }
  93.  
Add Comment
Please, Sign In to add comment