alicezetion 1.5.3 → 1.5.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (103) hide show
  1. package/.cache/replit/__replit_disk_meta.json +1 -1
  2. package/.cache/replit/nix/env.json +1 -1
  3. package/index.js +576 -382
  4. package/leiamnash/addExternalModule.js +19 -16
  5. package/leiamnash/addUserToGroup.js +113 -79
  6. package/leiamnash/changeAdminStatus.js +79 -79
  7. package/leiamnash/changeArchivedStatus.js +55 -41
  8. package/leiamnash/changeBio.js +77 -65
  9. package/leiamnash/changeBlockedStatus.js +47 -36
  10. package/leiamnash/changeGroupImage.js +129 -106
  11. package/leiamnash/changeNickname.js +59 -45
  12. package/leiamnash/changeThreadColor.js +71 -62
  13. package/leiamnash/changeThreadEmoji.js +55 -42
  14. package/leiamnash/chat.js +459 -374
  15. package/leiamnash/createNewGroup.js +86 -70
  16. package/leiamnash/createPoll.js +71 -60
  17. package/leiamnash/deleteMessage.js +56 -45
  18. package/leiamnash/deleteThread.js +56 -43
  19. package/leiamnash/forwardAttachment.js +60 -48
  20. package/leiamnash/getCurrentUserID.js +7 -7
  21. package/leiamnash/getEmojiUrl.js +29 -27
  22. package/leiamnash/getFriendsList.js +84 -73
  23. package/leiamnash/getThreadHistory.js +645 -537
  24. package/leiamnash/getThreadHistoryDeprecated.js +93 -0
  25. package/leiamnash/getThreadInfo.js +206 -425
  26. package/leiamnash/getThreadInfoDeprecated.js +80 -0
  27. package/leiamnash/getThreadList.js +238 -213
  28. package/leiamnash/getThreadListDeprecated.js +75 -0
  29. package/leiamnash/getThreadPictures.js +79 -59
  30. package/leiamnash/getUserID.js +66 -62
  31. package/leiamnash/getUserInfo.js +72 -113
  32. package/leiamnash/handleFriendRequest.js +61 -46
  33. package/leiamnash/handleMessageRequest.js +65 -49
  34. package/leiamnash/httpGet.js +52 -49
  35. package/leiamnash/httpPost.js +52 -48
  36. package/leiamnash/listenMqtt.js +789 -787
  37. package/leiamnash/logout.js +75 -68
  38. package/leiamnash/markAsDelivered.js +58 -48
  39. package/leiamnash/markAsRead.js +80 -70
  40. package/leiamnash/markAsReadAll.js +49 -42
  41. package/leiamnash/markAsSeen.js +59 -51
  42. package/leiamnash/muteThread.js +52 -47
  43. package/leiamnash/removeUserFromGroup.js +79 -49
  44. package/leiamnash/resolvePhotoUrl.js +45 -37
  45. package/leiamnash/searchForThread.js +53 -43
  46. package/leiamnash/sendTypingIndicator.js +103 -80
  47. package/leiamnash/setMessageReaction.js +117 -109
  48. package/leiamnash/setPostReaction.js +76 -102
  49. package/leiamnash/setTitle.js +86 -74
  50. package/leiamnash/threadColors.js +57 -39
  51. package/leiamnash/unfriend.js +52 -43
  52. package/leiamnash/unsendMessage.js +49 -40
  53. package/package.json +72 -90
  54. package/utils.js +1356 -1684
  55. package/Extra/Database/index.js +0 -469
  56. package/Extra/ExtraAddons.js +0 -82
  57. package/Extra/ExtraFindUID.js +0 -62
  58. package/Extra/ExtraGetThread.js +0 -340
  59. package/Extra/ExtraScreenShot.js +0 -430
  60. package/Extra/ExtraUptimeRobot.js +0 -38
  61. package/Extra/Html/Classic/script.js +0 -119
  62. package/Extra/Html/Classic/style.css +0 -8
  63. package/Extra/Security/AES_256_GCM/index.js +0 -0
  64. package/Extra/Security/Base/Step_1.js +0 -6
  65. package/Extra/Security/Base/Step_2.js +0 -22
  66. package/Extra/Security/Base/Step_3.js +0 -22
  67. package/Extra/Security/Base/index.js +0 -174
  68. package/Extra/Security/Index.js +0 -5
  69. package/Extra/Security/Step_1.js +0 -6
  70. package/Extra/Security/Step_2.js +0 -22
  71. package/Extra/Security/Step_3.js +0 -22
  72. package/Extra/Src/Change_Environment.js +0 -24
  73. package/Extra/Src/Check_Update.js +0 -67
  74. package/Extra/Src/History.js +0 -115
  75. package/Extra/Src/Instant_Update.js +0 -65
  76. package/Extra/Src/Last-Run.js +0 -65
  77. package/Extra/Src/Premium.js +0 -81
  78. package/Extra/Src/Release_Memory.js +0 -41
  79. package/Extra/Src/Websocket.js +0 -213
  80. package/Extra/Src/image/checkmate.jpg +0 -0
  81. package/Extra/Src/uuid.js +0 -137
  82. package/Func/AcceptAgreement.js +0 -31
  83. package/Func/ClearCache.js +0 -64
  84. package/Func/ReportV1.js +0 -54
  85. package/Language/index.json +0 -217
  86. package/Main.js +0 -1270
  87. package/broadcast.js +0 -40
  88. package/leiamnash/Dev_Horizon_Data.js +0 -125
  89. package/leiamnash/Premium.js +0 -25
  90. package/leiamnash/Screenshot.js +0 -83
  91. package/leiamnash/changeAvt.js +0 -85
  92. package/leiamnash/getAccessToken.js +0 -28
  93. package/leiamnash/getMessage.js +0 -80
  94. package/leiamnash/getThreadMain.js +0 -220
  95. package/leiamnash/getUID.js +0 -59
  96. package/leiamnash/getUserInfoMain.js +0 -65
  97. package/leiamnash/getUserInfoV2.js +0 -32
  98. package/leiamnash/getUserInfoV3.js +0 -63
  99. package/leiamnash/getUserInfoV4.js +0 -55
  100. package/leiamnash/getUserInfoV5.js +0 -61
  101. package/leiamnash/httpPostFormData.js +0 -41
  102. package/leiamnash/sendMessage.js +0 -379
  103. package/logger.js +0 -66
