@alannxd/baileys 6.1.4 → 6.1.6

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 (50) hide show
  1. package/LICENSE +4 -1
  2. package/README.md +202 -277
  3. package/lib/Defaults/index.js +1 -1
  4. package/lib/Socket/graphql.js +716 -0
  5. package/lib/Socket/index.js +7 -1
  6. package/lib/Socket/interop.js +463 -0
  7. package/lib/Socket/messages-send.js +7 -6
  8. package/lib/Socket/mex.js +51 -39
  9. package/lib/Socket/newsletter.js +725 -258
  10. package/lib/Socket/privacy.js +318 -0
  11. package/lib/Socket/socket.js +143 -17
  12. package/lib/Socket/username.js +225 -136
  13. package/lib/Store/make-in-memory-store.js +47 -1
  14. package/lib/Types/Mex.js +76 -2
  15. package/lib/Utils/messages-media.js +82 -0
  16. package/lib/Utils/messages.js +86 -2
  17. package/lib/Utils/sticker.js +110 -0
  18. package/lib/WAUSync/Protocols/USyncBotProfileProtocol.js +53 -0
  19. package/lib/WAUSync/Protocols/USyncBusinessProtocol.js +43 -0
  20. package/lib/WAUSync/Protocols/USyncContactProtocol.js +52 -50
  21. package/lib/WAUSync/Protocols/USyncDeviceProtocol.js +55 -52
  22. package/lib/WAUSync/Protocols/USyncDisappearingModeProtocol.js +28 -25
  23. package/lib/WAUSync/Protocols/USyncFeatureProtocol.js +58 -0
  24. package/lib/WAUSync/Protocols/USyncLIDProtocol.js +30 -0
  25. package/lib/WAUSync/Protocols/USyncPictureProtocol.js +32 -0
  26. package/lib/WAUSync/Protocols/USyncSidelistProtocol.js +28 -0
  27. package/lib/WAUSync/Protocols/USyncStatusProtocol.js +37 -36
  28. package/lib/WAUSync/Protocols/USyncTextStatusProtocol.js +38 -0
  29. package/lib/WAUSync/Protocols/USyncUsernameProtocol.js +25 -23
  30. package/lib/WAUSync/Protocols/index.js +12 -6
  31. package/lib/WAUSync/USyncQuery.js +149 -96
  32. package/lib/WAUSync/USyncUser.js +54 -29
  33. package/lib/WAUSync/index.js +3 -4
  34. package/lib/index.js +2 -3
  35. package/package.json +19 -20
  36. package/WAProto/fix-import.js +0 -29
  37. package/lib/Defaults/baileys-version.json +0 -3
  38. package/lib/Defaults/phonenumber-mcc.json +0 -223
  39. package/lib/Signal/Group/queue-job.js +0 -57
  40. package/lib/Socket/Client/abstract-socket-client.js +0 -13
  41. package/lib/Socket/Client/mobile-socket-client.js +0 -65
  42. package/lib/Socket/Client/web-socket-client.js +0 -62
  43. package/lib/Socket/community.js +0 -392
  44. package/lib/Socket/dugong.js +0 -637
  45. package/lib/Socket/registration.js +0 -167
  46. package/lib/Socket/usync.js +0 -69
  47. package/lib/Types/Newsletter.js +0 -38
  48. package/lib/Utils/baileys-event-stream.js +0 -63
  49. package/lib/WAUSync/Protocols/UsyncBotProfileProtocol.js +0 -51
  50. package/lib/WAUSync/Protocols/UsyncLIDProtocol.js +0 -29
package/package.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "@alannxd/baileys",
3
3
  "type": "module",
4
- "version": "6.1.4",
5
- "description": "WhatsApp API Modification",
4
+ "version": "6.1.6",
5
+ "description": "A WebSockets library for interacting with WhatsApp Web — fork of Baileys with extra socket layers (communities, interop, privacy, GraphQL) and special message helpers.",
6
6
  "keywords": [
7
7
  "whatsapp",
8
8
  "automation",
@@ -14,33 +14,32 @@
14
14
  "Holow",
15
15
  "AlannXD"
16
16
  ],
