@periskope/baileys 6.7.18-alpha.2 → 6.7.18-alpha.21

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 (372) hide show
  1. package/README.md +1 -1
  2. package/WAProto/GenerateStatics.sh +3 -0
  3. package/WAProto/WAProto.proto +4633 -0
  4. package/WAProto/fix-imports.js +29 -0
  5. package/WAProto/index.js +4136 -4138
  6. package/lib/Defaults/index.d.ts +4 -3
  7. package/lib/Defaults/index.d.ts.map +1 -0
  8. package/lib/Defaults/index.js +36 -40
  9. package/lib/Defaults/index.js.map +1 -0
  10. package/lib/Signal/Group/ciphertext-message.d.ts +10 -0
  11. package/lib/Signal/Group/ciphertext-message.d.ts.map +1 -0
  12. package/lib/Signal/Group/ciphertext-message.js +12 -0
  13. package/lib/Signal/Group/ciphertext-message.js.map +1 -0
  14. package/lib/Signal/Group/group-session-builder.d.ts +15 -0
  15. package/lib/Signal/Group/group-session-builder.d.ts.map +1 -0
  16. package/lib/Signal/Group/group-session-builder.js +30 -0
  17. package/lib/Signal/Group/group-session-builder.js.map +1 -0
  18. package/lib/Signal/Group/group_cipher.d.ts +18 -0
  19. package/lib/Signal/Group/group_cipher.d.ts.map +1 -0
  20. package/lib/Signal/Group/group_cipher.js +94 -0
  21. package/lib/Signal/Group/group_cipher.js.map +1 -0
  22. package/lib/Signal/Group/index.d.ts +12 -0
  23. package/lib/Signal/Group/index.d.ts.map +1 -0
  24. package/lib/Signal/Group/index.js +12 -0
  25. package/lib/Signal/Group/index.js.map +1 -0
  26. package/lib/Signal/Group/keyhelper.d.ts +11 -0
  27. package/lib/Signal/Group/keyhelper.d.ts.map +1 -0
  28. package/lib/Signal/Group/keyhelper.js +19 -0
  29. package/lib/Signal/Group/keyhelper.js.map +1 -0
  30. package/lib/Signal/Group/queue-job.d.ts +2 -0
  31. package/lib/Signal/Group/queue-job.d.ts.map +1 -0
  32. package/lib/Signal/Group/queue-job.js +54 -0
  33. package/lib/Signal/Group/queue-job.js.map +1 -0
  34. package/lib/Signal/Group/sender-chain-key.d.ts +14 -0
  35. package/lib/Signal/Group/sender-chain-key.d.ts.map +1 -0
  36. package/lib/Signal/Group/sender-chain-key.js +32 -0
  37. package/lib/Signal/Group/sender-chain-key.js.map +1 -0
  38. package/lib/Signal/Group/sender-key-distribution-message.d.ts +17 -0
  39. package/lib/Signal/Group/sender-key-distribution-message.d.ts.map +1 -0
  40. package/lib/Signal/Group/sender-key-distribution-message.js +63 -0
  41. package/lib/Signal/Group/sender-key-distribution-message.js.map +1 -0
  42. package/lib/Signal/Group/sender-key-message.d.ts +19 -0
  43. package/lib/Signal/Group/sender-key-message.d.ts.map +1 -0
  44. package/lib/Signal/Group/sender-key-message.js +67 -0
  45. package/lib/Signal/Group/sender-key-message.js.map +1 -0
  46. package/lib/Signal/Group/sender-key-name.d.ts +18 -0
  47. package/lib/Signal/Group/sender-key-name.d.ts.map +1 -0
  48. package/lib/Signal/Group/sender-key-name.js +48 -0
  49. package/lib/Signal/Group/sender-key-name.js.map +1 -0
  50. package/lib/Signal/Group/sender-key-record.d.ts +31 -0
  51. package/lib/Signal/Group/sender-key-record.d.ts.map +1 -0
  52. package/lib/Signal/Group/sender-key-record.js +50 -0
  53. package/lib/Signal/Group/sender-key-record.js.map +1 -0
  54. package/lib/Signal/Group/sender-key-state.d.ts +39 -0
  55. package/lib/Signal/Group/sender-key-state.d.ts.map +1 -0
  56. package/lib/Signal/Group/sender-key-state.js +96 -0
  57. package/lib/Signal/Group/sender-key-state.js.map +1 -0
  58. package/lib/Signal/Group/sender-message-key.d.ts +12 -0
  59. package/lib/Signal/Group/sender-message-key.d.ts.map +1 -0
  60. package/{WASignalGroup/sender_message_key.js → lib/Signal/Group/sender-message-key.js} +27 -39
  61. package/lib/Signal/Group/sender-message-key.js.map +1 -0
  62. package/lib/Signal/libsignal.d.ts +3 -2
  63. package/lib/Signal/libsignal.d.ts.map +1 -0
  64. package/lib/Signal/libsignal.js +37 -57
  65. package/lib/Signal/libsignal.js.map +1 -0
  66. package/lib/Socket/Client/index.d.ts +3 -2
  67. package/lib/Socket/Client/index.d.ts.map +1 -0
  68. package/lib/Socket/Client/index.js +3 -18
  69. package/lib/Socket/Client/index.js.map +1 -0
  70. package/lib/Socket/Client/types.d.ts +2 -1
  71. package/lib/Socket/Client/types.d.ts.map +1 -0
  72. package/lib/Socket/Client/types.js +4 -6
  73. package/lib/Socket/Client/types.js.map +1 -0
  74. package/lib/Socket/Client/websocket.d.ts +2 -1
  75. package/lib/Socket/Client/websocket.d.ts.map +1 -0
  76. package/lib/Socket/Client/websocket.js +14 -26
  77. package/lib/Socket/Client/websocket.js.map +1 -0
  78. package/lib/Socket/business.d.ts +88 -59
  79. package/lib/Socket/business.d.ts.map +1 -0
  80. package/lib/Socket/business.js +32 -37
  81. package/lib/Socket/business.js.map +1 -0
  82. package/lib/Socket/chats.d.ts +27 -21
  83. package/lib/Socket/chats.d.ts.map +1 -0
  84. package/lib/Socket/chats.js +132 -119
  85. package/lib/Socket/chats.js.map +1 -0
  86. package/lib/Socket/communities.d.ts +218 -0
  87. package/lib/Socket/communities.d.ts.map +1 -0
  88. package/lib/Socket/communities.js +351 -0
  89. package/lib/Socket/communities.js.map +1 -0
  90. package/lib/Socket/groups.d.ts +42 -35
  91. package/lib/Socket/groups.d.ts.map +1 -0
  92. package/lib/Socket/groups.js +57 -63
  93. package/lib/Socket/groups.js.map +1 -0
  94. package/lib/Socket/index.d.ts +124 -65
  95. package/lib/Socket/index.d.ts.map +1 -0
  96. package/lib/Socket/index.js +6 -7
  97. package/lib/Socket/index.js.map +1 -0
  98. package/lib/Socket/messages-recv.d.ts +74 -45
  99. package/lib/Socket/messages-recv.d.ts.map +1 -0
  100. package/lib/Socket/messages-recv.js +294 -164
  101. package/lib/Socket/messages-recv.js.map +1 -0
  102. package/lib/Socket/messages-send.d.ts +71 -42
  103. package/lib/Socket/messages-send.d.ts.map +1 -0
  104. package/lib/Socket/messages-send.js +100 -83
  105. package/lib/Socket/messages-send.js.map +1 -0
  106. package/lib/Socket/mex.d.ts +3 -0
  107. package/lib/Socket/mex.d.ts.map +1 -0
  108. package/lib/Socket/mex.js +42 -0
  109. package/lib/Socket/mex.js.map +1 -0
  110. package/lib/Socket/newsletter.d.ts +142 -0
  111. package/lib/Socket/newsletter.d.ts.map +1 -0
  112. package/lib/Socket/newsletter.js +179 -0
  113. package/lib/Socket/newsletter.js.map +1 -0
  114. package/lib/Socket/socket.d.ts +12 -11
  115. package/lib/Socket/socket.d.ts.map +1 -0
  116. package/lib/Socket/socket.js +100 -106
  117. package/lib/Socket/socket.js.map +1 -0
  118. package/lib/Socket/usync.d.ts +14 -13
  119. package/lib/Socket/usync.d.ts.map +1 -0
  120. package/lib/Socket/usync.js +9 -11
  121. package/lib/Socket/usync.js.map +1 -0
  122. package/lib/Types/Auth.d.ts +4 -3
  123. package/lib/Types/Auth.d.ts.map +1 -0
  124. package/lib/Types/Auth.js +2 -2
  125. package/lib/Types/Auth.js.map +1 -0
  126. package/lib/Types/Call.d.ts +1 -0
  127. package/lib/Types/Call.d.ts.map +1 -0
  128. package/lib/Types/Call.js +2 -2
  129. package/lib/Types/Call.js.map +1 -0
  130. package/lib/Types/Chat.d.ts +11 -7
  131. package/lib/Types/Chat.d.ts.map +1 -0
  132. package/lib/Types/Chat.js +2 -4
  133. package/lib/Types/Chat.js.map +1 -0
  134. package/lib/Types/Contact.d.ts +5 -0
  135. package/lib/Types/Contact.d.ts.map +1 -0
  136. package/lib/Types/Contact.js +2 -2
  137. package/lib/Types/Contact.js.map +1 -0
  138. package/lib/Types/Events.d.ts +44 -10
  139. package/lib/Types/Events.d.ts.map +1 -0
  140. package/lib/Types/Events.js +2 -2
  141. package/lib/Types/Events.js.map +1 -0
  142. package/lib/Types/GroupMetadata.d.ts +3 -1
  143. package/lib/Types/GroupMetadata.d.ts.map +1 -0
  144. package/lib/Types/GroupMetadata.js +2 -2
  145. package/lib/Types/GroupMetadata.js.map +1 -0
  146. package/lib/Types/Label.d.ts +1 -0
  147. package/lib/Types/Label.d.ts.map +1 -0
  148. package/lib/Types/Label.js +3 -5
  149. package/lib/Types/Label.js.map +1 -0
  150. package/lib/Types/LabelAssociation.d.ts +1 -0
  151. package/lib/Types/LabelAssociation.d.ts.map +1 -0
  152. package/lib/Types/LabelAssociation.js +3 -5
  153. package/lib/Types/LabelAssociation.js.map +1 -0
  154. package/lib/Types/Message.d.ts +17 -9
  155. package/lib/Types/Message.d.ts.map +1 -0
  156. package/lib/Types/Message.js +7 -7
  157. package/lib/Types/Message.js.map +1 -0
  158. package/lib/Types/Newsletter.d.ts +135 -0
  159. package/lib/Types/Newsletter.d.ts.map +1 -0
  160. package/lib/Types/Newsletter.js +31 -0
  161. package/lib/Types/Newsletter.js.map +1 -0
  162. package/lib/Types/Product.d.ts +2 -1
  163. package/lib/Types/Product.d.ts.map +1 -0
  164. package/lib/Types/Product.js +2 -2
  165. package/lib/Types/Product.js.map +1 -0
  166. package/lib/Types/Signal.d.ts +2 -1
  167. package/lib/Types/Signal.d.ts.map +1 -0
  168. package/lib/Types/Signal.js +2 -2
  169. package/lib/Types/Signal.js.map +1 -0
  170. package/lib/Types/Socket.d.ts +8 -7
  171. package/lib/Types/Socket.d.ts.map +1 -0
  172. package/lib/Types/Socket.js +3 -2
  173. package/lib/Types/Socket.js.map +1 -0
  174. package/lib/Types/State.d.ts +4 -2
  175. package/lib/Types/State.d.ts.map +1 -0
  176. package/lib/Types/State.js +2 -2
  177. package/lib/Types/State.js.map +1 -0
  178. package/lib/Types/USync.d.ts +3 -2
  179. package/lib/Types/USync.d.ts.map +1 -0
  180. package/lib/Types/USync.js +2 -2
  181. package/lib/Types/USync.js.map +1 -0
  182. package/lib/Types/index.d.ts +15 -13
  183. package/lib/Types/index.d.ts.map +1 -0
  184. package/lib/Types/index.js +15 -30
  185. package/lib/Types/index.js.map +1 -0
  186. package/lib/Utils/auth-utils.d.ts +3 -2
  187. package/lib/Utils/auth-utils.d.ts.map +1 -0
  188. package/lib/Utils/auth-utils.js +24 -33
  189. package/lib/Utils/auth-utils.js.map +1 -0
  190. package/lib/Utils/baileys-event-stream.d.ts +2 -1
  191. package/lib/Utils/baileys-event-stream.d.ts.map +1 -0
  192. package/lib/Utils/baileys-event-stream.js +15 -22
  193. package/lib/Utils/baileys-event-stream.js.map +1 -0
  194. package/lib/Utils/business.d.ts +3 -2
  195. package/lib/Utils/business.d.ts.map +1 -0
  196. package/lib/Utils/business.js +61 -70
  197. package/lib/Utils/business.js.map +1 -0
  198. package/lib/Utils/chat-utils.d.ts +12 -11
  199. package/lib/Utils/chat-utils.d.ts.map +1 -0
  200. package/lib/Utils/chat-utils.js +141 -139
  201. package/lib/Utils/chat-utils.js.map +1 -0
  202. package/lib/Utils/crypto.d.ts +2 -1
  203. package/lib/Utils/crypto.d.ts.map +1 -0
  204. package/lib/Utils/crypto.js +37 -86
  205. package/lib/Utils/crypto.js.map +1 -0
  206. package/lib/Utils/decode-wa-message.d.ts +7 -7
  207. package/lib/Utils/decode-wa-message.d.ts.map +1 -0
  208. package/lib/Utils/decode-wa-message.js +43 -43
  209. package/lib/Utils/decode-wa-message.js.map +1 -0
  210. package/lib/Utils/event-buffer.d.ts +3 -2
  211. package/lib/Utils/event-buffer.d.ts.map +1 -0
  212. package/lib/Utils/event-buffer.js +24 -30
  213. package/lib/Utils/event-buffer.js.map +1 -0
  214. package/lib/Utils/generics.d.ts +11 -9
  215. package/lib/Utils/generics.d.ts.map +1 -0
  216. package/lib/Utils/generics.js +88 -111
  217. package/lib/Utils/generics.js.map +1 -0
  218. package/lib/Utils/history.d.ts +4 -3
  219. package/lib/Utils/history.d.ts.map +1 -0
  220. package/lib/Utils/history.js +37 -46
  221. package/lib/Utils/history.js.map +1 -0
  222. package/lib/Utils/index.d.ts +18 -17
  223. package/lib/Utils/index.d.ts.map +1 -0
  224. package/lib/Utils/index.js +18 -33
  225. package/lib/Utils/index.js.map +1 -0
  226. package/lib/Utils/link-preview.d.ts +4 -3
  227. package/lib/Utils/link-preview.d.ts.map +1 -0
  228. package/lib/Utils/link-preview.js +11 -48
  229. package/lib/Utils/link-preview.js.map +1 -0
  230. package/lib/Utils/logger.d.ts +6 -5
  231. package/lib/Utils/logger.d.ts.map +1 -0
  232. package/lib/Utils/logger.js +3 -7
  233. package/lib/Utils/logger.js.map +1 -0
  234. package/lib/Utils/lt-hash.d.ts +9 -8
  235. package/lib/Utils/lt-hash.d.ts.map +1 -0
  236. package/lib/Utils/lt-hash.js +21 -24
  237. package/lib/Utils/lt-hash.js.map +1 -0
  238. package/lib/Utils/make-mutex.d.ts +1 -0
  239. package/lib/Utils/make-mutex.d.ts.map +1 -0
  240. package/lib/Utils/make-mutex.js +5 -9
  241. package/lib/Utils/make-mutex.js.map +1 -0
  242. package/lib/Utils/messages-media.d.ts +20 -11
  243. package/lib/Utils/messages-media.d.ts.map +1 -0
  244. package/lib/Utils/messages-media.js +200 -234
  245. package/lib/Utils/messages-media.js.map +1 -0
  246. package/lib/Utils/messages.d.ts +9 -8
  247. package/lib/Utils/messages.d.ts.map +1 -0
  248. package/lib/Utils/messages.js +217 -199
  249. package/lib/Utils/messages.js.map +1 -0
  250. package/lib/Utils/noise-handler.d.ts +5 -4
  251. package/lib/Utils/noise-handler.d.ts.map +1 -0
  252. package/lib/Utils/noise-handler.js +22 -26
  253. package/lib/Utils/noise-handler.js.map +1 -0
  254. package/lib/Utils/process-message.d.ts +5 -4
  255. package/lib/Utils/process-message.d.ts.map +1 -0
  256. package/lib/Utils/process-message.js +125 -130
  257. package/lib/Utils/process-message.js.map +1 -0
  258. package/lib/Utils/signal.d.ts +5 -4
  259. package/lib/Utils/signal.d.ts.map +1 -0
  260. package/lib/Utils/signal.js +47 -52
  261. package/lib/Utils/signal.js.map +1 -0
  262. package/lib/Utils/use-multi-file-auth-state.d.ts +2 -1
  263. package/lib/Utils/use-multi-file-auth-state.d.ts.map +1 -0
  264. package/lib/Utils/use-multi-file-auth-state.js +23 -26
  265. package/lib/Utils/use-multi-file-auth-state.js.map +1 -0
  266. package/lib/Utils/validate-connection.d.ts +4 -3
  267. package/lib/Utils/validate-connection.d.ts.map +1 -0
  268. package/lib/Utils/validate-connection.js +55 -61
  269. package/lib/Utils/validate-connection.js.map +1 -0
  270. package/lib/WABinary/constants.d.ts +5 -4
  271. package/lib/WABinary/constants.d.ts.map +1 -0
  272. package/lib/WABinary/constants.js +1174 -1176
  273. package/lib/WABinary/constants.js.map +1 -0
  274. package/lib/WABinary/decode.d.ts +2 -1
  275. package/lib/WABinary/decode.d.ts.map +1 -0
  276. package/lib/WABinary/decode.js +13 -51
  277. package/lib/WABinary/decode.js.map +1 -0
  278. package/lib/WABinary/encode.d.ts +2 -1
  279. package/lib/WABinary/encode.d.ts.map +1 -0
  280. package/lib/WABinary/encode.js +5 -41
  281. package/lib/WABinary/encode.js.map +1 -0
  282. package/lib/WABinary/generic-utils.d.ts +4 -3
  283. package/lib/WABinary/generic-utils.d.ts.map +1 -0
  284. package/lib/WABinary/generic-utils.js +30 -38
  285. package/lib/WABinary/generic-utils.js.map +1 -0
  286. package/lib/WABinary/index.d.ts +6 -5
  287. package/lib/WABinary/index.d.ts.map +1 -0
  288. package/lib/WABinary/index.js +6 -21
  289. package/lib/WABinary/index.js.map +1 -0
  290. package/lib/WABinary/jid-utils.d.ts +1 -0
  291. package/lib/WABinary/jid-utils.d.ts.map +1 -0
  292. package/lib/WABinary/jid-utils.js +21 -35
  293. package/lib/WABinary/jid-utils.js.map +1 -0
  294. package/lib/WABinary/types.d.ts +2 -1
  295. package/lib/WABinary/types.d.ts.map +1 -0
  296. package/lib/WABinary/types.js +2 -2
  297. package/lib/WABinary/types.js.map +1 -0
  298. package/lib/WAM/BinaryInfo.d.ts +2 -1
  299. package/lib/WAM/BinaryInfo.d.ts.map +1 -0
  300. package/lib/WAM/BinaryInfo.js +2 -5
  301. package/lib/WAM/BinaryInfo.js.map +1 -0
  302. package/lib/WAM/constants.d.ts +1 -0
  303. package/lib/WAM/constants.d.ts.map +1 -0
  304. package/lib/WAM/constants.js +4 -6
  305. package/lib/WAM/constants.js.map +1 -0
  306. package/lib/WAM/encode.d.ts +2 -1
  307. package/lib/WAM/encode.d.ts.map +1 -0
  308. package/lib/WAM/encode.js +12 -14
  309. package/lib/WAM/encode.js.map +1 -0
  310. package/lib/WAM/index.d.ts +4 -3
  311. package/lib/WAM/index.d.ts.map +1 -0
  312. package/lib/WAM/index.js +4 -19
  313. package/lib/WAM/index.js.map +1 -0
  314. package/lib/WAUSync/Protocols/USyncContactProtocol.d.ts +4 -3
  315. package/lib/WAUSync/Protocols/USyncContactProtocol.d.ts.map +1 -0
  316. package/lib/WAUSync/Protocols/USyncContactProtocol.js +6 -9
  317. package/lib/WAUSync/Protocols/USyncContactProtocol.js.map +1 -0
  318. package/lib/WAUSync/Protocols/USyncDeviceProtocol.d.ts +3 -2
  319. package/lib/WAUSync/Protocols/USyncDeviceProtocol.d.ts.map +1 -0
  320. package/lib/WAUSync/Protocols/USyncDeviceProtocol.js +9 -12
  321. package/lib/WAUSync/Protocols/USyncDeviceProtocol.js.map +1 -0
  322. package/lib/WAUSync/Protocols/USyncDisappearingModeProtocol.d.ts +3 -2
  323. package/lib/WAUSync/Protocols/USyncDisappearingModeProtocol.d.ts.map +1 -0
  324. package/lib/WAUSync/Protocols/USyncDisappearingModeProtocol.js +7 -10
  325. package/lib/WAUSync/Protocols/USyncDisappearingModeProtocol.js.map +1 -0
  326. package/lib/WAUSync/Protocols/USyncStatusProtocol.d.ts +3 -2
  327. package/lib/WAUSync/Protocols/USyncStatusProtocol.d.ts.map +1 -0
  328. package/lib/WAUSync/Protocols/USyncStatusProtocol.js +7 -11
  329. package/lib/WAUSync/Protocols/USyncStatusProtocol.js.map +1 -0
  330. package/lib/WAUSync/Protocols/UsyncBotProfileProtocol.d.ts +4 -3
  331. package/lib/WAUSync/Protocols/UsyncBotProfileProtocol.d.ts.map +1 -0
  332. package/lib/WAUSync/Protocols/UsyncBotProfileProtocol.js +19 -21
  333. package/lib/WAUSync/Protocols/UsyncBotProfileProtocol.js.map +1 -0
  334. package/lib/WAUSync/Protocols/UsyncLIDProtocol.d.ts +3 -2
  335. package/lib/WAUSync/Protocols/UsyncLIDProtocol.d.ts.map +1 -0
  336. package/lib/WAUSync/Protocols/UsyncLIDProtocol.js +2 -5
  337. package/lib/WAUSync/Protocols/UsyncLIDProtocol.js.map +1 -0
  338. package/lib/WAUSync/Protocols/index.d.ts +5 -4
  339. package/lib/WAUSync/Protocols/index.d.ts.map +1 -0
  340. package/lib/WAUSync/Protocols/index.js +5 -20
  341. package/lib/WAUSync/Protocols/index.js.map +1 -0
  342. package/lib/WAUSync/USyncQuery.d.ts +4 -3
  343. package/lib/WAUSync/USyncQuery.d.ts.map +1 -0
  344. package/lib/WAUSync/USyncQuery.js +18 -20
  345. package/lib/WAUSync/USyncQuery.js.map +1 -0
  346. package/lib/WAUSync/USyncUser.d.ts +6 -5
  347. package/lib/WAUSync/USyncUser.d.ts.map +1 -0
  348. package/lib/WAUSync/USyncUser.js +2 -5
  349. package/lib/WAUSync/USyncUser.js.map +1 -0
  350. package/lib/WAUSync/index.d.ts +4 -3
  351. package/lib/WAUSync/index.d.ts.map +1 -0
  352. package/lib/WAUSync/index.js +4 -19
  353. package/lib/WAUSync/index.js.map +1 -0
  354. package/lib/index.d.ts +9 -8
  355. package/lib/index.d.ts.map +1 -0
  356. package/lib/index.js +11 -30
  357. package/lib/index.js.map +1 -0
  358. package/package.json +26 -28
  359. package/WASignalGroup/GroupProtocol.js +0 -1697
  360. package/WASignalGroup/ciphertext_message.js +0 -16
  361. package/WASignalGroup/group_cipher.js +0 -120
  362. package/WASignalGroup/group_session_builder.js +0 -46
  363. package/WASignalGroup/index.js +0 -5
  364. package/WASignalGroup/keyhelper.js +0 -21
  365. package/WASignalGroup/protobufs.js +0 -3
  366. package/WASignalGroup/queue_job.js +0 -69
  367. package/WASignalGroup/sender_chain_key.js +0 -50
  368. package/WASignalGroup/sender_key_distribution_message.js +0 -78
  369. package/WASignalGroup/sender_key_message.js +0 -92
  370. package/WASignalGroup/sender_key_name.js +0 -70
  371. package/WASignalGroup/sender_key_record.js +0 -56
  372. package/WASignalGroup/sender_key_state.js +0 -129
