@neelegirl/baileys 1.5.6 → 1.5.8

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