@badzz88/baileys 8.4.7 → 8.4.9

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 (240) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +1055 -337
  3. package/WAProto/WAProto.proto +347 -6
  4. package/WAProto/fix-import.js +38 -0
  5. package/WAProto/fix-imports.js +86 -85
  6. package/WAProto/index.d.ts +4913 -25
  7. package/WAProto/index.js +14074 -98
  8. package/package.json +50 -90
  9. package/src/Defaults/index.js +201 -0
  10. package/src/Defaults/phonenumber-mcc.json +223 -0
  11. package/src/Signal/Group/ciphertext-message.js +15 -0
  12. package/src/Signal/Group/group-session-builder.js +92 -0
  13. package/src/Signal/Group/group_cipher.js +89 -0
  14. package/src/Signal/Group/index.js +136 -0
  15. package/src/Signal/Group/keyhelper.js +73 -0
  16. package/src/Signal/Group/sender-chain-key.js +32 -0
  17. package/src/Signal/Group/sender-key-distribution-message.js +66 -0
  18. package/src/Signal/Group/sender-key-message.js +69 -0
  19. package/src/Signal/Group/sender-key-name.js +50 -0
  20. package/src/Signal/Group/sender-key-record.js +44 -0
  21. package/src/Signal/Group/sender-key-state.js +97 -0
  22. package/src/Signal/Group/sender-message-key.js +30 -0
  23. package/src/Signal/libsignal.js +470 -0
  24. package/src/Signal/lid-mapping.js +262 -0
  25. package/src/Socket/Client/index.js +30 -0
  26. package/src/Socket/Client/types.js +13 -0
  27. package/src/Socket/Client/websocket.js +62 -0
  28. package/src/Socket/aigroups.js +240 -0
  29. package/src/Socket/business.js +422 -0
  30. package/src/Socket/chats.js +2374 -0
  31. package/src/Socket/communities.js +580 -0
  32. package/src/Socket/graphql.js +915 -0
  33. package/src/Socket/groups.js +812 -0
  34. package/src/Socket/index.js +37 -0
  35. package/src/Socket/interactive-handler.js +579 -0
  36. package/src/Socket/interop.js +566 -0
  37. package/src/Socket/managed-account.js +214 -0
  38. package/src/Socket/messages-recv.js +3012 -0
  39. package/src/Socket/messages-send.js +2163 -0
  40. package/{lib → src}/Socket/mex.js +11 -5
  41. package/src/Socket/newsletter.js +1057 -0
  42. package/src/Socket/privacy.js +452 -0
  43. package/src/Socket/registration.js +434 -0
  44. package/src/Socket/socket.js +1079 -0
  45. package/src/Socket/text-router.js +67 -0
  46. package/src/Socket/username.js +234 -0
  47. package/src/Store/index.js +36 -0
  48. package/src/Store/make-cache-manager-store.js +90 -0
  49. package/src/Store/make-in-memory-store.js +506 -0
  50. package/src/Store/make-ordered-dictionary.js +81 -0
  51. package/src/Store/object-repository.js +29 -0
  52. package/src/Types/Auth.js +38 -0
  53. package/src/Types/Bussines.js +2 -0
  54. package/src/Types/Call.js +2 -0
  55. package/src/Types/Chat.js +4 -0
  56. package/src/Types/Contact.js +2 -0
  57. package/src/Types/Events.js +2 -0
  58. package/src/Types/GroupMetadata.js +2 -0
  59. package/src/Types/Label.js +27 -0
  60. package/src/Types/LabelAssociation.js +9 -0
  61. package/src/Types/Message.js +95 -0
  62. package/src/Types/Newsletter.js +152 -0
  63. package/src/Types/Product.js +2 -0
  64. package/src/Types/Signal.js +2 -0
  65. package/src/Types/Socket.js +2 -0
  66. package/src/Types/State.js +70 -0
  67. package/src/Types/USync.js +2 -0
  68. package/src/Types/index.js +54 -0
  69. package/src/Utils/auth-utils.js +306 -0
  70. package/src/Utils/browser-utils.js +114 -0
  71. package/src/Utils/business.js +247 -0
  72. package/src/Utils/chat-utils.js +1272 -0
  73. package/src/Utils/consumer-application.js +107 -0
  74. package/src/Utils/crypto.js +125 -0
  75. package/src/Utils/decode-wa-message.js +808 -0
  76. package/src/Utils/event-buffer.js +586 -0
  77. package/src/Utils/generics.js +640 -0
  78. package/src/Utils/group-history.js +60 -0
  79. package/src/Utils/history.js +244 -0
  80. package/src/Utils/identity-change-handler.js +52 -0
  81. package/src/Utils/index.js +53 -0
  82. package/src/Utils/jid-display-normalization.js +218 -0
  83. package/src/Utils/link-preview.js +143 -0
  84. package/src/Utils/logger.js +9 -0
  85. package/src/Utils/lt-hash.js +10 -0
  86. package/src/Utils/make-mutex.js +36 -0
  87. package/src/Utils/message-composer.js +479 -0
  88. package/src/Utils/message-inspect.js +400 -0
  89. package/src/Utils/message-retry-manager.js +231 -0
  90. package/src/Utils/messages-media.js +943 -0
  91. package/src/Utils/messages.js +2490 -0
  92. package/src/Utils/meta-ai-msmsg.js +133 -0
  93. package/src/Utils/noise-handler.js +194 -0
  94. package/src/Utils/offline-node-processor.js +42 -0
  95. package/src/Utils/pre-key-manager.js +107 -0
  96. package/src/Utils/process-message.js +1047 -0
  97. package/src/Utils/reporting-utils.js +262 -0
  98. package/src/Utils/signal.js +192 -0
  99. package/src/Utils/stanza-ack.js +74 -0
  100. package/src/Utils/sync-action-utils.js +54 -0
  101. package/src/Utils/tc-token-utils.js +161 -0
  102. package/src/Utils/use-multi-file-auth-state.js +121 -0
  103. package/src/Utils/validate-connection.js +248 -0
  104. package/src/Utils/voip-rekey.js +22 -0
  105. package/src/WABinary/constants.js +1304 -0
  106. package/src/WABinary/decode.js +377 -0
  107. package/src/WABinary/encode.js +58 -0
  108. package/src/WABinary/generic-utils.js +148 -0
  109. package/src/WABinary/index.js +33 -0
  110. package/src/WABinary/jid-utils.js +374 -0
  111. package/src/WABinary/types.js +2 -0
  112. package/src/WAM/BinaryInfo.js +13 -0
  113. package/src/WAM/constants.js +39486 -0
  114. package/src/WAM/encode.js +142 -0
  115. package/src/WAM/index.js +31 -0
  116. package/src/WAUSync/Protocols/USyncBotProfileProtocol.js +55 -0
  117. package/src/WAUSync/Protocols/USyncBusinessProtocol.js +100 -0
  118. package/src/WAUSync/Protocols/USyncContactProtocol.js +60 -0
  119. package/src/WAUSync/Protocols/USyncDeviceProtocol.js +65 -0
  120. package/src/WAUSync/Protocols/USyncDisappearingModeProtocol.js +27 -0
  121. package/src/WAUSync/Protocols/USyncFeatureProtocol.js +74 -0
  122. package/src/WAUSync/Protocols/USyncLIDProtocol.js +31 -0
  123. package/src/WAUSync/Protocols/USyncPictureProtocol.js +32 -0
  124. package/src/WAUSync/Protocols/USyncSidelistProtocol.js +29 -0
  125. package/src/WAUSync/Protocols/USyncStatusProtocol.js +44 -0
  126. package/src/WAUSync/Protocols/USyncTextStatusProtocol.js +38 -0
  127. package/src/WAUSync/Protocols/USyncUsernameProtocol.js +28 -0
  128. package/src/WAUSync/Protocols/index.js +40 -0
  129. package/src/WAUSync/USyncBackoff.js +31 -0
  130. package/src/WAUSync/USyncQuery.js +204 -0
  131. package/src/WAUSync/USyncUser.js +58 -0
  132. package/src/WAUSync/index.js +32 -0
  133. package/src/antiban.js +4726 -0
  134. package/{lib → src}/index.js +48 -15
  135. package/lib/Defaults/index.js +0 -130
  136. package/lib/Signal/Group/ciphertext-message.js +0 -12
  137. package/lib/Signal/Group/group-session-builder.js +0 -30
  138. package/lib/Signal/Group/group_cipher.js +0 -82
  139. package/lib/Signal/Group/index.js +0 -12
  140. package/lib/Signal/Group/keyhelper.js +0 -18
  141. package/lib/Signal/Group/sender-chain-key.js +0 -26
  142. package/lib/Signal/Group/sender-key-distribution-message.js +0 -63
  143. package/lib/Signal/Group/sender-key-message.js +0 -66
  144. package/lib/Signal/Group/sender-key-name.js +0 -48
  145. package/lib/Signal/Group/sender-key-record.js +0 -41
  146. package/lib/Signal/Group/sender-key-state.js +0 -84
  147. package/lib/Signal/Group/sender-message-key.js +0 -26
  148. package/lib/Signal/libsignal.js +0 -431
  149. package/lib/Signal/lid-mapping.js +0 -277
  150. package/lib/Socket/Client/index.js +0 -3
  151. package/lib/Socket/Client/types.js +0 -11
  152. package/lib/Socket/Client/websocket.js +0 -54
  153. package/lib/Socket/business.js +0 -379
  154. package/lib/Socket/chats.js +0 -1193
  155. package/lib/Socket/communities.js +0 -431
  156. package/lib/Socket/groups.js +0 -374
  157. package/lib/Socket/index.js +0 -12
  158. package/lib/Socket/luxu.js +0 -386
  159. package/lib/Socket/messages-recv.js +0 -1916
  160. package/lib/Socket/messages-send.js +0 -1453
  161. package/lib/Socket/newsletter.js +0 -251
  162. package/lib/Socket/socket.js +0 -980
  163. package/lib/Socket/username.js +0 -146
  164. package/lib/Store/index.js +0 -10
  165. package/lib/Store/keyed-db.js +0 -108
  166. package/lib/Store/make-cache-manager-store.js +0 -85
  167. package/lib/Store/make-in-memory-store.js +0 -198
  168. package/lib/Store/make-ordered-dictionary.js +0 -75
  169. package/lib/Store/object-repository.js +0 -32
  170. package/lib/Types/Auth.js +0 -2
  171. package/lib/Types/Bussines.js +0 -2
  172. package/lib/Types/Call.js +0 -2
  173. package/lib/Types/Chat.js +0 -8
  174. package/lib/Types/Contact.js +0 -2
  175. package/lib/Types/Events.js +0 -2
  176. package/lib/Types/GroupMetadata.js +0 -2
  177. package/lib/Types/Label.js +0 -25
  178. package/lib/Types/LabelAssociation.js +0 -7
  179. package/lib/Types/Message.js +0 -11
  180. package/lib/Types/Mex.js +0 -37
  181. package/lib/Types/Product.js +0 -2
  182. package/lib/Types/Signal.js +0 -2
  183. package/lib/Types/Socket.js +0 -3
  184. package/lib/Types/State.js +0 -56
  185. package/lib/Types/USync.js +0 -2
  186. package/lib/Types/index.js +0 -26
  187. package/lib/Utils/auth-utils.js +0 -302
  188. package/lib/Utils/browser-utils.js +0 -49
  189. package/lib/Utils/business.js +0 -231
  190. package/lib/Utils/chat-utils.js +0 -872
  191. package/lib/Utils/companion-reg-client-utils.js +0 -35
  192. package/lib/Utils/crypto.js +0 -118
  193. package/lib/Utils/decode-wa-message.js +0 -350
  194. package/lib/Utils/event-buffer.js +0 -622
  195. package/lib/Utils/generics.js +0 -403
  196. package/lib/Utils/history.js +0 -134
  197. package/lib/Utils/identity-change-handler.js +0 -50
  198. package/lib/Utils/index.js +0 -23
  199. package/lib/Utils/link-preview.js +0 -85
  200. package/lib/Utils/logger.js +0 -3
  201. package/lib/Utils/lt-hash.js +0 -8
  202. package/lib/Utils/make-mutex.js +0 -33
  203. package/lib/Utils/message-composer.js +0 -273
  204. package/lib/Utils/message-retry-manager.js +0 -265
  205. package/lib/Utils/messages-media.js +0 -788
  206. package/lib/Utils/messages.js +0 -1260
  207. package/lib/Utils/noise-handler.js +0 -201
  208. package/lib/Utils/offline-node-processor.js +0 -40
  209. package/lib/Utils/pre-key-manager.js +0 -106
  210. package/lib/Utils/process-message.js +0 -630
  211. package/lib/Utils/reporting-utils.js +0 -258
  212. package/lib/Utils/signal.js +0 -201
  213. package/lib/Utils/stanza-ack.js +0 -38
  214. package/lib/Utils/sync-action-utils.js +0 -49
  215. package/lib/Utils/tc-token-utils.js +0 -163
  216. package/lib/Utils/use-multi-file-auth-state.js +0 -121
  217. package/lib/Utils/validate-connection.js +0 -203
  218. package/lib/WABinary/constants.js +0 -1301
  219. package/lib/WABinary/decode.js +0 -262
  220. package/lib/WABinary/encode.js +0 -220
  221. package/lib/WABinary/generic-utils.js +0 -204
  222. package/lib/WABinary/index.js +0 -6
  223. package/lib/WABinary/jid-utils.js +0 -98
  224. package/lib/WABinary/types.js +0 -2
  225. package/lib/WAM/BinaryInfo.js +0 -10
  226. package/lib/WAM/constants.js +0 -22853
  227. package/lib/WAM/encode.js +0 -150
  228. package/lib/WAM/index.js +0 -4
  229. package/lib/WAUSync/Protocols/USyncContactProtocol.js +0 -52
  230. package/lib/WAUSync/Protocols/USyncDeviceProtocol.js +0 -54
  231. package/lib/WAUSync/Protocols/USyncDisappearingModeProtocol.js +0 -27
  232. package/lib/WAUSync/Protocols/USyncNewsletterProtocol.js +0 -263
  233. package/lib/WAUSync/Protocols/USyncStatusProtocol.js +0 -38
  234. package/lib/WAUSync/Protocols/USyncUsernameProtocol.js +0 -25
  235. package/lib/WAUSync/Protocols/UsyncBotProfileProtocol.js +0 -51
  236. package/lib/WAUSync/Protocols/UsyncLIDProtocol.js +0 -29
  237. package/lib/WAUSync/Protocols/index.js +0 -6
  238. package/lib/WAUSync/USyncQuery.js +0 -98
  239. package/lib/WAUSync/USyncUser.js +0 -31
  240. package/lib/WAUSync/index.js +0 -4
