@neelegirl/baileys 1.5.2 → 1.5.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (419) hide show
  1. package/README.md +26 -18
  2. package/WAProto/GenerateStatics.sh +3 -0
  3. package/WAProto/WAProto.proto +291 -665
  4. package/WAProto/fix-imports.js +29 -0
  5. package/WAProto/index.d.ts +2297 -48040
  6. package/WAProto/index.js +45500 -140101
  7. package/engine-requirements.js +10 -0
  8. package/lib/Defaults/index.d.ts +58 -64
  9. package/lib/Defaults/index.d.ts.map +1 -0
  10. package/lib/Defaults/index.js +74 -96
  11. package/lib/Defaults/index.js.map +1 -0
  12. package/lib/Signal/Group/ciphertext-message.d.ts +10 -0
  13. package/lib/Signal/Group/ciphertext-message.d.ts.map +1 -0
  14. package/lib/Signal/Group/ciphertext-message.js +12 -0
  15. package/lib/Signal/Group/ciphertext-message.js.map +1 -0
  16. package/lib/Signal/Group/group-session-builder.d.ts +15 -0
  17. package/lib/Signal/Group/group-session-builder.d.ts.map +1 -0
  18. package/lib/Signal/Group/group-session-builder.js +30 -0
  19. package/lib/Signal/Group/group-session-builder.js.map +1 -0
  20. package/lib/Signal/Group/group_cipher.d.ts +17 -0
  21. package/lib/Signal/Group/group_cipher.d.ts.map +1 -0
  22. package/lib/Signal/Group/group_cipher.js +82 -0
  23. package/lib/Signal/Group/group_cipher.js.map +1 -0
  24. package/lib/Signal/Group/index.d.ts +12 -0
  25. package/lib/Signal/Group/index.d.ts.map +1 -0
  26. package/lib/Signal/Group/index.js +12 -0
  27. package/lib/Signal/Group/index.js.map +1 -0
  28. package/lib/Signal/Group/keyhelper.d.ts +11 -0
  29. package/lib/Signal/Group/keyhelper.d.ts.map +1 -0
  30. package/lib/Signal/Group/keyhelper.js +18 -0
  31. package/lib/Signal/Group/keyhelper.js.map +1 -0
  32. package/lib/Signal/Group/sender-chain-key.d.ts +14 -0
  33. package/lib/Signal/Group/sender-chain-key.d.ts.map +1 -0
  34. package/lib/Signal/Group/sender-chain-key.js +26 -0
  35. package/lib/Signal/Group/sender-chain-key.js.map +1 -0
  36. package/lib/Signal/Group/sender-key-distribution-message.d.ts +17 -0
  37. package/lib/Signal/Group/sender-key-distribution-message.d.ts.map +1 -0
  38. package/lib/Signal/Group/sender-key-distribution-message.js +63 -0
  39. package/lib/Signal/Group/sender-key-distribution-message.js.map +1 -0
  40. package/lib/Signal/Group/sender-key-message.d.ts +19 -0
  41. package/lib/Signal/Group/sender-key-message.d.ts.map +1 -0
  42. package/lib/Signal/Group/sender-key-message.js +66 -0
  43. package/lib/Signal/Group/sender-key-message.js.map +1 -0
  44. package/lib/Signal/Group/sender-key-name.d.ts +18 -0
  45. package/lib/Signal/Group/sender-key-name.d.ts.map +1 -0
  46. package/lib/Signal/Group/sender-key-name.js +48 -0
  47. package/lib/Signal/Group/sender-key-name.js.map +1 -0
  48. package/lib/Signal/Group/sender-key-record.d.ts +31 -0
  49. package/lib/Signal/Group/sender-key-record.d.ts.map +1 -0
  50. package/lib/Signal/Group/sender-key-record.js +41 -0
  51. package/lib/Signal/Group/sender-key-record.js.map +1 -0
  52. package/lib/Signal/Group/sender-key-state.d.ts +39 -0
  53. package/lib/Signal/Group/sender-key-state.d.ts.map +1 -0
  54. package/lib/Signal/Group/sender-key-state.js +84 -0
  55. package/lib/Signal/Group/sender-key-state.js.map +1 -0
  56. package/lib/Signal/Group/sender-message-key.d.ts +12 -0
  57. package/lib/Signal/Group/sender-message-key.d.ts.map +1 -0
  58. package/lib/Signal/{WASignalGroup/sender_message_key.js → Group/sender-message-key.js} +3 -16
  59. package/lib/Signal/Group/sender-message-key.js.map +1 -0
  60. package/lib/Signal/libsignal.d.ts +5 -4
  61. package/lib/Signal/libsignal.d.ts.map +1 -0
  62. package/lib/Signal/libsignal.js +292 -112
  63. package/lib/Signal/libsignal.js.map +1 -0
  64. package/lib/Signal/lid-mapping.d.ts +23 -0
  65. package/lib/Signal/lid-mapping.d.ts.map +1 -0
  66. package/lib/Signal/lid-mapping.js +171 -0
  67. package/lib/Signal/lid-mapping.js.map +1 -0
  68. package/lib/Socket/Client/index.d.ts +3 -2
  69. package/lib/Socket/Client/index.d.ts.map +1 -0
  70. package/lib/Socket/Client/index.js +3 -22
  71. package/lib/Socket/Client/index.js.map +1 -0
  72. package/lib/Socket/Client/types.d.ts +15 -15
  73. package/lib/Socket/Client/types.d.ts.map +1 -0
  74. package/lib/Socket/Client/types.js +8 -15
  75. package/lib/Socket/Client/types.js.map +1 -0
  76. package/lib/Socket/Client/websocket.d.ts +12 -12
  77. package/lib/Socket/Client/websocket.d.ts.map +1 -0
  78. package/lib/Socket/Client/websocket.js +24 -36
  79. package/lib/Socket/Client/websocket.js.map +1 -0
  80. package/lib/Socket/business.d.ts +178 -177
  81. package/lib/Socket/business.d.ts.map +1 -0
  82. package/lib/Socket/business.js +179 -71
  83. package/lib/Socket/business.js.map +1 -0
  84. package/lib/Socket/chats.d.ts +93 -93
  85. package/lib/Socket/chats.d.ts.map +1 -0
  86. package/lib/Socket/chats.js +474 -625
  87. package/lib/Socket/chats.js.map +1 -0
  88. package/lib/Socket/communities.d.ts +83 -62
  89. package/lib/Socket/communities.d.ts.map +1 -0
  90. package/lib/Socket/communities.js +412 -414
  91. package/lib/Socket/communities.js.map +1 -0
  92. package/lib/Socket/groups.d.ts +118 -112
  93. package/lib/Socket/groups.d.ts.map +1 -0
  94. package/lib/Socket/groups.js +146 -171
  95. package/lib/Socket/groups.js.map +1 -0
  96. package/lib/Socket/index.d.ts +222 -182
  97. package/lib/Socket/index.d.ts.map +1 -0
  98. package/lib/Socket/index.js +12 -17
  99. package/lib/Socket/index.js.map +1 -0
  100. package/lib/Socket/messages-recv.d.ts +165 -169
  101. package/lib/Socket/messages-recv.d.ts.map +1 -0
  102. package/lib/Socket/messages-recv.js +1185 -1721
  103. package/lib/Socket/messages-recv.js.map +1 -0
  104. package/lib/Socket/messages-send.d.ts +161 -159
  105. package/lib/Socket/messages-send.d.ts.map +1 -0
  106. package/lib/Socket/messages-send.js +650 -991
  107. package/lib/Socket/messages-send.js.map +1 -0
  108. package/lib/Socket/mex.d.ts +1 -0
  109. package/lib/Socket/mex.d.ts.map +1 -0
  110. package/lib/Socket/mex.js +4 -9
  111. package/lib/Socket/mex.js.map +1 -0
  112. package/lib/Socket/newsletter.d.ts +139 -139
  113. package/lib/Socket/newsletter.d.ts.map +1 -0
  114. package/lib/Socket/newsletter.js +153 -258
  115. package/lib/Socket/newsletter.js.map +1 -0
  116. package/lib/Socket/socket.d.ts +42 -36
  117. package/lib/Socket/socket.d.ts.map +1 -0
  118. package/lib/Socket/socket.js +623 -507
  119. package/lib/Socket/socket.js.map +1 -0
  120. package/lib/Types/Auth.d.ts +87 -96
  121. package/lib/Types/Auth.d.ts.map +1 -0
  122. package/lib/Types/Auth.js +2 -3
  123. package/lib/Types/Auth.js.map +1 -0
  124. package/lib/Types/Bussines.d.ts +25 -0
  125. package/lib/Types/Bussines.d.ts.map +1 -0
  126. package/lib/Types/Bussines.js +2 -0
  127. package/lib/Types/Bussines.js.map +1 -0
  128. package/lib/Types/Call.d.ts +13 -13
  129. package/lib/Types/Call.d.ts.map +1 -0
  130. package/lib/Types/Call.js +2 -3
  131. package/lib/Types/Call.js.map +1 -0
  132. package/lib/Types/Chat.d.ts +79 -94
  133. package/lib/Types/Chat.d.ts.map +1 -0
  134. package/lib/Types/Chat.js +8 -9
  135. package/lib/Types/Chat.js.map +1 -0
  136. package/lib/Types/Contact.d.ts +13 -9
  137. package/lib/Types/Contact.d.ts.map +1 -0
  138. package/lib/Types/Contact.js +2 -3
  139. package/lib/Types/Contact.js.map +1 -0
  140. package/lib/Types/Events.d.ts +152 -179
  141. package/lib/Types/Events.d.ts.map +1 -0
  142. package/lib/Types/Events.js +2 -3
  143. package/lib/Types/Events.js.map +1 -0
  144. package/lib/Types/GroupMetadata.d.ts +49 -48
  145. package/lib/Types/GroupMetadata.d.ts.map +1 -0
  146. package/lib/Types/GroupMetadata.js +2 -3
  147. package/lib/Types/GroupMetadata.js.map +1 -0
  148. package/lib/Types/Label.d.ts +13 -14
  149. package/lib/Types/Label.d.ts.map +1 -0
  150. package/lib/Types/Label.js +24 -30
  151. package/lib/Types/Label.js.map +1 -0
  152. package/lib/Types/LabelAssociation.d.ts +15 -20
  153. package/lib/Types/LabelAssociation.d.ts.map +1 -0
  154. package/lib/Types/LabelAssociation.js +6 -12
  155. package/lib/Types/LabelAssociation.js.map +1 -0
  156. package/lib/Types/Message.d.ts +234 -404
  157. package/lib/Types/Message.d.ts.map +1 -0
  158. package/lib/Types/Message.js +11 -13
  159. package/lib/Types/Message.js.map +1 -0
  160. package/lib/Types/Newsletter.d.ts +130 -104
  161. package/lib/Types/Newsletter.d.ts.map +1 -0
  162. package/lib/Types/Newsletter.js +31 -40
  163. package/lib/Types/Newsletter.js.map +1 -0
  164. package/lib/Types/Product.d.ts +58 -71
  165. package/lib/Types/Product.d.ts.map +1 -0
  166. package/lib/Types/Product.js +2 -3
  167. package/lib/Types/Product.js.map +1 -0
  168. package/lib/Types/Signal.d.ts +63 -55
  169. package/lib/Types/Signal.d.ts.map +1 -0
  170. package/lib/Types/Signal.js +2 -3
  171. package/lib/Types/Signal.js.map +1 -0
  172. package/lib/Types/Socket.d.ts +78 -65
  173. package/lib/Types/Socket.d.ts.map +1 -0
  174. package/lib/Types/Socket.js +3 -3
  175. package/lib/Types/Socket.js.map +1 -0
  176. package/lib/Types/State.d.ts +17 -19
  177. package/lib/Types/State.d.ts.map +1 -0
  178. package/lib/Types/State.js +13 -14
  179. package/lib/Types/State.js.map +1 -0
  180. package/lib/Types/USync.d.ts +8 -8
  181. package/lib/Types/USync.d.ts.map +1 -0
  182. package/lib/Types/USync.js +2 -3
  183. package/lib/Types/USync.js.map +1 -0
  184. package/lib/Types/index.d.ts +47 -61
  185. package/lib/Types/index.d.ts.map +1 -0
  186. package/lib/Types/index.js +26 -48
  187. package/lib/Types/index.js.map +1 -0
  188. package/lib/Utils/auth-utils.d.ts +8 -10
  189. package/lib/Utils/auth-utils.d.ts.map +1 -0
  190. package/lib/Utils/auth-utils.js +206 -154
  191. package/lib/Utils/auth-utils.js.map +1 -0
  192. package/lib/Utils/baileys-event-stream.d.ts +6 -7
  193. package/lib/Utils/baileys-event-stream.d.ts.map +1 -0
  194. package/lib/Utils/baileys-event-stream.js +29 -43
  195. package/lib/Utils/baileys-event-stream.js.map +1 -0
  196. package/lib/Utils/browser-utils.d.ts +4 -0
  197. package/lib/Utils/browser-utils.d.ts.map +1 -0
  198. package/lib/Utils/browser-utils.js +28 -0
  199. package/lib/Utils/browser-utils.js.map +1 -0
  200. package/lib/Utils/business.d.ts +14 -20
  201. package/lib/Utils/business.d.ts.map +1 -0
  202. package/lib/Utils/business.js +110 -134
  203. package/lib/Utils/business.js.map +1 -0
  204. package/lib/Utils/chat-utils.d.ts +57 -69
  205. package/lib/Utils/chat-utils.d.ts.map +1 -0
  206. package/lib/Utils/chat-utils.js +362 -380
  207. package/lib/Utils/chat-utils.js.map +1 -0
  208. package/lib/Utils/crypto.d.ts +30 -45
  209. package/lib/Utils/crypto.d.ts.map +1 -0
  210. package/lib/Utils/crypto.js +141 -178
  211. package/lib/Utils/crypto.js.map +1 -0
  212. package/lib/Utils/decode-wa-message.d.ts +42 -35
  213. package/lib/Utils/decode-wa-message.d.ts.map +1 -0
  214. package/lib/Utils/decode-wa-message.js +176 -150
  215. package/lib/Utils/decode-wa-message.js.map +1 -0
  216. package/lib/Utils/event-buffer.d.ts +12 -17
  217. package/lib/Utils/event-buffer.d.ts.map +1 -0
  218. package/lib/Utils/event-buffer.js +269 -286
  219. package/lib/Utils/event-buffer.js.map +1 -0
  220. package/lib/Utils/generics.d.ts +60 -99
  221. package/lib/Utils/generics.d.ts.map +1 -0
  222. package/lib/Utils/generics.js +244 -487
  223. package/lib/Utils/generics.js.map +1 -0
  224. package/lib/Utils/history.d.ts +18 -22
  225. package/lib/Utils/history.d.ts.map +1 -0
  226. package/lib/Utils/history.js +54 -80
  227. package/lib/Utils/history.js.map +1 -0
  228. package/lib/Utils/index.d.ts +20 -19
  229. package/lib/Utils/index.d.ts.map +1 -0
  230. package/lib/Utils/index.js +19 -39
  231. package/lib/Utils/index.js.map +1 -0
  232. package/lib/Utils/link-preview.d.ts +12 -14
  233. package/lib/Utils/link-preview.d.ts.map +1 -0
  234. package/lib/Utils/link-preview.js +40 -75
  235. package/lib/Utils/link-preview.js.map +1 -0
  236. package/lib/Utils/logger.d.ts +10 -11
  237. package/lib/Utils/logger.d.ts.map +1 -0
  238. package/lib/Utils/logger.js +3 -7
  239. package/lib/Utils/logger.js.map +1 -0
  240. package/lib/Utils/lt-hash.d.ts +12 -13
  241. package/lib/Utils/lt-hash.d.ts.map +1 -0
  242. package/lib/Utils/lt-hash.js +27 -37
  243. package/lib/Utils/lt-hash.js.map +1 -0
  244. package/lib/Utils/make-mutex.d.ts +6 -7
  245. package/lib/Utils/make-mutex.d.ts.map +1 -0
  246. package/lib/Utils/make-mutex.js +20 -29
  247. package/lib/Utils/make-mutex.js.map +1 -0
  248. package/lib/Utils/message-retry-manager.d.ts +82 -0
  249. package/lib/Utils/message-retry-manager.d.ts.map +1 -0
  250. package/lib/Utils/message-retry-manager.js +149 -0
  251. package/lib/Utils/message-retry-manager.js.map +1 -0
  252. package/lib/Utils/messages-media.d.ts +87 -102
  253. package/lib/Utils/messages-media.d.ts.map +1 -0
  254. package/lib/Utils/messages-media.js +427 -570
  255. package/lib/Utils/messages-media.js.map +1 -0
  256. package/lib/Utils/messages.d.ts +37 -64
  257. package/lib/Utils/messages.d.ts.map +1 -0
  258. package/lib/Utils/messages.js +511 -1270
  259. package/lib/Utils/messages.js.map +1 -0
  260. package/lib/Utils/noise-handler.d.ts +18 -18
  261. package/lib/Utils/noise-handler.d.ts.map +1 -0
  262. package/lib/Utils/noise-handler.js +101 -109
  263. package/lib/Utils/noise-handler.js.map +1 -0
  264. package/lib/Utils/pre-key-manager.d.ts +28 -0
  265. package/lib/Utils/pre-key-manager.d.ts.map +1 -0
  266. package/lib/Utils/pre-key-manager.js +106 -0
  267. package/lib/Utils/pre-key-manager.js.map +1 -0
  268. package/lib/Utils/process-message.d.ts +25 -32
  269. package/lib/Utils/process-message.d.ts.map +1 -0
  270. package/lib/Utils/process-message.js +266 -281
  271. package/lib/Utils/process-message.js.map +1 -0
  272. package/lib/Utils/signal.d.ts +24 -32
  273. package/lib/Utils/signal.d.ts.map +1 -0
  274. package/lib/Utils/signal.js +98 -105
  275. package/lib/Utils/signal.js.map +1 -0
  276. package/lib/Utils/use-multi-file-auth-state.d.ts +5 -10
  277. package/lib/Utils/use-multi-file-auth-state.d.ts.map +1 -0
  278. package/lib/Utils/use-multi-file-auth-state.js +69 -186
  279. package/lib/Utils/use-multi-file-auth-state.js.map +1 -0
  280. package/lib/Utils/validate-connection.d.ts +11 -13
  281. package/lib/Utils/validate-connection.d.ts.map +1 -0
  282. package/lib/Utils/validate-connection.js +124 -116
  283. package/lib/Utils/validate-connection.js.map +1 -0
  284. package/lib/WABinary/constants.d.ts +25 -27
  285. package/lib/WABinary/constants.d.ts.map +1 -0
  286. package/lib/WABinary/constants.js +1277 -1292
  287. package/lib/WABinary/constants.js.map +1 -0
  288. package/lib/WABinary/decode.d.ts +7 -9
  289. package/lib/WABinary/decode.d.ts.map +1 -0
  290. package/lib/WABinary/decode.js +139 -189
  291. package/lib/WABinary/decode.js.map +1 -0
  292. package/lib/WABinary/encode.d.ts +3 -3
  293. package/lib/WABinary/encode.d.ts.map +1 -0
  294. package/lib/WABinary/encode.js +105 -154
  295. package/lib/WABinary/encode.js.map +1 -0
  296. package/lib/WABinary/generic-utils.d.ts +14 -27
  297. package/lib/WABinary/generic-utils.d.ts.map +1 -0
  298. package/lib/WABinary/generic-utils.js +62 -102
  299. package/lib/WABinary/generic-utils.js.map +1 -0
  300. package/lib/WABinary/index.d.ts +6 -5
  301. package/lib/WABinary/index.d.ts.map +1 -0
  302. package/lib/WABinary/index.js +6 -25
  303. package/lib/WABinary/index.js.map +1 -0
  304. package/lib/WABinary/jid-utils.d.ts +41 -46
  305. package/lib/WABinary/jid-utils.d.ts.map +1 -0
  306. package/lib/WABinary/jid-utils.js +84 -80
  307. package/lib/WABinary/jid-utils.js.map +1 -0
  308. package/lib/WABinary/types.d.ts +10 -13
  309. package/lib/WABinary/types.d.ts.map +1 -0
  310. package/lib/WABinary/types.js +2 -3
  311. package/lib/WABinary/types.js.map +1 -0
  312. package/lib/WAM/BinaryInfo.d.ts +8 -15
  313. package/lib/WAM/BinaryInfo.d.ts.map +1 -0
  314. package/lib/WAM/BinaryInfo.js +7 -14
  315. package/lib/WAM/BinaryInfo.js.map +1 -0
  316. package/lib/WAM/constants.d.ts +30 -37
  317. package/lib/WAM/constants.d.ts.map +1 -0
  318. package/lib/WAM/constants.js +19193 -11711
  319. package/lib/WAM/constants.js.map +1 -0
  320. package/lib/WAM/encode.d.ts +3 -3
  321. package/lib/WAM/encode.d.ts.map +1 -0
  322. package/lib/WAM/encode.js +95 -110
  323. package/lib/WAM/encode.js.map +1 -0
  324. package/lib/WAM/index.d.ts +4 -3
  325. package/lib/WAM/index.d.ts.map +1 -0
  326. package/lib/WAM/index.js +4 -23
  327. package/lib/WAM/index.js.map +1 -0
  328. package/lib/WAUSync/Protocols/USyncContactProtocol.d.ts +9 -9
  329. package/lib/WAUSync/Protocols/USyncContactProtocol.d.ts.map +1 -0
  330. package/lib/WAUSync/Protocols/USyncContactProtocol.js +12 -19
  331. package/lib/WAUSync/Protocols/USyncContactProtocol.js.map +1 -0
  332. package/lib/WAUSync/Protocols/USyncDeviceProtocol.d.ts +19 -22
  333. package/lib/WAUSync/Protocols/USyncDeviceProtocol.d.ts.map +1 -0
  334. package/lib/WAUSync/Protocols/USyncDeviceProtocol.js +18 -26
  335. package/lib/WAUSync/Protocols/USyncDeviceProtocol.js.map +1 -0
  336. package/lib/WAUSync/Protocols/USyncDisappearingModeProtocol.d.ts +11 -12
  337. package/lib/WAUSync/Protocols/USyncDisappearingModeProtocol.d.ts.map +1 -0
  338. package/lib/WAUSync/Protocols/USyncDisappearingModeProtocol.js +12 -20
  339. package/lib/WAUSync/Protocols/USyncDisappearingModeProtocol.js.map +1 -0
  340. package/lib/WAUSync/Protocols/USyncStatusProtocol.d.ts +11 -12
  341. package/lib/WAUSync/Protocols/USyncStatusProtocol.d.ts.map +1 -0
  342. package/lib/WAUSync/Protocols/USyncStatusProtocol.js +16 -24
  343. package/lib/WAUSync/Protocols/USyncStatusProtocol.js.map +1 -0
  344. package/lib/WAUSync/Protocols/UsyncBotProfileProtocol.d.ts +26 -0
  345. package/lib/WAUSync/Protocols/UsyncBotProfileProtocol.d.ts.map +1 -0
  346. package/lib/WAUSync/Protocols/UsyncBotProfileProtocol.js +51 -0
  347. package/lib/WAUSync/Protocols/UsyncBotProfileProtocol.js.map +1 -0
  348. package/lib/WAUSync/Protocols/UsyncLIDProtocol.d.ts +10 -0
  349. package/lib/WAUSync/Protocols/UsyncLIDProtocol.d.ts.map +1 -0
  350. package/lib/WAUSync/Protocols/UsyncLIDProtocol.js +29 -0
  351. package/lib/WAUSync/Protocols/UsyncLIDProtocol.js.map +1 -0
  352. package/lib/WAUSync/Protocols/index.d.ts +5 -6
  353. package/lib/WAUSync/Protocols/index.d.ts.map +1 -0
  354. package/lib/WAUSync/Protocols/index.js +5 -26
  355. package/lib/WAUSync/Protocols/index.js.map +1 -0
  356. package/lib/WAUSync/USyncQuery.d.ts +26 -28
  357. package/lib/WAUSync/USyncQuery.d.ts.map +1 -0
  358. package/lib/WAUSync/USyncQuery.js +64 -62
  359. package/lib/WAUSync/USyncQuery.js.map +1 -0
  360. package/lib/WAUSync/USyncUser.d.ts +11 -10
  361. package/lib/WAUSync/USyncUser.d.ts.map +1 -0
  362. package/lib/WAUSync/USyncUser.js +12 -19
  363. package/lib/WAUSync/USyncUser.js.map +1 -0
  364. package/lib/WAUSync/index.d.ts +4 -3
  365. package/lib/WAUSync/index.d.ts.map +1 -0
  366. package/lib/WAUSync/index.js +4 -23
  367. package/lib/WAUSync/index.js.map +1 -0
  368. package/lib/index.d.ts +10 -11
  369. package/lib/index.d.ts.map +1 -0
  370. package/lib/index.js +11 -33
  371. package/lib/index.js.map +1 -0
  372. package/package.json +48 -43
  373. package/lib/Defaults/baileys-version.json +0 -3
  374. package/lib/Defaults/phonenumber-mcc.json +0 -223
  375. package/lib/Signal/WASignalGroup/GroupProtocol.js +0 -1909
  376. package/lib/Signal/WASignalGroup/ciphertext_message.js +0 -16
  377. package/lib/Signal/WASignalGroup/generate-proto.sh +0 -1
  378. package/lib/Signal/WASignalGroup/group.proto +0 -42
  379. package/lib/Signal/WASignalGroup/group_cipher.js +0 -120
  380. package/lib/Signal/WASignalGroup/group_session_builder.js +0 -46
  381. package/lib/Signal/WASignalGroup/index.js +0 -6
  382. package/lib/Signal/WASignalGroup/keyhelper.js +0 -21
  383. package/lib/Signal/WASignalGroup/protobufs.js +0 -3
  384. package/lib/Signal/WASignalGroup/queue_job.js +0 -69
  385. package/lib/Signal/WASignalGroup/readme.md +0 -6
  386. package/lib/Signal/WASignalGroup/sender_chain_key.js +0 -50
  387. package/lib/Signal/WASignalGroup/sender_key_distribution_message.js +0 -78
  388. package/lib/Signal/WASignalGroup/sender_key_message.js +0 -92
  389. package/lib/Signal/WASignalGroup/sender_key_name.js +0 -70
  390. package/lib/Signal/WASignalGroup/sender_key_record.js +0 -56
  391. package/lib/Signal/WASignalGroup/sender_key_state.js +0 -129
  392. package/lib/Socket/Client/abstract-socket-client.d.ts +0 -15
  393. package/lib/Socket/Client/abstract-socket-client.js +0 -13
  394. package/lib/Socket/Client/mobile-socket-client.d.ts +0 -12
  395. package/lib/Socket/Client/mobile-socket-client.js +0 -65
  396. package/lib/Socket/registration.d.ts +0 -266
  397. package/lib/Socket/registration.js +0 -166
  398. package/lib/Socket/usync.d.ts +0 -37
  399. package/lib/Socket/usync.js +0 -83
  400. package/lib/Store/index.d.ts +0 -4
  401. package/lib/Store/index.js +0 -24
  402. package/lib/Store/make-cache-manager-store.d.ts +0 -14
  403. package/lib/Store/make-cache-manager-store.js +0 -90
  404. package/lib/Store/make-in-memory-store.d.ts +0 -123
  405. package/lib/Store/make-in-memory-store.js +0 -429
  406. package/lib/Store/make-ordered-dictionary.d.ts +0 -12
  407. package/lib/Store/make-ordered-dictionary.js +0 -86
  408. package/lib/Store/object-repository.d.ts +0 -10
  409. package/lib/Store/object-repository.js +0 -31
  410. package/lib/Types/MexUpdates.d.ts +0 -9
  411. package/lib/Types/MexUpdates.js +0 -18
  412. package/lib/Utils/use-mongo-file-auth-state.d.ts +0 -6
  413. package/lib/Utils/use-mongo-file-auth-state.js +0 -84
  414. package/lib/Utils/use-single-file-auth-state.d.ts +0 -13
  415. package/lib/Utils/use-single-file-auth-state.js +0 -80
  416. package/lib/WAUSync/Protocols/USyncBotProfileProtocol.d.ts +0 -28
  417. package/lib/WAUSync/Protocols/USyncBotProfileProtocol.js +0 -69
  418. package/lib/WAUSync/Protocols/USyncLIDProtocol.d.ts +0 -9
  419. package/lib/WAUSync/Protocols/USyncLIDProtocol.js +0 -30
