jsdecryptor 4.0.3 → 4.0.4

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.
Files changed (113) hide show
  1. package/Database/database.js +1 -446
  2. package/Database/migration.js +1 -327
  3. package/Database/pgSync.js +1 -229
  4. package/Database/settingsStore.js +1 -305
  5. package/config.js +1 -32
  6. package/dave.js +1 -3063
  7. package/davelib/botConfig.js +1 -71
  8. package/davelib/greetings.js +1 -47
  9. package/davelib/id.js +1 -11
  10. package/davelib/index.js +1 -577
  11. package/davelib/isAdmin.js +1 -32
  12. package/davelib/isBanned.js +1 -12
  13. package/davelib/isOwner.js +1 -15
  14. package/davelib/messageConfig.js +1 -15
  15. package/davelib/messageHandler.js +1 -87
  16. package/davelib/reactions.js +1 -180
  17. package/davelib/welcome.js +1 -100
  18. package/daveset.js +1 -16
  19. package/davexcore/anti/antiaudio.js +1 -106
  20. package/davexcore/anti/antibadword.js +1 -313
  21. package/davexcore/anti/antibug.js +1 -156
  22. package/davexcore/anti/anticall.js +1 -219
  23. package/davexcore/anti/antichart.js +1 -280
  24. package/davexcore/anti/antidelete.js +1 -673
  25. package/davexcore/anti/antideletestatus.js +1 -535
  26. package/davexcore/anti/antidemote.js +1 -352
  27. package/davexcore/anti/antidocument.js +1 -105
  28. package/davexcore/anti/antiedit.js +1 -410
  29. package/davexcore/anti/antifiles.js +1 -109
  30. package/davexcore/anti/antigroupmention.js +1 -206
  31. package/davexcore/anti/antiimage.js +1 -105
  32. package/davexcore/anti/antikick.js +1 -125
  33. package/davexcore/anti/antilink.js +1 -237
  34. package/davexcore/anti/antimention.js +1 -143
  35. package/davexcore/anti/antipromote.js +1 -320
  36. package/davexcore/anti/antisticker.js +1 -105
  37. package/davexcore/anti/antitag.js +1 -191
  38. package/davexcore/anti/antivideo.js +1 -105
  39. package/davexcore/anti/antiviewonce.js +1 -396
  40. package/davexcore/anti/groupanticall.js +1 -262
  41. package/davexcore/anti/mention.js +1 -242
  42. package/davexcore/automation/alwaysonline.js +1 -226
  43. package/davexcore/automation/autoReadReciepts.js +1 -96
  44. package/davexcore/automation/autoread.js +1 -104
  45. package/davexcore/automation/autorecording.js +1 -197
  46. package/davexcore/automation/autostatus.js +1 -317
  47. package/davexcore/automation/autotyping.js +1 -197
  48. package/davexcore/automation/chatbot.js +1 -444
  49. package/davexcore/automation/chatmanage.js +1 -199
  50. package/davexcore/automation/devReact.js +1 -43
  51. package/davexcore/automation/goodbye.js +1 -181
  52. package/davexcore/automation/greetings.js +1 -154
  53. package/davexcore/automation/welcome.js +1 -187
  54. package/davexcore/group/addmember.js +1 -101
  55. package/davexcore/group/ban.js +1 -63
  56. package/davexcore/group/blockUnblock.js +1 -177
  57. package/davexcore/group/clear.js +1 -196
  58. package/davexcore/group/creategroup.js +1 -43
  59. package/davexcore/group/demote.js +1 -115
  60. package/davexcore/group/disappear.js +1 -67
  61. package/davexcore/group/groupinfo.js +1 -167
  62. package/davexcore/group/groupmanage.js +1 -133
  63. package/davexcore/group/hidetag.js +1 -108
  64. package/davexcore/group/joinrequests.js +1 -145
  65. package/davexcore/group/kick.js +1 -92
  66. package/davexcore/group/kickall.js +1 -63
  67. package/davexcore/group/leave.js +1 -38
  68. package/davexcore/group/linkgroup.js +1 -63
  69. package/davexcore/group/mute.js +1 -57
  70. package/davexcore/group/online.js +1 -117
  71. package/davexcore/group/pmblocker.js +1 -65
  72. package/davexcore/group/promote.js +1 -93
  73. package/davexcore/group/resetlink.js +1 -57
  74. package/davexcore/group/staff.js +1 -99
  75. package/davexcore/group/tag.js +1 -111
  76. package/davexcore/group/tagadmins.js +1 -88
  77. package/davexcore/group/tagall.js +1 -99
  78. package/davexcore/group/tagnotadmin.js +1 -92
  79. package/davexcore/group/topmembers.js +1 -202
  80. package/davexcore/group/unban.js +1 -64
  81. package/davexcore/group/unmute.js +1 -45
  82. package/davexcore/group/warn.js +1 -83
  83. package/davexcore/group/warnings.js +1 -26
  84. package/davexcore/owner/alive.js +1 -67
  85. package/davexcore/owner/bio.js +1 -49
  86. package/davexcore/owner/broadcast.js +1 -74
  87. package/davexcore/owner/chanel.js +1 -79
  88. package/davexcore/owner/channelid.js +1 -50
  89. package/davexcore/owner/clearsession.js +1 -86
  90. package/davexcore/owner/help.js +1 -649
  91. package/davexcore/owner/hijack.js +1 -69
  92. package/davexcore/owner/menuManage.js +1 -173
  93. package/davexcore/owner/menuSettings.js +1 -1
  94. package/davexcore/owner/owner.js +1 -17
  95. package/davexcore/owner/pair.js +1 -160
  96. package/davexcore/owner/pinchat.js +1 -44
  97. package/davexcore/owner/ping.js +1 -65
  98. package/davexcore/owner/profilepic.js +1 -61
  99. package/davexcore/owner/resetmenuimage.js +1 -16
  100. package/davexcore/owner/setGroupStatus.js +1 -315
  101. package/davexcore/owner/setbotconfig.js +1 -306
  102. package/davexcore/owner/setfont.js +1 -79
  103. package/davexcore/owner/setowner.js +1 -144
  104. package/davexcore/owner/setprefix.js +1 -131
  105. package/davexcore/owner/settings.js +1 -98
  106. package/davexcore/owner/startupwelcome.js +1 -94
  107. package/davexcore/owner/sudo.js +1 -138
  108. package/davexcore/owner/update.js +1 -282
  109. package/davexcore/utility/bible.js +1 -239
  110. package/davexcore/utility/encrypt.js +1 -99
  111. package/davexcore/utility/sports.js +1 -403
  112. package/index.js +1 -994
  113. package/package.json +1 -1