17
- "homepage": "Alann Winter's",
17
+ "homepage": "https://www.npmjs.com/package/@alannxd/baileys",
18
18
  "repository": {
19
- "url": "https://t.me/alannxd"
19
+ "url": "https://www.npmjs.com/package/@alannxd/baileys"
20
20
  },
21
21
  "license": "MIT",
22
- "author": "Rajeh Taher",
22
+ "author": "Rajeh Taher - AlannXD - 7eppsynC",
23
23
  "main": "lib/index.js",
24
- "types": "lib/index.d.ts",
25
24
  "files": [
26
25
  "lib/**/*",
27
26
  "WAProto/**/*",
28
27
  "engine-requirements.js"
29
28
  ],
30
29
  "scripts": {
31
- "build:all": "tsc && typedoc",
32
- "build:docs": "typedoc",
33
- "build:tsc": "tsc",
34
- "changelog:last": "conventional-changelog -p angular -r 2",
35
- "changelog:preview": "conventional-changelog -p angular -u",
36
- "gen:protobuf": "sh WAProto/GenerateStatics.sh",
37
- "lint": "eslint src --ext .js,.ts,.jsx,.tsx",
38
- "lint:fix": "eslint src --fix --ext .js,.ts,.jsx,.tsx",
39
- "prepack": "",
40
- "prepare": "",
41
- "preinstall": "node ./engine-requirements.js",
42
- "release": "release-it",
43
- "test": "jest"
30
+ "build:all": "tsc && typedoc",
31
+ "build:docs": "typedoc",
32
+ "build:tsc": "tsc",
33
+ "changelog:last": "conventional-changelog -p angular -r 2",
34
+ "changelog:preview": "conventional-changelog -p angular -u",
35
+ "gen:protobuf": "sh WAProto/GenerateStatics.sh",
36
+ "lint": "eslint src --ext .js,.ts,.jsx,.tsx",
37
+ "lint:fix": "eslint src --fix --ext .js,.ts,.jsx,.tsx",
38
+ "prepack": "",
39
+ "prepare": "",
40
+ "preinstall": "node ./engine-requirements.js",
41
+ "release": "release-it",
42
+ "test": "jest"
44
43
  },