@@ -1,469 +0,0 @@
1
- /* eslint-disable no-self-assign */
2
- /* eslint-disable linebreak-style */
3
- const get = require('lodash/get');
4
- const set = require('lodash/set');
5
- const BetterDB = require("better-sqlite3");
6
- const fs = require('fs');
7
- const request = require('request');
8
- const deasync = require('deasync');
9
-
10
- if (!fs.existsSync(process.cwd() + '/alice/database')) {
11
- fs.mkdirSync(process.cwd() + '/');
12
- //fs.writeFileSync(process.cwd() + '/alice/database/leiamnash.md', 'This folder is used by ChernobyL(NANI =)) ) to store data. Do not delete this folder or any of the files in it.', 'utf8');
13
- }
14
- var db = new BetterDB(process.cwd() + "/alice/database/SyntheticDatabase.sqlite");
15
-
16
- function Lset(key, value) {
17
- if (!key)
18
- throw new TypeError(
19
- "No key specified."
20
- );
21
- return arbitrate("set",{
22
- stringify: false,
23
- id: key,
24
- data: value,
25
- ops: {},
26
- });
27
- }
28
-
29
- function Lget(key) {
30
- if (!key)
31
- throw new TypeError(
32
- "No key specified."
33
- );
34
- return arbitrate("fetch", { id: key, ops: {} || {} });
35
- }
36
-
37
- function Lhas(key) {
38
- if (!key)
39
- throw new TypeError(
40
- "No key specified."
41
- );
42
- return arbitrate("has", { id: key, ops: {} });
43
- }
44
-
45
- function Lremove(key) {
46
- if (!key)
47
- throw new TypeError(
48
- "No key specified."
49
- );
50
- return arbitrate("delete", { id: key, ops: {} });
51
- }
52
-
53
- function LremoveMultiple(key) {
54
- if (!key)
55
- throw new TypeError(
56
- "No key specified."
57
- );
58
- try {
59
- for (let i of key) {
60
- arbitrate("delete", { id: i, ops: {} });
61
- }
62
- return true;
63
- }
64
- catch (err) {
65
- return false;
66
- }
67
- }
68
-
69
- function Llist() {
70
- return arbitrate("all",{ ops: {} });
71
- }
72
-
73
- function Replit_Set(key, value) {
74
- try {
75
- var done = false;
76
-
77
- request({
78
- url: process.env.REPLIT_DB_URL,
79
- method: "POST",
80
- headers: {
81
- 'Content-Type': 'application/x-www-form-urlencoded',
82
- },
83
- body: `${encodeURIComponent(key)}=${encodeURIComponent(JSON.stringify(value))}`
84
-
85
- }, function (error, response, body) {
86
- done = true;
87
- });
88
-
89
- deasync.loopWhile(function(){
90
- return !done;
91
- });
92
-
93
- return;
94
-
95
- }
96
- catch (e) {
97
- console.log(e);
98
- return false;
99
- }
100
- }
101
-
102
- function Replit_Get(key) {
103
- try {
104
- var done = false;
105
- var response = null;
106
-
107
- request(process.env.REPLIT_DB_URL + "/" + key, function (error, res, body) {
108
- if (!error && res.statusCode == 200) {
109
- response = body;
110
- }
111
- done = true;
112
- });
113
-
114
- deasync.loopWhile(function(){
115
- return !done;
116
- });
117
-
118
- return JSON.parse(response);
119
- }
120
- catch (e) {
121
- console.log(e);
122
- return false;
123
- }
124
- }
125
-
126
- function Replit_Has(key) {
127
- try {
128
- var done = false;
129
- var response = null;
130
-
131
- request(process.env.REPLIT_DB_URL + "/" + key, function (error, res, body) {
132
- if (!error && res.statusCode == 200) {
133
- response = body;
134
- }
135
- done = true;
136
- });
137
-
138
- deasync.loopWhile(function(){
139
- return !done;
140
- });
141
-
142
- return response != null;
143
- }
144
- catch (e) {
145
- console.log(e);
146
- return false;
147
- }
148
- }
149
-
150
- function Replit_Remove(key) {
151
- try {
152
- var done = false;
153
- request.delete(process.env.REPLIT_DB_URL + "/" + key , function (error, response, body) {
154
- done = true;
155
- });
156
-
157
- deasync.loopWhile(function(){
158
- return !done;
159
- });
160
-
161
- return;
162
- }
163
- catch (e) {
164
- console.log(e);
165
- return false;
166
- }
167
- }
168
- function Replit_RemoveMultiple(keys) {
169
- try {
170
- for (const key of keys) {
171
- request.delete(process.env.REPLIT_DB_URL + "/" + key , function (error, response, body) {});
172
- }
173
- return true;
174
- }
175
- catch (e) {
176
- console.log(e);
177
- return false;
178
- }
179
- }
180
-
181
- function Replit_List() {
182
- var done = false;
183
- var response = null;
184
-
185
- request(process.env.REPLIT_DB_URL + "?encode=true" + `&prefix=${encodeURIComponent("")}`, function (error, res, body) {
186
- if (!error && res.statusCode == 200) {
187
- response = body;
188
- }
189
- done = true;
190
-
191
- });
192
-
193
- deasync.loopWhile(function(){
194
- return !done;
195
- });
196
-
197
- if (response.length === 0) {
198
- return [];
199
- }
200
- return response.split("\n").map(decodeURIComponent);
201
- }
202
-
203
-
204
- var methods = {
205
- fetch: function(db, params, options) {
206
- let fetched = db.prepare(`SELECT * FROM ${options.table} WHERE ID = (?)`).get(params.id);
207
- if (!fetched) return null;
208
- try {
209
- fetched = JSON.parse(fetched.json);
210
- } catch (e) {
211
- fetched = fetched.json;
212
- }
213
- return fetched;
214
- },
215
- set: function(db, params, options) {
216
- let fetched = db.prepare(`SELECT * FROM ${options.table} WHERE ID = (?)`).get(params.id);
217
- if (!fetched) {
218
- db.prepare(`INSERT INTO ${options.table} (ID,json) VALUES (?,?)`).run(params.id, '{}');
219
- fetched = db.prepare(`SELECT * FROM ${options.table} WHERE ID = (?)`).get(params.id);
220
- }
221
- try {
222
- fetched = JSON.parse(fetched);
223
- } catch (e) {
224
- fetched = fetched;
225
- }
226
- if (typeof fetched === 'object' && params.ops.target) {
227
- params.data = JSON.parse(params.data);
228
- params.data = set(fetched, params.ops.target, params.data);
229
- }
230
- else if (params.ops.target) throw new TypeError('Cannot target a non-object.');
231
- db.prepare(`UPDATE ${options.table} SET json = (?) WHERE ID = (?)`).run(JSON.stringify(params.data), params.id);
232
- let newData = db.prepare(`SELECT * FROM ${options.table} WHERE ID = (?)`).get(params.id).json;
233
- if (newData === '{}') return null;
234
- else {
235
- try { newData = JSON.parse(newData);
236
- }
237
- catch (e) {
238
- newData = newData;
239
- }
240
- return newData;
241
- }
242
- },
243
- add: function addDB(db, params, options) {
244
- let fetched = db.prepare(`SELECT * FROM ${options.table} WHERE ID = (?)`).get(params.id);
245
- if (!fetched) {
246
- db.prepare(`INSERT INTO ${options.table} (ID,json) VALUES (?,?)`).run(params.id, '{}');
247
- fetched = db.prepare(`SELECT * FROM ${options.table} WHERE ID = (?)`).get(params.id);
248
- }
249
- if (params.ops.target) {
250
- try {
251
- fetched = JSON.parse(fetched);
252
- }
253
- catch (e) {
254
- fetched = fetched;
255
- }
256
- let oldValue = get(fetched, params.ops.target);
257
- if (oldValue === undefined) oldValue = 0;
258
- else if (isNaN(oldValue)) throw new Error(`Data @ ID: "${params.id}" IS NOT A number.\nFOUND: ${fetched}\nEXPECTED: number`);
259
- params.data = set(fetched, params.ops.target, oldValue + JSON.parse(params.data));
260
- }
261
- else {
262
- if (fetched.json === '{}') fetched.json = 0;
263
- try {
264
- fetched.json = JSON.parse(fetched);
265
- } catch (e) {
266
- fetched.json = fetched.json;
267
- }
268
- if (isNaN(fetched.json)) throw new Error(`Data @ ID: "${params.id}" IS NOT A number.\nFOUND: ${fetched.json}\nEXPECTED: number`);
269
- params.data = parseInt(fetched.json, 10) + parseInt(params.data, 10);
270
- }
271
- db.prepare(`UPDATE ${options.table} SET json = (?) WHERE ID = (?)`).run(JSON.stringify(params.data), params.id);
272
- let newData = db.prepare(`SELECT * FROM ${options.table} WHERE ID = (?)`).get(params.id).json;
273
- if (newData === '{}') return null;
274
- else {
275
- try {
276
- newData = JSON.parse(newData);
277
- }
278
- catch (e) {
279
- newData = newData;
280
- }
281
- return newData;
282
- }
283
- },
284
- subtract: function subtractDB(db, params, options) {
285
- let fetched = db.prepare(`SELECT * FROM ${options.table} WHERE ID = (?)`).get(params.id);
286
- if (!fetched) {
287
- db.prepare(`INSERT INTO ${options.table} (ID,json) VALUES (?,?)`).run(params.id, '{}');
288
- fetched = db.prepare(`SELECT * FROM ${options.table} WHERE ID = (?)`).get(params.id);
289
- }
290
- if (params.ops.target) {
291
- try { fetched = JSON.parse(fetched); } catch (e) {}
292
- params.data = JSON.parse(params.data);
293
- let oldValue = get(fetched, params.ops.target);
294
- if (oldValue === undefined) oldValue = 0;
295
- else if (isNaN(oldValue)) throw new Error('Target is not a number.');
296
- params.data = set(fetched, params.ops.target, oldValue - params.data);
297
- } else {
298
- if (fetched.json === '{}') fetched.json = 0;
299
- else fetched.json = JSON.parse(fetched.json);
300
- try { fetched.json = JSON.parse(fetched); } catch (e) {}
301
- if (isNaN(fetched.json)) throw new Error('Target is not a number.');
302
- params.data = parseInt(fetched.json, 10) - parseInt(params.data, 10);
303
- }
304
- params.data = JSON.stringify(params.data);
305
- db.prepare(`UPDATE ${options.table} SET json = (?) WHERE ID = (?)`).run(params.data, params.id);
306
- let newData = db.prepare(`SELECT * FROM ${options.table} WHERE ID = (?)`).get(params.id).json;
307
- if (newData === '{}') return null;
308
- else {
309
- try { newData = JSON.parse(newData); } catch (e) {}
310
- return newData;
311
- }
312
- },
313
- push: function pushDB(db, params, options) {
314
- let fetched = db.prepare(`SELECT * FROM ${options.table} WHERE ID = (?)`).get(params.id);
315
- if (!fetched) {
316
- db.prepare(`INSERT INTO ${options.table} (ID,json) VALUES (?,?)`).run(params.id, '{}');
317
- fetched = db.prepare(`SELECT * FROM ${options.table} WHERE ID = (?)`).get(params.id);
318
- }
319
- if (params.ops.target) {
320
- fetched = JSON.parse(fetched.json);
321
- try { fetched = JSON.parse(fetched); } catch (e) {}
322
- params.data = JSON.parse(params.data);
323
- if (typeof fetched !== 'object') throw new TypeError('Cannot push into a non-object.');
324
- let oldArray = get(fetched, params.ops.target);
325
- if (oldArray === undefined) oldArray = [];
326
- else if (!Array.isArray(oldArray)) throw new TypeError('Target is not an array.');
327
- oldArray.push(params.data);
328
- params.data = set(fetched, params.ops.target, oldArray);
329
- } else {
330
- if (fetched.json === '{}') fetched.json = [];
331
- else fetched.json = JSON.parse(fetched.json);
332
- try { fetched.json = JSON.parse(fetched.json); } catch (e) {}
333
- params.data = JSON.parse(params.data);
334
- if (!Array.isArray(fetched.json)) throw new TypeError('Target is not an array.');
335
- fetched.json.push(params.data);
336
- params.data = fetched.json;
337
- }
338
- params.data = JSON.stringify(params.data);
339
- db.prepare(`UPDATE ${options.table} SET json = (?) WHERE ID = (?)`).run(params.data, params.id);
340
- let newData = db.prepare(`SELECT * FROM ${options.table} WHERE ID = (?)`).get(params.id).json;
341
- if (newData === '{}') return null;
342
- else {
343
- newData = JSON.parse(newData);
344
- try { newData = JSON.parse(newData); } catch (e) {}
345
- return newData;
346
- }
347
- },
348
- delete: function deleteDB(db, params, options) {
349
- const unset = require('lodash/unset');
350
- let fetched = db.prepare(`SELECT * FROM ${options.table} WHERE ID = (?)`).get(params.id);
351
- if (!fetched) return false;
352
- else fetched = JSON.parse(fetched.json);
353
- try { fetched = JSON.parse(fetched); } catch (e) {}
354
- if (typeof fetched === 'object' && params.ops.target) {
355
- unset(fetched, params.ops.target);
356
- fetched = JSON.stringify(fetched);
357
- db.prepare(`UPDATE ${options.table} SET json = (?) WHERE ID = (?)`).run(fetched, params.id);
358
- return true;
359
- }
360
- else if (params.ops.target) throw new TypeError('Target is not an object.');
361
- else db.prepare(`DELETE FROM ${options.table} WHERE ID = (?)`).run(params.id);
362
- return true;
363
- },
364
- has: function hasDB(db, params, options) {
365
- let fetched = db.prepare(`SELECT * FROM ${options.table} WHERE ID = (?)`).get(params.id);
366
- if (!fetched) return false;
367
- else fetched = JSON.parse(fetched.json);
368
- try { fetched = JSON.parse(fetched); } catch (e) {}
369
- if (params.ops.target) fetched = get(fetched, params.ops.target);
370
- return (typeof fetched != 'undefined');
371
- },
372
- all: function allDB(db, params, options) {
373
- var stmt = db.prepare(`SELECT * FROM ${options.table} WHERE ID IS NOT NULL`);
374
- let resp = [];
375
- for (var row of stmt.iterate()) {
376
- try {
377
- resp.push({
378
- ID: row.ID,
379
- data: JSON.parse(row.json)
380
- });
381
- }
382
- catch (e) {
383
- return [];
384
- }
385
- }
386
- return resp;
387
- },
388
- type: function typeDB(db, params, options) {
389
- let fetched = db.prepare(`SELECT * FROM ${options.table} WHERE ID = (?)`).get(params.id);
390
- if (!fetched) return null; // If empty, return null
391
- fetched = JSON.parse(fetched.json);
392
- try { fetched = JSON.parse(fetched); } catch (e) {}
393
- if (params.ops.target) fetched = get(fetched, params.ops.target); // Get prop using dot notation
394
- return typeof fetched;
395
- },
396
- clear: function clearDB(db, params, options) {
397
- let fetched = db.prepare(`DELETE FROM ${options.table}`).run();
398
- if(!fetched) return null;
399
- return fetched.changes;
400
-
401
- }
402
- };
403
-
404
-
405
- function arbitrate(method, params) {
406
- let options = {table: "json"};
407
- db.prepare(`CREATE TABLE IF NOT EXISTS ${options.table} (ID TEXT, json TEXT)`).run();
408
- if (params.ops.target && params.ops.target[0] === ".") params.ops.target = params.ops.target.slice(1); // Remove prefix if necessary
409
- if (params.data && params.data === Infinity) throw new TypeError(`You cannot set Infinity into the database @ ID: ${params.id}`);
410
- if (params.id && typeof params.id == "string" && params.id.includes(".")) {
411
- let unparsed = params.id.split(".");
412
- params.id = unparsed.shift();
413
- params.ops.target = unparsed.join(".");
414
- }
415
- return methods[method](db, params, options);
416
- }
417
-
418
-
419
- module.exports = function ChernobyL(Local) {
420
- if (Local && process.env["REPL_ID"]) {
421
- return {
422
- set: Lset,
423
- get: Lget,
424
- has: Lhas,
425
- delete: Lremove,
426
- deleteMultiple: LremoveMultiple,
427
- list: Llist
428
- };
429
- } else if (!Local && process.env["REPL_ID"]) {
430
- return {
431
- set: Replit_Set,
432
- get: Replit_Get,
433
- has: Replit_Has,
434
- delete: Replit_Remove,
435
- deleteMultiple: Replit_RemoveMultiple,
436
- list: Replit_List
437
- };
438
- }
439
- else if (Local && !process.env["REPL_ID"]) {
440
- return {
441
- set: Lset,
442
- get: Lget,
443
- has: Lhas,
444
- delete: Lremove,
445
- deleteMultiple: LremoveMultiple,
446
- list: Llist
447
- };
448
- }
449
- else if (!Local && !process.env["REPL_ID"]) {
450
- return {
451
- set: Lset,
452
- get: Lget,
453
- has: Lhas,
454
- delete: Lremove,
455
- deleteMultiple: LremoveMultiple,
456
- list: Llist
457
- };
458
- }
459
- else {
460
- return {
461
- set: Lset,
462
- get: Lget,
463
- has: Lhas,
464
- delete: Lremove,
465
- deleteMultiple: LremoveMultiple,
466
- list: Llist
467
- };
468
- }
469
- };
@@ -1,82 +0,0 @@
1
- 'use strict';
2
-
3
- var utils = require('../utils');
4
- var logger = require('../logger')
5
- var OTP = require('totp-generator');
6
-
7
- module.exports.getInfo = async function (id,jar,ctx,defaultFuncs) {
8
- var AccessToken = await module.exports.getAccessToken(jar,ctx,defaultFuncs);
9
- var { body:Data } = await utils.get(`https://graph.facebook.com/${id}?fields=age_range,picture,cover,name,first_name,email,about,birthday,gender,website,hometown,link,location,quotes,relationship_status,significant_other,username,subscribers.limite(0)&access_token=${AccessToken}`,jar,null,ctx.globalOptions);
10
- var Format = {
11
- id: JSON.parse(Data).id || "Không Có Dữ Liệu",
12
- name: JSON.parse(Data).name || "Không Có Dữ Liệu",
13
- first_name: JSON.parse(Data).first_name || "Không Có Dữ Liệu",
14
- username: JSON.parse(Data).username || "Không Có Dữ Liệu",
15
- link: JSON.parse(Data).link || "Không Có Dữ Liệu",
16
- verified: JSON.parse(Data).verified || "Không Có Dữ Liệu",
17
- about: JSON.parse(Data).about || "Không Có Dữ Liệu",
18
- avatar: JSON.parse(Data).picture.data.url || "Không Có Dữ Liệu",
19
- cover: JSON.parse(Data).cover.source || "Không Có Dữ Liệu",
20
- birthday: JSON.parse(Data).birthday || "Không Có Dữ Liệu",
21
- age: JSON.parse(Data).age_range.min || "Không Có Dữ Liệu",
22
- follow: JSON.parse(Data).subscribers.summary.total_count || "Không Có Dữ Liệu",
23
- gender: JSON.parse(Data).gender || "Không Có Dữ Liệu",
24
- hometown: JSON.parse(Data).hometown || "Không Có Dữ Liệu",
25
- email: JSON.parse(Data).email || "Không Có Dữ Liệu",
26
- interested_in: JSON.parse(Data).interested_in || "Không Có Dữ Liệu",
27
- location: JSON.parse(Data).location || "Không Có Dữ Liệu",
28
- locale: JSON.parse(Data).locale || "Không Có Dữ Liệu",
29
- relationship_status: JSON.parse(Data).relationship_status || "Không Có Dữ Liệu",
30
- love: JSON.parse(Data).significant_other || "Không Có Dữ Liệu",
31
- website: JSON.parse(Data).website || "Không Có Dữ Liệu",
32
- quotes: JSON.parse(Data).quotes || "Không Có Dữ Liệu",
33
- timezone: JSON.parse(Data).timezone || "Không Có Dữ Liệu",
34
- updated_time: JSON.parse(Data).updated_time || "Không Có Dữ Liệu"
35
- }
36
- return Format;
37
- }
38
-
39
- /**
40
- * Help: @ManhG
41
- * Author: @KanzuWakazaki
42
- */
43
-
44
- module.exports.getAccessToken = async function (jar, ctx,defaultFuncs) {
45
- if (global.Fca.Data.AccessToken) {
46
- return global.Fca.Data.AccessToken;
47
- }
48
- else {
49
- var nextURLS = "https://business.facebook.com/security/twofactor/reauth/enter/"
50
- return defaultFuncs.get('https://business.facebook.com/content_management', jar, null, ctx.globalOptions).then(async function(data) {
51
- try {
52
- if (/"],\["(.*?)","/.exec(/LMBootstrapper(.*?){"__m":"LMBootstrapper"}/.exec(data.body)[1])[1]) {
53
- global.Fca.Data.AccessToken = /"],\["(.*?)","/.exec(/LMBootstrapper(.*?){"__m":"LMBootstrapper"}/.exec(data.body)[1])[1];
54
- return /"],\["(.*?)","/.exec(/LMBootstrapper(.*?){"__m":"LMBootstrapper"}/.exec(data.body)[1])[1];
55
- }
56
- }
57
- catch (_) {
58
- if (global.Fca.Require.FastConfig.AuthString.includes('|')) return logger.Error(global.Fca.Require.Language.Index.Missing)
59
- var OPTCODE = global.Fca.Require.FastConfig.AuthString.includes(" ") ? global.Fca.Require.FastConfig.AuthString.replace(RegExp(" ", 'g'), "") : global.Fca.Require.FastConfig.AuthString;
60
- var Form = {
61
- approvals_code: OTP(String(OPTCODE)),
62
- save_device: false,
63
- lsd: utils.getFrom(data.body, "[\"LSD\",[],{\"token\":\"", "\"}")
64
- }
65
- return defaultFuncs.post(nextURLS, jar, Form, ctx.globalOptions, {
66
- referer: "https://business.facebook.com/security/twofactor/reauth/?twofac_next=https%3A%2F%2Fbusiness.facebook.com%2Fcontent_management&type=avoid_bypass&app_id=0&save_device=0",
67
- }).then(async function(dataa) {
68
- if (String(dataa.body).includes(false)) throw { Error: "Invaild OTP | alicization.json: AuthString" }
69
- return utils.get('https://business.facebook.com/content_management', jar, null, ctx.globalOptions,{
70
- referer: "https://business.facebook.com/security/twofactor/reauth/?twofac_next=https%3A%2F%2Fbusiness.facebook.com%2Fcontent_management&type=avoid_bypass&app_id=0&save_device=0",
71
- }).then(async function(data) {
72
- var Access_Token = /"],\["(.*?)","/.exec(/BusinessToolEmptyView.brands.react(.*?){"__m":"BusinessToolEmptyView.brands.react"}/.exec(data.body)[1])[1];
73
- global.Fca.Data.AccessToken = Access_Token;
74
- return Access_Token;
75
- });
76
- });
77
- }
78
- })
79
- }
80
- }
81
-
82
- //hard working =))
@@ -1,62 +0,0 @@
1
- 'use strict';
2
-
3
- const got = global.Fca.Require.Fetch;
4
-
5
- /**
6
- * @param {string | URL} url
7
- * @param {{ sendMessage: (arg0: string, arg1: any) => any; }} api
8
- */
9
- async function getUIDSlow(url,api) {
10
- var FormData = require("form-data");
11
- var Form = new FormData();
12
- var Url = new URL(url);
13
- Form.append('username', Url.pathname.replace(/\//g, ""));
14
- try {
15
- var data = await got.post('https://api.findids.net/api/get-uid-from-username',{
16
- body: Form,
17
- userAgent: 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.79 Safari/537.36'
18
- })
19
- } catch (e) {
20
- console.log(global.Fca.Data.event.threadID,e)
21
- return api.sendMessage("Lỗi: " + e.message,global.Fca.Data.event.threadID);
22
- }
23
- if (JSON.parse(data.body.toString()).status != 200) return api.sendMessage('Đã bị lỗi !',global.Fca.Data.event.threadID)
24
- if (typeof JSON.parse(data.body.toString()).error === 'string') return "errr"
25
- else return JSON.parse(data.body.toString()).data.id || "nịt";
26
- }
27
-
28
- /**
29
- * @param {string | URL} url
30
- * @param {{ sendMessage: (arg0: string, arg1: any, arg2: any) => any; }} api
31
- */
32
- async function getUIDFast(url,api) {
33
- var FormData = require("form-data");
34
- var Form = new FormData();
35
- var Url = new URL(url);
36
- Form.append('link', Url.href);
37
- try {
38
- var data = await got.post('https://id.traodoisub.com/api.php',{
39
- body: Form
40
- })
41
- } catch (e) {
42
- return api.sendMessage("Lỗi: " + e.message,global.Fca.Data.event.threadID,global.Fca.Data.event.messageID);
43
- }
44
- if (JSON.parse(data.body.toString()).error) return api.sendMessage(JSON.parse(data.body.toString()).error,global.Fca.Data.event.threadID,global.Fca.Data.event.messageID);
45
- else return JSON.parse(data.body.toString()).id || "co cai nit huhu";
46
- }
47
-
48
- /**
49
- * @param {any} url
50
- * @param {any} api
51
- */
52
- async function getUID(url,api) {
53
- var getUID = await getUIDFast(url,api);
54
- if (!isNaN(getUID) == true) return getUID;
55
- else {
56
- let getUID = await getUIDSlow(url,api);
57
- if (!isNaN(data) == true) return getUID;
58
- else return null;
59
- }
60
- }
61
-
62
- module.exports = getUID;