@badzz88/baileys 8.5.6 → 8.5.7

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 (279) hide show
  1. package/README.md +2 -2
  2. package/WAProto/WAProto.proto +75 -1256
  3. package/WAProto/fix-imports.js +79 -69
  4. package/WAProto/index.d.ts +71491 -15254
  5. package/WAProto/index.js +126432 -19810
  6. package/engine-requirements.js +4 -3
  7. package/lib/Defaults/index.js +187 -0
  8. package/lib/Signal/Group/ciphertext-message.js +15 -0
  9. package/lib/Signal/Group/group-session-builder.js +92 -0
  10. package/lib/Signal/Group/group_cipher.js +89 -0
  11. package/lib/Signal/Group/index.js +136 -0
  12. package/lib/Signal/Group/keyhelper.js +73 -0
  13. package/lib/Signal/Group/sender-chain-key.js +32 -0
  14. package/lib/Signal/Group/sender-key-distribution-message.js +66 -0
  15. package/lib/Signal/Group/sender-key-message.js +69 -0
  16. package/lib/Signal/Group/sender-key-name.js +50 -0
  17. package/lib/Signal/Group/sender-key-record.js +44 -0
  18. package/lib/Signal/Group/sender-key-state.js +97 -0
  19. package/lib/Signal/Group/sender-message-key.js +30 -0
  20. package/lib/Signal/libsignal.js +459 -0
  21. package/lib/Signal/lid-mapping.js +260 -0
  22. package/lib/Socket/Client/index.js +30 -0
  23. package/lib/Socket/Client/types.js +13 -0
  24. package/lib/Socket/Client/websocket.js +62 -0
  25. package/lib/Socket/aigroups.js +240 -0
  26. package/lib/Socket/business.js +422 -0
  27. package/lib/Socket/chats.js +1816 -0
  28. package/lib/Socket/communities.js +549 -0
  29. package/lib/Socket/graphql.js +656 -0
  30. package/lib/Socket/groups.js +764 -0
  31. package/lib/Socket/index.js +39 -0
  32. package/lib/Socket/interactive-handler.js +522 -0
  33. package/lib/Socket/interop.js +549 -0
  34. package/{src → lib}/Socket/luxu.js +120 -82
  35. package/lib/Socket/managed-account.js +183 -0
  36. package/lib/Socket/messages-recv.js +2442 -0
  37. package/lib/Socket/messages-send.js +1853 -0
  38. package/lib/Socket/mex.js +60 -0
  39. package/lib/Socket/newsletter.js +818 -0
  40. package/lib/Socket/privacy.js +449 -0
  41. package/lib/Socket/registration.js +427 -0
  42. package/lib/Socket/socket.js +1092 -0
  43. package/lib/Socket/text-router.js +83 -0
  44. package/lib/Socket/username.js +243 -0
  45. package/lib/Store/index.js +36 -0
  46. package/{src → lib}/Store/keyed-db.js +11 -21
  47. package/lib/Store/make-cache-manager-store.js +90 -0
  48. package/lib/Store/make-in-memory-store.js +604 -0
  49. package/lib/Store/make-ordered-dictionary.js +81 -0
  50. package/lib/Store/object-repository.js +29 -0
  51. package/lib/Types/Auth.js +38 -0
  52. package/lib/Types/Bussines.js +2 -0
  53. package/lib/Types/Call.js +2 -0
  54. package/lib/Types/Chat.js +4 -0
  55. package/lib/Types/Contact.js +2 -0
  56. package/lib/Types/Events.js +2 -0
  57. package/lib/Types/GroupMetadata.js +2 -0
  58. package/lib/Types/Label.js +27 -0
  59. package/lib/Types/LabelAssociation.js +9 -0
  60. package/lib/Types/Message.js +95 -0
  61. package/lib/Types/Mex.js +112 -0
  62. package/lib/Types/Newsletter.js +121 -0
  63. package/lib/Types/Product.js +2 -0
  64. package/lib/Types/Signal.js +2 -0
  65. package/lib/Types/Socket.js +2 -0
  66. package/lib/Types/State.js +70 -0
  67. package/lib/Types/USync.js +2 -0
  68. package/lib/Types/index.js +55 -0
  69. package/lib/Utils/auth-utils.js +306 -0
  70. package/lib/Utils/browser-utils.js +114 -0
  71. package/lib/Utils/business.js +247 -0
  72. package/lib/Utils/chat-utils.js +1208 -0
  73. package/lib/Utils/command-loader.d.ts +31 -0
  74. package/lib/Utils/command-loader.js +100 -0
  75. package/lib/Utils/companion-reg-client-utils.js +42 -0
  76. package/lib/Utils/consumer-application.js +107 -0
  77. package/lib/Utils/crypto.js +155 -0
  78. package/lib/Utils/curve25519-js.js +275 -0
  79. package/lib/Utils/decode-wa-message.js +560 -0
  80. package/lib/Utils/event-buffer.js +607 -0
  81. package/lib/Utils/generics.js +563 -0
  82. package/lib/Utils/group-history.js +60 -0
  83. package/lib/Utils/history.js +244 -0
  84. package/lib/Utils/identity-change-handler.js +52 -0
  85. package/lib/Utils/index.js +57 -0
  86. package/lib/Utils/jid-display-normalization.js +218 -0
  87. package/lib/Utils/link-preview.js +143 -0
  88. package/lib/Utils/logger.js +9 -0
  89. package/lib/Utils/lt-hash.js +39 -0
  90. package/lib/Utils/make-mutex.js +36 -0
  91. package/lib/Utils/message-composer.js +479 -0
  92. package/lib/Utils/message-retry-manager.js +270 -0
  93. package/lib/Utils/messages-media.js +896 -0
  94. package/lib/Utils/messages.js +2904 -0
  95. package/lib/Utils/meta-ai-msmsg.js +262 -0
  96. package/lib/Utils/native-bridge.js +82 -0
  97. package/lib/Utils/noise-handler.js +196 -0
  98. package/lib/Utils/offline-node-processor.js +42 -0
  99. package/lib/Utils/pre-key-manager.js +107 -0
  100. package/lib/Utils/process-message.js +1048 -0
  101. package/lib/Utils/reporting-utils.js +262 -0
  102. package/lib/Utils/session-pool.d.ts +16 -0
  103. package/lib/Utils/session-pool.js +94 -0
  104. package/lib/Utils/signal.js +224 -0
  105. package/lib/Utils/stanza-ack.js +40 -0
  106. package/lib/Utils/sticker.d.ts +17 -0
  107. package/lib/Utils/sticker.js +145 -0
  108. package/lib/Utils/sync-action-utils.js +54 -0
  109. package/lib/Utils/tc-token-utils.js +161 -0
  110. package/lib/Utils/use-multi-file-auth-state.js +121 -0
  111. package/lib/Utils/validate-connection.js +219 -0
  112. package/lib/Utils/view-once-cache.d.ts +9 -0
  113. package/lib/Utils/view-once-cache.js +79 -0
  114. package/lib/Utils/voip-rekey.js +22 -0
  115. package/lib/WABinary/constants.js +1304 -0
  116. package/lib/WABinary/decode.js +343 -0
  117. package/{src → lib}/WABinary/encode.js +12 -9
  118. package/lib/WABinary/generic-utils.js +240 -0
  119. package/lib/WABinary/index.js +33 -0
  120. package/lib/WABinary/jid-utils.js +361 -0
  121. package/lib/WABinary/types.js +2 -0
  122. package/lib/WAM/BinaryInfo.js +13 -0
  123. package/lib/WAM/constants.js +39486 -0
  124. package/lib/WAM/encode.js +142 -0
  125. package/lib/WAM/index.js +31 -0
  126. package/lib/WAUSync/Protocols/USyncBotProfileProtocol.js +55 -0
  127. package/lib/WAUSync/Protocols/USyncBusinessProtocol.js +43 -0
  128. package/lib/WAUSync/Protocols/USyncContactProtocol.js +54 -0
  129. package/lib/WAUSync/Protocols/USyncDeviceProtocol.js +57 -0
  130. package/lib/WAUSync/Protocols/USyncDisappearingModeProtocol.js +30 -0
  131. package/lib/WAUSync/Protocols/USyncFeatureProtocol.js +59 -0
  132. package/lib/WAUSync/Protocols/USyncLIDProtocol.js +31 -0
  133. package/lib/WAUSync/Protocols/USyncPictureProtocol.js +32 -0
  134. package/lib/WAUSync/Protocols/USyncSidelistProtocol.js +29 -0
  135. package/lib/WAUSync/Protocols/USyncStatusProtocol.js +39 -0
  136. package/lib/WAUSync/Protocols/USyncTextStatusProtocol.js +38 -0
  137. package/lib/WAUSync/Protocols/USyncUsernameProtocol.js +27 -0
  138. package/lib/WAUSync/Protocols/index.js +39 -0
  139. package/lib/WAUSync/USyncQuery.js +133 -0
  140. package/lib/WAUSync/USyncUser.js +50 -0
  141. package/lib/WAUSync/index.js +31 -0
  142. package/lib/antiban.js +4637 -0
  143. package/{src → lib}/index.js +49 -51
  144. package/package.json +4 -4
  145. package/src/Defaults/index.js +0 -186
  146. package/src/Signal/Group/ciphertext-message.js +0 -15
  147. package/src/Signal/Group/group-session-builder.js +0 -86
  148. package/src/Signal/Group/group_cipher.js +0 -82
  149. package/src/Signal/Group/index.js +0 -140
  150. package/src/Signal/Group/keyhelper.js +0 -77
  151. package/src/Signal/Group/sender-chain-key.js +0 -29
  152. package/src/Signal/Group/sender-key-distribution-message.js +0 -66
  153. package/src/Signal/Group/sender-key-message.js +0 -69
  154. package/src/Signal/Group/sender-key-name.js +0 -51
  155. package/src/Signal/Group/sender-key-record.js +0 -44
  156. package/src/Signal/Group/sender-key-state.js +0 -87
  157. package/src/Signal/Group/sender-message-key.js +0 -29
  158. package/src/Signal/libsignal.js +0 -455
  159. package/src/Signal/lid-mapping.js +0 -273
  160. package/src/Socket/Client/index.js +0 -31
  161. package/src/Socket/Client/types.js +0 -13
  162. package/src/Socket/Client/websocket.js +0 -61
  163. package/src/Socket/aigroups.js +0 -221
  164. package/src/Socket/business.js +0 -411
  165. package/src/Socket/chats.js +0 -1449
  166. package/src/Socket/communities.js +0 -463
  167. package/src/Socket/graphql.js +0 -523
  168. package/src/Socket/groups.js +0 -516
  169. package/src/Socket/index.js +0 -31
  170. package/src/Socket/interactive-handler.js +0 -527
  171. package/src/Socket/interop.js +0 -339
  172. package/src/Socket/managed-account.js +0 -98
  173. package/src/Socket/messages-recv.js +0 -2685
  174. package/src/Socket/messages-send.js +0 -2047
  175. package/src/Socket/mex.js +0 -57
  176. package/src/Socket/newsletter.js +0 -455
  177. package/src/Socket/privacy.js +0 -125
  178. package/src/Socket/registration.js +0 -236
  179. package/src/Socket/socket.js +0 -983
  180. package/src/Socket/text-router.js +0 -65
  181. package/src/Socket/username.js +0 -130
  182. package/src/Store/index.js +0 -33
  183. package/src/Store/make-cache-manager-store.js +0 -84
  184. package/src/Store/make-in-memory-store.js +0 -551
  185. package/src/Store/make-ordered-dictionary.js +0 -81
  186. package/src/Store/object-repository.js +0 -26
  187. package/src/Types/Auth.js +0 -31
  188. package/src/Types/Bussines.js +0 -2
  189. package/src/Types/Call.js +0 -2
  190. package/src/Types/Chat.js +0 -4
  191. package/src/Types/Contact.js +0 -2
  192. package/src/Types/Events.js +0 -2
  193. package/src/Types/GroupMetadata.js +0 -2
  194. package/src/Types/Label.js +0 -26
  195. package/src/Types/LabelAssociation.js +0 -8
  196. package/src/Types/Message.js +0 -93
  197. package/src/Types/Mex.js +0 -112
  198. package/src/Types/Newsletter.js +0 -109
  199. package/src/Types/Product.js +0 -2
  200. package/src/Types/Signal.js +0 -2
  201. package/src/Types/Socket.js +0 -2
  202. package/src/Types/State.js +0 -62
  203. package/src/Types/USync.js +0 -2
  204. package/src/Types/index.js +0 -56
  205. package/src/Utils/auth-utils.js +0 -254
  206. package/src/Utils/browser-utils.js +0 -112
  207. package/src/Utils/business.js +0 -240
  208. package/src/Utils/chat-utils.js +0 -1230
  209. package/src/Utils/command-loader.d.ts +0 -27
  210. package/src/Utils/command-loader.js +0 -89
  211. package/src/Utils/companion-reg-client-utils.js +0 -40
  212. package/src/Utils/consumer-application.js +0 -105
  213. package/src/Utils/crypto.js +0 -118
  214. package/src/Utils/curve25519-js.js +0 -242
  215. package/src/Utils/decode-wa-message.js +0 -529
  216. package/src/Utils/event-buffer.js +0 -580
  217. package/src/Utils/generics.js +0 -483
  218. package/src/Utils/group-history.js +0 -44
  219. package/src/Utils/history.js +0 -232
  220. package/src/Utils/identity-change-handler.js +0 -52
  221. package/src/Utils/index.js +0 -58
  222. package/src/Utils/jid-display-normalization.js +0 -195
  223. package/src/Utils/link-preview.js +0 -135
  224. package/src/Utils/logger.js +0 -8
  225. package/src/Utils/lt-hash.js +0 -25
  226. package/src/Utils/make-mutex.js +0 -36
  227. package/src/Utils/message-composer.js +0 -471
  228. package/src/Utils/message-retry-manager.js +0 -217
  229. package/src/Utils/messages-media.js +0 -843
  230. package/src/Utils/messages.js +0 -2817
  231. package/src/Utils/meta-ai-msmsg.js +0 -222
  232. package/src/Utils/native-bridge.js +0 -68
  233. package/src/Utils/noise-handler.js +0 -169
  234. package/src/Utils/offline-node-processor.js +0 -34
  235. package/src/Utils/pre-key-manager.js +0 -90
  236. package/src/Utils/process-message.js +0 -950
  237. package/src/Utils/reporting-utils.js +0 -261
  238. package/src/Utils/session-pool.d.ts +0 -14
  239. package/src/Utils/session-pool.js +0 -70
  240. package/src/Utils/signal.js +0 -217
  241. package/src/Utils/stanza-ack.js +0 -30
  242. package/src/Utils/sticker.d.ts +0 -13
  243. package/src/Utils/sticker.js +0 -123
  244. package/src/Utils/sync-action-utils.js +0 -45
  245. package/src/Utils/tc-token-utils.js +0 -158
  246. package/src/Utils/use-multi-file-auth-state.js +0 -111
  247. package/src/Utils/validate-connection.js +0 -209
  248. package/src/Utils/view-once-cache.d.ts +0 -12
  249. package/src/Utils/view-once-cache.js +0 -63
  250. package/src/Utils/voip-rekey.js +0 -22
  251. package/src/WABinary/constants.js +0 -1304
  252. package/src/WABinary/decode.js +0 -342
  253. package/src/WABinary/generic-utils.js +0 -238
  254. package/src/WABinary/index.js +0 -34
  255. package/src/WABinary/jid-utils.js +0 -351
  256. package/src/WABinary/types.js +0 -2
  257. package/src/WAM/BinaryInfo.js +0 -13
  258. package/src/WAM/constants.js +0 -39484
  259. package/src/WAM/encode.js +0 -149
  260. package/src/WAM/index.js +0 -32
  261. package/src/WAUSync/Protocols/USyncBotProfileProtocol.js +0 -53
  262. package/src/WAUSync/Protocols/USyncBusinessProtocol.js +0 -44
  263. package/src/WAUSync/Protocols/USyncContactProtocol.js +0 -55
  264. package/src/WAUSync/Protocols/USyncDeviceProtocol.js +0 -55
  265. package/src/WAUSync/Protocols/USyncDisappearingModeProtocol.js +0 -31
  266. package/src/WAUSync/Protocols/USyncFeatureProtocol.js +0 -54
  267. package/src/WAUSync/Protocols/USyncLIDProtocol.js +0 -32
  268. package/src/WAUSync/Protocols/USyncNewsletterProtocol.js +0 -473
  269. package/src/WAUSync/Protocols/USyncPictureProtocol.js +0 -34
  270. package/src/WAUSync/Protocols/USyncSidelistProtocol.js +0 -29
  271. package/src/WAUSync/Protocols/USyncStatusProtocol.js +0 -42
  272. package/src/WAUSync/Protocols/USyncTextStatusProtocol.js +0 -38
  273. package/src/WAUSync/Protocols/USyncUsernameProtocol.js +0 -28
  274. package/src/WAUSync/Protocols/index.js +0 -40
  275. package/src/WAUSync/USyncQuery.js +0 -126
  276. package/src/WAUSync/USyncUser.js +0 -50
  277. package/src/WAUSync/index.js +0 -32
  278. package/src/antiban.js +0 -4152
  279. /package/{src → lib}/Defaults/phonenumber-mcc.json +0 -0