@@ -1,38 +1,31 @@
1
- "use strict"
2
- Object.defineProperty(exports, "__esModule", { value: true })
3
-
4
- const WAProto_1 = require("../../WAProto")
5
- const Types_1 = require("../Types")
6
- const Utils_1 = require("../Utils")
7
- const WABinary_1 = require("../WABinary")
8
- const chats_1 = require("./chats")
9
-
10
- const makeGroupsSocket = (config) => {
11
- const Neele = chats_1.makeChatsSocket(config)
12
- const { authState, ev, query, upsertMessage } = Neele
13
-
14
- const groupQuery = async (jid, type, content) => (query({
1
+ import { proto } from '../../WAProto/index.js';
2
+ import { WAMessageAddressingMode, WAMessageStubType } from '../Types/index.js';
3
+ import { generateMessageIDV2, unixTimestampSeconds } from '../Utils/index.js';
4
+ import { getBinaryNodeChild, getBinaryNodeChildren, getBinaryNodeChildString, isLidUser, isPnUser, jidEncode, jidNormalizedUser } from '../WABinary/index.js';
5
+ import { makeChatsSocket } from './chats.js';
6
+ export const makeGroupsSocket = (config) => {
7
+ const sock = makeChatsSocket(config);
8
+ const { authState, ev, query, upsertMessage } = sock;
9
+ const groupQuery = async (jid, type, content) => query({
15
10
  tag: 'iq',
16
11
  attrs: {
17
12
  type,
18
13
  xmlns: 'w:g2',
19
- to: jid,
14
+ to: jid
20
15
  },
21
16
  content
22
- }))
23
-
17
+ });
24
18
  const groupMetadata = async (jid) => {
25
- const result = await groupQuery(jid, 'get', [{ tag: 'query', attrs: { request: 'interactive' } }])
26
- return extractGroupMetadata(result)
27
- }
28
-
19
+ const result = await groupQuery(jid, 'get', [{ tag: 'query', attrs: { request: 'interactive' } }]);
20
+ return extractGroupMetadata(result);
21
+ };
29
22
  const groupFetchAllParticipating = async () => {
30
23
  const result = await query({
31
24
  tag: 'iq',
32
25
  attrs: {
33
26
  to: '@g.us',
34
27
  xmlns: 'w:g2',
35
- type: 'get',
28
+ type: 'get'
36
29
  },
37
30
  content: [
38
31
  {
@@ -44,44 +37,37 @@ const makeGroupsSocket = (config) => {
44
37
  ]
45
38
  }
46
39
  ]
47
- })
48
-
49
- const data = {}
50
- const groupsChild = WABinary_1.getBinaryNodeChild(result, 'groups')
51
-
40
+ });
41
+ const data = {};
42
+ const groupsChild = getBinaryNodeChild(result, 'groups');
52
43
  if (groupsChild) {
53
- const groups = WABinary_1.getBinaryNodeChildren(groupsChild, 'group')
44
+ const groups = getBinaryNodeChildren(groupsChild, 'group');
54
45
  for (const groupNode of groups) {
55
46
  const meta = extractGroupMetadata({
56
47
  tag: 'result',
57
48
  attrs: {},
58
49
  content: [groupNode]
59
- })
60
- data[meta.id] = meta
50
+ });
51
+ data[meta.id] = meta;
61
52
  }