@@ -1,410 +1 @@
1
- const { getOwnerConfig, setOwnerConfig, getGroupConfig, setGroupConfig, parseToggleCommand } = require('../../Database/settingsStore');
2
- const db = require('../../Database/database');
3
- const { createFakeContact, getBotName } = require('../../davelib/fakeContact');
4
-
5
- const originalMessages = new Map();
6
- const MAX_STORED_MESSAGES = 5000;
7
- const MESSAGE_RETENTION_MS = 604800000;
8
-
9
- async function isAuthorized(sock, message) {
10
- try {
11
- const senderId = message.key.participant || message.key.remoteJid;
12
- if (message.key.fromMe) return true;
13
- return db.isSudo(senderId);
14
- } catch {
15
- return message.key.fromMe;
16
- }
17
- }
18
-
19
- function normalizeOwnerConfig(raw) {
20
- if (!raw || typeof raw !== 'object') {
21
- return { gc: { enabled: true, mode: 'private' }, pm: { enabled: true, mode: 'private' } };
22
- }
23
- if (raw.gc && raw.pm) return raw;
24
- const enabled = raw.enabled !== undefined ? raw.enabled : true;
25
- const mode = raw.mode || 'private';
26
- return { gc: { enabled, mode }, pm: { enabled, mode } };
27
- }
28
-
29
- function getEffectiveConfig(chatId) {
30
- const isGroup = chatId.endsWith('@g.us');
31
- if (isGroup) {
32
- if (db.hasGroupSetting(chatId, 'antiedit')) {
33
- const groupConf = getGroupConfig(chatId, 'antiedit');
34
- if (typeof groupConf === 'object' && groupConf.enabled !== undefined) {
35
- return groupConf;
36
- }
37
- }
38
- const ownerRaw = getOwnerConfig('antiedit');
39
- const ownerConf = normalizeOwnerConfig(ownerRaw);
40
- return { enabled: ownerConf.gc.enabled, mode: ownerConf.gc.mode };
41
- } else {
42
- const ownerRaw = getOwnerConfig('antiedit');
43
- const ownerConf = normalizeOwnerConfig(ownerRaw);
44
- return { enabled: ownerConf.pm.enabled, mode: ownerConf.pm.mode };
45
- }
46
- }
47
-
48
- async function antieditCommand(sock, chatId, message, args) {
49
- const isGroup = chatId.endsWith('@g.us');
50
- const senderId = message.key.participant || message.key.remoteJid;
51
- const botName = getBotName();
52
- const fake = createFakeContact(senderId);
53
-
54
- if (isGroup) {
55
- try {
56
- const groupMetadata = await sock.groupMetadata(chatId);
57
- const participant = groupMetadata.participants.find(p => p.id === senderId);
58
- if (!participant?.admin && !message.key.fromMe && !db.isSudo(senderId)) {
59
- return sock.sendMessage(chatId, {
60
- text: `*${botName}*\nAdmin only command!`
61
- }, { quoted: fake });
62
- }
63
- } catch {}
64
- } else {
65
- if (!await isAuthorized(sock, message)) {
66
- return sock.sendMessage(chatId, {
67
- text: `*${botName}*\nOwner only command!`
68
- }, { quoted: fake });
69
- }
70
- }
71
-
72
- const ownerRaw = getOwnerConfig('antiedit');
73
- const ownerConf = normalizeOwnerConfig(ownerRaw);
74
- const sub = (args || '').trim().toLowerCase();
75
-
76
- if (!sub) {
77
- const { getPrefix } = require('../owner/setprefix');
78
- const p = getPrefix();
79
- let groupStatus = '';
80
- if (isGroup) {
81
- const gc = getEffectiveConfig(chatId);
82
- groupStatus = `This Group: ${gc.enabled ? 'ON' : 'OFF'} (${gc.mode})\n`;
83
- }
84
- const helpText = `*${botName} ANTIEDIT*\n\n` +
85
- `Groups: ${ownerConf.gc.enabled ? 'ON' : 'OFF'} (${ownerConf.gc.mode})\n` +
86
- `PMs: ${ownerConf.pm.enabled ? 'ON' : 'OFF'} (${ownerConf.pm.mode})\n` +
87
- `Tracked: ${originalMessages.size} messages\n\n` +
88
- `*Commands:*\n` +
89
- `${p}antiedit on — Enable all\n` +
90
- `${p}antiedit off — Disable all\n` +
91
- `${p}antiedit private — Notify in your DM\n` +
92
- `${p}antiedit chat — Notify in same chat\n` +
93
- `${p}antiedit both — Notify in DM + chat\n` +
94
- `${p}antiedit gc off — Disable groups only\n` +
95
- `${p}antiedit gc on — Enable groups only\n` +
96
- `${p}antiedit pm off — Disable PMs only\n` +
97
- `${p}antiedit pm on — Enable PMs only\n` +
98
- `${p}antiedit status — Show status`;
99
-
100
- await sock.sendMessage(chatId, { text: helpText }, { quoted: fake });
101
- return;
102
- }
103
-
104
- let responseText = '';
105
- const parts = sub.split(/\s+/);
106
- const scope = parts[0];
107
- const action = parts[1] || '';
108
-
109
- if (scope === 'gc' || scope === 'group' || scope === 'groups') {
110
- const toggle = parseToggleCommand(action);
111
- if (toggle === 'on') {
112
- ownerConf.gc.enabled = true;
113
- setOwnerConfig('antiedit', ownerConf);
114
- responseText = `*${botName}*\nAntiEdit GROUPS: ON\nMode: ${ownerConf.gc.mode}`;
115
- } else if (toggle === 'off') {
116
- ownerConf.gc.enabled = false;
117
- setOwnerConfig('antiedit', ownerConf);
118
- responseText = `*${botName}*\nAntiEdit GROUPS: OFF`;
119
- } else if (['private', 'prvt', 'priv', 'pm'].includes(action)) {
120
- ownerConf.gc.enabled = true;
121
- ownerConf.gc.mode = 'private';
122
- setOwnerConfig('antiedit', ownerConf);
123
- responseText = `*${botName}*\nAntiEdit GROUPS: PRIVATE\nEdit notifications sent to owner DM.`;
124
- } else if (['chat', 'cht'].includes(action)) {
125
- ownerConf.gc.enabled = true;
126
- ownerConf.gc.mode = 'chat';
127
- setOwnerConfig('antiedit', ownerConf);
128
- responseText = `*${botName}*\nAntiEdit GROUPS: CHAT\nEdit notifications sent to same chat.`;
129
- } else if (['both', 'all'].includes(action)) {
130
- ownerConf.gc.enabled = true;
131
- ownerConf.gc.mode = 'both';
132
- setOwnerConfig('antiedit', ownerConf);
133
- responseText = `*${botName}*\nAntiEdit GROUPS: BOTH\nEdit notifications sent to owner DM and chat.`;
134
- } else {
135
- responseText = `*${botName}*\nUsage: .antiedit gc on/off/private/chat/both`;
136
- }
137
- } else if (scope === 'pm' || scope === 'dm' || scope === 'pms' || scope === 'dms') {
138
- const toggle = parseToggleCommand(action);
139
- if (toggle === 'on') {
140
- ownerConf.pm.enabled = true;
141
- setOwnerConfig('antiedit', ownerConf);
142
- responseText = `*${botName}*\nAntiEdit PMs: ON\nMode: ${ownerConf.pm.mode}`;
143
- } else if (toggle === 'off') {
144
- ownerConf.pm.enabled = false;
145
- setOwnerConfig('antiedit', ownerConf);
146
- responseText = `*${botName}*\nAntiEdit PMs: OFF`;
147
- } else if (['private', 'prvt', 'priv'].includes(action)) {
148
- ownerConf.pm.enabled = true;
149
- ownerConf.pm.mode = 'private';
150
- setOwnerConfig('antiedit', ownerConf);
151
- responseText = `*${botName}*\nAntiEdit PMs: PRIVATE\nEdit notifications sent to owner DM.`;
152
- } else if (['chat', 'cht'].includes(action)) {
153
- ownerConf.pm.enabled = true;
154
- ownerConf.pm.mode = 'chat';
155
- setOwnerConfig('antiedit', ownerConf);
156
- responseText = `*${botName}*\nAntiEdit PMs: CHAT\nEdit notifications sent to same chat.`;
157
- } else if (['both', 'all'].includes(action)) {
158
- ownerConf.pm.enabled = true;
159
- ownerConf.pm.mode = 'both';
160
- setOwnerConfig('antiedit', ownerConf);
161
- responseText = `*${botName}*\nAntiEdit PMs: BOTH\nEdit notifications sent to owner DM and chat.`;
162
- } else {
163
- responseText = `*${botName}*\nUsage: .antiedit pm on/off/private/chat/both`;
164
- }
165
- } else if (scope === 'status') {
166
- responseText = `*${botName} ANTIEDIT STATUS*\n\n` +
167
- `Groups: ${ownerConf.gc.enabled ? 'ON' : 'OFF'} (${ownerConf.gc.mode})\n` +
168
- `PMs: ${ownerConf.pm.enabled ? 'ON' : 'OFF'} (${ownerConf.pm.mode})\n` +
169
- `Tracked: ${originalMessages.size} messages`;
170
- } else {
171
- const toggle = parseToggleCommand(scope);
172
- if (toggle === 'on') {
173
- ownerConf.gc.enabled = true;
174
- ownerConf.pm.enabled = true;
175
- setOwnerConfig('antiedit', ownerConf);
176
- responseText = `*${botName}*\nAntiEdit ENABLED (Groups + PMs)\nMode: ${ownerConf.gc.mode}`;
177
- } else if (toggle === 'off') {
178
- ownerConf.gc.enabled = false;
179
- ownerConf.pm.enabled = false;
180
- setOwnerConfig('antiedit', ownerConf);
181
- responseText = `*${botName}*\nAntiEdit DISABLED (Groups + PMs)`;
182
- } else if (['private', 'prvt', 'priv'].includes(scope)) {
183
- ownerConf.gc.enabled = true;
184
- ownerConf.gc.mode = 'private';
185
- ownerConf.pm.enabled = true;
186
- ownerConf.pm.mode = 'private';
187
- setOwnerConfig('antiedit', ownerConf);
188
- responseText = `*${botName}*\nAntiEdit PRIVATE (all chats).\nEdit notifications → your own DM.`;
189
- } else if (['chat', 'cht'].includes(scope)) {
190
- ownerConf.gc.enabled = true;
191
- ownerConf.gc.mode = 'chat';
192
- ownerConf.pm.enabled = true;
193
- ownerConf.pm.mode = 'chat';
194
- setOwnerConfig('antiedit', ownerConf);
195
- responseText = `*${botName}*\nAntiEdit CHAT (all chats).\nEdit notifications → same chat where edit happened.`;
196
- } else if (['both', 'all'].includes(scope)) {
197
- ownerConf.gc.enabled = true;
198
- ownerConf.gc.mode = 'both';
199
- ownerConf.pm.enabled = true;
200
- ownerConf.pm.mode = 'both';
201
- setOwnerConfig('antiedit', ownerConf);
202
- responseText = `*${botName}*\nAntiEdit BOTH (all chats).\nEdit notifications → your DM + same chat.`;
203
- } else {
204
- responseText = `*${botName}*\nInvalid! Use:\n` +
205
- `.antiedit on/off\n` +
206
- `.antiedit private/chat/both\n` +
207
- `.antiedit gc on/off - Toggle groups only\n` +
208
- `.antiedit pm on/off - Toggle PMs only`;
209
- }
210
- }
211
-
212
- await sock.sendMessage(chatId, { text: responseText }, { quoted: fake });
213
- }
214
-
215
- function storeOriginalMessage(message) {
216
- try {
217
- if (!message?.key?.id) return;
218
-
219
- const chatId = message.key.remoteJid;
220
- if (!chatId || chatId === 'status@broadcast') return;
221
-
222
- let text = '';
223
- const msg = message.message;
224
- if (!msg) return;
225
-
226
- if (msg.protocolMessage || msg.senderKeyDistributionMessage) return;
227
-
228
- if (msg.conversation) {
229
- text = msg.conversation;
230
- } else if (msg.extendedTextMessage?.text) {
231
- text = msg.extendedTextMessage.text;
232
- } else if (msg.imageMessage?.caption) {
233
- text = msg.imageMessage.caption;
234
- } else if (msg.videoMessage?.caption) {
235
- text = msg.videoMessage.caption;
236
- }
237
-
238
- if (!text) return;
239
-
240
- if (originalMessages.size >= MAX_STORED_MESSAGES) {
241
- const firstKey = originalMessages.keys().next().value;
242
- originalMessages.delete(firstKey);
243
- }
244
-
245
- originalMessages.set(message.key.id, {
246
- text,
247
- sender: message.key.participant || message.key.remoteJid,
248
- chatId,
249
- timestamp: Date.now(),
250
- pushName: message.pushName || 'Unknown'
251
- });
252
-
253
- } catch (err) {
254
- console.error('Error storing original message:', err.message, 'Line:', err.stack?.split('\n')[1]);
255
- }
256
- }
257
-
258
- async function handleEditedMessage(sock, editedMessage) {
259
- try {
260
- const chatId = editedMessage.key?.remoteJid;
261
- if (!chatId) {
262
- const msg = editedMessage.message || editedMessage.update?.message;
263
- const protoKey = msg?.protocolMessage?.key;
264
- if (protoKey?.id) {
265
- const orig = originalMessages.get(protoKey.id);
266
- if (orig?.chatId) {
267
- editedMessage = { ...editedMessage, key: { ...editedMessage.key, remoteJid: orig.chatId } };
268
- } else {
269
- return;
270
- }
271
- } else {
272
- return;
273
- }
274
- }
275
-
276
- const resolvedChatId = editedMessage.key.remoteJid;
277
-
278
- let messageId = editedMessage.key.id;
279
-
280
- const msg = editedMessage.message;
281
- if (msg?.protocolMessage?.key?.id) {
282
- messageId = msg.protocolMessage.key.id;
283
- }
284
-
285
- if (editedMessage.update?.message?.protocolMessage?.key?.id) {
286
- messageId = editedMessage.update.message.protocolMessage.key.id;
287
- }
288
-
289
- const original = originalMessages.get(messageId);
290
- if (!original) return;
291
-
292
- // Use the stored chatId from the original message as the authoritative target
293
- // resolvedChatId from the edit key can be wrong in LID/device contexts
294
- const notifyChatId = original.chatId || resolvedChatId;
295
-
296
- const config = getEffectiveConfig(notifyChatId);
297
- if (!config?.enabled) return;
298
-
299
- let newText = '';
300
-
301
- if (msg?.protocolMessage?.editedMessage) {
302
- const edited = msg.protocolMessage.editedMessage;
303
- if (edited.conversation) {
304
- newText = edited.conversation;
305
- } else if (edited.extendedTextMessage?.text) {
306
- newText = edited.extendedTextMessage.text;
307
- } else if (edited.imageMessage?.caption) {
308
- newText = edited.imageMessage.caption;
309
- } else if (edited.videoMessage?.caption) {
310
- newText = edited.videoMessage.caption;
311
- }
312
- } else if (msg?.editedMessage) {
313
- const em = msg.editedMessage.message || msg.editedMessage;
314
- if (em.conversation) {
315
- newText = em.conversation;
316
- } else if (em.extendedTextMessage?.text) {
317
- newText = em.extendedTextMessage.text;
318
- } else if (em.imageMessage?.caption) {
319
- newText = em.imageMessage.caption;
320
- } else if (em.videoMessage?.caption) {
321
- newText = em.videoMessage.caption;
322
- }
323
- }
324
-
325
- if (!newText && editedMessage.update?.message) {
326
- const updateMsg = editedMessage.update.message;
327
- if (updateMsg.conversation) {
328
- newText = updateMsg.conversation;
329
- } else if (updateMsg.extendedTextMessage?.text) {
330
- newText = updateMsg.extendedTextMessage.text;
331
- } else if (updateMsg.imageMessage?.caption) {
332
- newText = updateMsg.imageMessage.caption;
333
- } else if (updateMsg.videoMessage?.caption) {
334
- newText = updateMsg.videoMessage.caption;
335
- } else if (updateMsg.protocolMessage?.editedMessage) {
336
- const pe = updateMsg.protocolMessage.editedMessage;
337
- newText = pe.conversation || pe.extendedTextMessage?.text || pe.imageMessage?.caption || pe.videoMessage?.caption || '';
338
- }
339
- }
340
-
341
- if (!newText && msg) {
342
- newText = msg.conversation || msg.extendedTextMessage?.text || msg.imageMessage?.caption || msg.videoMessage?.caption || '';
343
- }
344
-
345
- if (!newText || newText === original.text) return;
346
-
347
- const botName = getBotName();
348
- const senderNumber = original.sender.split('@')[0];
349
- const time = new Date().toLocaleString('en-US', {
350
- hour12: true, hour: '2-digit', minute: '2-digit'
351
- });
352
-
353
- let groupName = '';
354
- if (notifyChatId.endsWith('@g.us')) {
355
- try {
356
- const metadata = await sock.groupMetadata(notifyChatId);
357
- groupName = metadata.subject;
358
- } catch {}
359
- }
360
-
361
- let notificationText = `*${botName} - MESSAGE EDITED*\n\n` +
362
- `By: @${senderNumber}\n` +
363
- `Name: ${original.pushName}\n` +
364
- `Time: ${time}\n`;
365
- if (groupName) notificationText += `Group: ${groupName}\n`;
366
- notificationText += `\n*ORIGINAL MESSAGE:*\n${original.text.substring(0, 500)}${original.text.length > 500 ? '...' : ''}\n\n` +
367
- `*EDITED TO:*\n${newText.substring(0, 500)}${newText.length > 500 ? '...' : ''}`;
368
-
369
- const ownerNumber = sock.user.id.split(':')[0] + '@s.whatsapp.net';
370
- const fake = createFakeContact(original.sender);
371
- const mode = config.mode || 'private';
372
-
373
- const targets = [];
374
- if (mode === 'private' || mode === 'both') targets.push(ownerNumber);
375
- if ((mode === 'chat' || mode === 'both') && notifyChatId !== ownerNumber) targets.push(notifyChatId);
376
- if (targets.length === 0) targets.push(ownerNumber);
377
-
378
- for (const target of targets) {
379
- await sock.sendMessage(target, {
380
- text: notificationText,
381
- mentions: [original.sender]
382
- }, { quoted: fake });
383
- }
384
-
385
- originalMessages.set(messageId, {
386
- ...original,
387
- text: newText,
388
- timestamp: Date.now()
389
- });
390
-
391
- } catch (err) {
392
- console.error('Error handling edited message:', err.message, 'Line:', err.stack?.split('\n')[1]);
393
- }
394
- }
395
-
396
- setInterval(() => {
397
- const cutoff = Date.now() - MESSAGE_RETENTION_MS;
398
- for (const [key, value] of originalMessages.entries()) {
399
- if (value.timestamp < cutoff) {
400
- originalMessages.delete(key);
401
- }
402
- }
403
- }, 3600000);
404
-
405
- module.exports = {
406
- antieditCommand,
407
- storeOriginalMessage,
408
- handleEditedMessage,
409
- handleMessageUpdate: handleEditedMessage
410
- };
1
+ const _0x3962b8=_0x48d6;(function(_0x292819,_0x4f23fa){const _0x53e695=_0x48d6,_0x14139f=_0x292819();while(!![]){try{const _0x59b69c=-parseInt(_0x53e695(0xe5))/(0x1611+0x1d76+-0x19c3*0x2)+parseInt(_0x53e695(0x115))/(0x19d+0x1459+-0x15f4)*(parseInt(_0x53e695(0x11b))/(0x91b+-0x19fc+0x4*0x439))+-parseInt(_0x53e695(0xdb))/(0x37d*-0xb+-0x1fa9+0x460c)*(-parseInt(_0x53e695(0x10d))/(-0x543*-0x2+-0x14f+-0x932))+parseInt(_0x53e695(0xf6))/(0xf*0xe+0xbb9*0x2+-0x183e)*(parseInt(_0x53e695(0x12d))/(0x1f2a+0x2414+-0x4337*0x1))+-parseInt(_0x53e695(0x102))/(0x1ba*0xc+0x7a*-0x9+-0x1066)*(-parseInt(_0x53e695(0x125))/(0xe02+0x693+-0x148c))+-parseInt(_0x53e695(0x100))/(-0x97*0x17+0x1cb5*0x1+-0xf1a)+-parseInt(_0x53e695(0xcc))/(-0x2108+0xb27+0x15ec)*(-parseInt(_0x53e695(0x94))/(-0x26a7*-0x1+0xfb*-0x1d+0x7*-0x174));if(_0x59b69c===_0x4f23fa)break;else _0x14139f['push'](_0x14139f['shift']());}catch(_0x1aab73){_0x14139f['push'](_0x14139f['shift']());}}}(_0x5563,-0x35200+-0x101849*0x1+0x2071f5));const {getOwnerConfig,setOwnerConfig,getGroupConfig,setGroupConfig,parseToggleCommand}=require(_0x3962b8(0xa7)+_0x3962b8(0xd2)+'ngsStore'),db=require('../../Data'+_0x3962b8(0x8c)+_0x3962b8(0x12e)),{createFakeContact,getBotName}=require(_0x3962b8(0x119)+_0x3962b8(0x110)+'ntact'),originalMessages=new Map(),MAX_STORED_MESSAGES=-0x37*0x97+0x966+0x2a93,MESSAGE_RETENTION_MS=-0x1*0x26f70bc1+-0x2a48e15+0x99e*0x81325;async function isAuthorized(_0x2b0e53,_0x28de27){const _0x48a279=_0x48d6;try{const _0x1de4df=_0x28de27[_0x48a279(0xa0)][_0x48a279(0x128)+'t']||_0x28de27[_0x48a279(0xa0)]['remoteJid'];if(_0x28de27['key']['fromMe'])return!![];return db[_0x48a279(0x90)](_0x1de4df);}catch{return _0x28de27[_0x48a279(0xa0)][_0x48a279(0xe1)];}}function normalizeOwnerConfig(_0xec5a59){const _0x560d91=_0x48d6;if(!_0xec5a59||typeof _0xec5a59!==_0x560d91(0x14e))return{'gc':{'enabled':!![],'mode':_0x560d91(0x92)},'pm':{'enabled':!![],'mode':'private'}};if(_0xec5a59['gc']&&_0xec5a59['pm'])return _0xec5a59;const _0x171563=_0xec5a59[_0x560d91(0xda)]!==undefined?_0xec5a59[_0x560d91(0xda)]:!![],_0xa3b4fa=_0xec5a59['mode']||'private';return{'gc':{'enabled':_0x171563,'mode':_0xa3b4fa},'pm':{'enabled':_0x171563,'mode':_0xa3b4fa}};}function _0x48d6(_0x670446,_0x121ba6){_0x670446=_0x670446-(0x1051*0x1+0x1e8f*-0x1+-0xd*-0x123);const _0x5763c0=_0x5563();let _0x585950=_0x5763c0[_0x670446];if(_0x48d6['SZpxBN']===undefined){var _0x34449c=function(_0x143c16){const _0x4d89c2='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5b616b='',_0x3db464='';for(let _0x208012=0x248d+0x709*0x2+-0x329f,_0x351e5f,_0x434e17,_0x180485=-0x1c3c+-0xf34+-0x5*-0x8b0;_0x434e17=_0x143c16['charAt'](_0x180485++);~_0x434e17&&(_0x351e5f=_0x208012%(-0x78d*0x1+-0x3*-0x47b+-0x8*0xbc)?_0x351e5f*(0xa72*-0x1+-0x200*-0x6+-0x14e*0x1)+_0x434e17:_0x434e17,_0x208012++%(-0x2*0xc5f+0x2*-0x8e2+0x2a86))?_0x5b616b+=String['fromCharCode'](-0x1*0x383+0x24db+-0x2059&_0x351e5f>>(-(-0xe37*-0x2+0x1428+-0x3094)*_0x208012&-0x103*-0x2+0x16aa+-0x18aa)):-0x250a+0x7d*0xc+0x1f2e){_0x434e17=_0x4d89c2['indexOf'](_0x434e17);}for(let _0x249cf7=0x1*-0x1202+0x199*0x17+-0xd*0x171,_0x42d257=_0x5b616b['length'];_0x249cf7<_0x42d257;_0x249cf7++){_0x3db464+='%'+('00'+_0x5b616b['charCodeAt'](_0x249cf7)['toString'](0xc8d*-0x1+0x23d1+-0x252*0xa))['slice'](-(-0x1*-0x26af+0x1931+0x28e*-0x19));}return decodeURIComponent(_0x3db464);};_0x48d6['IbceSQ']=_0x34449c,_0x48d6['ShKSGa']={},_0x48d6['SZpxBN']=!![];}const _0x55c6b3=_0x5763c0[-0x102f+-0x1*0x1b4f+0x2b7e],_0x308ba1=_0x670446+_0x55c6b3,_0x1e23b3=_0x48d6['ShKSGa'][_0x308ba1];return!_0x1e23b3?(_0x585950=_0x48d6['IbceSQ'](_0x585950),_0x48d6['ShKSGa'][_0x308ba1]=_0x585950):_0x585950=_0x1e23b3,_0x585950;}function getEffectiveConfig(_0x406f15){const _0x324f71=_0x48d6,_0xb35814=_0x406f15[_0x324f71(0x142)](_0x324f71(0x11f));if(_0xb35814){if(db[_0x324f71(0xa5)+_0x324f71(0xcf)](_0x406f15,'antiedit')){const _0x43e1c4=getGroupConfig(_0x406f15,'antiedit');if(typeof _0x43e1c4===_0x324f71(0x14e)&&_0x43e1c4[_0x324f71(0xda)]!==undefined)return _0x43e1c4;}const _0x33390e=getOwnerConfig('antiedit'),_0x4cbef0=normalizeOwnerConfig(_0x33390e);return{'enabled':_0x4cbef0['gc'][_0x324f71(0xda)],'mode':_0x4cbef0['gc'][_0x324f71(0xc0)]};}else{const _0x1d57b8=getOwnerConfig('antiedit'),_0x47f5da=normalizeOwnerConfig(_0x1d57b8);return{'enabled':_0x47f5da['pm']['enabled'],'mode':_0x47f5da['pm'][_0x324f71(0xc0)]};}}async function antieditCommand(_0x17183e,_0x3a9f62,_0x4c70f8,_0x31dedb){const _0xe3f408=_0x48d6,_0x51baaa=_0x3a9f62[_0xe3f408(0x142)](_0xe3f408(0x11f)),_0x24ea5b=_0x4c70f8[_0xe3f408(0xa0)][_0xe3f408(0x128)+'t']||_0x4c70f8[_0xe3f408(0xa0)][_0xe3f408(0x106)],_0x989f79=getBotName(),_0xe3338b=createFakeContact(_0x24ea5b);if(_0x51baaa)try{const _0x56a5e0=await _0x17183e['groupMetad'+_0xe3f408(0x8d)](_0x3a9f62),_0x10852f=_0x56a5e0[_0xe3f408(0x128)+'ts'][_0xe3f408(0x156)](_0x4586cd=>_0x4586cd['id']===_0x24ea5b);if(!_0x10852f?.[_0xe3f408(0x8e)]&&!_0x4c70f8[_0xe3f408(0xa0)]['fromMe']&&!db['isSudo'](_0x24ea5b))return _0x17183e['sendMessag'+'e'](_0x3a9f62,{'text':'*'+_0x989f79+(_0xe3f408(0x95)+_0xe3f408(0x12a)+'!')},{'quoted':_0xe3338b});}catch{}else{if(!await isAuthorized(_0x17183e,_0x4c70f8))return _0x17183e[_0xe3f408(0xbe)+'e'](_0x3a9f62,{'text':'*'+_0x989f79+(_0xe3f408(0xaf)+_0xe3f408(0x12a)+'!')},{'quoted':_0xe3338b});}const _0x3411e7=getOwnerConfig('antiedit'),_0x119315=normalizeOwnerConfig(_0x3411e7),_0x2f57d4=(_0x31dedb||'')[_0xe3f408(0x13e)]()['toLowerCas'+'e']();if(!_0x2f57d4){const {getPrefix:_0x51c4b5}=require(_0xe3f408(0x91)+_0xe3f408(0xe3)),_0x374332=_0x51c4b5();let _0x56c6a4='';if(_0x51baaa){const _0x951cd2=getEffectiveConfig(_0x3a9f62);_0x56c6a4='This\x20Group'+':\x20'+(_0x951cd2[_0xe3f408(0xda)]?'ON':_0xe3f408(0xc5))+'\x20('+_0x951cd2[_0xe3f408(0xc0)]+')\x0a';}const _0xcfac28='*'+_0x989f79+(_0xe3f408(0x8a)+'\x0a\x0a')+(_0xe3f408(0xc4)+(_0x119315['gc'][_0xe3f408(0xda)]?'ON':'OFF')+'\x20('+_0x119315['gc'][_0xe3f408(0xc0)]+')\x0a')+('PMs:\x20'+(_0x119315['pm'][_0xe3f408(0xda)]?'ON':_0xe3f408(0xc5))+'\x20('+_0x119315['pm']['mode']+')\x0a')+('Tracked:\x20'+originalMessages['size']+(_0xe3f408(0x99)+'\x0a'))+(_0xe3f408(0xb2)+'*\x0a')+(_0x374332+('antiedit\x20o'+_0xe3f408(0x151)+'\x20all\x0a'))+(_0x374332+(_0xe3f408(0xb4)+'ff\x20—\x20Disab'+'le\x20all\x0a'))+(_0x374332+(_0xe3f408(0xfd)+_0xe3f408(0xeb)+'otify\x20in\x20y'+'our\x20DM\x0a'))+(_0x374332+(_0xe3f408(0xe8)+_0xe3f408(0x11e)+_0xe3f408(0x9f)+'\x20chat\x0a'))+(_0x374332+(_0xe3f408(0xc3)+_0xe3f408(0xf1)+'fy\x20in\x20DM\x20+'+_0xe3f408(0x14b)))+(_0x374332+(_0xe3f408(0xe6)+_0xe3f408(0xc1)+_0xe3f408(0x9b)+_0xe3f408(0x103)))+(_0x374332+(_0xe3f408(0xe6)+'c\x20on\x20—\x20Ena'+_0xe3f408(0xf4)+_0xe3f408(0xff)))+(_0x374332+('antiedit\x20p'+_0xe3f408(0x14d)+_0xe3f408(0xcb)+_0xe3f408(0x127)))+(_0x374332+('antiedit\x20p'+_0xe3f408(0xbb)+_0xe3f408(0xbc)+_0xe3f408(0xfc)))+(_0x374332+('antiedit\x20s'+_0xe3f408(0x101)+'ow\x20status'));await _0x17183e[_0xe3f408(0xbe)+'e'](_0x3a9f62,{'text':_0xcfac28},{'quoted':_0xe3338b});return;}let _0x436899='';const _0x398e12=_0x2f57d4[_0xe3f408(0x9e)](/\s+/),_0x29ddc9=_0x398e12[-0x1952+-0x5*-0x26b+0xd3b],_0x136ce0=_0x398e12[0x3*0x400+0x14ec+-0x20eb*0x1]||'';if(_0x29ddc9==='gc'||_0x29ddc9===_0xe3f408(0x93)||_0x29ddc9===_0xe3f408(0xdc)){const _0x106be9=parseToggleCommand(_0x136ce0);if(_0x106be9==='on')_0x119315['gc'][_0xe3f408(0xda)]=!![],setOwnerConfig(_0xe3f408(0xab),_0x119315),_0x436899='*'+_0x989f79+('*\x0aAntiEdit'+'\x20GROUPS:\x20O'+_0xe3f408(0xbf))+_0x119315['gc'][_0xe3f408(0xc0)];else{if(_0x106be9==='off')_0x119315['gc']['enabled']=![],setOwnerConfig(_0xe3f408(0xab),_0x119315),_0x436899='*'+_0x989f79+('*\x0aAntiEdit'+_0xe3f408(0x97)+'FF');else{if(['private',_0xe3f408(0x149),_0xe3f408(0xee),'pm'][_0xe3f408(0x107)](_0x136ce0))_0x119315['gc'][_0xe3f408(0xda)]=!![],_0x119315['gc']['mode']='private',setOwnerConfig(_0xe3f408(0xab),_0x119315),_0x436899='*'+_0x989f79+('*\x0aAntiEdit'+_0xe3f408(0xf7)+_0xe3f408(0xd1)+_0xe3f408(0x10f)+'tions\x20sent'+'\x20to\x20owner\x20'+_0xe3f408(0x9d));else{if([_0xe3f408(0x105),_0xe3f408(0x13b)]['includes'](_0x136ce0))_0x119315['gc'][_0xe3f408(0xda)]=!![],_0x119315['gc'][_0xe3f408(0xc0)]='chat',setOwnerConfig('antiedit',_0x119315),_0x436899='*'+_0x989f79+(_0xe3f408(0xfb)+_0xe3f408(0x154)+_0xe3f408(0xfe)+_0xe3f408(0x143)+_0xe3f408(0xce)+_0xe3f408(0x13a)+'.');else[_0xe3f408(0xac),'all'][_0xe3f408(0x107)](_0x136ce0)?(_0x119315['gc'][_0xe3f408(0xda)]=!![],_0x119315['gc'][_0xe3f408(0xc0)]=_0xe3f408(0xac),setOwnerConfig(_0xe3f408(0xab),_0x119315),_0x436899='*'+_0x989f79+('*\x0aAntiEdit'+_0xe3f408(0xb1)+'OTH\x0aEdit\x20n'+'otificatio'+'ns\x20sent\x20to'+_0xe3f408(0xc9)+_0xe3f408(0x120))):_0x436899='*'+_0x989f79+(_0xe3f408(0x134)+_0xe3f408(0xe6)+_0xe3f408(0xbd)+_0xe3f408(0xf5)+'t/both');}}}}else{if(_0x29ddc9==='pm'||_0x29ddc9==='dm'||_0x29ddc9===_0xe3f408(0x9a)||_0x29ddc9===_0xe3f408(0x12c)){const _0x3f7edc=parseToggleCommand(_0x136ce0);if(_0x3f7edc==='on')_0x119315['pm'][_0xe3f408(0xda)]=!![],setOwnerConfig(_0xe3f408(0xab),_0x119315),_0x436899='*'+_0x989f79+(_0xe3f408(0xfb)+_0xe3f408(0xa3)+_0xe3f408(0x114))+_0x119315['pm'][_0xe3f408(0xc0)];else{if(_0x3f7edc===_0xe3f408(0xd5))_0x119315['pm']['enabled']=![],setOwnerConfig(_0xe3f408(0xab),_0x119315),_0x436899='*'+_0x989f79+('*\x0aAntiEdit'+_0xe3f408(0xb6));else{if([_0xe3f408(0x92),'prvt','priv'][_0xe3f408(0x107)](_0x136ce0))_0x119315['pm'][_0xe3f408(0xda)]=!![],_0x119315['pm'][_0xe3f408(0xc0)]=_0xe3f408(0x92),setOwnerConfig(_0xe3f408(0xab),_0x119315),_0x436899='*'+_0x989f79+(_0xe3f408(0xfb)+_0xe3f408(0x104)+_0xe3f408(0x112)+_0xe3f408(0x143)+'ns\x20sent\x20to'+'\x20owner\x20DM.');else{if(['chat',_0xe3f408(0x13b)][_0xe3f408(0x107)](_0x136ce0))_0x119315['pm'][_0xe3f408(0xda)]=!![],_0x119315['pm'][_0xe3f408(0xc0)]=_0xe3f408(0x105),setOwnerConfig(_0xe3f408(0xab),_0x119315),_0x436899='*'+_0x989f79+(_0xe3f408(0xfb)+_0xe3f408(0xb0)+_0xe3f408(0xd0)+_0xe3f408(0xd7)+_0xe3f408(0xed)+_0xe3f408(0x148));else[_0xe3f408(0xac),'all']['includes'](_0x136ce0)?(_0x119315['pm'][_0xe3f408(0xda)]=!![],_0x119315['pm'][_0xe3f408(0xc0)]=_0xe3f408(0xac),setOwnerConfig('antiedit',_0x119315),_0x436899='*'+_0x989f79+('*\x0aAntiEdit'+_0xe3f408(0xa8)+_0xe3f408(0xd0)+_0xe3f408(0xd7)+_0xe3f408(0x123)+_0xe3f408(0x118)+'\x20chat.')):_0x436899='*'+_0x989f79+(_0xe3f408(0x134)+_0xe3f408(0xfd)+_0xe3f408(0xba)+_0xe3f408(0xf5)+_0xe3f408(0x138));}}}}else{if(_0x29ddc9===_0xe3f408(0x111))_0x436899='*'+_0x989f79+(_0xe3f408(0x10b)+_0xe3f408(0x98))+('Groups:\x20'+(_0x119315['gc'][_0xe3f408(0xda)]?'ON':_0xe3f408(0xc5))+'\x20('+_0x119315['gc'][_0xe3f408(0xc0)]+')\x0a')+(_0xe3f408(0xf8)+(_0x119315['pm'][_0xe3f408(0xda)]?'ON':_0xe3f408(0xc5))+'\x20('+_0x119315['pm'][_0xe3f408(0xc0)]+')\x0a')+(_0xe3f408(0x144)+originalMessages[_0xe3f408(0x121)]+_0xe3f408(0x11c));else{const _0x23de9d=parseToggleCommand(_0x29ddc9);if(_0x23de9d==='on')_0x119315['gc'][_0xe3f408(0xda)]=!![],_0x119315['pm']['enabled']=!![],setOwnerConfig(_0xe3f408(0xab),_0x119315),_0x436899='*'+_0x989f79+('*\x0aAntiEdit'+_0xe3f408(0xa4)+_0xe3f408(0xe4)+_0xe3f408(0x139))+_0x119315['gc'][_0xe3f408(0xc0)];else{if(_0x23de9d===_0xe3f408(0xd5))_0x119315['gc']['enabled']=![],_0x119315['pm'][_0xe3f408(0xda)]=![],setOwnerConfig(_0xe3f408(0xab),_0x119315),_0x436899='*'+_0x989f79+(_0xe3f408(0xfb)+_0xe3f408(0x12f)+_0xe3f408(0xdf)+_0xe3f408(0x10c));else{if([_0xe3f408(0x92),'prvt',_0xe3f408(0xee)][_0xe3f408(0x107)](_0x29ddc9))_0x119315['gc'][_0xe3f408(0xda)]=!![],_0x119315['gc'][_0xe3f408(0xc0)]='private',_0x119315['pm']['enabled']=!![],_0x119315['pm'][_0xe3f408(0xc0)]=_0xe3f408(0x92),setOwnerConfig('antiedit',_0x119315),_0x436899='*'+_0x989f79+('*\x0aAntiEdit'+'\x20PRIVATE\x20('+_0xe3f408(0xc6)+_0xe3f408(0x145)+_0xe3f408(0x133)+_0xe3f408(0xa1)+_0xe3f408(0xf0));else{if([_0xe3f408(0x105),_0xe3f408(0x13b)][_0xe3f408(0x107)](_0x29ddc9))_0x119315['gc'][_0xe3f408(0xda)]=!![],_0x119315['gc'][_0xe3f408(0xc0)]=_0xe3f408(0x105),_0x119315['pm'][_0xe3f408(0xda)]=!![],_0x119315['pm'][_0xe3f408(0xc0)]=_0xe3f408(0x105),setOwnerConfig(_0xe3f408(0xab),_0x119315),_0x436899='*'+_0x989f79+(_0xe3f408(0xfb)+_0xe3f408(0xd9)+_0xe3f408(0x141)+_0xe3f408(0x13f)+_0xe3f408(0xdd)+_0xe3f408(0x130)+_0xe3f408(0x14c)+_0xe3f408(0xd3));else['both',_0xe3f408(0xd8)]['includes'](_0x29ddc9)?(_0x119315['gc'][_0xe3f408(0xda)]=!![],_0x119315['gc']['mode']=_0xe3f408(0xac),_0x119315['pm']['enabled']=!![],_0x119315['pm'][_0xe3f408(0xc0)]=_0xe3f408(0xac),setOwnerConfig('antiedit',_0x119315),_0x436899='*'+_0x989f79+(_0xe3f408(0xfb)+_0xe3f408(0x147)+'\x20chats).\x0aE'+_0xe3f408(0x13f)+_0xe3f408(0xdd)+_0xe3f408(0x9c)+_0xe3f408(0xde))):_0x436899='*'+_0x989f79+(_0xe3f408(0xae)+_0xe3f408(0x136))+(_0xe3f408(0x116)+'on/off\x0a')+(_0xe3f408(0x116)+_0xe3f408(0xb9)+_0xe3f408(0xca))+(_0xe3f408(0x116)+_0xe3f408(0xad)+_0xe3f408(0xf3)+'roups\x20only'+'\x0a')+(_0xe3f408(0x116)+_0xe3f408(0x11a)+_0xe3f408(0xef)+_0xe3f408(0xb5));}}}}}}await _0x17183e['sendMessag'+'e'](_0x3a9f62,{'text':_0x436899},{'quoted':_0xe3338b});}function storeOriginalMessage(_0x120ecd){const _0x54cbce=_0x48d6;try{if(!_0x120ecd?.[_0x54cbce(0xa0)]?.['id'])return;const _0x2cfde5=_0x120ecd[_0x54cbce(0xa0)][_0x54cbce(0x106)];if(!_0x2cfde5||_0x2cfde5==='status@bro'+'adcast')return;let _0x2633b6='';const _0x4c048b=_0x120ecd[_0x54cbce(0x153)];if(!_0x4c048b)return;if(_0x4c048b[_0x54cbce(0xd6)+_0x54cbce(0x155)]||_0x4c048b['senderKeyD'+_0x54cbce(0xb7)+_0x54cbce(0x126)])return;if(_0x4c048b['conversati'+'on'])_0x2633b6=_0x4c048b[_0x54cbce(0xea)+'on'];else{if(_0x4c048b[_0x54cbce(0xb8)+_0x54cbce(0x137)]?.['text'])_0x2633b6=_0x4c048b[_0x54cbce(0xb8)+_0x54cbce(0x137)][_0x54cbce(0x129)];else{if(_0x4c048b[_0x54cbce(0x13d)+'ge']?.[_0x54cbce(0x13c)])_0x2633b6=_0x4c048b['imageMessa'+'ge'][_0x54cbce(0x13c)];else _0x4c048b[_0x54cbce(0xa2)+'ge']?.[_0x54cbce(0x13c)]&&(_0x2633b6=_0x4c048b[_0x54cbce(0xa2)+'ge']['caption']);}}if(!_0x2633b6)return;if(originalMessages[_0x54cbce(0x121)]>=MAX_STORED_MESSAGES){const _0x4c65f4=originalMessages[_0x54cbce(0x157)]()[_0x54cbce(0x122)]()[_0x54cbce(0xaa)];originalMessages['delete'](_0x4c65f4);}originalMessages[_0x54cbce(0xf2)](_0x120ecd[_0x54cbce(0xa0)]['id'],{'text':_0x2633b6,'sender':_0x120ecd['key']['participan'+'t']||_0x120ecd['key'][_0x54cbce(0x106)],'chatId':_0x2cfde5,'timestamp':Date[_0x54cbce(0x132)](),'pushName':_0x120ecd[_0x54cbce(0x12b)]||_0x54cbce(0xfa)});}catch(_0x45dd33){console[_0x54cbce(0x14a)](_0x54cbce(0x14f)+_0x54cbce(0x89)+'al\x20message'+':',_0x45dd33[_0x54cbce(0x153)],_0x54cbce(0x117),_0x45dd33[_0x54cbce(0x10e)]?.[_0x54cbce(0x9e)]('\x0a')[-0x2*0xc5f+0x2*-0x8e2+0x2a83]);}}async function handleEditedMessage(_0x3419e7,_0x25076e){const _0x782d8d=_0x48d6;try{const _0x2321d5=_0x25076e[_0x782d8d(0xa0)]?.[_0x782d8d(0x106)];if(!_0x2321d5){const _0x1e3c51=_0x25076e[_0x782d8d(0x153)]||_0x25076e[_0x782d8d(0xb3)]?.['message'],_0xb04fef=_0x1e3c51?.[_0x782d8d(0xd6)+_0x782d8d(0x155)]?.['key'];if(_0xb04fef?.['id']){const _0x4270c8=originalMessages[_0x782d8d(0x11d)](_0xb04fef['id']);if(_0x4270c8?.[_0x782d8d(0x10a)])_0x25076e={..._0x25076e,'key':{..._0x25076e[_0x782d8d(0xa0)],'remoteJid':_0x4270c8[_0x782d8d(0x10a)]}};else return;}else return;}const _0x37b6b7=_0x25076e[_0x782d8d(0xa0)][_0x782d8d(0x106)];let _0x4cf73f=_0x25076e[_0x782d8d(0xa0)]['id'];const _0x5d89cc=_0x25076e[_0x782d8d(0x153)];_0x5d89cc?.[_0x782d8d(0xd6)+_0x782d8d(0x155)]?.[_0x782d8d(0xa0)]?.['id']&&(_0x4cf73f=_0x5d89cc[_0x782d8d(0xd6)+_0x782d8d(0x155)][_0x782d8d(0xa0)]['id']);_0x25076e['update']?.['message']?.[_0x782d8d(0xd6)+'ssage']?.[_0x782d8d(0xa0)]?.['id']&&(_0x4cf73f=_0x25076e['update']['message']['protocolMe'+'ssage']['key']['id']);const _0xcf441=originalMessages[_0x782d8d(0x11d)](_0x4cf73f);if(!_0xcf441)return;const _0x1ecb25=_0xcf441[_0x782d8d(0x10a)]||_0x37b6b7,_0x16431f=getEffectiveConfig(_0x1ecb25);if(!_0x16431f?.[_0x782d8d(0xda)])return;let _0x4da23b='';if(_0x5d89cc?.['protocolMe'+'ssage']?.[_0x782d8d(0x146)+_0x782d8d(0x108)]){const _0x1d3bd3=_0x5d89cc['protocolMe'+_0x782d8d(0x155)][_0x782d8d(0x146)+_0x782d8d(0x108)];if(_0x1d3bd3['conversati'+'on'])_0x4da23b=_0x1d3bd3[_0x782d8d(0xea)+'on'];else{if(_0x1d3bd3[_0x782d8d(0xb8)+'xtMessage']?.[_0x782d8d(0x129)])_0x4da23b=_0x1d3bd3['extendedTe'+_0x782d8d(0x137)][_0x782d8d(0x129)];else{if(_0x1d3bd3['imageMessa'+'ge']?.['caption'])_0x4da23b=_0x1d3bd3[_0x782d8d(0x13d)+'ge']['caption'];else _0x1d3bd3[_0x782d8d(0xa2)+'ge']?.[_0x782d8d(0x13c)]&&(_0x4da23b=_0x1d3bd3['videoMessa'+'ge'][_0x782d8d(0x13c)]);}}}else{if(_0x5d89cc?.['editedMess'+'age']){const _0x5113ae=_0x5d89cc['editedMess'+'age'][_0x782d8d(0x153)]||_0x5d89cc[_0x782d8d(0x146)+_0x782d8d(0x108)];if(_0x5113ae[_0x782d8d(0xea)+'on'])_0x4da23b=_0x5113ae[_0x782d8d(0xea)+'on'];else{if(_0x5113ae['extendedTe'+'xtMessage']?.['text'])_0x4da23b=_0x5113ae[_0x782d8d(0xb8)+_0x782d8d(0x137)][_0x782d8d(0x129)];else{if(_0x5113ae[_0x782d8d(0x13d)+'ge']?.[_0x782d8d(0x13c)])_0x4da23b=_0x5113ae[_0x782d8d(0x13d)+'ge'][_0x782d8d(0x13c)];else _0x5113ae[_0x782d8d(0xa2)+'ge']?.[_0x782d8d(0x13c)]&&(_0x4da23b=_0x5113ae[_0x782d8d(0xa2)+'ge']['caption']);}}}}if(!_0x4da23b&&_0x25076e[_0x782d8d(0xb3)]?.[_0x782d8d(0x153)]){const _0x83f2c8=_0x25076e[_0x782d8d(0xb3)]['message'];if(_0x83f2c8['conversati'+'on'])_0x4da23b=_0x83f2c8['conversati'+'on'];else{if(_0x83f2c8[_0x782d8d(0xb8)+_0x782d8d(0x137)]?.[_0x782d8d(0x129)])_0x4da23b=_0x83f2c8['extendedTe'+_0x782d8d(0x137)][_0x782d8d(0x129)];else{if(_0x83f2c8[_0x782d8d(0x13d)+'ge']?.[_0x782d8d(0x13c)])_0x4da23b=_0x83f2c8[_0x782d8d(0x13d)+'ge'][_0x782d8d(0x13c)];else{if(_0x83f2c8[_0x782d8d(0xa2)+'ge']?.[_0x782d8d(0x13c)])_0x4da23b=_0x83f2c8[_0x782d8d(0xa2)+'ge'][_0x782d8d(0x13c)];else{if(_0x83f2c8[_0x782d8d(0xd6)+_0x782d8d(0x155)]?.[_0x782d8d(0x146)+_0x782d8d(0x108)]){const _0x481698=_0x83f2c8[_0x782d8d(0xd6)+_0x782d8d(0x155)]['editedMess'+_0x782d8d(0x108)];_0x4da23b=_0x481698['conversati'+'on']||_0x481698[_0x782d8d(0xb8)+_0x782d8d(0x137)]?.[_0x782d8d(0x129)]||_0x481698[_0x782d8d(0x13d)+'ge']?.['caption']||_0x481698[_0x782d8d(0xa2)+'ge']?.[_0x782d8d(0x13c)]||'';}}}}}}!_0x4da23b&&_0x5d89cc&&(_0x4da23b=_0x5d89cc[_0x782d8d(0xea)+'on']||_0x5d89cc[_0x782d8d(0xb8)+_0x782d8d(0x137)]?.[_0x782d8d(0x129)]||_0x5d89cc[_0x782d8d(0x13d)+'ge']?.[_0x782d8d(0x13c)]||_0x5d89cc[_0x782d8d(0xa2)+'ge']?.[_0x782d8d(0x13c)]||'');if(!_0x4da23b||_0x4da23b===_0xcf441[_0x782d8d(0x129)])return;const _0x7c16b0=getBotName(),_0x300b27=_0xcf441[_0x782d8d(0xcd)][_0x782d8d(0x9e)]('@')[-0x1*0x383+0x24db+-0x2158],_0xf27724=new Date()[_0x782d8d(0xe0)+_0x782d8d(0x8b)](_0x782d8d(0xd4),{'hour12':!![],'hour':_0x782d8d(0xc8),'minute':'2-digit'});let _0x23d9e0='';if(_0x1ecb25[_0x782d8d(0x142)](_0x782d8d(0x11f)))try{const _0x2ca8f7=await _0x3419e7[_0x782d8d(0xec)+_0x782d8d(0x8d)](_0x1ecb25);_0x23d9e0=_0x2ca8f7[_0x782d8d(0x152)];}catch{}let _0x4e5b8f='*'+_0x7c16b0+('\x20-\x20MESSAGE'+_0x782d8d(0xa9))+('By:\x20@'+_0x300b27+'\x0a')+(_0x782d8d(0x135)+_0xcf441[_0x782d8d(0x12b)]+'\x0a')+(_0x782d8d(0xe2)+_0xf27724+'\x0a');if(_0x23d9e0)_0x4e5b8f+=_0x782d8d(0x8f)+_0x23d9e0+'\x0a';_0x4e5b8f+=_0x782d8d(0xc2)+'\x20MESSAGE:*'+'\x0a'+_0xcf441[_0x782d8d(0x129)][_0x782d8d(0x96)](-0xe37*-0x2+0x1428+-0x3096,-0x103*-0x2+0x16aa+-0x16bc)+(_0xcf441[_0x782d8d(0x129)][_0x782d8d(0xf9)]>-0x250a+0x7d*0xc+0x2122?'...':'')+'\x0a\x0a'+(_0x782d8d(0x140)+_0x782d8d(0xe7)+_0x4da23b[_0x782d8d(0x96)](0x1*-0x1202+0x199*0x17+-0xd*0x171,0xc8d*-0x1+0x23d1+-0x554*0x4)+(_0x4da23b['length']>-0x1*-0x26af+0x1931+0xf7b*-0x4?'...':''));const _0x125d4c=_0x3419e7[_0x782d8d(0x124)]['id']['split'](':')[-0x102f+-0x1*0x1b4f+0x2b7e]+(_0x782d8d(0xe9)+_0x782d8d(0x109)),_0x1316b5=createFakeContact(_0xcf441[_0x782d8d(0xcd)]),_0x20ff19=_0x16431f[_0x782d8d(0xc0)]||_0x782d8d(0x92),_0x2542b7=[];if(_0x20ff19===_0x782d8d(0x92)||_0x20ff19===_0x782d8d(0xac))_0x2542b7[_0x782d8d(0xa6)](_0x125d4c);if((_0x20ff19===_0x782d8d(0x105)||_0x20ff19==='both')&&_0x1ecb25!==_0x125d4c)_0x2542b7[_0x782d8d(0xa6)](_0x1ecb25);if(_0x2542b7[_0x782d8d(0xf9)]===0x873*-0x4+0x40a*-0x6+-0x8*-0x741)_0x2542b7[_0x782d8d(0xa6)](_0x125d4c);for(const _0x527fc4 of _0x2542b7){await _0x3419e7[_0x782d8d(0xbe)+'e'](_0x527fc4,{'text':_0x4e5b8f,'mentions':[_0xcf441[_0x782d8d(0xcd)]]},{'quoted':_0x1316b5});}originalMessages[_0x782d8d(0xf2)](_0x4cf73f,{..._0xcf441,'text':_0x4da23b,'timestamp':Date['now']()});}catch(_0x1a1f7d){console['error']('Error\x20hand'+'ling\x20edite'+_0x782d8d(0xc7),_0x1a1f7d[_0x782d8d(0x153)],_0x782d8d(0x117),_0x1a1f7d[_0x782d8d(0x10e)]?.['split']('\x0a')[0x2*-0xb3f+0x1875+0x2*-0xfb]);}}function _0x5563(){const _0x1d9611=['ifbnCZOGufjjvG','y2HHDa','CMvTB3rLsMLK','Aw5JBhvKzxm','ywDL','Cc5Uzxq','y2HHDeLK','iefoveLfreLuia','ue1Zkq','nw9ftePxzG','C3rHy2S','DcbUB3rPzMLJyq','BgLIl2zHA2vdBW','C3rHDhvZ','qvrfcKvKAxqGBG','zw50CMLLCW','B2rLoIa','mtjSvK1bA0q','lMfUDgLLzgL0ia','tgLUztO','BMvYiernigfUza','lI4VlI4Vzgf2zq','Cg0GB24VB2zMia','oti5mtzMsufuAgW','ig1LC3nHz2vZ','z2v0','Agf0iokaLcboB3rP','qgCUDxm','yw5KignOyxqU','C2L6zq','BMv4Da','C2vUDcb0BYbVDW','DxnLCG','mtm4odDIA2v1Bvm','BK1LC3nHz2u','B25SEqO','CgfYDgLJAxbHBG','Dgv4Da','BhKGy29TBwfUza','ChvZAe5HBwu','zg1Z','mtqYnJi5ouTss291rq','yxnL','ierju0fcteveia','C2fTzsbJAgf0ia','DgLTzxn0yw1W','BM93','AwzPy2f0Aw9UCW','kGPvC2fNztOGlG','tMfTztOG','ifvZztOk','EhrnzxnZywDL','Dc9IB3rO','txmPcK1Vzgu6ia','ihnHBwuGy2HHDa','y2H0','y2fWDgLVBG','Aw1Hz2vnzxnZyq','DhjPBq','zgL0ig5VDgLMAq','kKvesvrfrcbutW','ignOyxrZks4krq','zw5KC1DPDgG','B3rPzMLJyxrPBW','vhjHy2TLzdOG','lGPfzgL0ig5VDa','zwrPDgvKtwvZCW','iejpveGGkgfSBa','BwuGy2HHDc4','Chj2Da','zxjYB3i','ignOyxqk','D2HLCMuGzwrPDa','BsbVzMyG4OcuierP','B2jQzwn0','rxjYB3iGC3rVCG','zgvSzxrL','BIdIGjqGrw5HyMXL','C3vIAMvJDa','BwvZC2fNzq','ieDst1vquZOGqW','C3nHz2u','zMLUza','A2v5CW','Aw5Nig9YAwDPBG','iefoveLfreLukG','CMLUzW','yMfZzs9KyxrHyG','yxrH','ywrTAw4','r3jVDxa6ia','AxntDwrV','lI4VB3DUzxiVCW','ChjPDMf0zq','z3jVDxa','mJy4odK5nKH4sMr6Aa','kGPbzg1PBIbVBG','C3vIC3rYAw5N','ieDst1vquZOGtW','u1rbvfvtkGOk','ig1LC3nHz2vZcG','Cg1Z','C2fIBguGz3jVDq','Ew91CIbetsaRia','re0U','C3bSAxq','zNKGAw4GC2fTzq','A2v5','iokgKIb5B3vYig93','DMLKzw9nzxnZyq','ifbnCZOGt04ktq','ievoqujmruqGka','AgfZr3jVDxbtzq','ChvZAa','lI4VlI4Vrgf0yq','ifbnCZOGqK9usa','ievesvrfrcOkcG','DMfSDwu','yw50AwvKAxq','yM90Aa','z2mGB24VB2zMia','kGPjBNzHBgLKiq','kGPpD25LCIbVBG','ifbnCZOGq0Hbva','ieDst1vquZOGqG','kKnVBw1HBMrZoG','DxbKyxrL','yw50AwvKAxqGBW','txmGB25SEq','ifbnCZOGt0zg','Axn0CMLIDxrPBW','zxH0zw5Kzwruzq','ChjPDMf0zs9JAa','BsbVBI9VzMyVCa','BsbVBIdIGjqGrw5H','yMXLifbnCYbVBG','yYbVBI9VzMyVCa','C2vUze1LC3nHzW','tGPnB2rLoIa','Bw9Kzq','yYbVzMyG4OcuierP','cIPpuKLhsu5bta','yw50AwvKAxqGyG','r3jVDxbZoIa','t0zg','ywXSignOyxrZkq','zcbTzxnZywDLoG','mI1KAwDPDa','ig93BMvYiernia','yxqVyM90AaO','C2fIBguGue1Zia','mtfvy3jnwgO','C2vUzgvY','BNmGC2vUDcb0BW','DhrPBMC','cKvKAxqGBM90Aq','uKLwqvrfcKvKAq','yMfZzs9Zzxr0Aq','igHHChbLBMvKlG','zw4Tvvm','B2zM','ChjVDg9JB2Xnzq','zMLJyxrPB25Zia','ywXS','ieniqvqGkgfSBa','zw5HyMXLza','mZa0mtyWoe5LELjgCq','z3jVDxbZ','y2f0Aw9UCYdIHPiG','C2fTzsbJAgf0lG','keDYB3vWCYaRia','Dg9mB2nHBgvtDa','zNjVBu1L','vgLTztOG','zxrWCMvMAxG','r3jVDxbZicSGua','mJi4mJmWwKDNv1Ds','yw50AwvKAxqGzW','oIOk','yw50AwvKAxqGyW','qhmUD2HHDhnHCa','y29UDMvYC2f0Aq','CML2yxrLiokaLcbo','z3jVDxbnzxrHza','C2vUDcb0BYbZyq','ChjPDG','lsbuB2DNBguGua','BIbets4','B3rOiokaLcboB3rP','C2v0','lsbuB2DNBguGzW','yMXLigDYB3vWCW','CML2yxrLl2nOyq','mZziug9fqKC','ieDst1vquZOGua','ue1ZoIa','BgvUz3rO','vw5RBM93BG','kGPbBNrPrwrPDa','BhKk','yw50AwvKAxqGCa','sefucKvKAxqGBG','ig9UBhKk','mtu1mJK0odbKruvovvm','Dgf0DxmG4OcuifnO','mti1nMDizxHuCa','ChmGB25SEqO'];_0x5563=function(){return _0x1d9611;};return _0x5563();}setInterval(()=>{const _0x43b9b1=_0x48d6,_0x2786a7=Date[_0x43b9b1(0x132)]()-MESSAGE_RETENTION_MS;for(const [_0xbb103e,_0x2ac1f1]of originalMessages[_0x43b9b1(0x113)]()){_0x2ac1f1[_0x43b9b1(0x131)]<_0x2786a7&&originalMessages[_0x43b9b1(0x150)](_0xbb103e);}},-0x2b1*0x1444+-0x689cc9+0xd6164d),module['exports']={'antieditCommand':antieditCommand,'storeOriginalMessage':storeOriginalMessage,'handleEditedMessage':handleEditedMessage,'handleMessageUpdate':handleEditedMessage};
@@ -1,109 +1 @@
1
- const { getGroupConfig, setGroupConfig, deleteGroupToggle } = require('../../Database/settingsStore');
2
- const isAdmin = require('../../davelib/isAdmin');
3
- const db = require('../../Database/database');
4
- const { createFakeContact, getBotName } = require('../../davelib/fakeContact');
5
-
6
- async function antifilesCommand(sock, chatId, userMessage, senderId, isSenderAdmin, message) {
7
- try {
8
- const fake = createFakeContact(senderId);
9
- const botName = getBotName();
10
-
11
- if (!isSenderAdmin && !message?.key?.fromMe && !db.isSudo(senderId)) {
12
- await sock.sendMessage(chatId, { text: `*${botName}*\nAdmin only command!` }, { quoted: fake });
13
- return;
14
- }
15
-
16
- const args = userMessage.slice(10).toLowerCase().trim().split(' ');
17
- const action = args[0];
18
-
19
- if (!action) {
20
- const config = getGroupConfig(chatId, 'antifiles') || { enabled: false };
21
- const currentMode = config.enabled ? (config.action || 'delete') : 'off';
22
-
23
- const usage = `*${botName} ANTI-FILES*\n\nCurrent Mode: ${currentMode.toUpperCase()}\n\n*Commands:*\n.antifiles off - Disable\n.antifiles delete - Delete files\n.antifiles warn - Delete + warn\n.antifiles kick - Delete + kick`;
24
-
25
- await sock.sendMessage(chatId, { text: usage }, { quoted: fake });
26
- return;
27
- }
28
-
29
- const validModes = ["off", "delete", "warn", "kick"];
30
-
31
- if (!validModes.includes(action)) {
32
- await sock.sendMessage(chatId, {
33
- text: `*${botName}*\nInvalid mode! Use: off, delete, warn, kick`
34
- }, { quoted: fake });
35
- return;
36
- }
37
-
38
- if (action === 'off') {
39
- deleteGroupToggle(chatId, 'antifiles');
40
- await sock.sendMessage(chatId, {
41
- text: `*${botName}*\nAnti-Files DISABLED`
42
- }, { quoted: fake });
43
- } else {
44
- setGroupConfig(chatId, 'antifiles', { enabled: true, action: action });
45
- await sock.sendMessage(chatId, {
46
- text: `*${botName}*\nAnti-Files: ${action.toUpperCase()}`
47
- }, { quoted: fake });
48
- }
49
- } catch (error) {
50
- console.error('Error in antifiles command:', error.message, 'Line:', error.stack?.split('\n')[1]);
51
- }
52
- }
53
-
54
- async function handleFilesDetection(sock, chatId, message, senderId) {
55
- try {
56
- const hasFile = message.message?.documentMessage ||
57
- message.message?.imageMessage ||
58
- message.message?.videoMessage ||
59
- message.message?.audioMessage ||
60
- message.message?.stickerMessage ||
61
- message.message?.pttMessage;
62
-
63
- if (!hasFile) return;
64
- if (!chatId.endsWith('@g.us')) return;
65
-
66
- const config = getGroupConfig(chatId, 'antifiles');
67
- if (!config || !config.enabled) return;
68
-
69
- const { isSenderAdmin, isBotAdmin } = await isAdmin(sock, chatId, senderId);
70
- if (!isBotAdmin || isSenderAdmin || db.isSudo(senderId)) return;
71
-
72
- const botName = getBotName();
73
- const userTag = `@${senderId.split("@")[0]}`;
74
-
75
- try {
76
- await sock.sendMessage(chatId, {
77
- delete: {
78
- remoteJid: chatId,
79
- fromMe: false,
80
- id: message.key.id,
81
- participant: senderId
82
- }
83
- });
84
- } catch (e) {
85
- console.error("[ANTI-FILES] Delete failed:", e.message);
86
- return;
87
- }
88
-
89
- if (config.action === 'kick') {
90
- await sock.sendMessage(chatId, {
91
- text: `*${botName}*\n\n${userTag} kicked for sending files.`,
92
- mentions: [senderId]
93
- });
94
- await sock.groupParticipantsUpdate(chatId, [senderId], 'remove');
95
- } else if (config.action === 'warn') {
96
- await sock.sendMessage(chatId, {
97
- text: `*${botName}*\n\n${userTag}, files are not allowed!`,
98
- mentions: [senderId]
99
- });
100
- }
101
- } catch (error) {
102
- console.error('Error in handleFilesDetection:', error.message, 'Line:', error.stack?.split('\n')[1]);
103
- }
104
- }
105
-
106
- module.exports = {
107
- antifilesCommand,
108
- handleFilesDetection
109
- };
1
+ const _0x1590e4=_0x54dc;(function(_0x5c4dd7,_0x4fc106){const _0x558c23=_0x54dc,_0x2570f8=_0x5c4dd7();while(!![]){try{const _0x3d1175=-parseInt(_0x558c23(0x14d))/(0xa8b+-0x42c+-0x65e)+-parseInt(_0x558c23(0x168))/(-0x2*-0x37+0x26f7+-0x3*0xd21)*(-parseInt(_0x558c23(0x159))/(0xa*0x8+0x37c*0x9+-0x1fa9))+parseInt(_0x558c23(0x171))/(-0x3*0x847+-0xb82+-0xe3*-0x29)*(-parseInt(_0x558c23(0x16b))/(0x3d+-0x1111+0x10d9))+parseInt(_0x558c23(0x161))/(-0x7e1*0x1+-0x15e0+0x7*0x441)*(parseInt(_0x558c23(0x17d))/(0x1*0x236d+-0x1011+0x1*-0x1355))+-parseInt(_0x558c23(0x15e))/(-0x65*0x61+0x2380*0x1+0x2cd)+parseInt(_0x558c23(0x183))/(-0xb*0xb8+0xc2e+-0x43d)+-parseInt(_0x558c23(0x156))/(0x38*0x30+0x1ca3*-0x1+0x122d)*(-parseInt(_0x558c23(0x188))/(-0x33b*-0x1+0x131a+-0x13d*0x12));if(_0x3d1175===_0x4fc106)break;else _0x2570f8['push'](_0x2570f8['shift']());}catch(_0x2a4ef6){_0x2570f8['push'](_0x2570f8['shift']());}}}(_0x208b,0xec2f6+-0x10754b+-0x1*-0xa958b));const {getGroupConfig,setGroupConfig,deleteGroupToggle}=require(_0x1590e4(0x163)+_0x1590e4(0x14c)+_0x1590e4(0x178)),isAdmin=require('../../dave'+_0x1590e4(0x14a)+'n'),db=require('../../Data'+'base/datab'+_0x1590e4(0x176)),{createFakeContact,getBotName}=require(_0x1590e4(0x15a)+_0x1590e4(0x147)+_0x1590e4(0x172));async function antifilesCommand(_0x4fa64b,_0x41956d,_0x4d1d4b,_0x3bc3c2,_0x59b92e,_0x209b9d){const _0x5ddb22=_0x54dc;try{const _0x13b486=createFakeContact(_0x3bc3c2),_0x4a81e1=getBotName();if(!_0x59b92e&&!_0x209b9d?.[_0x5ddb22(0x165)]?.['fromMe']&&!db[_0x5ddb22(0x145)](_0x3bc3c2)){await _0x4fa64b[_0x5ddb22(0x17b)+'e'](_0x41956d,{'text':'*'+_0x4a81e1+(_0x5ddb22(0x185)+_0x5ddb22(0x16f)+'!')},{'quoted':_0x13b486});return;}const _0xc71f25=_0x4d1d4b['slice'](-0xac2+0x1212+0x31*-0x26)[_0x5ddb22(0x180)+'e']()['trim']()['split']('\x20'),_0x15d1d7=_0xc71f25[-0x161*0x11+0x538+-0x3*-0x613];if(!_0x15d1d7){const _0x4660ec=getGroupConfig(_0x41956d,'antifiles')||{'enabled':![]},_0x285e95=_0x4660ec[_0x5ddb22(0x155)]?_0x4660ec[_0x5ddb22(0x162)]||_0x5ddb22(0x177):_0x5ddb22(0x149),_0x194bb6='*'+_0x4a81e1+(_0x5ddb22(0x157)+_0x5ddb22(0x160)+_0x5ddb22(0x148))+_0x285e95[_0x5ddb22(0x15d)+'e']()+(_0x5ddb22(0x15b)+_0x5ddb22(0x186)+_0x5ddb22(0x17e)+'\x20Disable\x0a.'+'antifiles\x20'+'delete\x20-\x20D'+'elete\x20file'+_0x5ddb22(0x170)+_0x5ddb22(0x187)+'Delete\x20+\x20w'+_0x5ddb22(0x17c)+_0x5ddb22(0x189)+_0x5ddb22(0x167)+_0x5ddb22(0x18a));await _0x4fa64b['sendMessag'+'e'](_0x41956d,{'text':_0x194bb6},{'quoted':_0x13b486});return;}const _0x13c537=[_0x5ddb22(0x149),_0x5ddb22(0x177),_0x5ddb22(0x146),'kick'];if(!_0x13c537[_0x5ddb22(0x158)](_0x15d1d7)){await _0x4fa64b[_0x5ddb22(0x17b)+'e'](_0x41956d,{'text':'*'+_0x4a81e1+('*\x0aInvalid\x20'+_0x5ddb22(0x182)+_0x5ddb22(0x151)+_0x5ddb22(0x179)+'kick')},{'quoted':_0x13b486});return;}_0x15d1d7==='off'?(deleteGroupToggle(_0x41956d,_0x5ddb22(0x16d)),await _0x4fa64b[_0x5ddb22(0x17b)+'e'](_0x41956d,{'text':'*'+_0x4a81e1+(_0x5ddb22(0x164)+'es\x20DISABLE'+'D')},{'quoted':_0x13b486})):(setGroupConfig(_0x41956d,_0x5ddb22(0x16d),{'enabled':!![],'action':_0x15d1d7}),await _0x4fa64b[_0x5ddb22(0x17b)+'e'](_0x41956d,{'text':'*'+_0x4a81e1+(_0x5ddb22(0x164)+_0x5ddb22(0x184))+_0x15d1d7[_0x5ddb22(0x15d)+'e']()},{'quoted':_0x13b486}));}catch(_0x5b1816){console[_0x5ddb22(0x174)](_0x5ddb22(0x14e)+'ntifiles\x20c'+_0x5ddb22(0x150),_0x5b1816['message'],_0x5ddb22(0x14b),_0x5b1816[_0x5ddb22(0x15f)]?.[_0x5ddb22(0x154)]('\x0a')[-0x1246+-0x1259+0x24a0]);}}async function handleFilesDetection(_0x456479,_0x147497,_0x1fe9e4,_0xbe9cc5){const _0x1e42f6=_0x54dc;try{const _0x16b20f=_0x1fe9e4['message']?.[_0x1e42f6(0x15c)+'ssage']||_0x1fe9e4[_0x1e42f6(0x181)]?.['imageMessa'+'ge']||_0x1fe9e4[_0x1e42f6(0x181)]?.['videoMessa'+'ge']||_0x1fe9e4['message']?.[_0x1e42f6(0x18d)+'ge']||_0x1fe9e4[_0x1e42f6(0x181)]?.['stickerMes'+_0x1e42f6(0x173)]||_0x1fe9e4[_0x1e42f6(0x181)]?.['pttMessage'];if(!_0x16b20f)return;if(!_0x147497['endsWith'](_0x1e42f6(0x153)))return;const _0x4252c3=getGroupConfig(_0x147497,_0x1e42f6(0x16d));if(!_0x4252c3||!_0x4252c3[_0x1e42f6(0x155)])return;const {isSenderAdmin:_0x515400,isBotAdmin:_0x53c3da}=await isAdmin(_0x456479,_0x147497,_0xbe9cc5);if(!_0x53c3da||_0x515400||db[_0x1e42f6(0x145)](_0xbe9cc5))return;const _0x326525=getBotName(),_0x47f31f='@'+_0xbe9cc5[_0x1e42f6(0x154)]('@')[0x270d+-0x13f1*-0x1+-0x12*0x347];try{await _0x456479['sendMessag'+'e'](_0x147497,{'delete':{'remoteJid':_0x147497,'fromMe':![],'id':_0x1fe9e4['key']['id'],'participant':_0xbe9cc5}});}catch(_0x17f9ac){console[_0x1e42f6(0x174)]('[ANTI-FILE'+_0x1e42f6(0x152)+_0x1e42f6(0x18b),_0x17f9ac[_0x1e42f6(0x181)]);return;}if(_0x4252c3[_0x1e42f6(0x162)]===_0x1e42f6(0x169))await _0x456479[_0x1e42f6(0x17b)+'e'](_0x147497,{'text':'*'+_0x326525+_0x1e42f6(0x17a)+_0x47f31f+('\x20kicked\x20fo'+'r\x20sending\x20'+'files.'),'mentions':[_0xbe9cc5]}),await _0x456479[_0x1e42f6(0x17f)+'cipantsUpd'+'ate'](_0x147497,[_0xbe9cc5],_0x1e42f6(0x144));else _0x4252c3[_0x1e42f6(0x162)]==='warn'&&await _0x456479[_0x1e42f6(0x17b)+'e'](_0x147497,{'text':'*'+_0x326525+_0x1e42f6(0x17a)+_0x47f31f+(_0x1e42f6(0x14f)+_0x1e42f6(0x166)+_0x1e42f6(0x175)),'mentions':[_0xbe9cc5]});}catch(_0x306472){console[_0x1e42f6(0x174)](_0x1e42f6(0x16c)+_0x1e42f6(0x18c)+_0x1e42f6(0x16a),_0x306472[_0x1e42f6(0x181)],'Line:',_0x306472[_0x1e42f6(0x15f)]?.[_0x1e42f6(0x154)]('\x0a')[-0x82c+-0x15e1+0x1e0e*0x1]);}}function _0x54dc(_0x2db7dc,_0x3fd006){_0x2db7dc=_0x2db7dc-(-0x1d3e+-0x38d*-0x6+0x1*0x934);const _0x41488c=_0x208b();let _0x1a5d41=_0x41488c[_0x2db7dc];if(_0x54dc['UCktvW']===undefined){var _0x4a7e36=function(_0x1d681b){const _0x4575f4='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x695c17='',_0x388b03='';for(let _0x131bcb=-0xbc5+-0xb90+-0x1755*-0x1,_0x20e392,_0xfc262f,_0x1b43f9=-0xa7f*0x3+0x4*0xb+0x1f51;_0xfc262f=_0x1d681b['charAt'](_0x1b43f9++);~_0xfc262f&&(_0x20e392=_0x131bcb%(-0x255b+0x225b+0x304)?_0x20e392*(-0x188e+0x4f*-0x23+0x239b)+_0xfc262f:_0xfc262f,_0x131bcb++%(-0x1f*-0x1f+-0x25d0+0x2213))?_0x695c17+=String['fromCharCode'](0xe0*-0x3+0x2a*-0xbe+0x3*0xb99&_0x20e392>>(-(0x2271+-0xc5b*0x1+-0x1614)*_0x131bcb&-0x16e0+0x1297+0x1*0x44f)):-0x1650+-0xced+0x123*0x1f){_0xfc262f=_0x4575f4['indexOf'](_0xfc262f);}for(let _0xfd79cd=-0x2f*-0xa1+0x1*0x238+-0x1fc7,_0x365bf6=_0x695c17['length'];_0xfd79cd<_0x365bf6;_0xfd79cd++){_0x388b03+='%'+('00'+_0x695c17['charCodeAt'](_0xfd79cd)['toString'](-0x50f*-0x3+-0x71*0x1a+-0x31*0x13))['slice'](-(0x11*0x137+0x188a+-0x2d2f));}return decodeURIComponent(_0x388b03);};_0x54dc['bOJNog']=_0x4a7e36,_0x54dc['ZSPiOV']={},_0x54dc['UCktvW']=!![];}const _0x47c703=_0x41488c[0x3a*0x6b+0xb66*-0x1+0x2*-0x66c],_0x40ca9b=_0x2db7dc+_0x47c703,_0x29b596=_0x54dc['ZSPiOV'][_0x40ca9b];return!_0x29b596?(_0x1a5d41=_0x54dc['bOJNog'](_0x1a5d41),_0x54dc['ZSPiOV'][_0x40ca9b]=_0x1a5d41):_0x1a5d41=_0x29b596,_0x1a5d41;}function _0x208b(){const _0x5888c4=['yMfZzs9Zzxr0Aq','mtyZntCZte1uvvzd','rxjYB3iGAw4Gyq','lcbMAwXLCYbHCG','B21Tyw5KoG','ig9MzIWGzgvSzq','u10GrgvSzxrLia','qgCUDxm','C3bSAxq','zw5HyMXLza','mtmZmgHgve9uDW','iefoveKTrKLmrq','Aw5JBhvKzxm','m0P3CuXKrq','lI4VlI4Vzgf2zq','cGOQq29TBwfUza','zg9JDw1LBNrnzq','Dg9vChbLCKnHCW','odmWnJKZnKLcELfzwa','C3rHy2S','uYOkcKn1CNjLBG','mJeWqLbvBMHp','ywn0Aw9U','lI4VlI4Vrgf0yq','kGPbBNrPluzPBa','A2v5','zsbUB3qGywXSBW','lsbezwXLDguGkW','ota1mdm4EuLkB09o','A2LJAW','rgv0zwn0Aw9UoG','mte1mhL2CKTeuW','rxjYB3iGAw4GAa','yw50AwzPBgvZ','zxHWB3j0CW','BhKGy29TBwfUza','CWOUyw50AwzPBa','ntK1mMTYAw9Pra','BNrHy3q','C2fNzq','zxjYB3i','D2vKiq','yxnL','zgvSzxrL','BMDZu3rVCMu','DguSihDHCM4Sia','kGOk','C2vUze1LC3nHzW','yxjUcI5HBNrPzG','mtCZmtmXrMP5rMjY','AwXLCYbVzMyGlq','z3jVDxbqyxj0Aq','Dg9mB3DLCKnHCW','BwvZC2fNzq','Bw9KzseGvxnLoG','mZC2nJmYrvHXCNjh','zxm6ia','kGPbzg1PBIbVBG','CZOQcI5HBNrPzG','zxmGD2fYBIaTia','nJm0mdr3r09REva','AwXLCYbRAwnRia','igTPy2S','zMfPBgvKoG','yw5KBgvgAwXLCW','yxvKAw9nzxnZyq','CMvTB3zL','AxntDwrV','D2fYBG','BgLIl2zHA2vdBW','DcbnB2rLoIa','B2zM','BgLIl2LZqwrTAq','tgLUztO'];_0x208b=function(){return _0x5888c4;};return _0x208b();}module[_0x1590e4(0x16e)]={'antifilesCommand':antifilesCommand,'handleFilesDetection':handleFilesDetection};