package/src/WAM/encode.js DELETED
@@ -1,149 +0,0 @@
1
- 'use strict';
2
- Object.defineProperty(exports, '__esModule', { value: true });
3
- exports.encodeWAM = void 0;
4
- const constants_1 = require('./constants');
5
- const getHeaderBitLength = key => (key < 256 ? 2 : 3);
6
- const encodeWAM = binaryInfo => {
7
- binaryInfo.buffer = [];
8
- encodeWAMHeader(binaryInfo);
9
- encodeEvents(binaryInfo);
10
- const totalSize = binaryInfo.buffer.map(a => a.length).reduce((a, b) => a + b);
11
- const buffer = Buffer.alloc(totalSize);
12
- let offset = 0;
13
- for (const buffer_ of binaryInfo.buffer) {
14
- buffer_.copy(buffer, offset);
15
- offset += buffer_.length;
16
- }
17
- return buffer;
18
- };
19
- exports.encodeWAM = encodeWAM;
20
- function encodeWAMHeader(binaryInfo) {
21
- const headerBuffer = Buffer.alloc(8);
22
- headerBuffer.write('WAM', 0, 'utf8');
23
- headerBuffer.writeUInt8(binaryInfo.protocolVersion, 3);
24
- headerBuffer.writeUInt8(1, 4);
25
- headerBuffer.writeUInt16BE(binaryInfo.sequence, 5);
26
- headerBuffer.writeUInt8(0, 7);
27
- binaryInfo.buffer.push(headerBuffer);
28
- }
29
- function encodeGlobalAttributes(binaryInfo, globals) {
30
- for (const [key, _value] of Object.entries(globals)) {
31
- const id = constants_1.WEB_GLOBALS.find(a => a?.name === key).id;
32
- let value = _value;
33
- if (typeof value === 'boolean') {
34
- value = value ? 1 : 0;
35
- }
36
- binaryInfo.buffer.push(serializeData(id, value, constants_1.FLAG_GLOBAL));
37
- }
38
- }
39
- function encodeEvents(binaryInfo) {
40
- for (const [name, { props, globals }] of binaryInfo.events.map(a => Object.entries(a)[0])) {
41
- encodeGlobalAttributes(binaryInfo, globals);
42
- const event = constants_1.WEB_EVENTS.find(a => a.name === name);
43
- const props_ = Object.entries(props);
44
- let extended = false;
45
- for (const [, value] of props_) {
46
- extended || (extended = value !== null);
47
- }
48
- const eventFlag = extended ? constants_1.FLAG_EVENT : constants_1.FLAG_EVENT | constants_1.FLAG_EXTENDED;
49
- binaryInfo.buffer.push(serializeData(event.id, -event.weight, eventFlag));
50
- for (let i = 0; i < props_.length; i++) {
51
- const [key, _value] = props_[i];
52
- const id = event.props[key]?.[0];
53
- extended = i < props_.length - 1;
54
- let value = _value;
55
- if (typeof value === 'boolean') {
56
- value = value ? 1 : 0;
57
- }
58
- const fieldFlag = extended ? constants_1.FLAG_EVENT : constants_1.FLAG_FIELD | constants_1.FLAG_EXTENDED;
59
- binaryInfo.buffer.push(serializeData(id, value, fieldFlag));
60
- }
61
- }
62
- }
63
- function serializeData(key, value, flag) {
64
- const bufferLength = getHeaderBitLength(key);
65
- let buffer;
66
- let offset = 0;
67
- if (value === null) {
68
- if (flag === constants_1.FLAG_GLOBAL) {
69
- buffer = Buffer.alloc(bufferLength);
70
- offset = serializeHeader(buffer, offset, key, flag);
71
- return buffer;
72
- }
73
- }
74
- else if (typeof value === 'number' && Number.isInteger(value)) {
75
- if (value === 0 || value === 1) {
76
- buffer = Buffer.alloc(bufferLength);
77
- offset = serializeHeader(buffer, offset, key, flag | ((value + 1) << 4));
78
- return buffer;
79
- }
80
- else if (-128 <= value && value < 128) {
81
- buffer = Buffer.alloc(bufferLength + 1);
82
- offset = serializeHeader(buffer, offset, key, flag | (3 << 4));
83
- buffer.writeInt8(value, offset);
84
- return buffer;
85
- }
86
- else if (-32768 <= value && value < 32768) {
87
- buffer = Buffer.alloc(bufferLength + 2);
88
- offset = serializeHeader(buffer, offset, key, flag | (4 << 4));
89
- buffer.writeInt16LE(value, offset);
90
- return buffer;
91
- }
92
- else if (-2147483648 <= value && value < 2147483648) {
93
- buffer = Buffer.alloc(bufferLength + 4);
94
- offset = serializeHeader(buffer, offset, key, flag | (5 << 4));
95
- buffer.writeInt32LE(value, offset);
96
- return buffer;
97
- }
98
- else {
99
- buffer = Buffer.alloc(bufferLength + 8);
100
- offset = serializeHeader(buffer, offset, key, flag | (7 << 4));
101
- buffer.writeDoubleLE(value, offset);
102
- return buffer;
103
- }
104
- }
105
- else if (typeof value === 'number') {
106
- buffer = Buffer.alloc(bufferLength + 8);
107
- offset = serializeHeader(buffer, offset, key, flag | (7 << 4));
108
- buffer.writeDoubleLE(value, offset);
109
- return buffer;
110
- }
111
- else if (typeof value === 'string') {
112
- const utf8Bytes = Buffer.byteLength(value, 'utf8');
113
- if (utf8Bytes < 256) {
114
- buffer = Buffer.alloc(bufferLength + 1 + utf8Bytes);
115
- offset = serializeHeader(buffer, offset, key, flag | (8 << 4));
116
- buffer.writeUint8(utf8Bytes, offset++);
117
- }
118
- else if (utf8Bytes < 65536) {
119
- buffer = Buffer.alloc(bufferLength + 2 + utf8Bytes);
120
- offset = serializeHeader(buffer, offset, key, flag | (9 << 4));
121
- buffer.writeUInt16LE(utf8Bytes, offset);
122
- offset += 2;
123
- }
124
- else {
125
- buffer = Buffer.alloc(bufferLength + 4 + utf8Bytes);
126
- offset = serializeHeader(buffer, offset, key, flag | (10 << 4));
127
- buffer.writeUInt32LE(utf8Bytes, offset);
128
- offset += 4;
129
- }
130
- buffer.write(value, offset, 'utf8');
131
- return buffer;
132
- }
133
- throw 'missing';
134
- }
135
- function serializeHeader(buffer, offset, key, flag) {
136
- if (key < 256) {
137
- buffer.writeUInt8(flag, offset);
138
- offset += 1;
139
- buffer.writeUInt8(key, offset);
140
- offset += 1;
141
- }
142
- else {
143
- buffer.writeUInt8(flag | constants_1.FLAG_BYTE, offset);
144
- offset += 1;
145
- buffer.writeUInt16LE(key, offset);
146
- offset += 2;
147
- }
148
- return offset;
149
- }
package/src/WAM/index.js DELETED
@@ -1,32 +0,0 @@
1
- 'use strict';
2
- var __createBinding = (this && this.__createBinding) ||
3
- (Object.create
4
- ? function (o, m, k, k2) {
5
- if (k2 === undefined)
6
- k2 = k;
7
- var desc = Object.getOwnPropertyDescriptor(m, k);
8
- if (!desc || ('get' in desc ? !m.__esModule : desc.writable || desc.configurable)) {
9
- desc = {
10
- enumerable: true,
11
- get: function () {
12
- return m[k];
13
- }
14
- };
15
- }
16
- Object.defineProperty(o, k2, desc);
17
- }
18
- : function (o, m, k, k2) {
19
- if (k2 === undefined)
20
- k2 = k;
21
- o[k2] = m[k];
22
- });
23
- var __exportStar = (this && this.__exportStar) ||
24
- function (m, exports) {
25
- for (var p in m)
26
- if (p !== 'default' && !Object.prototype.hasOwnProperty.call(exports, p))
27
- __createBinding(exports, m, p);
28
- };
29
- Object.defineProperty(exports, '__esModule', { value: true });
30
- __exportStar(require('./constants'), exports);
31
- __exportStar(require('./encode'), exports);
32
- __exportStar(require('./BinaryInfo'), exports);
@@ -1,53 +0,0 @@
1
- 'use strict';
2
- Object.defineProperty(exports, '__esModule', { value: true });
3
- exports.USyncBotProfileProtocol = void 0;
4
- const WABinary_1 = require('../../WABinary');
5
- class USyncBotProfileProtocol {
6
- constructor() {
7
- this.name = 'bot';
8
- }
9
- getQueryElement() {
10
- return {
11
- tag: 'bot',
12
- attrs: {},
13
- content: [{ tag: 'profile', attrs: { v: '1' } }]
14
- };
15
- }
16
- getUserElement(user) {
17
- return {
18
- tag: 'bot',
19
- attrs: {},
20
- content: [{ tag: 'profile', attrs: { persona_id: user.personaId } }]
21
- };
22
- }
23
- parser(node) {
24
- const botNode = (0, WABinary_1.getBinaryNodeChild)(node, 'bot');
25
- const profile = (0, WABinary_1.getBinaryNodeChild)(botNode, 'profile');
26
- const commandsNode = (0, WABinary_1.getBinaryNodeChild)(profile, 'commands');
27
- const promptsNode = (0, WABinary_1.getBinaryNodeChild)(profile, 'prompts');
28
- const commands = [];
29
- const prompts = [];
30
- for (const command of (0, WABinary_1.getBinaryNodeChildren)(commandsNode, 'command')) {
31
- commands.push({
32
- name: (0, WABinary_1.getBinaryNodeChildString)(command, 'name'),
33
- description: (0, WABinary_1.getBinaryNodeChildString)(command, 'description')
34
- });
35
- }
36
- for (const prompt of (0, WABinary_1.getBinaryNodeChildren)(promptsNode, 'prompt')) {
37
- prompts.push(`${(0, WABinary_1.getBinaryNodeChildString)(prompt, 'emoji')} ${(0, WABinary_1.getBinaryNodeChildString)(prompt, 'text')}`);
38
- }
39
- return {
40
- isDefault: !!(0, WABinary_1.getBinaryNodeChild)(profile, 'default'),
41
- jid: node.attrs.jid,
42
- name: (0, WABinary_1.getBinaryNodeChildString)(profile, 'name'),
43
- attributes: (0, WABinary_1.getBinaryNodeChildString)(profile, 'attributes'),
44
- description: (0, WABinary_1.getBinaryNodeChildString)(profile, 'description'),
45
- category: (0, WABinary_1.getBinaryNodeChildString)(profile, 'category'),
46
- personaId: profile.attrs['persona_id'],
47
- commandsDescription: (0, WABinary_1.getBinaryNodeChildString)(commandsNode, 'description'),
48
- commands,
49
- prompts
50
- };
51
- }
52
- }
53
- exports.USyncBotProfileProtocol = USyncBotProfileProtocol;
@@ -1,44 +0,0 @@
1
- 'use strict';
2
- Object.defineProperty(exports, '__esModule', { value: true });
3
- exports.USyncBusinessProtocol = void 0;
4
- const WABinary_1 = require('../../WABinary');
5
- class USyncBusinessProtocol {
6
- constructor(profileVersion = '2') {
7
- this.name = 'business';
8
- this.profileVersion = profileVersion;
9
- }
10
- getQueryElement() {
11
- return {
12
- tag: 'business',
13
- attrs: {},
14
- content: [
15
- { tag: 'verified_name', attrs: {} },
16
- { tag: 'profile', attrs: { v: this.profileVersion } }
17
- ]
18
- };
19
- }
20
- getUserElement(user) {
21
- const children = [];
22
- if (user.verifiedNameSerial) {
23
- children.push({ tag: 'verified_name', attrs: { serial: user.verifiedNameSerial } });
24
- }
25
- if (user.businessProfileTag) {
26
- children.push({ tag: 'profile', attrs: { tag: user.businessProfileTag } });
27
- }
28
- return children.length > 0 ? { tag: 'business', attrs: {}, content: children } : null;
29
- }
30
- parser(node) {
31
- if (node.tag !== 'business')
32
- return null;
33
- (0, WABinary_1.assertNodeErrorFree)(node);
34
- const verifiedNameNode = (0, WABinary_1.getBinaryNodeChild)(node, 'verified_name');
35
- const profileNode = (0, WABinary_1.getBinaryNodeChild)(node, 'profile');
36
- return {
37
- verifiedName: verifiedNameNode?.content ?? null,
38
- verifiedLevel: verifiedNameNode?.attrs?.verified_level ?? null,
39
- profileTag: profileNode?.attrs?.tag ?? null,
40
- pnJid: node.attrs?.pn_jid ?? null
41
- };
42
- }
43
- }
44
- exports.USyncBusinessProtocol = USyncBusinessProtocol;
@@ -1,55 +0,0 @@
1
- 'use strict';
2
- Object.defineProperty(exports, '__esModule', { value: true });
3
- exports.USyncContactProtocol = void 0;
4
- const WABinary_1 = require('../../WABinary');
5
- class USyncContactProtocol {
6
- constructor() {
7
- this.name = 'contact';
8
- }
9
- getQueryElement() {
10
- return {
11
- tag: 'contact',
12
- attrs: {}
13
- };
14
- }
15
- getUserElement(user) {
16
- if (user.phone) {
17
- return {
18
- tag: 'contact',
19
- attrs: {},
20
- content: user.phone
21
- };
22
- }
23
- if (user.username) {
24
- return {
25
- tag: 'contact',
26
- attrs: {
27
- username: user.username,
28
- ...(user.usernameKey ? { pin: user.usernameKey } : {}),
29
- ...(user.lid ? { lid: user.lid } : {})
30
- }
31
- };
32
- }
33
- if (user.type) {
34
- return {
35
- tag: 'contact',
36
- attrs: {
37
- type: user.type
38
- }
39
- };
40
- }
41
- return {
42
- tag: 'contact',
43
- attrs: {}
44
- };
45
- }
46
- parser(node) {
47
- if (node.tag === 'contact') {
48
- ;
49
- (0, WABinary_1.assertNodeErrorFree)(node);
50
- return node?.attrs?.type === 'in';
51
- }
52
- return false;
53
- }
54
- }
55
- exports.USyncContactProtocol = USyncContactProtocol;
@@ -1,55 +0,0 @@
1
- 'use strict';
2
- Object.defineProperty(exports, '__esModule', { value: true });
3
- exports.USyncDeviceProtocol = void 0;
4
- const WABinary_1 = require('../../WABinary');
5
- class USyncDeviceProtocol {
6
- constructor() {
7
- this.name = 'devices';
8
- }
9
- getQueryElement() {
10
- return {
11
- tag: 'devices',
12
- attrs: {
13
- version: '2'
14
- }
15
- };
16
- }
17
- getUserElement() {
18
- return null;
19
- }
20
- parser(node) {
21
- const deviceList = [];
22
- let keyIndex = undefined;
23
- if (node.tag === 'devices') {
24
- ;
25
- (0, WABinary_1.assertNodeErrorFree)(node);
26
- const deviceListNode = (0, WABinary_1.getBinaryNodeChild)(node, 'device-list');
27
- const keyIndexNode = (0, WABinary_1.getBinaryNodeChild)(node, 'key-index-list');
28
- if (Array.isArray(deviceListNode?.content)) {
29
- for (const { tag, attrs } of deviceListNode.content) {
30
- const id = +attrs.id;
31
- const keyIndex = +attrs['key-index'];
32
- if (tag === 'device') {
33
- deviceList.push({
34
- id,
35
- keyIndex,
36
- isHosted: !!(attrs['is_hosted'] && attrs['is_hosted'] === 'true')
37
- });
38
- }
39
- }
40
- }
41
- if (keyIndexNode?.tag === 'key-index-list') {
42
- keyIndex = {
43
- timestamp: +keyIndexNode.attrs['ts'],
44
- signedKeyIndex: keyIndexNode?.content,
45
- expectedTimestamp: keyIndexNode.attrs['expected_ts'] ? +keyIndexNode.attrs['expected_ts'] : undefined
46
- };
47
- }
48
- }
49
- return {
50
- deviceList,
51
- keyIndex
52
- };
53
- }
54
- }
55
- exports.USyncDeviceProtocol = USyncDeviceProtocol;
@@ -1,31 +0,0 @@
1
- 'use strict';
2
- Object.defineProperty(exports, '__esModule', { value: true });
3
- exports.USyncDisappearingModeProtocol = void 0;
4
- const WABinary_1 = require('../../WABinary');
5
- class USyncDisappearingModeProtocol {
6
- constructor() {
7
- this.name = 'disappearing_mode';
8
- }
9
- getQueryElement() {
10
- return {
11
- tag: 'disappearing_mode',
12
- attrs: {}
13
- };
14
- }
15
- getUserElement() {
16
- return null;
17
- }
18
- parser(node) {
19
- if (node.tag === 'disappearing_mode') {
20
- ;
21
- (0, WABinary_1.assertNodeErrorFree)(node);
22
- const duration = +node?.attrs.duration;
23
- const setAt = new Date(+(node?.attrs.t || 0) * 1000);
24
- return {
25
- duration,
26
- setAt
27
- };
28
- }
29
- }
30
- }
31
- exports.USyncDisappearingModeProtocol = USyncDisappearingModeProtocol;
@@ -1,54 +0,0 @@
1
- 'use strict';
2
- Object.defineProperty(exports, '__esModule', { value: true });
3
- exports.USyncFeatureProtocol = exports.USYNC_FEATURES = void 0;
4
- const WABinary_1 = require('../../WABinary');
5
- exports.USYNC_FEATURES = [
6
- 'document',
7
- 'encrypt',
8
- 'encrypt_blist',
9
- 'encrypt_contact',
10
- 'encrypt_group_gen2',
11
- 'encrypt_image',
12
- 'encrypt_location',
13
- 'encrypt_url',
14
- 'encrypt_v2',
15
- 'voip',
16
- 'multi_agent'
17
- ];
18
- class USyncFeatureProtocol {
19
- constructor(features) {
20
- this.name = 'feature';
21
- this.features = features && features.length ? features : exports.USYNC_FEATURES;
22
- }
23
- getQueryElement() {
24
- return {
25
- tag: 'feature',
26
- attrs: {},
27
- content: this.features.map(feature => ({ tag: feature, attrs: {} }))
28
- };
29
- }
30
- getUserElement() {
31
- return null;
32
- }
33
- parser(node) {
34
- if (node.tag !== 'feature') {
35
- return null;
36
- }
37
- const errorNode = (0, WABinary_1.getBinaryNodeChild)(node, 'error');
38
- if (errorNode) {
39
- return {
40
- errorCode: errorNode.attrs?.code ? +errorNode.attrs.code : undefined,
41
- errorText: errorNode.attrs?.text
42
- };
43
- }
44
- const features = {};
45
- const children = Array.isArray(node.content) ? node.content : [];
46
- for (const child of children) {
47
- if (child?.attrs && child.attrs.value !== undefined) {
48
- features[child.tag] = child.attrs.value;
49
- }
50
- }
51
- return features;
52
- }
53
- }
54
- exports.USyncFeatureProtocol = USyncFeatureProtocol;
@@ -1,32 +0,0 @@
1
- 'use strict';
2
- Object.defineProperty(exports, '__esModule', { value: true });
3
- exports.USyncLIDProtocol = void 0;
4
- class USyncLIDProtocol {
5
- constructor() {
6
- this.name = 'lid';
7
- }
8
- getQueryElement() {
9
- return {
10
- tag: 'lid',
11
- attrs: {}
12
- };
13
- }
14
- getUserElement(user) {
15
- if (user.lid) {
16
- return {
17
- tag: 'lid',
18
- attrs: { jid: user.lid }
19
- };
20
- }
21
- else {
22
- return null;
23
- }
24
- }
25
- parser(node) {
26
- if (node.tag === 'lid') {
27
- return node.attrs.val;
28
- }
29
- return null;
30
- }
31
- }
32
- exports.USyncLIDProtocol = USyncLIDProtocol;