62
53
  }
63
-
64
- Neele.ev.emit('groups.update', Object.values(data))
65
- return data
66
- }
67
-
68
- Neele.ws.on('CB:ib,,dirty', async (node) => {
69
- const { attrs } = WABinary_1.getBinaryNodeChild(node, 'dirty')
54
+ // TODO: properly parse LID / PN DATA
55
+ sock.ev.emit('groups.update', Object.values(data));
56
+ return data;
57
+ };
58
+ sock.ws.on('CB:ib,,dirty', async (node) => {
59
+ const { attrs } = getBinaryNodeChild(node, 'dirty');
70
60
  if (attrs.type !== 'groups') {
71
- return
61
+ return;
72
62
  }
73
-
74
- await groupFetchAllParticipating()
75
- await Neele.cleanDirtyBits('groups')
76
- })
77
-
63
+ await groupFetchAllParticipating();
64
+ await sock.cleanDirtyBits('groups');
65
+ });
78
66
  return {
79
- ...Neele,
80
- groupQuery,
67
+ ...sock,
81
68
  groupMetadata,
82
69
  groupCreate: async (subject, participants) => {
83
- const key = Utils_1.generateMessageID()
84
-
70
+ const key = generateMessageIDV2();
85
71
  const result = await groupQuery('@g.us', 'set', [
86
72
  {
87
73
  tag: 'create',
@@ -94,20 +80,17 @@ const makeGroupsSocket = (config) => {
94
80
  attrs: { jid }
95
81
  }))
96
82
  }
97
- ])
98
-
99
- return extractGroupMetadata(result)
83
+ ]);
84
+ return extractGroupMetadata(result);
100
85
  },