@@ -1,21 +1,12 @@
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.isWABusinessPlatform = exports.getCodeFromWSError = exports.getCallStatusFromNode = exports.getErrorCodeFromStreamError = exports.getStatusFromReceiptType = exports.generateMdTagPrefix = exports.fetchLatestWaWebVersion = exports.fetchLatestBaileysVersion = exports.bindWaitForConnectionUpdate = exports.generateMessageID = exports.generateMessageIDV2 = exports.delayCancellable = exports.delay = exports.debouncedTimeout = exports.unixTimestampSeconds = exports.toNumber = exports.encodeBigEndian = exports.generateRegistrationId = exports.encodeWAMessage = exports.unpadRandomMax16 = exports.writeRandomPadMax16 = exports.getKeyAuthor = exports.BufferJSON = exports.getPlatformId = exports.Browsers = void 0;
7
- exports.promiseTimeout = promiseTimeout;
8
- exports.bindWaitForEvent = bindWaitForEvent;
9
- exports.trimUndefined = trimUndefined;
10
- exports.bytesToCrockford = bytesToCrockford;
11
- const boom_1 = require("@hapi/boom");
12
- const axios_1 = __importDefault(require("axios"));
13
- const crypto_1 = require("crypto");
14
- const os_1 = require("os");
15
- const WAProto_1 = require("../../WAProto");
16
- const baileys_version_json_1 = require("../Defaults/baileys-version.json");
17
- const Types_1 = require("../Types");
18
- const WABinary_1 = require("../WABinary");
1
+ import { Boom } from '@hapi/boom';
2
+ import axios, {} from 'axios';
3
+ import { createHash, randomBytes } from 'crypto';
4
+ import { platform, release } from 'os';
5
+ import { proto } from '../../WAProto/index.js';
6
+ import version from '../Defaults/baileys-version.json' with { type: 'json' };
7
+ const baileysVersion = version.version;
8
+ import { DisconnectReason } from '../Types/index.js';
9
+ import { getAllBinaryNodeChildren, jidDecode } from '../WABinary/index.js';
19
10
  const PLATFORM_MAP = {
20
11
  aix: 'AIX',
21
12
  darwin: 'Mac OS',
@@ -23,26 +14,29 @@ const PLATFORM_MAP = {
23
14
  android: 'Android',
24
15
  freebsd: 'FreeBSD',
25
16
  openbsd: 'OpenBSD',
26
- sunos: 'Solaris'
17
+ sunos: 'Solaris',
18
+ linux: undefined,
19
+ haiku: undefined,
20
+ cygwin: undefined,
21
+ netbsd: undefined
27
22
  };
28
- exports.Browsers = {
23
+ export const Browsers = {
29
24
  ubuntu: browser => ['Ubuntu', browser, '22.04.4'],
30
25
  macOS: browser => ['Mac OS', browser, '14.4.1'],
31
26
  baileys: browser => ['Baileys', browser, '6.5.0'],
32
27
  windows: browser => ['Windows', browser, '10.0.22631'],
33
28
  /** The appropriate browser based on your OS & release */
34
- appropriate: browser => [PLATFORM_MAP[(0, os_1.platform)()] || 'Ubuntu', browser, (0, os_1.release)()]
29
+ appropriate: browser => [PLATFORM_MAP[platform()] || 'Ubuntu', browser, release()]
35
30
  };
36
- const getPlatformId = (browser) => {
37
- const platformType = WAProto_1.proto.DeviceProps.PlatformType[browser.toUpperCase()];
31
+ export const getPlatformId = (browser) => {
32
+ const platformType = proto.DeviceProps.PlatformType[browser.toUpperCase()];
38
33
  return platformType ? platformType.toString() : '1'; //chrome
39
34
  };
40
- exports.getPlatformId = getPlatformId;
41
- exports.BufferJSON = {
35
+ export const BufferJSON = {
42
36
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
43
37
  replacer: (k, value) => {
44
- if (Buffer.isBuffer(value) || value instanceof Uint8Array || (value === null || value === void 0 ? void 0 : value.type) === 'Buffer') {
45
- return { type: 'Buffer', data: Buffer.from((value === null || value === void 0 ? void 0 : value.data) || value).toString('base64') };
38
+ if (Buffer.isBuffer(value) || value instanceof Uint8Array || value?.type === 'Buffer') {
39
+ return { type: 'Buffer', data: Buffer.from(value?.data || value).toString('base64') };
46
40
  }
47
41
  return value;
48
42
  },
@@ -55,18 +49,18 @@ exports.BufferJSON = {
55
49
  return value;
56
50
  }
57
51
  };
58
- const getKeyAuthor = (key, meId = 'me') => ((key === null || key === void 0 ? void 0 : key.fromMe) ? meId : (key === null || key === void 0 ? void 0 : key.participant) || (key === null || key === void 0 ? void 0 : key.remoteJid)) || '';
59
- exports.getKeyAuthor = getKeyAuthor;
60
- const writeRandomPadMax16 = (msg) => {
61
- const pad = (0, crypto_1.randomBytes)(1);
62
- pad[0] &= 0xf;
63
- if (!pad[0]) {
52
+ export const getKeyAuthor = (key, meId = 'me') => (key?.fromMe ? meId : key?.participant || key?.remoteJid) || '';
53
+ export const writeRandomPadMax16 = (msg) => {
54
+ const pad = randomBytes(1);
55
+ if (pad[0]) {
56
+ pad[0] &= 0xf;
57
+ }
58
+ else {
64
59
  pad[0] = 0xf;
65
60
  }
66
61
  return Buffer.concat([msg, Buffer.alloc(pad[0], pad[0])]);
67
62
  };
68
- exports.writeRandomPadMax16 = writeRandomPadMax16;
69
- const unpadRandomMax16 = (e) => {
63
+ export const unpadRandomMax16 = (e) => {
70
64
  const t = new Uint8Array(e);
71
65
  if (0 === t.length) {
72
66
  throw new Error('unpadPkcs7 given empty bytes');
@@ -77,14 +71,11 @@ const unpadRandomMax16 = (e) => {
77
71
  }
78
72
  return new Uint8Array(t.buffer, t.byteOffset, t.length - r);
79
73
  };
80
- exports.unpadRandomMax16 = unpadRandomMax16;
81
- const encodeWAMessage = (message) => (0, exports.writeRandomPadMax16)(WAProto_1.proto.Message.encode(message).finish());
82
- exports.encodeWAMessage = encodeWAMessage;
83
- const generateRegistrationId = () => {
84
- return Uint16Array.from((0, crypto_1.randomBytes)(2))[0] & 16383;
74
+ export const encodeWAMessage = (message) => writeRandomPadMax16(proto.Message.encode(message).finish());
75
+ export const generateRegistrationId = () => {
76
+ return Uint16Array.from(randomBytes(2))[0] & 16383;
85
77
  };
86
- exports.generateRegistrationId = generateRegistrationId;
87
- const encodeBigEndian = (e, t = 4) => {
78
+ export const encodeBigEndian = (e, t = 4) => {
88
79
  let r = e;
89
80
  const a = new Uint8Array(t);
90
81
  for (let i = t - 1; i >= 0; i--) {
@@ -93,20 +84,17 @@ const encodeBigEndian = (e, t = 4) => {
93
84
  }
94
85
  return a;
95
86
  };
96
- exports.encodeBigEndian = encodeBigEndian;
97
- const toNumber = (t) => typeof t === 'object' && t ? ('toNumber' in t ? t.toNumber() : t.low) : t || 0;
98
- exports.toNumber = toNumber;
87
+ export const toNumber = (t) => typeof t === 'object' && t ? ('toNumber' in t ? t.toNumber() : t.low) : t || 0;
99
88
  /** unix timestamp of a date in seconds */
100
- const unixTimestampSeconds = (date = new Date()) => Math.floor(date.getTime() / 1000);
101
- exports.unixTimestampSeconds = unixTimestampSeconds;
102
- const debouncedTimeout = (intervalMs = 1000, task) => {
89
+ export const unixTimestampSeconds = (date = new Date()) => Math.floor(date.getTime() / 1000);
90
+ export const debouncedTimeout = (intervalMs = 1000, task) => {
103
91
  let timeout;
104
92
  return {
105
93
  start: (newIntervalMs, newTask) => {
106
94
  task = newTask || task;
107
95
  intervalMs = newIntervalMs || intervalMs;
108
96
  timeout && clearTimeout(timeout);
109
- timeout = setTimeout(() => task === null || task === void 0 ? void 0 : task(), intervalMs);
97
+ timeout = setTimeout(() => task?.(), intervalMs);
110
98
  },
111
99
  cancel: () => {
112
100
  timeout && clearTimeout(timeout);
@@ -116,10 +104,8 @@ const debouncedTimeout = (intervalMs = 1000, task) => {
116
104
  setInterval: (newInterval) => (intervalMs = newInterval)
117
105
  };
118
106
  };
119
- exports.debouncedTimeout = debouncedTimeout;
120
- const delay = (ms) => (0, exports.delayCancellable)(ms).delay;
121
- exports.delay = delay;
122
- const delayCancellable = (ms) => {
107
+ export const delay = (ms) => delayCancellable(ms).delay;
108
+ export const delayCancellable = (ms) => {
123
109
  const stack = new Error().stack;
124
110
  let timeout;
125
111
  let reject;
@@ -129,7 +115,7 @@ const delayCancellable = (ms) => {
129
115
  });
130
116
  const cancel = () => {
131
117
  clearTimeout(timeout);
132
- reject(new boom_1.Boom('Cancelled', {
118
+ reject(new Boom('Cancelled', {
133
119
  statusCode: 500,
134
120
  data: {
135
121
  stack
@@ -138,18 +124,17 @@ const delayCancellable = (ms) => {
138
124
  };
139
125
  return { delay, cancel };
140
126
  };
141
- exports.delayCancellable = delayCancellable;
142
- async function promiseTimeout(ms, promise) {
127
+ export async function promiseTimeout(ms, promise) {
143
128
  if (!ms) {
144
129
  return new Promise(promise);
145
130
  }
146
131
  const stack = new Error().stack;
147
132
  // Create a promise that rejects in <ms> milliseconds
148
- const { delay, cancel } = (0, exports.delayCancellable)(ms);
133
+ const { delay, cancel } = delayCancellable(ms);
149
134
  const p = new Promise((resolve, reject) => {
150
135
  delay
151
- .then(() => reject(new boom_1.Boom('Timed Out', {
152
- statusCode: Types_1.DisconnectReason.timedOut,
136
+ .then(() => reject(new Boom('Timed Out', {
137
+ statusCode: DisconnectReason.timedOut,
153
138
  data: {
154
139
  stack
155
140
  }
@@ -161,33 +146,31 @@ async function promiseTimeout(ms, promise) {
161
146
  }
162
147
  // inspired from whatsmeow code
163
148
  // https://github.com/tulir/whatsmeow/blob/64bc969fbe78d31ae0dd443b8d4c80a5d026d07a/send.go#L42
164
- const generateMessageIDV2 = (userId) => {
149
+ export const generateMessageIDV2 = (userId) => {
165
150
  const data = Buffer.alloc(8 + 20 + 16);
166
151
  data.writeBigUInt64BE(BigInt(Math.floor(Date.now() / 1000)));
167
152
  if (userId) {
168
- const id = (0, WABinary_1.jidDecode)(userId);
169
- if (id === null || id === void 0 ? void 0 : id.user) {
153
+ const id = jidDecode(userId);
154
+ if (id?.user) {
170
155
  data.write(id.user, 8);
171
156
  data.write('@c.us', 8 + id.user.length);
172
157
  }
173
158
  }
174
- const random = (0, crypto_1.randomBytes)(16);
159
+ const random = randomBytes(16);
175
160
  random.copy(data, 28);
176
- const hash = (0, crypto_1.createHash)('sha256').update(data).digest();
161
+ const hash = createHash('sha256').update(data).digest();
177
162
  return '3EB0' + hash.toString('hex').toUpperCase().substring(0, 18);
178
163
  };
179
- exports.generateMessageIDV2 = generateMessageIDV2;
180
164
  // generate a random ID to attach to a message
181
- const generateMessageID = () => '3EB0' + (0, crypto_1.randomBytes)(18).toString('hex').toUpperCase();
182
- exports.generateMessageID = generateMessageID;
183
- function bindWaitForEvent(ev, event) {
165
+ export const generateMessageID = () => '3EB0' + randomBytes(18).toString('hex').toUpperCase();
166
+ export function bindWaitForEvent(ev, event) {
184
167
  return async (check, timeoutMs) => {
185
168
  let listener;
186
169
  let closeListener;
187
170
  await promiseTimeout(timeoutMs, (resolve, reject) => {
188
171
  closeListener = ({ connection, lastDisconnect }) => {
189
172
  if (connection === 'close') {
190
- reject((lastDisconnect === null || lastDisconnect === void 0 ? void 0 : lastDisconnect.error) || new boom_1.Boom('Connection Closed', { statusCode: Types_1.DisconnectReason.connectionClosed }));
173
+ reject(lastDisconnect?.error || new Boom('Connection Closed', { statusCode: DisconnectReason.connectionClosed }));
191
174
  }
192
175
  };
193
176
  ev.on('connection.update', closeListener);
@@ -203,16 +186,15 @@ function bindWaitForEvent(ev, event) {
203
186
  });
204
187
  };
205
188
  }
206
- const bindWaitForConnectionUpdate = (ev) => bindWaitForEvent(ev, 'connection.update');
207
- exports.bindWaitForConnectionUpdate = bindWaitForConnectionUpdate;
189
+ export const bindWaitForConnectionUpdate = (ev) => bindWaitForEvent(ev, 'connection.update');
208
190
  /**
209
191
  * utility that fetches latest baileys version from the master branch.
210
192
  * Use to ensure your WA connection is always on the latest version
211
193
  */
212
- const fetchLatestBaileysVersion = async (options = {}) => {
194
+ export const fetchLatestBaileysVersion = async (options = {}) => {
213
195
  const URL = 'https://raw.githubusercontent.com/WhiskeySockets/Baileys/master/src/Defaults/baileys-version.json';
214
196
  try {
215
- const result = await axios_1.default.get(URL, {
197
+ const result = await axios.get(URL, {
216
198
  ...options,
217
199
  responseType: 'json'
218
200
  });
@@ -223,28 +205,27 @@ const fetchLatestBaileysVersion = async (options = {}) => {
223
205
  }
224
206
  catch (error) {
225
207
  return {
226
- version: baileys_version_json_1.version,
208
+ version: baileysVersion,
227
209
  isLatest: false,
228
210
  error
229
211
  };
230
212
  }
231
213
  };
232
- exports.fetchLatestBaileysVersion = fetchLatestBaileysVersion;
233
214
  /**
234
215
  * A utility that fetches the latest web version of whatsapp.
235
216
  * Use to ensure your WA connection is always on the latest version
236
217
  */
237
- const fetchLatestWaWebVersion = async (options) => {
218
+ export const fetchLatestWaWebVersion = async (options) => {
238
219
  try {
239
- const { data } = await axios_1.default.get('https://web.whatsapp.com/sw.js', {
220
+ const { data } = await axios.get('https://web.whatsapp.com/sw.js', {
240
221
  ...options,
241
222
  responseType: 'json'
242
223
  });
243
224
  const regex = /\\?"client_revision\\?":\s*(\d+)/;
244
225
  const match = data.match(regex);
245
- if (!(match === null || match === void 0 ? void 0 : match[1])) {
226
+ if (!match?.[1]) {
246
227
  return {
247
- version: baileys_version_json_1.version,
228
+ version: baileysVersion,
248
229
  isLatest: false,
249
230
  error: {
250
231
  message: 'Could not find client revision in the fetched content'
@@ -259,49 +240,46 @@ const fetchLatestWaWebVersion = async (options) => {
259
240
  }
260
241
  catch (error) {
261
242
  return {
262
- version: baileys_version_json_1.version,
243
+ version: baileysVersion,
263
244
  isLatest: false,
264
245
  error
265
246
  };
266
247
  }
267
248
  };
268
- exports.fetchLatestWaWebVersion = fetchLatestWaWebVersion;
269
249
  /** unique message tag prefix for MD clients */
270
- const generateMdTagPrefix = () => {
271
- const bytes = (0, crypto_1.randomBytes)(4);
250
+ export const generateMdTagPrefix = () => {
251
+ const bytes = randomBytes(4);
272
252
  return `${bytes.readUInt16BE()}.${bytes.readUInt16BE(2)}-`;
273
253
  };
274
- exports.generateMdTagPrefix = generateMdTagPrefix;
275
254
  const STATUS_MAP = {
276
- sender: WAProto_1.proto.WebMessageInfo.Status.SERVER_ACK,
277
- played: WAProto_1.proto.WebMessageInfo.Status.PLAYED,
278
- read: WAProto_1.proto.WebMessageInfo.Status.READ,
279
- 'read-self': WAProto_1.proto.WebMessageInfo.Status.READ
255
+ sender: proto.WebMessageInfo.Status.SERVER_ACK,
256
+ played: proto.WebMessageInfo.Status.PLAYED,
257
+ read: proto.WebMessageInfo.Status.READ,
258
+ 'read-self': proto.WebMessageInfo.Status.READ
280
259
  };
281
260
  /**
282
261
  * Given a type of receipt, returns what the new status of the message should be
283
262
  * @param type type from receipt
284
263
  */
285
- const getStatusFromReceiptType = (type) => {
264
+ export const getStatusFromReceiptType = (type) => {
286
265
  const status = STATUS_MAP[type];
287
266
  if (typeof type === 'undefined') {
288
- return WAProto_1.proto.WebMessageInfo.Status.DELIVERY_ACK;
267
+ return proto.WebMessageInfo.Status.DELIVERY_ACK;
289
268
  }
290
269
  return status;
291
270
  };
292
- exports.getStatusFromReceiptType = getStatusFromReceiptType;
293
271
  const CODE_MAP = {
294
- conflict: Types_1.DisconnectReason.connectionReplaced
272
+ conflict: DisconnectReason.connectionReplaced
295
273
  };
296
274
  /**
297
275
  * Stream errors generally provide a reason, map that to a baileys DisconnectReason
298
276
  * @param reason the string reason given, eg. "conflict"
299
277
  */
300
- const getErrorCodeFromStreamError = (node) => {
301
- const [reasonNode] = (0, WABinary_1.getAllBinaryNodeChildren)(node);
302
- let reason = (reasonNode === null || reasonNode === void 0 ? void 0 : reasonNode.tag) || 'unknown';
303
- const statusCode = +(node.attrs.code || CODE_MAP[reason] || Types_1.DisconnectReason.badSession);
304
- if (statusCode === Types_1.DisconnectReason.restartRequired) {
278
+ export const getErrorCodeFromStreamError = (node) => {
279
+ const [reasonNode] = getAllBinaryNodeChildren(node);
280
+ let reason = reasonNode?.tag || 'unknown';
281
+ const statusCode = +(node.attrs.code || CODE_MAP[reason] || DisconnectReason.badSession);
282
+ if (statusCode === DisconnectReason.restartRequired) {
305
283
  reason = 'restart required';
306
284
  }
307
285
  return {
@@ -309,8 +287,7 @@ const getErrorCodeFromStreamError = (node) => {
309
287
  statusCode
310
288
  };
311
289
  };
312
- exports.getErrorCodeFromStreamError = getErrorCodeFromStreamError;
313
- const getCallStatusFromNode = ({ tag, attrs }) => {
290
+ export const getCallStatusFromNode = ({ tag, attrs }) => {
314
291
  let status;
315
292
  switch (tag) {
316
293
  case 'offer':
@@ -338,37 +315,33 @@ const getCallStatusFromNode = ({ tag, attrs }) => {
338
315
  }
339
316
  return status;
340
317
  };
341
- exports.getCallStatusFromNode = getCallStatusFromNode;
342
318
  const UNEXPECTED_SERVER_CODE_TEXT = 'Unexpected server response: ';
343
- const getCodeFromWSError = (error) => {
344
- var _a, _b, _c;
319
+ export const getCodeFromWSError = (error) => {
345
320
  let statusCode = 500;
346
- if ((_a = error === null || error === void 0 ? void 0 : error.message) === null || _a === void 0 ? void 0 : _a.includes(UNEXPECTED_SERVER_CODE_TEXT)) {
347
- const code = +(error === null || error === void 0 ? void 0 : error.message.slice(UNEXPECTED_SERVER_CODE_TEXT.length));
321
+ if (error?.message?.includes(UNEXPECTED_SERVER_CODE_TEXT)) {
322
+ const code = +error?.message.slice(UNEXPECTED_SERVER_CODE_TEXT.length);
348
323
  if (!Number.isNaN(code) && code >= 400) {
349
324
  statusCode = code;
350
325
  }
351
326
  }
352
327
  else if (
353
328
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
354
- ((_b = error === null || error === void 0 ? void 0 : error.code) === null || _b === void 0 ? void 0 : _b.startsWith('E')) ||
355
- ((_c = error === null || error === void 0 ? void 0 : error.message) === null || _c === void 0 ? void 0 : _c.includes('timed out'))) {
329
+ error?.code?.startsWith('E') ||
330
+ error?.message?.includes('timed out')) {
356
331
  // handle ETIMEOUT, ENOTFOUND etc
357
332
  statusCode = 408;
358
333
  }
359
334
  return statusCode;
360
335
  };
361
- exports.getCodeFromWSError = getCodeFromWSError;
362
336
  /**
363
337
  * Is the given platform WA business
364
338
  * @param platform AuthenticationCreds.platform
365
339
  */
366
- const isWABusinessPlatform = (platform) => {
340
+ export const isWABusinessPlatform = (platform) => {
367
341
  return platform === 'smbi' || platform === 'smba';
368
342
  };
369
- exports.isWABusinessPlatform = isWABusinessPlatform;
370
343
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
371
- function trimUndefined(obj) {
344
+ export function trimUndefined(obj) {
372
345
  for (const key in obj) {
373
346
  if (typeof obj[key] === 'undefined') {
374
347
  delete obj[key];
@@ -377,7 +350,7 @@ function trimUndefined(obj) {
377
350
  return obj;
378
351
  }
379
352
  const CROCKFORD_CHARACTERS = '123456789ABCDEFGHJKLMNPQRSTVWXYZ';
380
- function bytesToCrockford(buffer) {
353
+ export function bytesToCrockford(buffer) {
381
354
  let value = 0;
382
355
  let bitCount = 0;
383
356
  const crockford = [];
@@ -394,3 +367,7 @@ function bytesToCrockford(buffer) {
394
367
  }
395
368
  return crockford.join('');
396
369
  }
370
+ export function encodeNewsletterMessage(message) {
371
+ return proto.Message.encode(message).finish();
372
+ }
373
+ //# sourceMappingURL=generics.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generics.js","sourceRoot":"","sources":["../../src/Utils/generics.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
- import { AxiosRequestConfig } from 'axios';
2
- import { proto } from '../../WAProto';
3
- import { Chat, Contact } from '../Types';
1
+ import type { AxiosRequestConfig } from 'axios';
2
+ import { proto } from '../../WAProto/index.js';
3
+ import type { Chat, Contact } from '../Types/index.js';
4
4
  export declare const downloadHistory: (msg: proto.Message.IHistorySyncNotification, options: AxiosRequestConfig<{}>) => Promise<proto.HistorySync>;
5
5
  export declare const processHistoryMessage: (item: proto.IHistorySync) => {
6
6
  chats: Chat[];
@@ -17,3 +17,4 @@ export declare const downloadAndProcessHistorySyncNotification: (msg: proto.Mess
17
17
  progress: number | null | undefined;
18
18
  }>;
19
19
  export declare const getHistoryMsg: (message: proto.IMessage) => proto.Message.IHistorySyncNotification | null | undefined;
20
+ //# sourceMappingURL=history.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"history.d.ts","sourceRoot":"","sources":["../../src/Utils/history.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,OAAO,CAAA;AAG/C,OAAO,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAA;AAC9C,OAAO,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,UAAU,CAAA;AAS7C,eAAO,MAAM,eAAe,GAAU,KAAK,KAAK,CAAC,OAAO,CAAC,wBAAwB,EAAE,SAAS,kBAAkB,CAAC,EAAE,CAAC,+BAcjH,CAAA;AAED,eAAO,MAAM,qBAAqB,GAAI,MAAM,KAAK,CAAC,YAAY;;;;;;CAiE7D,CAAA;AAED,eAAO,MAAM,yCAAyC,GACrD,KAAK,KAAK,CAAC,OAAO,CAAC,wBAAwB,EAC3C,SAAS,kBAAkB,CAAC,EAAE,CAAC;;;;;;EAI/B,CAAA;AAED,eAAO,MAAM,aAAa,GAAI,SAAS,KAAK,CAAC,QAAQ,8DAKpD,CAAA"}
@@ -1,17 +1,14 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getHistoryMsg = exports.downloadAndProcessHistorySyncNotification = exports.processHistoryMessage = exports.downloadHistory = void 0;
4
- const util_1 = require("util");
5
- const zlib_1 = require("zlib");
6
- const WAProto_1 = require("../../WAProto");
7
- const Types_1 = require("../Types");
8
- const WABinary_1 = require("../WABinary");
9
- const generics_1 = require("./generics");
10
- const messages_1 = require("./messages");
11
- const messages_media_1 = require("./messages-media");
12
- const inflatePromise = (0, util_1.promisify)(zlib_1.inflate);
13
- const downloadHistory = async (msg, options) => {
14
- const stream = await (0, messages_media_1.downloadContentFromMessage)(msg, 'md-msg-hist', { options });
1
+ import { promisify } from 'util';
2
+ import { inflate } from 'zlib';
3
+ import { proto } from '../../WAProto/index.js';
4
+ import { WAMessageStubType } from '../Types/index.js';
5
+ import { isJidUser } from '../WABinary/index.js';
6
+ import { toNumber } from './generics.js';
7
+ import { normalizeMessageContent } from './messages.js';
8
+ import { downloadContentFromMessage } from './messages-media.js';
9
+ const inflatePromise = promisify(inflate);
10
+ export const downloadHistory = async (msg, options) => {
11
+ const stream = await downloadContentFromMessage(msg, 'md-msg-hist', { options });
15
12
  const bufferArray = [];
16
13
  for await (const chunk of stream) {
17
14
  bufferArray.push(chunk);
@@ -19,53 +16,50 @@ const downloadHistory = async (msg, options) => {
19
16
  let buffer = Buffer.concat(bufferArray);
20
17
  // decompress buffer
21
18
  buffer = await inflatePromise(buffer);
22
- const syncData = WAProto_1.proto.HistorySync.decode(buffer);
19
+ const syncData = proto.HistorySync.decode(buffer);
23
20
  return syncData;
24
21
  };
25
- exports.downloadHistory = downloadHistory;
26
- const processHistoryMessage = (item) => {
27
- var _a, _b, _c;
22
+ export const processHistoryMessage = (item) => {
28
23
  const messages = [];
29
24
  const contacts = [];
30
25
  const chats = [];
31
26
  switch (item.syncType) {
32
- case WAProto_1.proto.HistorySync.HistorySyncType.INITIAL_BOOTSTRAP:
33
- case WAProto_1.proto.HistorySync.HistorySyncType.RECENT:
34
- case WAProto_1.proto.HistorySync.HistorySyncType.FULL:
35
- case WAProto_1.proto.HistorySync.HistorySyncType.ON_DEMAND:
27
+ case proto.HistorySync.HistorySyncType.INITIAL_BOOTSTRAP:
28
+ case proto.HistorySync.HistorySyncType.RECENT:
29
+ case proto.HistorySync.HistorySyncType.FULL:
30
+ case proto.HistorySync.HistorySyncType.ON_DEMAND:
36
31
  for (const chat of item.conversations) {
37
- contacts.push({ id: chat.id, name: chat.name || undefined });
32
+ contacts.push({
33
+ id: chat.id,
34
+ name: chat.name || undefined,
35
+ lid: chat.lidJid || undefined,
36
+ jid: isJidUser(chat.id) ? chat.id : undefined
37
+ });
38
38
  const msgs = chat.messages || [];
39
39
  delete chat.messages;
40
- delete chat.archived;
41
- delete chat.muteEndTime;
42
- delete chat.pinned;
43
40
  for (const item of msgs) {
44
41
  const message = item.message;
45
42
  messages.push(message);
46
- if (!((_a = chat.messages) === null || _a === void 0 ? void 0 : _a.length)) {
43
+ if (!chat.messages?.length) {
47
44
  // keep only the most recent message in the chat array
48
45
  chat.messages = [{ message }];
49
46
  }
50
47
  if (!message.key.fromMe && !chat.lastMessageRecvTimestamp) {
51
- chat.lastMessageRecvTimestamp = (0, generics_1.toNumber)(message.messageTimestamp);
48
+ chat.lastMessageRecvTimestamp = toNumber(message.messageTimestamp);
52
49
  }
53
- if ((message.messageStubType === Types_1.WAMessageStubType.BIZ_PRIVACY_MODE_TO_BSP ||
54
- message.messageStubType === Types_1.WAMessageStubType.BIZ_PRIVACY_MODE_TO_FB) &&
55
- ((_b = message.messageStubParameters) === null || _b === void 0 ? void 0 : _b[0])) {
50
+ if ((message.messageStubType === WAMessageStubType.BIZ_PRIVACY_MODE_TO_BSP ||
51
+ message.messageStubType === WAMessageStubType.BIZ_PRIVACY_MODE_TO_FB) &&
52
+ message.messageStubParameters?.[0]) {
56
53
  contacts.push({
57
54
  id: message.key.participant || message.key.remoteJid,
58
- verifiedName: (_c = message.messageStubParameters) === null || _c === void 0 ? void 0 : _c[0]
55
+ verifiedName: message.messageStubParameters?.[0]
59
56
  });
60
57
  }
61
58
  }
62
- if ((0, WABinary_1.isJidUser)(chat.id) && chat.readOnly && chat.archived) {
63
- delete chat.readOnly;
64
- }
65
59
  chats.push({ ...chat });
66
60
  }
67
61
  break;
68
- case WAProto_1.proto.HistorySync.HistorySyncType.PUSH_NAME:
62
+ case proto.HistorySync.HistorySyncType.PUSH_NAME:
69
63
  for (const c of item.pushnames) {
70
64
  contacts.push({ id: c.id, notify: c.pushname });
71
65
  }
@@ -79,16 +73,13 @@ const processHistoryMessage = (item) => {
79
73
  progress: item.progress
80
74
  };
81
75
  };
82
- exports.processHistoryMessage = processHistoryMessage;
83
- const downloadAndProcessHistorySyncNotification = async (msg, options) => {
84
- const historyMsg = await (0, exports.downloadHistory)(msg, options);
85
- return (0, exports.processHistoryMessage)(historyMsg);
76
+ export const downloadAndProcessHistorySyncNotification = async (msg, options) => {
77
+ const historyMsg = await downloadHistory(msg, options);
78
+ return processHistoryMessage(historyMsg);
86
79
  };
87
- exports.downloadAndProcessHistorySyncNotification = downloadAndProcessHistorySyncNotification;
88
- const getHistoryMsg = (message) => {
89
- var _a;
90
- const normalizedContent = !!message ? (0, messages_1.normalizeMessageContent)(message) : undefined;
91
- const anyHistoryMsg = (_a = normalizedContent === null || normalizedContent === void 0 ? void 0 : normalizedContent.protocolMessage) === null || _a === void 0 ? void 0 : _a.historySyncNotification;
80
+ export const getHistoryMsg = (message) => {
81
+ const normalizedContent = !!message ? normalizeMessageContent(message) : undefined;
82
+ const anyHistoryMsg = normalizedContent?.protocolMessage?.historySyncNotification;
92
83
  return anyHistoryMsg;
93
84
  };
94
- exports.getHistoryMsg = getHistoryMsg;
85
+ //# sourceMappingURL=history.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"history.js","sourceRoot":"","sources":["../../src/Utils/history.ts"],"names":[],"mappings":"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"}
@@ -1,17 +1,18 @@
1
- export * from './generics';
2
- export * from './decode-wa-message';
3
- export * from './messages';
4
- export * from './messages-media';
5
- export * from './validate-connection';
6
- export * from './crypto';
7
- export * from './signal';
8
- export * from './noise-handler';
9
- export * from './history';
10
- export * from './chat-utils';
11
- export * from './lt-hash';
12
- export * from './auth-utils';
13
- export * from './baileys-event-stream';
14
- export * from './use-multi-file-auth-state';
15
- export * from './link-preview';
16
- export * from './event-buffer';
17
- export * from './process-message';
1
+ export * from './generics.js';
2
+ export * from './decode-wa-message.js';
3
+ export * from './messages.js';
4
+ export * from './messages-media.js';
5
+ export * from './validate-connection.js';
6
+ export * from './crypto.js';
7
+ export * from './signal.js';
8
+ export * from './noise-handler.js';
9
+ export * from './history.js';
10
+ export * from './chat-utils.js';
11
+ export * from './lt-hash.js';
12
+ export * from './auth-utils.js';
13
+ export * from './baileys-event-stream.js';
14
+ export * from './use-multi-file-auth-state.js';
15
+ export * from './link-preview.js';
16
+ export * from './event-buffer.js';
17
+ export * from './process-message.js';
18
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/Utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAA;AAC1B,cAAc,qBAAqB,CAAA;AACnC,cAAc,YAAY,CAAA;AAC1B,cAAc,kBAAkB,CAAA;AAChC,cAAc,uBAAuB,CAAA;AACrC,cAAc,UAAU,CAAA;AACxB,cAAc,UAAU,CAAA;AACxB,cAAc,iBAAiB,CAAA;AAC/B,cAAc,WAAW,CAAA;AACzB,cAAc,cAAc,CAAA;AAC5B,cAAc,WAAW,CAAA;AACzB,cAAc,cAAc,CAAA;AAC5B,cAAc,wBAAwB,CAAA;AACtC,cAAc,6BAA6B,CAAA;AAC3C,cAAc,gBAAgB,CAAA;AAC9B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,mBAAmB,CAAA"}