45
44
  "dependencies": {
46
45
  "@cacheable/node-cache": "^1.4.0",
@@ -140,4 +139,4 @@
140
139
  "engines": {
141
140
  "node": ">=20.0.0"
142
141
  }
143
- }
142
+ }
@@ -1,29 +0,0 @@
1
- const { readFileSync, writeFileSync } = require 'fs';
2
- const { exit } = require 'process';
3
-
4
- const filePath = './index.js';
5
-
6
- try {
7
- // Read the file
8
- let content = readFileSync(filePath, 'utf8');
9
-
10
- // Fix the import statement
11
- content = content.replace(
12
- /import \* as (\$protobuf) from/g,
13
- 'import $1 from'
14
- );
15
-
16
- // add missing extension to the import
17
- content = content.replace(
18
- /(['"])protobufjs\/minimal(['"])/g,
19
- '$1protobufjs/minimal.js$2'
20
- );
21
-
22
- // Write back
23
- writeFileSync(filePath, content, 'utf8');
24
-
25
- console.log(`✅ Fixed imports in ${filePath}`);
26
- } catch (error) {
27
- console.error(`❌ Error fixing imports: ${error.message}`);
28
- exit(1);
29
- }
@@ -1,3 +0,0 @@
1
- {
2
- "version": [2, 3000, 1042764204]
3
- }
@@ -1,223 +0,0 @@
1
- {
2
- "93": 412,
3
- "355": 276,
4
- "213": 603,
5
- "1-684": 544,
6
- "376": 213,
7
- "244": 631,
8
- "1-264": 365,
9
- "1-268": 344,
10
- "54": 722,
11
- "374": 283,
12
- "297": 363,
13
- "61": 505,
14
- "43": 232,
15
- "994": 400,
16
- "1-242": 364,
17
- "973": 426,
18
- "880": 470,
19
- "1-246": 342,
20
- "375": 257,
21
- "32": 206,
22
- "501": 702,
23
- "229": 616,
24
- "1-441": 350,
25
- "975": 402,
26
- "591": 736,
27
- "387": 218,
28
- "267": 652,
29
- "55": 724,
30
- "1-284": 348,
31
- "673": 528,
32
- "359": 284,
33
- "226": 613,
34
- "257": 642,
35
- "855": 456,
36
- "237": 624,
37
- "238": 625,
38
- "1-345": 346,
39
- "236": 623,
40
- "235": 622,
41
- "56": 730,
42
- "86": 454,
43
- "57": 732,
44
- "269": 654,
45
- "682": 548,
46
- "506": 712,
47
- "385": 219,
48
- "53": 368,
49
- "357": 280,
50
- "420": 230,
51
- "243": 630,
52
- "45": 238,
53
- "253": 638,
54
- "1-767": 366,
55
- "1-809": 370,
56
- "1-849": 370,
57
- "1-829": 370,
58
- "593": 740,
59
- "20": 602,
60
- "503": 706,
61
- "240": 627,
62
- "291": 657,
63
- "372": 248,
64
- "251": 636,
65
- "500": 750,
66
- "298": 288,
67
- "679": 542,
68
- "358": 244,
69
- "33": 208,
70
- "689": 547,
71
- "241": 628,
72
- "220": 607,
73
- "995": 282,
74
- "49": 262,
75
- "233": 620,
76
- "350": 266,
77
- "30": 202,
78
- "299": 290,
79
- "1-473": 352,
80
- "1-671": 535,
81
- "502": 704,
82
- "224": 537,
83
- "592": 738,
84
- "509": 372,
85
- "504": 708,
86
- "852": 454,
87
- "36": 216,
88
- "354": 274,
89
- "91": 404,
90
- "62": 510,
91
- "98": 432,
92
- "964": 418,
93
- "353": 234,
94
- "972": 425,
95
- "39": 222,
96
- "225": 612,
97
- "1-876": 338,
98
- "81": 440,
99
- "962": 416,
100
- "254": 639,
101
- "686": 545,
102
- "383": 221,
103
- "965": 419,
104
- "371": 247,
105
- "961": 415,
106
- "266": 651,
107
- "231": 618,
108
- "218": 606,
109
- "423": 295,
110
- "370": 246,
111
- "352": 270,
112
- "389": 294,
113
- "261": 646,
114
- "265": 650,
115
- "60": 502,
116
- "960": 472,
117
- "223": 610,
118
- "356": 278,
119
- "692": 551,
120
- "222": 609,
121
- "230": 617,
122
- "52": 334,
123
- "691": 550,
124
- "373": 259,
125
- "377": 212,
126
- "976": 428,
127
- "382": 297,
128
- "1-664": 354,
129
- "212": 604,
130
- "258": 643,
131
- "95": 414,
132
- "264": 649,
133
- "674": 536,
134
- "977": 429,
135
- "31": 204,
136
- "687": 546,
137
- "64": 530,
138
- "505": 710,
139
- "227": 614,
140
- "234": 621,
141
- "683": 555,
142
- "1-670": 534,
143
- "47": 242,
144
- "968": 226,
145
- "92": 410,
146
- "680": 552,
147
- "970": 423,
148
- "507": 714,
149
- "675": 537,
150
- "595": 744,
151
- "51": 716,
152
- "63": 515,
153
- "48": 260,
154
- "351": 268,
155
- "1-787, 1-939": 330,
156
- "974": 427,
157
- "242": 630,
158
- "40": 226,
159
- "7": 250,
160
- "250": 635,
161
- "290": 658,
162
- "1-869": 356,
163
- "1-758": 358,
164
- "508": 308,
165
- "1-784": 360,
166
- "685": 544,
167
- "378": 292,
168
- "239": 626,
169
- "966": 420,
170
- "221": 608,
171
- "381": 220,
172
- "248": 633,
173
- "232": 619,
174
- "65": 525,
175
- "386": 293,
176
- "677": 540,
177
- "27": 655,
178
- "211": 659,
179
- "34": 214,
180
- "94": 413,
181
- "249": 634,
182
- "597": 746,
183
- "268": 653,
184
- "46": 240,
185
- "41": 228,
186
- "963": 417,
187
- "886": 466,
188
- "992": 436,
189
- "255": 640,
190
- "66": 520,
191
- "228": 615,
192
- "690": 554,
193
- "676": 539,
194
- "1-868": 374,
195
- "216": 605,
196
- "90": 286,
197
- "993": 438,
198
- "1-649": 376,
199
- "688": 553,
200
- "1-340": 332,
201
- "256": 641,
202
- "380": 255,
203
- "971": 424,
204
- "44": 234,
205
- "1": 310,
206
- "598": 748,
207
- "998": 434,
208
- "678": 541,
209
- "379": 225,
210
- "58": 734,
211
- "681": 543,
212
- "967": 421,
213
- "260": 645,
214
- "263": 648,
215
- "670": 514,
216
- "245": 632,
217
- "856": 457,
218
- "599": 362,
219
- "850": 467,
220
- "262": 647,
221
- "82": 450,
222
- "84": 452
223
- }
@@ -1,57 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.default = queueJob;
4
- const _queueAsyncBuckets = new Map();
5
- const _gcLimit = 10000;
6
- async function _asyncQueueExecutor(queue, cleanup) {
7
- let offt = 0;
8
- // eslint-disable-next-line no-constant-condition
9
- while (true) {
10
- const limit = Math.min(queue.length, _gcLimit);
11
- for (let i = offt; i < limit; i++) {
12
- const job = queue[i];
13
- try {
14
- job.resolve(await job.awaitable());
15
- }
16
- catch (e) {
17
- job.reject(e);
18
- }
19
- }
20
- if (limit < queue.length) {
21
- if (limit >= _gcLimit) {
22
- queue.splice(0, limit);
23
- offt = 0;
24
- }
25
- else {
26
- offt = limit;
27
- }
28
- }
29
- else {
30
- break;
31
- }
32
- }
33
- cleanup();
34
- }
35
- function queueJob(bucket, awaitable) {
36
- // Skip name assignment since it's readonly in strict mode
37
- if (typeof bucket !== 'string') {
38
- console.warn('Unhandled bucket type (for naming):', typeof bucket, bucket);
39
- }
40
- let inactive = false;
41
- if (!_queueAsyncBuckets.has(bucket)) {
42
- _queueAsyncBuckets.set(bucket, []);
43
- inactive = true;
44
- }
45
- const queue = _queueAsyncBuckets.get(bucket);
46
- const job = new Promise((resolve, reject) => {
47
- queue.push({
48
- awaitable,
49
- resolve: resolve,
50
- reject
51
- });
52
- });
53
- if (inactive) {
54
- _asyncQueueExecutor(queue, () => _queueAsyncBuckets.delete(bucket));
55
- }
56
- return job;
57
- }
@@ -1,13 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.AbstractSocketClient = void 0;
4
- const events_1 = require("events");
5
- class AbstractSocketClient extends events_1.EventEmitter {
6
- constructor(url, config) {
7
- super();
8
- this.url = url;
9
- this.config = config;
10
- this.setMaxListeners(0);
11
- }
12
- }
13
- exports.AbstractSocketClient = AbstractSocketClient;
@@ -1,65 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.MobileSocketClient = void 0;
4
- const net_1 = require("net");
5
- const abstract_socket_client_1 = require("./abstract-socket-client");
6
- class MobileSocketClient extends abstract_socket_client_1.AbstractSocketClient {
7
- constructor() {
8
- super(...arguments);
9
- this.socket = null;
10
- }
11
- get isOpen() {
12
- var _a;
13
- return ((_a = this.socket) === null || _a === void 0 ? void 0 : _a.readyState) === 'open';
14
- }
15
- get isClosed() {
16
- var _a;
17
- return this.socket === null || ((_a = this.socket) === null || _a === void 0 ? void 0 : _a.readyState) === 'closed';
18
- }
19
- get isClosing() {
20
- var _a;
21
- return this.socket === null || ((_a = this.socket) === null || _a === void 0 ? void 0 : _a.readyState) === 'closed';
22
- }
23
- get isConnecting() {
24
- var _a;
25
- return ((_a = this.socket) === null || _a === void 0 ? void 0 : _a.readyState) === 'opening';
26
- }
27
- async connect() {
28
- var _a;
29
- if (this.socket) {
30
- return;
31
- }
32
- if (this.config.agent) {
33
- throw new Error('There are not support for proxy agent for mobile connection');
34
- }
35
- else {
36
- this.socket = (0, net_1.connect)({
37
- host: this.url.hostname,
38
- port: Number(this.url.port) || 443
39
- });
40
- }
41
- this.socket.setMaxListeners(0);
42
- const events = ['close', 'connect', 'data', 'drain', 'end', 'error', 'lookup', 'ready', 'timeout'];
43
- for (const event of events) {
44
- (_a = this.socket) === null || _a === void 0 ? void 0 : _a.on(event, (...args) => this.emit(event, ...args));
45
- }
46
- this.socket.on('data', (...args) => this.emit('message', ...args));
47
- this.socket.on('ready', (...args) => this.emit('open', ...args));
48
- }
49
- async close() {
50
- if (!this.socket) {
51
- return;
52
- }
53
- return new Promise(resolve => {
54
- this.socket.end(resolve);
55
- this.socket = null;
56
- });
57
- }
58
- send(str, cb) {
59
- if (this.socket === null) {
60
- return false;
61
- }
62
- return this.socket.write(str, undefined, cb);
63
- }
64
- }
65
- exports.MobileSocketClient = MobileSocketClient;
@@ -1,62 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.WebSocketClient = void 0;
7
- const ws_1 = __importDefault(require("ws"));
8
- const Defaults_1 = require("../../Defaults");
9
- const abstract_socket_client_1 = require("./abstract-socket-client");
10
- class WebSocketClient extends abstract_socket_client_1.AbstractSocketClient {
11
- constructor() {
12
- super(...arguments);
13
- this.socket = null;
14
- }
15
- get isOpen() {
16
- var _a;
17
- return ((_a = this.socket) === null || _a === void 0 ? void 0 : _a.readyState) === ws_1.default.OPEN;
18
- }
19
- get isClosed() {
20
- var _a;
21
- return this.socket === null || ((_a = this.socket) === null || _a === void 0 ? void 0 : _a.readyState) === ws_1.default.CLOSED;
22
- }
23
- get isClosing() {
24
- var _a;
25
- return this.socket === null || ((_a = this.socket) === null || _a === void 0 ? void 0 : _a.readyState) === ws_1.default.CLOSING;
26
- }
27
- get isConnecting() {
28
- var _a;
29
- return ((_a = this.socket) === null || _a === void 0 ? void 0 : _a.readyState) === ws_1.default.CONNECTING;
30
- }
31
- async connect() {
32
- var _a, _b;
33
- if (this.socket) {
34
- return;
35
- }
36
- this.socket = new ws_1.default(this.url, {
37
- origin: Defaults_1.DEFAULT_ORIGIN,
38
- headers: (_a = this.config.options) === null || _a === void 0 ? void 0 : _a.headers,
39
- handshakeTimeout: this.config.connectTimeoutMs,
40
- timeout: this.config.connectTimeoutMs,
41
- agent: this.config.agent,
42
- });
43
- this.socket.setMaxListeners(0);
44
- const events = ['close', 'error', 'upgrade', 'message', 'open', 'ping', 'pong', 'unexpected-response'];
45
- for (const event of events) {
46
- (_b = this.socket) === null || _b === void 0 ? void 0 : _b.on(event, (...args) => this.emit(event, ...args));
47
- }
48
- }
49
- async close() {
50
- if (!this.socket) {
51
- return;
52
- }
53
- this.socket.close();
54
- this.socket = null;
55
- }
56
- send(str, cb) {
57
- var _a;
58
- (_a = this.socket) === null || _a === void 0 ? void 0 : _a.send(str, cb);
59
- return Boolean(this.socket);
60
- }
61
- }
62
- exports.WebSocketClient = WebSocketClient;