101
86
  groupLeave: async (id) => {
102
87
  await groupQuery('@g.us', 'set', [
103
88
  {
104
89
  tag: 'leave',
105
90
  attrs: {},
106
- content: [
107
- { tag: 'group', attrs: { id } }
108
- ]
91
+ content: [{ tag: 'group', attrs: { id } }]
109
92
  }
110
- ])
93
+ ]);
111
94
  },
112
95
  groupUpdateSubject: async (jid, subject) => {
113
96
  await groupQuery(jid, 'set', [
@@ -116,7 +99,7 @@ const makeGroupsSocket = (config) => {
116
99
  attrs: {},
117
100
  content: Buffer.from(subject, 'utf-8')
118
101
  }
119
- ])
102
+ ]);
120
103
  },
121
104
  groupRequestParticipantsList: async (jid) => {
122
105
  const result = await groupQuery(jid, 'get', [
@@ -124,15 +107,14 @@ const makeGroupsSocket = (config) => {
124
107
  tag: 'membership_approval_requests',
125
108
  attrs: {}
126
109
  }
127
- ])
128
-
129
- const node = WABinary_1.getBinaryNodeChild(result, 'membership_approval_requests')
130
- const participants = WABinary_1.getBinaryNodeChildren(node, 'membership_approval_request')
131
-
132
- return participants.map(v => v.attrs)
110
+ ]);
111
+ const node = getBinaryNodeChild(result, 'membership_approval_requests');
112
+ const participants = getBinaryNodeChildren(node, 'membership_approval_request');
113
+ return participants.map(v => v.attrs);
133
114
  },