@@ -0,0 +1,374 @@
1
+ 'use strict'
2
+ Object.defineProperty(exports, '__esModule', { value: true })
3
+ exports.transferDevice =
4
+ exports.jidNormalizedUser =
5
+ exports.isJidLid =
6
+ exports.isJidBot =
7
+ exports.isHostedLidUser =
8
+ exports.isHostedPnUser =
9
+ exports.isJidNewsletter =
10
+ exports.isJidStatusBroadcast =
11
+ exports.isJidGroup =
12
+ exports.isJidBroadcast =
13
+ exports.isLidUser =
14
+ exports.isPnUser =
15
+ exports.isInteropUser =
16
+ exports.isJidMetaAI =
17
+ exports.areJidsSameUser =
18
+ exports.jidDecode =
19
+ exports.jidEncode =
20
+ exports.getServerFromDomainType =
21
+ exports.WAJIDDomains =
22
+ exports.META_AI_JID =
23
+ exports.STORIES_JID =
24
+ exports.PSA_WID =
25
+ exports.SERVER_JID =
26
+ exports.OFFICIAL_BIZ_JID =
27
+ exports.BOT_WHATSAPP_NET =
28
+ exports.BOT_SERVER =
29
+ exports.S_WHATSAPP_NET =
30
+ void 0
31
+ exports.S_WHATSAPP_NET = '@s.whatsapp.net'
32
+ exports.BOT_WHATSAPP_NET = '@bot.whatsapp.net' // kept for compat; wire domain is '@bot'
33
+ exports.BOT_SERVER = '@bot'
34
+ exports.OFFICIAL_BIZ_JID = '16505361212@c.us'
35
+ exports.SERVER_JID = 'server@c.us'
36
+ exports.PSA_WID = '0@c.us'
37
+ exports.STORIES_JID = 'status@broadcast'
38
+ exports.META_AI_JID = '13135550002@c.us'
39
+ var WAJIDDomains
40
+ ;(function (WAJIDDomains) {
41
+ WAJIDDomains[(WAJIDDomains['WHATSAPP'] = 0)] = 'WHATSAPP'
42
+ WAJIDDomains[(WAJIDDomains['LID'] = 1)] = 'LID'
43
+ WAJIDDomains[(WAJIDDomains['BOT'] = 2)] = 'BOT'
44
+ WAJIDDomains[(WAJIDDomains['HOSTED'] = 128)] = 'HOSTED'
45
+ WAJIDDomains[(WAJIDDomains['HOSTED_LID'] = 129)] = 'HOSTED_LID'
46
+ })(WAJIDDomains || (exports.WAJIDDomains = WAJIDDomains = {}))
47
+ const getServerFromDomainType = (initialServer, domainType) => {
48
+ switch (domainType) {
49
+ case WAJIDDomains.LID:
50
+ return 'lid'
51
+ case WAJIDDomains.BOT:
52
+ return 'bot'
53
+ case WAJIDDomains.HOSTED:
54
+ return 'hosted'
55
+ case WAJIDDomains.HOSTED_LID:
56
+ return 'hosted.lid'
57
+ case WAJIDDomains.WHATSAPP:
58
+ default:
59
+ return initialServer
60
+ }
61
+ }
62
+ exports.getServerFromDomainType = getServerFromDomainType
63
+
64
+ const getBotJid = jid => {
65
+ const BOT_MAP = new Map([
66
+ ['867051314767696', '13135550002'],
67
+ ['1061492271844689', '13135550005'],
68
+ ['245886058483988', '13135550009'],
69
+ ['3509905702656130', '13135550012'],
70
+ ['1059680132034576', '13135550013'],
71
+ ['715681030623646', '13135550014'],
72
+ ['1644971366323052', '13135550015'],
73
+ ['582497970646566', '13135550019'],
74
+ ['645459357769306', '13135550022'],
75
+ ['294997126699143', '13135550023'],
76
+ ['1522631578502677', '13135550027'],
77
+ ['719421926276396', '13135550030'],
78
+ ['1788488635002167', '13135550031'],
79
+ ['24232338603080193', '13135550033'],
80
+ ['689289903143209', '13135550035'],
81
+ ['871626054177096', '13135550039'],
82
+ ['362351902849370', '13135550042'],
83
+ ['1744617646041527', '13135550043'],
84
+ ['893887762270570', '13135550046'],
85
+ ['1155032702135830', '13135550047'],
86
+ ['333931965993883', '13135550048'],
87
+ ['853748013058752', '13135550049'],
88
+ ['1559068611564819', '13135550053'],
89
+ ['890487432705716', '13135550054'],
90
+ ['240254602395494', '13135550055'],
91
+ ['1578420349663261', '13135550062'],
92
+ ['322908887140421', '13135550065'],
93
+ ['3713961535514771', '13135550067'],
94
+ ['997884654811738', '13135550070'],
95
+ ['403157239387035', '13135550081'],
96
+ ['535242369074963', '13135550082'],
97
+ ['946293427247659', '13135550083'],
98
+ ['3664707673802291', '13135550084'],
99
+ ['1821827464894892', '13135550085'],
100
+ ['1760312477828757', '13135550086'],
101
+ ['439480398712216', '13135550087'],
102
+ ['1876735582800984', '13135550088'],
103
+ ['984025089825661', '13135550089'],
104
+ ['1001336351558186', '13135550090'],
105
+ ['3739346336347061', '13135550091'],
106
+ ['3632749426974980', '13135550092'],
107
+ ['427864203481615', '13135550093'],
108
+ ['1434734570493055', '13135550094'],
109
+ ['992873449225921', '13135550095'],
110
+ ['813087747426445', '13135550096'],
111
+ ['806369104931434', '13135550098'],
112
+ ['1220982902403148', '13135550099'],
113
+ ['1365893374104393', '13135550100'],
114
+ ['686482033622048', '13135550200'],
115
+ ['1454999838411253', '13135550201'],
116
+ ['718584497008509', '13135550202'],
117
+ ['743520384213443', '13135550301'],
118
+ ['1147715789823789', '13135550302'],
119
+ ['1173034540372201', '13135550303'],
120
+ ['974785541030953', '13135550304'],
121
+ ['1122200255531507', '13135550305'],
122
+ ['899669714813162', '13135550306'],
123
+ ['631880108970650', '13135550307'],
124
+ ['435816149330026', '13135550308'],
125
+ ['1368717161184556', '13135550309'],
126
+ ['7849963461784891', '13135550310'],
127
+ ['3609617065968984', '13135550312'],
128
+ ['356273980574602', '13135550313'],
129
+ ['1043447920539760', '13135550314'],
130
+ ['1052764336525346', '13135550315'],
131
+ ['2631118843732685', '13135550316'],
132
+ ['510505411332176', '13135550317'],
133
+ ['1945664239227513', '13135550318'],
134
+ ['1518594378764656', '13135550319'],
135
+ ['1378821579456138', '13135550320'],
136
+ ['490214716896013', '13135550321'],
137
+ ['1028577858870699', '13135550322'],
138
+ ['308915665545959', '13135550323'],
139
+ ['845884253678900', '13135550324'],
140
+ ['995031308616442', '13135550325'],
141
+ ['2787365464763437', '13135550326'],
142
+ ['1532790990671645', '13135550327'],
143
+ ['302617036180485', '13135550328'],
144
+ ['723376723197227', '13135550329'],
145
+ ['8393570407377966', '13135550330'],
146
+ ['1931159970680725', '13135550331'],
147
+ ['401073885688605', '13135550332'],
148
+ ['2234478453565422', '13135550334'],
149
+ ['814748673882312', '13135550335'],
150
+ ['26133635056281592', '13135550336'],
151
+ ['1439804456676119', '13135550337'],
152
+ ['889851503172161', '13135550338'],
153
+ ['1018283232836879', '13135550339'],
154
+ ['1012781386779537', '13135559000'],
155
+ ['823280953239532', '13135559001'],
156
+ ['1597090934573334', '13135559002'],
157
+ ['485965054020343', '13135559003'],
158
+ ['1033381648363446', '13135559004'],
159
+ ['491802010206446', '13135559005'],
160
+ ['1017139033184870', '13135559006'],
161
+ ['499638325922174', '13135559008'],
162
+ ['468946335863664', '13135559009'],
163
+ ['1570389776875816', '13135559010'],
164
+ ['1004342694328995', '13135559011'],
165
+ ['1012240323971229', '13135559012'],
166
+ ['392171787222419', '13135559013'],
167
+ ['952081212945019', '13135559016'],
168
+ ['444507875070178', '13135559017'],
169
+ ['1274819440594668', '13135559018'],
170
+ ['1397041101147050', '13135559019'],
171
+ ['425657699872640', '13135559020'],
172
+ ['532292852562549', '13135559021'],
173
+ ['705863241720292', '13135559022'],
174
+ ['476449815183959', '13135559023'],
175
+ ['488071553854222', '13135559024'],
176
+ ['468693832665397', '13135559025'],
177
+ ['517422564037340', '13135559026'],
178
+ ['819805466613825', '13135559027'],
179
+ ['1847708235641382', '13135559028'],
180
+ ['716282970644228', '13135559029'],
181
+ ['521655380527741', '13135559030'],
182
+ ['476193631941905', '13135559031'],
183
+ ['485600497445562', '13135559032'],
184
+ ['440217235683910', '13135559033'],
185
+ ['523342446758478', '13135559034'],
186
+ ['514784864360240', '13135559035'],
187
+ ['505790121814530', '13135559036'],
188
+ ['420008964419580', '13135559037'],
189
+ ['492141680204555', '13135559038'],
190
+ ['388462787271952', '13135559039'],
191
+ ['423473920752072', '13135559040'],
192
+ ['489574180468229', '13135559041'],
193
+ ['432360635854105', '13135559042'],
194
+ ['477878201669248', '13135559043'],
195
+ ['351656951234045', '13135559044'],
196
+ ['430178036732582', '13135559045'],
197
+ ['434537312944552', '13135559046'],
198
+ ['1240614300631808', '13135559047'],
199
+ ['473135945605128', '13135559048'],
200
+ ['423669800729310', '13135559049'],
201
+ ['3685666705015792', '13135559050'],
202
+ ['504196509016638', '13135559051'],
203
+ ['346844785189449', '13135559052'],
204
+ ['504823088911074', '13135559053'],
205
+ ['402669415797083', '13135559054'],
206
+ ['490939640234431', '13135559055'],
207
+ ['875124128063715', '13135559056'],
208
+ ['468788962654605', '13135559057'],
209
+ ['562386196354570', '13135559058'],
210
+ ['372159285928791', '13135559059'],
211
+ ['531017479591050', '13135559060'],
212
+ ['1328873881401826', '13135559061'],
213
+ ['1608363646390484', '13135559062'],
214
+ ['1229628561554232', '13135559063'],
215
+ ['348802211530364', '13135559064'],
216
+ ['3708535859420184', '13135559065'],
217
+ ['415517767742187', '13135559066'],
218
+ ['479330341612638', '13135559067'],
219
+ ['480785414723083', '13135559068'],
220
+ ['387299107507991', '13135559069'],
221
+ ['333389813188944', '13135559070'],
222
+ ['391794130316996', '13135559071'],
223
+ ['457893470576314', '13135559072'],
224
+ ['435550496166469', '13135559073'],
225
+ ['1620162702100689', '13135559074'],
226
+ ['867491058616043', '13135559075'],
227
+ ['816224117357759', '13135559076'],
228
+ ['334065176362830', '13135559077'],
229
+ ['489973170554709', '13135559078'],
230
+ ['473060669049665', '13135559079'],
231
+ ['1221505815643060', '13135559080'],
232
+ ['889000703096359', '13135559081'],
233
+ ['475235961979883', '13135559082'],
234
+ ['3434445653519934', '13135559084'],
235
+ ['524503026827421', '13135559085'],
236
+ ['1179639046403856', '13135559086'],
237
+ ['471563305859144', '13135559087'],
238
+ ['533896609192881', '13135559088'],
239
+ ['365443583168041', '13135559089'],
240
+ ['836082305329393', '13135559090'],
241
+ ['1056787705969916', '13135559091'],
242
+ ['503312598958357', '13135559092'],
243
+ ['3718606738453460', '13135559093'],
244
+ ['826066052850902', '13135559094'],
245
+ ['1033611345091888', '13135559095'],
246
+ ['3868390816783240', '13135559096'],
247
+ ['7462677740498860', '13135559097'],
248
+ ['436288576108573', '13135559098'],
249
+ ['1047559746718900', '13135559099'],
250
+ ['1099299455255491', '13135559100'],
251
+ ['1202037301040633', '13135559101'],
252
+ ['1720619402074074', '13135559102'],
253
+ ['1030422235101467', '13135559103'],
254
+ ['827238979523502', '13135559104'],
255
+ ['1516443722284921', '13135559105'],
256
+ ['1174442747196709', '13135559106'],
257
+ ['1653165225503842', '13135559107'],
258
+ ['1037648777635013', '13135559108'],
259
+ ['551617757299900', '13135559109'],
260
+ ['1158813558718726', '13135559110'],
261
+ ['2463236450542262', '13135559111'],
262
+ ['1550393252501466', '13135559112'],
263
+ ['2057065188042796', '13135559113'],
264
+ ['506163028760735', '13135559114'],
265
+ ['2065249100538481', '13135559115'],
266
+ ['1041382867195858', '13135559116'],
267
+ ['886500209499603', '13135559117'],
268
+ ['1491615624892655', '13135559118'],
269
+ ['486563697299617', '13135559119'],
270
+ ['1175736513679463', '13135559120'],
271
+ ['491811473512352', '13165550064']
272
+ ])
273
+ const sepIdx = typeof jid === 'string' ? jid.indexOf('@') : -1
274
+ if (sepIdx < 0) {
275
+ return jid
276
+ }
277
+ const server = jid.slice(sepIdx + 1)
278
+ if (server !== 'bot') return jid
279
+ const user = jid.slice(0, sepIdx)
280
+ const mappedNumber = BOT_MAP.get(user)
281
+ return mappedNumber ? `${mappedNumber}@s.whatsapp.net` : jid
282
+ }
283
+ exports.getBotJid = getBotJid
284
+
285
+ const jidEncode = (user, server, device, agent) => {
286
+ const isInterop = server === 'interop'
287
+ return `${user || ''}${!!agent ? `_${agent}` : ''}${!!device || (device === 0 && !isInterop) ? `:${device}` : ''}@${server}`
288
+ }
289
+ exports.jidEncode = jidEncode
290
+ const jidDecode = jid => {
291
+ const sepIdx = typeof jid === 'string' ? jid.indexOf('@') : -1
292
+ if (sepIdx < 0) {
293
+ return undefined
294
+ }
295
+ const server = jid.slice(sepIdx + 1)
296
+ const userCombined = jid.slice(0, sepIdx)
297
+ const [userAgent, device] = userCombined.split(':')
298
+ const [user, agent] = userAgent.split('_')
299
+ let domainType = WAJIDDomains.WHATSAPP
300
+ if (server === 'lid') {
301
+ domainType = WAJIDDomains.LID
302
+ } else if (server === 'bot') {
303
+ domainType = WAJIDDomains.BOT
304
+ } else if (server === 'hosted') {
305
+ domainType = WAJIDDomains.HOSTED
306
+ } else if (server === 'hosted.lid') {
307
+ domainType = WAJIDDomains.HOSTED_LID
308
+ } else if (agent) {
309
+ domainType = parseInt(agent, 10)
310
+ }
311
+ return {
312
+ server: server,
313
+ user: user,
314
+ domainType,
315
+ device: device ? +device : undefined
316
+ }
317
+ }
318
+ exports.jidDecode = jidDecode
319
+ /** is the jid a user */
320
+ const areJidsSameUser = (jid1, jid2) => (0, exports.jidDecode)(jid1)?.user === (0, exports.jidDecode)(jid2)?.user
321
+ exports.areJidsSameUser = areJidsSameUser
322
+ /** is the jid Meta AI */
323
+ const isJidMetaAI = jid => jid?.endsWith('@bot')
324
+ exports.isJidMetaAI = isJidMetaAI
325
+ /** is the jid a PN user */
326
+ const isPnUser = jid => jid?.endsWith('@s.whatsapp.net')
327
+ exports.isPnUser = isPnUser
328
+ /** is the jid an interop (BirdyChat/Haiket) user */
329
+ const isInteropUser = jid => jid?.endsWith('@interop')
330
+ exports.isInteropUser = isInteropUser
331
+ /** is the jid a LID */
332
+ const isLidUser = jid => jid?.endsWith('@lid')
333
+ exports.isLidUser = isLidUser
334
+ /** is the jid a LID (isJidLid is an alias for isLidUser) */
335
+ const isJidLid = jid => jid?.endsWith('@lid')
336
+ exports.isJidLid = isJidLid
337
+ /** is the jid a broadcast */
338
+ const isJidBroadcast = jid => jid?.endsWith('@broadcast')
339
+ exports.isJidBroadcast = isJidBroadcast
340
+ /** is the jid a group */
341
+ const isJidGroup = jid => jid?.endsWith('@g.us')
342
+ exports.isJidGroup = isJidGroup
343
+ /** is the jid the status broadcast */
344
+ const isJidStatusBroadcast = jid => jid === 'status@broadcast'
345
+ exports.isJidStatusBroadcast = isJidStatusBroadcast
346
+ /** is the jid a newsletter */
347
+ const isJidNewsletter = jid => jid?.endsWith('@newsletter')
348
+ exports.isJidNewsletter = isJidNewsletter
349
+ /** is the jid a hosted PN */
350
+ const isHostedPnUser = jid => jid?.endsWith('@hosted')
351
+ exports.isHostedPnUser = isHostedPnUser
352
+ /** is the jid a hosted LID */
353
+ const isHostedLidUser = jid => jid?.endsWith('@hosted.lid')
354
+ exports.isHostedLidUser = isHostedLidUser
355
+ const botRegexp = /^1313555\d{4}$|^131655500\d{2}$/
356
+ /** is the jid a bot — covers @bot wire domain and @c.us number patterns for WA-native bots */
357
+ const isJidBot = jid => jid && ((botRegexp.test(jid.split('@')[0]) && jid.endsWith('@c.us')) || jid.endsWith('@bot'))
358
+ exports.isJidBot = isJidBot
359
+ const jidNormalizedUser = jid => {
360
+ const result = (0, exports.jidDecode)(jid)
361
+ if (!result) {
362
+ return ''
363
+ }
364
+ const { user, server } = result
365
+ return (0, exports.jidEncode)(user, server === 'c.us' ? 's.whatsapp.net' : server)
366
+ }
367
+ exports.jidNormalizedUser = jidNormalizedUser
368
+ const transferDevice = (fromJid, toJid) => {
369
+ const fromDecoded = (0, exports.jidDecode)(fromJid)
370
+ const deviceId = fromDecoded?.device || 0
371
+ const { server, user } = (0, exports.jidDecode)(toJid)
372
+ return (0, exports.jidEncode)(user, server, deviceId)
373
+ }
374
+ exports.transferDevice = transferDevice
@@ -0,0 +1,2 @@
1
+ 'use strict'
2
+ Object.defineProperty(exports, '__esModule', { value: true })
@@ -0,0 +1,13 @@
1
+ 'use strict'
2
+ Object.defineProperty(exports, '__esModule', { value: true })
3
+ exports.BinaryInfo = void 0
4
+ class BinaryInfo {
5
+ constructor(options = {}) {
6
+ this.protocolVersion = 5
7
+ this.sequence = 0
8
+ this.events = []
9
+ this.buffer = []
10
+ Object.assign(this, options)
11
+ }
12
+ }
13
+ exports.BinaryInfo = BinaryInfo