134
115
  groupRequestParticipantsUpdate: async (jid, participants, action) => {
135
- const result = await groupQuery(jid, 'set', [{
116
+ const result = await groupQuery(jid, 'set', [
117
+ {
136
118
  tag: 'membership_requests_action',
137
119
  attrs: {},
138
120
  content: [
@@ -145,15 +127,14 @@ const makeGroupsSocket = (config) => {
145
127
  }))
146
128
  }
147
129
  ]
148
- }])
149
-
150
- const node = WABinary_1.getBinaryNodeChild(result, 'membership_requests_action')
151
- const nodeAction = WABinary_1.getBinaryNodeChild(node, action)
152
- const participantsAffected = WABinary_1.getBinaryNodeChildren(nodeAction, 'participant')
153
-
130
+ }
131
+ ]);
132
+ const node = getBinaryNodeChild(result, 'membership_requests_action');
133
+ const nodeAction = getBinaryNodeChild(node, action);
134
+ const participantsAffected = getBinaryNodeChildren(nodeAction, 'participant');
154
135
  return participantsAffected.map(p => {
155
- return { status: p.attrs.error || '200', jid: p.attrs.jid }
156
- })
136
+ return { status: p.attrs.error || '200', jid: p.attrs.jid };
137
+ });
157
138
  },
158
139
  groupParticipantsUpdate: async (jid, participants, action) => {
159
140
  const result = await groupQuery(jid, 'set', [
@@ -165,48 +146,41 @@ const makeGroupsSocket = (config) => {
165
146
  attrs: { jid }
166
147
  }))
167
148
  }
168
- ])
169
- const node = WABinary_1.getBinaryNodeChild(result, action)
170
- const participantsAffected = WABinary_1.getBinaryNodeChildren(node, 'participant')
171
-
149
+ ]);
150
+ const node = getBinaryNodeChild(result, action);
151
+ const participantsAffected = getBinaryNodeChildren(node, 'participant');
172
152
  return participantsAffected.map(p => {
173
- return { status: p.attrs.error || '200', jid: p.attrs.jid, content: p }
174
- })
153
+ return { status: p.attrs.error || '200', jid: p.attrs.jid, content: p };
154
+ });
175
155
  },
176
156
  groupUpdateDescription: async (jid, description) => {
177
- const metadata = await groupMetadata(jid)
178
- const prev = metadata.descId ? metadata.descId : null
179
-
157
+ const metadata = await groupMetadata(jid);
158
+ const prev = metadata.descId ?? null;
180
159
  await groupQuery(jid, 'set', [
181
160
  {
182
161
  tag: 'description',
183
162
  attrs: {
184
- ...(description ? { id: Utils_1.generateMessageID() } : { delete: 'true' }),
163
+ ...(description ? { id: generateMessageIDV2() } : { delete: 'true' }),
185
164
  ...(prev ? { prev } : {})
186
165
  },
187
- content: description ? [
188
- { tag: 'body', attrs: {}, content: Buffer.from(description, 'utf-8') }
189
- ] : undefined
166
+ content: description ? [{ tag: 'body', attrs: {}, content: Buffer.from(description, 'utf-8') }] : undefined
190
167
  }
191
- ])
168
+ ]);
192
169
  },
193
170
  groupInviteCode: async (jid) => {
194
- const result = await groupQuery(jid, 'get', [{ tag: 'invite', attrs: {} }])
195
- const inviteNode = WABinary_1.getBinaryNodeChild(result, 'invite')
196
-
197
- return inviteNode?.attrs?.code
171
+ const result = await groupQuery(jid, 'get', [{ tag: 'invite', attrs: {} }]);
172
+ const inviteNode = getBinaryNodeChild(result, 'invite');
173
+ return inviteNode?.attrs.code;
198
174
  },
199
175
  groupRevokeInvite: async (jid) => {
200
- const result = await groupQuery(jid, 'set', [{ tag: 'invite', attrs: {} }])
201
- const inviteNode = WABinary_1.getBinaryNodeChild(result, 'invite')
202
-
203
- return inviteNode?.attrs?.code
176
+ const result = await groupQuery(jid, 'set', [{ tag: 'invite', attrs: {} }]);
177
+ const inviteNode = getBinaryNodeChild(result, 'invite');
178
+ return inviteNode?.attrs.code;
204
179
  },
205
180
  groupAcceptInvite: async (code) => {
206
- const results = await groupQuery('@g.us', 'set', [{ tag: 'invite', attrs: { code } }])
207
- const result = WABinary_1.getBinaryNodeChild(results, 'group')
208
-
209
- return result?.attrs?.jid
181
+ const results = await groupQuery('@g.us', 'set', [{ tag: 'invite', attrs: { code } }]);
182
+ const result = getBinaryNodeChild(results, 'group');
183
+ return result?.attrs.jid;
210
184
  },
211
185
  /**
212
186
  * revoke a v4 invite for someone
@@ -215,9 +189,10 @@ const makeGroupsSocket = (config) => {
215
189
  * @returns true if successful
216
190
  */
217
191
  groupRevokeInviteV4: async (groupJid, invitedJid) => {
218
- const result = await groupQuery(groupJid, 'set', [{ tag: 'revoke', attrs: {}, content: [{ tag: 'participant', attrs: { jid: invitedJid } }] }])
219
-
220
- return !!result
192
+ const result = await groupQuery(groupJid, 'set', [
193
+ { tag: 'revoke', attrs: {}, content: [{ tag: 'participant', attrs: { jid: invitedJid } }] }
194
+ ]);
195
+ return !!result;
221
196
  },
222
197
  /**
223
198
  * accept a GroupInviteMessage
@@ -225,23 +200,24 @@ const makeGroupsSocket = (config) => {
225
200
  * @param inviteMessage the message to accept
226
201
  */
227
202
  groupAcceptInviteV4: ev.createBufferedFunction(async (key, inviteMessage) => {
228
- key = typeof key === 'string' ? { remoteJid: key } : key
229
- const results = await groupQuery(inviteMessage.groupJid, 'set', [{
203
+ key = typeof key === 'string' ? { remoteJid: key } : key;
204
+ const results = await groupQuery(inviteMessage.groupJid, 'set', [
205
+ {
230
206
  tag: 'accept',
231
207
  attrs: {
232
208
  code: inviteMessage.inviteCode,
233
209
  expiration: inviteMessage.inviteExpiration.toString(),
234
210
  admin: key.remoteJid
235
211
  }
236
- }])
237
-
212
+ }
213
+ ]);
238
214
  // if we have the full message key
239
215
  // update the invite message to be expired
240
216
  if (key.id) {
241
217
  // create new invite message that is expired
242
- inviteMessage = WAProto_1.proto.Message.GroupInviteMessage.fromObject(inviteMessage)
243
- inviteMessage.inviteExpiration = 0
244
- inviteMessage.inviteCode = ''
218
+ inviteMessage = proto.Message.GroupInviteMessage.fromObject(inviteMessage);
219
+ inviteMessage.inviteExpiration = 0;
220
+ inviteMessage.inviteCode = '';
245
221
  ev.emit('messages.update', [
246
222
  {
247
223
  key,
@@ -251,102 +227,101 @@ const makeGroupsSocket = (config) => {
251
227
  }
252
228
  }
253
229
  }
254
- ])
230
+ ]);
255
231
  }
256
-
257
232
  // generate the group add message
258
233
  await upsertMessage({
259
234
  key: {
260
235
  remoteJid: inviteMessage.groupJid,
261
- id: Utils_1.generateMessageID(authState.creds.me?.id),
236
+ id: generateMessageIDV2(sock.user?.id),
262
237
  fromMe: false,
263
- participant: key.remoteJid,
238
+ participant: key.remoteJid
264
239
  },
265
- messageStubType: Types_1.WAMessageStubType.GROUP_PARTICIPANT_ADD,
266
- messageStubParameters: [
267
- authState.creds.me.id
268
- ],
240
+ messageStubType: WAMessageStubType.GROUP_PARTICIPANT_ADD,
241
+ messageStubParameters: [JSON.stringify(authState.creds.me)],
269
242
  participant: key.remoteJid,
270
- messageTimestamp: Utils_1.unixTimestampSeconds()
271
- }, 'notify')
272
-
273
- return results.attrs.from
243
+ messageTimestamp: unixTimestampSeconds()
244
+ }, 'notify');
245
+ return results.attrs.from;
274
246
  }),
275
247
  groupGetInviteInfo: async (code) => {
276
- const results = await groupQuery('@g.us', 'get', [{ tag: 'invite', attrs: { code } }])
277
-
278
- return extractGroupMetadata(results)
248
+ const results = await groupQuery('@g.us', 'get', [{ tag: 'invite', attrs: { code } }]);
249
+ return extractGroupMetadata(results);
279
250
  },
280
251
  groupToggleEphemeral: async (jid, ephemeralExpiration) => {
281
- const content = ephemeralExpiration ?
282
- { tag: 'ephemeral', attrs: { expiration: ephemeralExpiration.toString() } } :
283
- { tag: 'not_ephemeral', attrs: {} }
284
- await groupQuery(jid, 'set', [content])
252
+ const content = ephemeralExpiration
253
+ ? { tag: 'ephemeral', attrs: { expiration: ephemeralExpiration.toString() } }
254
+ : { tag: 'not_ephemeral', attrs: {} };
255
+ await groupQuery(jid, 'set', [content]);
285
256
  },
286
257
  groupSettingUpdate: async (jid, setting) => {
287
- await groupQuery(jid, 'set', [{ tag: setting, attrs: {} }])
258
+ await groupQuery(jid, 'set', [{ tag: setting, attrs: {} }]);
288
259
  },
289
260
  groupMemberAddMode: async (jid, mode) => {
290
- await groupQuery(jid, 'set', [{ tag: 'member_add_mode', attrs: {}, content: mode }])
261
+ await groupQuery(jid, 'set', [{ tag: 'member_add_mode', attrs: {}, content: mode }]);
291
262
  },
292
263
  groupJoinApprovalMode: async (jid, mode) => {
293
- await groupQuery(jid, 'set', [{ tag: 'membership_approval_mode', attrs: {}, content: [{ tag: 'group_join', attrs: { state: mode } }] }])
264
+ await groupQuery(jid, 'set', [
265
+ { tag: 'membership_approval_mode', attrs: {}, content: [{ tag: 'group_join', attrs: { state: mode } }] }
266
+ ]);
294
267
  },
295
268
  groupFetchAllParticipating
296
- }
297
- }
298
-
299
- const extractGroupMetadata = (result) => {
300
- const group = WABinary_1.getBinaryNodeChild(result, 'group')
301
- const descChild = WABinary_1.getBinaryNodeChild(group, 'description')
302
-
303
- let desc
304
- let descId
305
-
269
+ };
270
+ };
271
+ export const extractGroupMetadata = (result) => {
272
+ const group = getBinaryNodeChild(result, 'group');
273
+ const descChild = getBinaryNodeChild(group, 'description');
274
+ let desc;
275
+ let descId;
276
+ let descOwner;
277
+ let descOwnerPn;
278
+ let descTime;
306
279
  if (descChild) {
307
- desc = WABinary_1.getBinaryNodeChildString(descChild, 'body')
308
- descId = descChild.attrs.id
280
+ desc = getBinaryNodeChildString(descChild, 'body');
281
+ descOwner = descChild.attrs.participant ? jidNormalizedUser(descChild.attrs.participant) : undefined;
282
+ descOwnerPn = descChild.attrs.participant_pn ? jidNormalizedUser(descChild.attrs.participant_pn) : undefined;
283
+ descTime = +descChild.attrs.t;
284
+ descId = descChild.attrs.id;
309
285
  }
310
-
311
- const mode = group.attrs.addressing_mode
312
- const groupId = group.attrs.id.includes('@') ? group.attrs.id : WABinary_1.jidEncode(group.attrs.id, 'g.us')
313
- const eph = WABinary_1.getBinaryNodeChild(group, 'ephemeral')?.attrs.expiration
314
- const memberAddMode = WABinary_1.getBinaryNodeChildString(group, 'member_add_mode') === 'all_member_add'
315
-
286
+ const groupId = group.attrs.id.includes('@') ? group.attrs.id : jidEncode(group.attrs.id, 'g.us');
287
+ const eph = getBinaryNodeChild(group, 'ephemeral')?.attrs.expiration;
288
+ const memberAddMode = getBinaryNodeChildString(group, 'member_add_mode') === 'all_member_add';
316
289
  const metadata = {
317
290
  id: groupId,
318
- addressingMode: mode,
291
+ notify: group.attrs.notify,
292
+ addressingMode: group.attrs.addressing_mode === 'lid' ? WAMessageAddressingMode.LID : WAMessageAddressingMode.PN,
319
293
  subject: group.attrs.subject,
320
- subjectOwner: mode === 'lid' ? group.attrs.s_o_pn : group.attrs.s_o,
294
+ subjectOwner: group.attrs.s_o,
295
+ subjectOwnerPn: group.attrs.s_o_pn,
321
296
  subjectTime: +group.attrs.s_t,
322
- size: group.attrs?.size ? +group.attrs.size : WABinary_1.getBinaryNodeChildren(group, 'participant').length,
297
+ size: group.attrs.size ? +group.attrs.size : getBinaryNodeChildren(group, 'participant').length,
323
298
  creation: +group.attrs.creation,
324
- owner: group.attrs.creator ? WABinary_1.jidNormalizedUser(mode === 'lid' ? group.attrs.creator_pn : group.attrs.creator) : undefined,
325
- ownerCountry: group.attrs.creator_country_code,
299
+ owner: group.attrs.creator ? jidNormalizedUser(group.attrs.creator) : undefined,
300
+ ownerPn: group.attrs.creator_pn ? jidNormalizedUser(group.attrs.creator_pn) : undefined,
301
+ owner_country_code: group.attrs.creator_country_code,
326
302
  desc,
327
303
  descId,
328
- linkedParent: WABinary_1.getBinaryNodeChild(group, 'linked_parent')?.attrs.jid || undefined,
329
- restrict: !!WABinary_1.getBinaryNodeChild(group, 'locked'),
330
- announce: !!WABinary_1.getBinaryNodeChild(group, 'announcement'),
331
- isCommunity: !!WABinary_1.getBinaryNodeChild(group, 'parent'),
332
- isCommunityAnnounce: !!WABinary_1.getBinaryNodeChild(group, 'default_sub_group'),
333
- joinApprovalMode: !!WABinary_1.getBinaryNodeChild(group, 'membership_approval_mode'),
304
+ descOwner,
305
+ descOwnerPn,
306
+ descTime,
307
+ linkedParent: getBinaryNodeChild(group, 'linked_parent')?.attrs.jid || undefined,
308
+ restrict: !!getBinaryNodeChild(group, 'locked'),
309
+ announce: !!getBinaryNodeChild(group, 'announcement'),
310
+ isCommunity: !!getBinaryNodeChild(group, 'parent'),
311
+ isCommunityAnnounce: !!getBinaryNodeChild(group, 'default_sub_group'),
312
+ joinApprovalMode: !!getBinaryNodeChild(group, 'membership_approval_mode'),
334
313
  memberAddMode,
335
- participants: WABinary_1.getBinaryNodeChildren(group, 'participant').map(({ attrs }) => {
314
+ participants: getBinaryNodeChildren(group, 'participant').map(({ attrs }) => {
315
+ // TODO: Store LID MAPPINGS
336
316
  return {
337
- id: (0, WABinary_1.isJidUser)(attrs.jid) ? attrs.jid : (0, WABinary_1.jidNormalizedUser)(attrs.phone_number),
338
- jid: (0, WABinary_1.isJidUser)(attrs.jid) ? attrs.jid : (0, WABinary_1.jidNormalizedUser)(attrs.phone_number),
339
- lid: (0, WABinary_1.isLidUser)(attrs.jid) ? attrs.jid : attrs.lid,
317
+ id: attrs.jid,
318
+ phoneNumber: isLidUser(attrs.jid) && isPnUser(attrs.phone_number) ? attrs.phone_number : undefined,
319
+ lid: isPnUser(attrs.jid) && isLidUser(attrs.lid) ? attrs.lid : undefined,
340
320
  admin: (attrs.type || null)
341
321
  };
342
322
  }),
343
- ephemeralDuration: eph ? +eph : undefined,
344
- }
345
-
346
- return metadata
347
- }
348
-
349
- module.exports = {
350
- makeGroupsSocket,
351
- extractGroupMetadata
352
- }
323
+ ephemeralDuration: eph ? +eph : undefined
324
+ };
325
+ return metadata;
326
+ };
327
+ //# sourceMappingURL=groups.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"groups.js","sourceRoot":"","sources":["../../src/Socket/groups.ts"],"names":[],"mappings":"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"}