@kyyinfinite/baileys 1.0.0 → 2.0.0

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 (242) hide show
  1. package/README.md +408 -64
  2. package/WAProto/WAProto.proto +360 -916
  3. package/WAProto/fix-imports.js +22 -18
  4. package/WAProto/index.d.ts +14015 -0
  5. package/WAProto/index.js +47122 -81757
  6. package/engine-requirements.js +10 -0
  7. package/lib/Defaults/index.d.ts +15 -14
  8. package/lib/Defaults/index.d.ts.map +1 -1
  9. package/lib/Defaults/index.js +99 -107
  10. package/lib/Defaults/index.js.map +1 -1
  11. package/lib/Kyyinfinite/AIRich.js +2041 -0
  12. package/lib/Kyyinfinite/BaseBuilder.js +64 -0
  13. package/lib/Kyyinfinite/Button.js +341 -0
  14. package/lib/Kyyinfinite/ButtonV2.js +175 -0
  15. package/lib/Kyyinfinite/Carousel.js +125 -0
  16. package/lib/Kyyinfinite/Foad.js +542 -0
  17. package/lib/Kyyinfinite/Foad2.js +466 -0
  18. package/lib/Kyyinfinite/Simple/AIBuilder.js +18 -0
  19. package/lib/Kyyinfinite/Simple/BuilderFactories.js +17 -0
  20. package/lib/Kyyinfinite/Simple/ButtonBuilder.js +107 -0
  21. package/lib/Kyyinfinite/Simple/CardBuilder.js +179 -0
  22. package/lib/Kyyinfinite/Simple/CarouselBuilder.js +97 -0
  23. package/lib/Kyyinfinite/Simple/FoadBuilder.js +18 -0
  24. package/lib/Kyyinfinite/Simple/MediaBuilder.js +35 -0
  25. package/lib/Kyyinfinite/Simple/MessageBuilder.js +41 -0
  26. package/lib/Kyyinfinite/Simple/MessageTypesBuilder.js +3 -0
  27. package/lib/Kyyinfinite/Simple/SimpleBuilder.js +28 -0
  28. package/lib/Kyyinfinite/Simple/SimpleClient.js +83 -0
  29. package/lib/Kyyinfinite/Simple/TextBuilder.js +22 -0
  30. package/lib/Kyyinfinite/Simple/index.d.ts +141 -0
  31. package/lib/Kyyinfinite/Simple/index.js +31 -0
  32. package/lib/Kyyinfinite/Toolkit.js +453 -0
  33. package/lib/Kyyinfinite/constants.js +1 -0
  34. package/lib/Kyyinfinite/errors.js +39 -0
  35. package/lib/Kyyinfinite/index.d.ts +2 -0
  36. package/lib/Kyyinfinite/index.js +2 -0
  37. package/lib/Kyyinfinite/wrapper.d.ts +2 -0
  38. package/lib/Kyyinfinite/wrapper.js +10 -0
  39. package/lib/Signal/Group/group_cipher.js.map +1 -1
  40. package/lib/Signal/Group/keyhelper.d.ts.map +1 -1
  41. package/lib/Signal/Group/keyhelper.js.map +1 -1
  42. package/lib/Signal/Group/sender-chain-key.js.map +1 -1
  43. package/lib/Signal/Group/sender-key-message.js.map +1 -1
  44. package/lib/Signal/Group/sender-message-key.js.map +1 -1
  45. package/lib/Signal/libsignal.d.ts.map +1 -1
  46. package/lib/Signal/libsignal.js +45 -17
  47. package/lib/Signal/libsignal.js.map +1 -1
  48. package/lib/Signal/lid-mapping.d.ts +4 -0
  49. package/lib/Signal/lid-mapping.d.ts.map +1 -1
  50. package/lib/Signal/lid-mapping.js +6 -0
  51. package/lib/Signal/lid-mapping.js.map +1 -1
  52. package/lib/Socket/business.d.ts +213 -532
  53. package/lib/Socket/business.d.ts.map +1 -1
  54. package/lib/Socket/business.js +358 -401
  55. package/lib/Socket/chats.d.ts +16 -2
  56. package/lib/Socket/chats.d.ts.map +1 -1
  57. package/lib/Socket/chats.js +247 -40
  58. package/lib/Socket/chats.js.map +1 -1
  59. package/lib/Socket/communities.d.ts +269 -641
  60. package/lib/Socket/communities.d.ts.map +1 -1
  61. package/lib/Socket/groups.d.ts +13 -2
  62. package/lib/Socket/groups.d.ts.map +1 -1
  63. package/lib/Socket/groups.js +21 -1
  64. package/lib/Socket/groups.js.map +1 -1
  65. package/lib/Socket/index.d.ts +255 -631
  66. package/lib/Socket/index.d.ts.map +1 -1
  67. package/lib/Socket/index.js +9 -10
  68. package/lib/Socket/index.js.map +1 -1
  69. package/lib/Socket/messages-recv.d.ts +23 -58
  70. package/lib/Socket/messages-recv.d.ts.map +1 -1
  71. package/lib/Socket/messages-recv.js +645 -181
  72. package/lib/Socket/messages-recv.js.map +1 -1
  73. package/lib/Socket/messages-send.d.ts +195 -575
  74. package/lib/Socket/messages-send.d.ts.map +1 -1
  75. package/lib/Socket/messages-send.js +1099 -1549
  76. package/lib/Socket/messages-send.js.map +1 -1
  77. package/lib/Socket/mex.d.ts.map +1 -1
  78. package/lib/Socket/mex.js +2 -8
  79. package/lib/Socket/mex.js.map +1 -1
  80. package/lib/Socket/newsletter.d.ts +11 -18
  81. package/lib/Socket/newsletter.d.ts.map +1 -1
  82. package/lib/Socket/newsletter.js +167 -302
  83. package/lib/Socket/newsletter.js.map +1 -1
  84. package/lib/Socket/socket.d.ts +6 -2
  85. package/lib/Socket/socket.d.ts.map +1 -1
  86. package/lib/Socket/socket.js +59 -25
  87. package/lib/Socket/socket.js.map +1 -1
  88. package/lib/Types/Auth.d.ts +1 -0
  89. package/lib/Types/Auth.d.ts.map +1 -1
  90. package/lib/Types/Bussines.d.ts +22 -34
  91. package/lib/Types/Call.d.ts +1 -1
  92. package/lib/Types/Call.d.ts.map +1 -1
  93. package/lib/Types/Chat.d.ts +1 -0
  94. package/lib/Types/Chat.d.ts.map +1 -1
  95. package/lib/Types/Contact.d.ts +2 -0
  96. package/lib/Types/Contact.d.ts.map +1 -1
  97. package/lib/Types/Events.d.ts +20 -1
  98. package/lib/Types/Events.d.ts.map +1 -1
  99. package/lib/Types/GroupMetadata.d.ts +4 -1
  100. package/lib/Types/GroupMetadata.d.ts.map +1 -1
  101. package/lib/Types/Message.d.ts +239 -341
  102. package/lib/Types/Message.d.ts.map +1 -1
  103. package/lib/Types/Message.js.map +1 -1
  104. package/lib/Types/{Newsletter.d.ts → Mex.d.ts} +11 -5
  105. package/lib/Types/Mex.d.ts.map +1 -0
  106. package/lib/Types/{Newsletter.js → Mex.js} +9 -3
  107. package/lib/Types/Mex.js.map +1 -0
  108. package/lib/Types/Signal.d.ts +12 -1
  109. package/lib/Types/Signal.d.ts.map +1 -1
  110. package/lib/Types/Socket.d.ts +126 -148
  111. package/lib/Types/Socket.d.ts.map +1 -1
  112. package/lib/Types/State.d.ts +58 -0
  113. package/lib/Types/State.d.ts.map +1 -1
  114. package/lib/Types/State.js +43 -0
  115. package/lib/Types/State.js.map +1 -1
  116. package/lib/Types/index.d.ts +52 -52
  117. package/lib/Types/index.d.ts.map +1 -1
  118. package/lib/Types/index.js +23 -30
  119. package/lib/Types/index.js.map +1 -1
  120. package/lib/Utils/auth-utils.d.ts +5 -0
  121. package/lib/Utils/auth-utils.d.ts.map +1 -1
  122. package/lib/Utils/auth-utils.js +12 -0
  123. package/lib/Utils/auth-utils.js.map +1 -1
  124. package/lib/Utils/browser-utils.d.ts.map +1 -1
  125. package/lib/Utils/browser-utils.js +1 -0
  126. package/lib/Utils/browser-utils.js.map +1 -1
  127. package/lib/Utils/chat-utils.d.ts +34 -4
  128. package/lib/Utils/chat-utils.d.ts.map +1 -1
  129. package/lib/Utils/chat-utils.js +80 -20
  130. package/lib/Utils/chat-utils.js.map +1 -1
  131. package/lib/Utils/companion-reg-client-utils.d.ts +17 -0
  132. package/lib/Utils/companion-reg-client-utils.d.ts.map +1 -0
  133. package/lib/Utils/companion-reg-client-utils.js +35 -0
  134. package/lib/Utils/companion-reg-client-utils.js.map +1 -0
  135. package/lib/Utils/crypto.d.ts +12 -12
  136. package/lib/Utils/crypto.d.ts.map +1 -1
  137. package/lib/Utils/crypto.js.map +1 -1
  138. package/lib/Utils/decode-wa-message.d.ts +18 -0
  139. package/lib/Utils/decode-wa-message.d.ts.map +1 -1
  140. package/lib/Utils/decode-wa-message.js +34 -0
  141. package/lib/Utils/decode-wa-message.js.map +1 -1
  142. package/lib/Utils/event-buffer.d.ts +2 -0
  143. package/lib/Utils/event-buffer.d.ts.map +1 -1
  144. package/lib/Utils/event-buffer.js +49 -1
  145. package/lib/Utils/event-buffer.js.map +1 -1
  146. package/lib/Utils/generics.d.ts +3 -2
  147. package/lib/Utils/generics.d.ts.map +1 -1
  148. package/lib/Utils/generics.js +10 -1
  149. package/lib/Utils/generics.js.map +1 -1
  150. package/lib/Utils/history.d.ts +2 -0
  151. package/lib/Utils/history.d.ts.map +1 -1
  152. package/lib/Utils/history.js +12 -9
  153. package/lib/Utils/history.js.map +1 -1
  154. package/lib/Utils/identity-change-handler.d.ts +7 -0
  155. package/lib/Utils/identity-change-handler.d.ts.map +1 -1
  156. package/lib/Utils/identity-change-handler.js +1 -0
  157. package/lib/Utils/identity-change-handler.js.map +1 -1
  158. package/lib/Utils/index.d.ts +22 -25
  159. package/lib/Utils/index.d.ts.map +1 -1
  160. package/lib/Utils/index.js +2 -4
  161. package/lib/Utils/index.js.map +1 -1
  162. package/lib/Utils/link-preview.js +2 -2
  163. package/lib/Utils/link-preview.js.map +1 -1
  164. package/lib/Utils/logger.d.ts +1 -2
  165. package/lib/Utils/logger.d.ts.map +1 -1
  166. package/lib/Utils/message-retry-manager.d.ts +5 -0
  167. package/lib/Utils/message-retry-manager.d.ts.map +1 -1
  168. package/lib/Utils/message-retry-manager.js +40 -0
  169. package/lib/Utils/message-retry-manager.js.map +1 -1
  170. package/lib/Utils/messages-media.d.ts +16 -13
  171. package/lib/Utils/messages-media.d.ts.map +1 -1
  172. package/lib/Utils/messages-media.js +85 -79
  173. package/lib/Utils/messages-media.js.map +1 -1
  174. package/lib/Utils/messages.d.ts +1 -1
  175. package/lib/Utils/messages.d.ts.map +1 -1
  176. package/lib/Utils/messages.js +751 -1096
  177. package/lib/Utils/messages.js.map +1 -1
  178. package/lib/Utils/noise-handler.d.ts +1 -1
  179. package/lib/Utils/process-message.d.ts.map +1 -1
  180. package/lib/Utils/process-message.js +103 -1
  181. package/lib/Utils/process-message.js.map +1 -1
  182. package/lib/Utils/signal.d.ts +13 -0
  183. package/lib/Utils/signal.d.ts.map +1 -1
  184. package/lib/Utils/signal.js +42 -0
  185. package/lib/Utils/signal.js.map +1 -1
  186. package/lib/Utils/sync-action-utils.d.ts.map +1 -1
  187. package/lib/Utils/sync-action-utils.js +1 -0
  188. package/lib/Utils/sync-action-utils.js.map +1 -1
  189. package/lib/Utils/tc-token-utils.d.ts +26 -1
  190. package/lib/Utils/tc-token-utils.d.ts.map +1 -1
  191. package/lib/Utils/tc-token-utils.js +151 -5
  192. package/lib/Utils/tc-token-utils.js.map +1 -1
  193. package/lib/Utils/validate-connection.d.ts.map +1 -1
  194. package/lib/Utils/validate-connection.js +12 -2
  195. package/lib/Utils/validate-connection.js.map +1 -1
  196. package/lib/WABinary/decode.d.ts +1 -1
  197. package/lib/WABinary/decode.d.ts.map +1 -1
  198. package/lib/WABinary/generic-utils.d.ts +1 -3
  199. package/lib/WABinary/generic-utils.d.ts.map +1 -1
  200. package/lib/WABinary/generic-utils.js +0 -78
  201. package/lib/WABinary/generic-utils.js.map +1 -1
  202. package/lib/WAM/encode.d.ts +1 -1
  203. package/lib/WAM/encode.d.ts.map +1 -1
  204. package/lib/WAUSync/Protocols/USyncContactProtocol.d.ts.map +1 -1
  205. package/lib/WAUSync/Protocols/USyncContactProtocol.js +26 -3
  206. package/lib/WAUSync/Protocols/USyncContactProtocol.js.map +1 -1
  207. package/lib/WAUSync/Protocols/USyncUsernameProtocol.d.ts +10 -0
  208. package/lib/WAUSync/Protocols/USyncUsernameProtocol.d.ts.map +1 -0
  209. package/lib/WAUSync/Protocols/USyncUsernameProtocol.js +25 -0
  210. package/lib/WAUSync/Protocols/USyncUsernameProtocol.js.map +1 -0
  211. package/lib/WAUSync/Protocols/index.d.ts +1 -0
  212. package/lib/WAUSync/Protocols/index.d.ts.map +1 -1
  213. package/lib/WAUSync/Protocols/index.js +1 -0
  214. package/lib/WAUSync/Protocols/index.js.map +1 -1
  215. package/lib/WAUSync/USyncQuery.d.ts +1 -0
  216. package/lib/WAUSync/USyncQuery.d.ts.map +1 -1
  217. package/lib/WAUSync/USyncQuery.js +6 -2
  218. package/lib/WAUSync/USyncQuery.js.map +1 -1
  219. package/lib/WAUSync/USyncUser.d.ts +4 -0
  220. package/lib/WAUSync/USyncUser.d.ts.map +1 -1
  221. package/lib/WAUSync/USyncUser.js +8 -0
  222. package/lib/WAUSync/USyncUser.js.map +1 -1
  223. package/lib/index.d.ts +3 -2
  224. package/lib/index.d.ts.map +1 -1
  225. package/lib/index.js +13 -12
  226. package/lib/index.js.map +1 -1
  227. package/package.json +93 -23
  228. package/LICENSE +0 -21
  229. package/lib/Socket/dugong.d.ts +0 -130
  230. package/lib/Socket/dugong.d.ts.map +0 -1
  231. package/lib/Socket/dugong.js +0 -768
  232. package/lib/Socket/dugong.js.map +0 -1
  233. package/lib/Types/Newsletter.d.ts.map +0 -1
  234. package/lib/Types/Newsletter.js.map +0 -1
  235. package/lib/Utils/kyy-features.d.ts +0 -158
  236. package/lib/Utils/kyy-features.js +0 -365
  237. package/lib/Utils/rich-messages.d.ts +0 -277
  238. package/lib/Utils/rich-messages.d.ts.map +0 -1
  239. package/lib/Utils/rich-messages.js +0 -1144
  240. package/lib/Utils/rich-messages.js.map +0 -1
  241. package/lib/Utils/sticker-pack.d.ts +0 -10
  242. package/lib/Utils/sticker-pack.js +0 -111
@@ -1 +1 @@
1
- {"version":3,"file":"tc-token-utils.d.ts","sourceRoot":"","sources":["../../src/Utils/tc-token-utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,UAAU,CAAA;AAC7D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAE7C,KAAK,aAAa,GAAG;IACpB,GAAG,EAAE,MAAM,CAAA;IACX,WAAW,CAAC,EAAE,UAAU,EAAE,CAAA;IAC1B,SAAS,EAAE;QACV,IAAI,EAAE,6BAA6B,CAAA;KACnC,CAAA;CACD,CAAA;AAED,wBAAsB,mBAAmB,CAAC,EACzC,SAAS,EACT,GAAG,EACH,WAAgB,EAChB,EAAE,aAAa,GAAG,OAAO,CAAC,UAAU,EAAE,GAAG,SAAS,CAAC,CAkBnD"}
1
+ {"version":3,"file":"tc-token-utils.d.ts","sourceRoot":"","sources":["../../src/Utils/tc-token-utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,UAAU,CAAA;AAC7D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAkC7C,iHAAiH;AACjH,eAAO,MAAM,kBAAkB,YAAY,CAAA;AAE3C,4GAA4G;AAC5G,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,6BAA6B,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAW7F;AAED,8GAA8G;AAC9G,wBAAsB,4BAA4B,CACjD,IAAI,EAAE,6BAA6B,EACnC,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC,GACzB,OAAO,CAAC;IAAE,CAAC,kBAAkB,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,CAAC,CAUtD;AAGD,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CASvF;AAED,wBAAgB,oBAAoB,CAAC,eAAe,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAMjF;AAED,uEAAuE;AACvE,wBAAsB,iBAAiB,CACtC,GAAG,EAAE,MAAM,EACX,WAAW,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,GACjD,OAAO,CAAC,MAAM,CAAC,CAIjB;AAED,0EAA0E;AAC1E,wBAAsB,kBAAkB,CACvC,GAAG,EAAE,MAAM,EACX,UAAU,EAAE,OAAO,EACnB,WAAW,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,EACnD,WAAW,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,GACnD,OAAO,CAAC,MAAM,CAAC,CAcjB;AAED,KAAK,aAAa,GAAG;IACpB,GAAG,EAAE,MAAM,CAAA;IACX,WAAW,CAAC,EAAE,UAAU,EAAE,CAAA;IAC1B,SAAS,EAAE;QACV,IAAI,EAAE,6BAA6B,CAAA;KACnC,CAAA;IACD,WAAW,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAA;CACnD,CAAA;AAED,wBAAsB,mBAAmB,CAAC,EACzC,SAAS,EACT,GAAG,EACH,WAAgB,EAChB,WAAW,EACX,EAAE,aAAa,GAAG,OAAO,CAAC,UAAU,EAAE,GAAG,SAAS,CAAC,CAiCnD;AAED,KAAK,mBAAmB,GAAG;IAC1B,MAAM,EAAE,UAAU,CAAA;IAClB,WAAW,EAAE,MAAM,CAAA;IACnB,IAAI,EAAE,6BAA6B,CAAA;IACnC,WAAW,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAA;IACnD,cAAc,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAA;CACtC,CAAA;AAED,wBAAsB,yBAAyB,CAAC,EAC/C,MAAM,EACN,WAAW,EACX,IAAI,EACJ,WAAW,EACX,cAAc,EACd,EAAE,mBAAmB,iBAkCrB"}
@@ -1,12 +1,123 @@
1
- export async function buildTcTokenFromJid({ authState, jid, baseContent = [] }) {
1
+ import { getBinaryNodeChild, getBinaryNodeChildren, isHostedLidUser, isHostedPnUser, isJidMetaAI, isLidUser, isPnUser, jidNormalizedUser } from '../WABinary/index.js';
2
+ // Same phone-number pattern as WABinary's isJidBot, applied against the user
3
+ // part so the check is invariant to @c.us ↔ @s.whatsapp.net normalization.
4
+ const BOT_PHONE_REGEX = /^1313555\d{4}$|^131655500\d{2}$/;
5
+ /**
6
+ * Mirrors WA Web's `Wid.isRegularUser()` (user ∧ ¬PSA ∧ ¬Bot). Used to gate tctoken
7
+ * storage against malformed notifications — WA Web filters server-side but we
8
+ * defend here for parity with `WAWebSetTcTokenChatAction.handleIncomingTcToken`.
9
+ * Works for both pre- and post-normalized JIDs (`@c.us` vs `@s.whatsapp.net`).
10
+ */
11
+ function isRegularUser(jid) {
12
+ if (!jid)
13
+ return false;
14
+ const user = jid.split('@')[0] ?? '';
15
+ if (user === '0')
16
+ return false; // PSA
17
+ if (BOT_PHONE_REGEX.test(user))
18
+ return false; // Bot by phone pattern
19
+ if (isJidMetaAI(jid))
20
+ return false; // MetaAI (@bot server)
21
+ return !!(isPnUser(jid) || isLidUser(jid) || isHostedPnUser(jid) || isHostedLidUser(jid) || jid.endsWith('@c.us'));
22
+ }
23
+ const TC_TOKEN_BUCKET_DURATION = 604800; // 7 days
24
+ const TC_TOKEN_NUM_BUCKETS = 4; // ~28-day rolling window
25
+ /** Sentinel key under `tctoken` store holding a JSON array of tracked storage JIDs for cross-session pruning. */
26
+ export const TC_TOKEN_INDEX_KEY = '__index';
27
+ /** Read the persisted tctoken JID index and return its entries (never contains the sentinel key itself). */
28
+ export async function readTcTokenIndex(keys) {
29
+ const data = await keys.get('tctoken', [TC_TOKEN_INDEX_KEY]);
30
+ const entry = data[TC_TOKEN_INDEX_KEY];
31
+ if (!entry?.token?.length)
32
+ return [];
33
+ try {
34
+ const parsed = JSON.parse(Buffer.from(entry.token).toString());
35
+ if (!Array.isArray(parsed))
36
+ return [];
37
+ return parsed.filter((j) => typeof j === 'string' && j.length > 0 && j !== TC_TOKEN_INDEX_KEY);
38
+ }
39
+ catch {
40
+ return [];
41
+ }
42
+ }
43
+ /** Build a SignalDataSet fragment that writes the merged index (persisted ∪ added) under the sentinel key. */
44
+ export async function buildMergedTcTokenIndexWrite(keys, addedJids) {
45
+ const persisted = await readTcTokenIndex(keys);
46
+ const merged = new Set(persisted);
47
+ for (const jid of addedJids) {
48
+ if (jid && jid !== TC_TOKEN_INDEX_KEY)
49
+ merged.add(jid);
50
+ }
51
+ return {
52
+ [TC_TOKEN_INDEX_KEY]: { token: Buffer.from(JSON.stringify([...merged])) }
53
+ };
54
+ }
55
+ // WA Web has separate sender/receiver AB props for these but they're identical today
56
+ export function isTcTokenExpired(timestamp) {
57
+ if (timestamp === null || timestamp === undefined)
58
+ return true;
59
+ const ts = typeof timestamp === 'string' ? parseInt(timestamp) : timestamp;
60
+ if (isNaN(ts))
61
+ return true;
62
+ const now = Math.floor(Date.now() / 1000);
63
+ const currentBucket = Math.floor(now / TC_TOKEN_BUCKET_DURATION);
64
+ const cutoffBucket = currentBucket - (TC_TOKEN_NUM_BUCKETS - 1);
65
+ const cutoffTimestamp = cutoffBucket * TC_TOKEN_BUCKET_DURATION;
66
+ return ts < cutoffTimestamp;
67
+ }
68
+ export function shouldSendNewTcToken(senderTimestamp) {
69
+ if (senderTimestamp === undefined)
70
+ return true;
71
+ const now = Math.floor(Date.now() / 1000);
72
+ const currentBucket = Math.floor(now / TC_TOKEN_BUCKET_DURATION);
73
+ const senderBucket = Math.floor(senderTimestamp / TC_TOKEN_BUCKET_DURATION);
74
+ return currentBucket > senderBucket;
75
+ }
76
+ /** Resolve JID to LID for tctoken storage (WA Web stores under LID) */
77
+ export async function resolveTcTokenJid(jid, getLIDForPN) {
78
+ if (isLidUser(jid))
79
+ return jid;
80
+ const lid = await getLIDForPN(jid);
81
+ return lid ?? jid;
82
+ }
83
+ /** Resolve target JID for issuing privacy token based on AB prop 14303 */
84
+ export async function resolveIssuanceJid(jid, issueToLid, getLIDForPN, getPNForLID) {
85
+ if (issueToLid) {
86
+ if (isLidUser(jid))
87
+ return jid;
88
+ const lid = await getLIDForPN(jid);
89
+ return lid ?? jid;
90
+ }
91
+ if (!isLidUser(jid))
92
+ return jid;
93
+ if (getPNForLID) {
94
+ const pn = await getPNForLID(jid);
95
+ return pn ?? jid;
96
+ }
97
+ return jid;
98
+ }
99
+ export async function buildTcTokenFromJid({ authState, jid, baseContent = [], getLIDForPN }) {
2
100
  try {
3
- const tcTokenData = await authState.keys.get('tctoken', [jid]);
4
- const tcTokenBuffer = tcTokenData?.[jid]?.token;
5
- if (!tcTokenBuffer)
101
+ const storageJid = await resolveTcTokenJid(jid, getLIDForPN);
102
+ const tcTokenData = await authState.keys.get('tctoken', [storageJid]);
103
+ const entry = tcTokenData?.[storageJid];
104
+ const tcTokenBuffer = entry?.token;
105
+ const timestamp = entry?.timestamp;
106
+ if (!tcTokenBuffer?.length || timestamp === undefined || isTcTokenExpired(timestamp)) {
107
+ if (tcTokenBuffer) {
108
+ // Preserve senderTimestamp so shouldSendNewTcToken() keeps its dedupe state
109
+ // after we drop the unusable peer token. Only wipe the record entirely when
110
+ // there's nothing worth keeping.
111
+ const cleared = entry?.senderTimestamp !== undefined
112
+ ? { token: Buffer.alloc(0), senderTimestamp: entry.senderTimestamp }
113
+ : null;
114
+ await authState.keys.set({ tctoken: { [storageJid]: cleared } });
115
+ }
6
116
  return baseContent.length > 0 ? baseContent : undefined;
117
+ }
7
118
  baseContent.push({
8
119
  tag: 'tctoken',
9
- attrs: {},
120
+ attrs: { t: String(timestamp) },
10
121
  content: tcTokenBuffer
11
122
  });
12
123
  return baseContent;
@@ -15,4 +126,39 @@ export async function buildTcTokenFromJid({ authState, jid, baseContent = [] })
15
126
  return baseContent.length > 0 ? baseContent : undefined;
16
127
  }
17
128
  }
129
+ export async function storeTcTokensFromIqResult({ result, fallbackJid, keys, getLIDForPN, onNewJidStored }) {
130
+ const tokensNode = getBinaryNodeChild(result, 'tokens');
131
+ if (!tokensNode)
132
+ return;
133
+ const tokenNodes = getBinaryNodeChildren(tokensNode, 'token');
134
+ for (const tokenNode of tokenNodes) {
135
+ if (tokenNode.attrs.type !== 'trusted_contact' || !(tokenNode.content instanceof Uint8Array)) {
136
+ continue;
137
+ }
138
+ // In notifications tokenNode.attrs.jid is your own device JID, not the sender's
139
+ const rawJid = jidNormalizedUser(fallbackJid || tokenNode.attrs.jid);
140
+ if (!isRegularUser(rawJid))
141
+ continue;
142
+ const storageJid = await resolveTcTokenJid(rawJid, getLIDForPN);
143
+ const existingTcData = await keys.get('tctoken', [storageJid]);
144
+ const existingEntry = existingTcData[storageJid];
145
+ const existingTs = existingEntry?.timestamp ? Number(existingEntry.timestamp) : 0;
146
+ const incomingTs = tokenNode.attrs.t ? Number(tokenNode.attrs.t) : 0;
147
+ // timestamp-less tokens would be immediately expired
148
+ if (!incomingTs)
149
+ continue;
150
+ if (existingTs > 0 && existingTs > incomingTs)
151
+ continue;
152
+ await keys.set({
153
+ tctoken: {
154
+ [storageJid]: {
155
+ ...existingEntry,
156
+ token: Buffer.from(tokenNode.content),
157
+ timestamp: tokenNode.attrs.t
158
+ }
159
+ }
160
+ });
161
+ onNewJidStored?.(storageJid);
162
+ }
163
+ }
18
164
  //# sourceMappingURL=tc-token-utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tc-token-utils.js","sourceRoot":"","sources":["../../src/Utils/tc-token-utils.ts"],"names":[],"mappings":"AAWA,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,EACzC,SAAS,EACT,GAAG,EACH,WAAW,GAAG,EAAE,EACD;IACf,IAAI,CAAC;QACJ,MAAM,WAAW,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,GAAG,CAAC,CAAC,CAAA;QAE9D,MAAM,aAAa,GAAG,WAAW,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,CAAA;QAE/C,IAAI,CAAC,aAAa;YAAE,OAAO,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAA;QAE3E,WAAW,CAAC,IAAI,CAAC;YAChB,GAAG,EAAE,SAAS;YACd,KAAK,EAAE,EAAE;YACT,OAAO,EAAE,aAAa;SACtB,CAAC,CAAA;QAEF,OAAO,WAAW,CAAA;IACnB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,OAAO,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAA;IACxD,CAAC;AACF,CAAC"}
1
+ {"version":3,"file":"tc-token-utils.js","sourceRoot":"","sources":["../../src/Utils/tc-token-utils.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"validate-connection.d.ts","sourceRoot":"","sources":["../../src/Utils/validate-connection.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAA;AAO9C,OAAO,KAAK,EAAE,mBAAmB,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAC9E,OAAO,EAAE,KAAK,UAAU,EAAiD,MAAM,aAAa,CAAA;AAuD5F,eAAO,MAAM,iBAAiB,GAAI,SAAS,MAAM,EAAE,QAAQ,YAAY,KAAG,KAAK,CAAC,cAY/E,CAAA;AAUD,eAAO,MAAM,wBAAwB,GACpC,qDAAqD,WAAW,EAChE,QAAQ,YAAY,wBAuDpB,CAAA;AAED,eAAO,MAAM,0BAA0B,GACtC,QAAQ,UAAU,EAClB,uDAIG,IAAI,CAAC,mBAAmB,EAAE,cAAc,GAAG,mBAAmB,GAAG,kBAAkB,CAAC;;;CAyFvF,CAAA;AAED,eAAO,MAAM,0BAA0B,GAAI,SAAS,KAAK,CAAC,wBAAwB,EAAE,qBAAqB,OAAO,gCAS/G,CAAA"}
1
+ {"version":3,"file":"validate-connection.d.ts","sourceRoot":"","sources":["../../src/Utils/validate-connection.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAA;AAO9C,OAAO,KAAK,EAAE,mBAAmB,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAC9E,OAAO,EAAE,KAAK,UAAU,EAAiD,MAAM,aAAa,CAAA;AA+D5F,eAAO,MAAM,iBAAiB,GAAI,SAAS,MAAM,EAAE,QAAQ,YAAY,KAAG,KAAK,CAAC,cAY/E,CAAA;AAcD,eAAO,MAAM,wBAAwB,GACpC,qDAAqD,WAAW,EAChE,QAAQ,YAAY,wBAuDpB,CAAA;AAED,eAAO,MAAM,0BAA0B,GACtC,QAAQ,UAAU,EAClB,uDAIG,IAAI,CAAC,mBAAmB,EAAE,cAAc,GAAG,mBAAmB,GAAG,kBAAkB,CAAC;;;CAyFvF,CAAA;AAED,eAAO,MAAM,0BAA0B,GAAI,SAAS,KAAK,CAAC,wBAAwB,EAAE,qBAAqB,OAAO,gCAS/G,CAAA"}
@@ -13,7 +13,9 @@ const getUserAgent = (config) => {
13
13
  secondary: config.version[1],
14
14
  tertiary: config.version[2]
15
15
  },
16
- platform: proto.ClientPayload.UserAgent.Platform.WEB,
16
+ platform: config.browser[1].toLocaleLowerCase().includes('android')
17
+ ? proto.ClientPayload.UserAgent.Platform.ANDROID
18
+ : proto.ClientPayload.UserAgent.Platform.WEB,
17
19
  releaseChannel: proto.ClientPayload.UserAgent.ReleaseChannel.RELEASE,
18
20
  osVersion: '0.1',
19
21
  device: 'Desktop',
@@ -43,7 +45,12 @@ const getClientPayload = (config) => {
43
45
  connectReason: proto.ClientPayload.ConnectReason.USER_ACTIVATED,
44
46
  userAgent: getUserAgent(config)
45
47
  };
46
- payload.webInfo = getWebInfo(config);
48
+ if (!config.browser[1].toLocaleLowerCase().includes('android')) {
49
+ payload.webInfo = getWebInfo(config);
50
+ }
51
+ if (config.pushName) {
52
+ payload.pushName = config.pushName;
53
+ }
47
54
  return payload;
48
55
  };
49
56
  export const generateLoginNode = (userJid, config) => {
@@ -61,6 +68,9 @@ export const generateLoginNode = (userJid, config) => {
61
68
  };
62
69
  const getPlatformType = (platform) => {
63
70
  const platformType = platform.toUpperCase();
71
+ if (platformType === 'ANDROID') {
72
+ return proto.DeviceProps.PlatformType.ANDROID_PHONE;
73
+ }
64
74
  return (proto.DeviceProps.PlatformType[platformType] ||
65
75
  proto.DeviceProps.PlatformType.CHROME);
66
76
  };
@@ -1 +1 @@
1
- {"version":3,"file":"validate-connection.js","sourceRoot":"","sources":["../../src/Utils/validate-connection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validate-connection.js","sourceRoot":"","sources":["../../src/Utils/validate-connection.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import type { BinaryNode, BinaryNodeCodingOptions } from './types.js';
2
- export declare const decompressingIfRequired: (buffer: Buffer) => Promise<Buffer>;
2
+ export declare const decompressingIfRequired: (buffer: Buffer) => Promise<Buffer<ArrayBufferLike>>;
3
3
  export declare const decodeDecompressedBinaryNode: (buffer: Buffer, opts: Pick<BinaryNodeCodingOptions, "DOUBLE_BYTE_TOKENS" | "SINGLE_BYTE_TOKENS" | "TAGS">, indexRef?: {
4
4
  index: number;
5
5
  }) => BinaryNode;
@@ -1 +1 @@
1
- {"version":3,"file":"decode.d.ts","sourceRoot":"","sources":["../../src/WABinary/decode.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAA;AAIlE,eAAO,MAAM,uBAAuB,GAAU,QAAQ,MAAM,oBAS3D,CAAA;AAED,eAAO,MAAM,4BAA4B,GACxC,QAAQ,MAAM,EACd,MAAM,IAAI,CAAC,uBAAuB,EAAE,oBAAoB,GAAG,oBAAoB,GAAG,MAAM,CAAC,EACzF,WAAU;IAAE,KAAK,EAAE,MAAM,CAAA;CAAiB,KACxC,UAuRF,CAAA;AAED,eAAO,MAAM,gBAAgB,GAAU,MAAM,MAAM,KAAG,OAAO,CAAC,UAAU,CAGvE,CAAA"}
1
+ {"version":3,"file":"decode.d.ts","sourceRoot":"","sources":["../../src/WABinary/decode.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAA;AAIlE,eAAO,MAAM,uBAAuB,GAAU,QAAQ,MAAM,qCAS3D,CAAA;AAED,eAAO,MAAM,4BAA4B,GACxC,QAAQ,MAAM,EACd,MAAM,IAAI,CAAC,uBAAuB,EAAE,oBAAoB,GAAG,oBAAoB,GAAG,MAAM,CAAC,EACzF,WAAU;IAAE,KAAK,EAAE,MAAM,CAAA;CAAiB,KACxC,UAuRF,CAAA;AAED,eAAO,MAAM,gBAAgB,GAAU,MAAM,MAAM,KAAG,OAAO,CAAC,UAAU,CAGvE,CAAA"}
@@ -3,7 +3,7 @@ import { type BinaryNode } from './types.js';
3
3
  export declare const getBinaryNodeChildren: (node: BinaryNode | undefined, childTag: string) => BinaryNode[];
4
4
  export declare const getBinaryNodeChild: (node: BinaryNode | undefined, childTag: string) => BinaryNode | undefined;
5
5
  export declare const getAllBinaryNodeChildren: ({ content }: BinaryNode) => BinaryNode[];
6
- export declare const getBinaryNodeChildBuffer: (node: BinaryNode | undefined, childTag: string) => Uint8Array<ArrayBufferLike> | (BinaryNode[] & Buffer) | (string & Buffer) | undefined;
6
+ export declare const getBinaryNodeChildBuffer: (node: BinaryNode | undefined, childTag: string) => Uint8Array<ArrayBufferLike> | Buffer<ArrayBufferLike> | undefined;
7
7
  export declare const getBinaryNodeChildString: (node: BinaryNode | undefined, childTag: string) => string | undefined;
8
8
  export declare const getBinaryNodeChildUInt: (node: BinaryNode, childTag: string, length: number) => number | undefined;
9
9
  export declare const assertNodeErrorFree: (node: BinaryNode) => void;
@@ -12,6 +12,4 @@ export declare const reduceBinaryNodeToDictionary: (node: BinaryNode, tag: strin
12
12
  };
13
13
  export declare const getBinaryNodeMessages: ({ content }: BinaryNode) => proto.WebMessageInfo[];
14
14
  export declare function binaryNodeToString(node: BinaryNode | BinaryNode['content'], i?: number): string;
15
- export declare const getBinaryNodeFilter: (node: BinaryNode[] | undefined) => boolean;
16
- export declare const getAdditionalNode: (name: string) => BinaryNode[];
17
15
  //# sourceMappingURL=generic-utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"generic-utils.d.ts","sourceRoot":"","sources":["../../src/WABinary/generic-utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAA;AAE9C,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,SAAS,CAAA;AAMzC,eAAO,MAAM,qBAAqB,GAAI,MAAM,UAAU,GAAG,SAAS,EAAE,UAAU,MAAM,iBAoBnF,CAAA;AAED,eAAO,MAAM,kBAAkB,GAAI,MAAM,UAAU,GAAG,SAAS,EAAE,UAAU,MAAM,2BAEhF,CAAA;AAED,eAAO,MAAM,wBAAwB,GAAI,aAAa,UAAU,iBAM/D,CAAA;AAED,eAAO,MAAM,wBAAwB,GAAI,MAAM,UAAU,GAAG,SAAS,EAAE,UAAU,MAAM,0FAKtF,CAAA;AAED,eAAO,MAAM,wBAAwB,GAAI,MAAM,UAAU,GAAG,SAAS,EAAE,UAAU,MAAM,uBAOtF,CAAA;AAED,eAAO,MAAM,sBAAsB,GAAI,MAAM,UAAU,EAAE,UAAU,MAAM,EAAE,QAAQ,MAAM,uBAKxF,CAAA;AAED,eAAO,MAAM,mBAAmB,GAAI,MAAM,UAAU,SAKnD,CAAA;AAED,eAAO,MAAM,4BAA4B,GAAI,MAAM,UAAU,EAAE,KAAK,MAAM;;CAezE,CAAA;AAED,eAAO,MAAM,qBAAqB,GAAI,aAAa,UAAU,2BAW5D,CAAA;AAaD,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,UAAU,GAAG,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC,SAAI,GAAG,MAAM,CA2B1F;AAED,eAAO,MAAM,mBAAmB,GAAI,MAAM,UAAU,EAAE,GAAG,SAAS,KAAG,OAQpE,CAAA;AAmBD,eAAO,MAAM,iBAAiB,GAAI,MAAM,MAAM,KAAG,UAAU,EAwD1D,CAAA"}
1
+ {"version":3,"file":"generic-utils.d.ts","sourceRoot":"","sources":["../../src/WABinary/generic-utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAA;AAC9C,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,SAAS,CAAA;AAMzC,eAAO,MAAM,qBAAqB,GAAI,MAAM,UAAU,GAAG,SAAS,EAAE,UAAU,MAAM,iBAoBnF,CAAA;AAED,eAAO,MAAM,kBAAkB,GAAI,MAAM,UAAU,GAAG,SAAS,EAAE,UAAU,MAAM,2BAEhF,CAAA;AAED,eAAO,MAAM,wBAAwB,GAAI,aAAa,UAAU,iBAM/D,CAAA;AAED,eAAO,MAAM,wBAAwB,GAAI,MAAM,UAAU,GAAG,SAAS,EAAE,UAAU,MAAM,sEAKtF,CAAA;AAED,eAAO,MAAM,wBAAwB,GAAI,MAAM,UAAU,GAAG,SAAS,EAAE,UAAU,MAAM,uBAOtF,CAAA;AAED,eAAO,MAAM,sBAAsB,GAAI,MAAM,UAAU,EAAE,UAAU,MAAM,EAAE,QAAQ,MAAM,uBAKxF,CAAA;AAED,eAAO,MAAM,mBAAmB,GAAI,MAAM,UAAU,SAKnD,CAAA;AAED,eAAO,MAAM,4BAA4B,GAAI,MAAM,UAAU,EAAE,KAAK,MAAM;;CAezE,CAAA;AAED,eAAO,MAAM,qBAAqB,GAAI,aAAa,UAAU,2BAW5D,CAAA;AAaD,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,UAAU,GAAG,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC,SAAI,GAAG,MAAM,CA2B1F"}
@@ -1,6 +1,5 @@
1
1
  import { Boom } from '@hapi/boom';
2
2
  import { proto } from '../../WAProto/index.js';
3
- import { unixTimestampSeconds } from '../Utils/generics.js';
4
3
  import {} from './types.js';
5
4
  // some extra useful utilities
6
5
  const indexCache = new WeakMap();
@@ -111,81 +110,4 @@ export function binaryNodeToString(node, i = 0) {
111
110
  const content = children ? `>\n${children}\n${tabs(i)}</${node.tag}>` : '/>';
112
111
  return tag + content;
113
112
  }
114
- export const getBinaryNodeFilter = (node) => {
115
- if (!Array.isArray(node))
116
- return false;
117
- return node.some((item) => ['native_flow'].includes(item?.content?.[0]?.content?.[0]?.tag) ||
118
- ['interactive', 'buttons', 'list'].includes(item?.content?.[0]?.tag) ||
119
- ['hsm', 'biz'].includes(item?.tag) ||
120
- (['bot'].includes(item?.tag) && item?.attrs?.biz_bot === '1'));
121
- };
122
- const ORDER_RESPONSE_NAME = {
123
- review_and_pay: 'order_details',
124
- review_order: 'order_status',
125
- payment_info: 'payment_info',
126
- payment_status: 'payment_status',
127
- payment_method: 'payment_method'
128
- };
129
- const FLOW_NAME = {
130
- cta_catalog: 'cta_catalog',
131
- mpm: 'mpm',
132
- call_request: 'call_permission_request',
133
- view_catalog: 'automated_greeting_message_view_catalog',
134
- wa_pay_detail: 'wa_payment_transaction_details',
135
- send_location: 'send_location'
136
- };
137
- export const getAdditionalNode = (name) => {
138
- const lowerName = name?.toLowerCase();
139
- const ts = unixTimestampSeconds(new Date()) - 77980457;
140
- if (ORDER_RESPONSE_NAME[lowerName]) {
141
- return [{
142
- tag: 'biz',
143
- attrs: { native_flow_name: ORDER_RESPONSE_NAME[lowerName] },
144
- content: []
145
- }];
146
- }
147
- if (FLOW_NAME[lowerName] || lowerName === 'interactive' || lowerName === 'buttons' || lowerName === 'list') {
148
- return [{
149
- tag: 'biz',
150
- attrs: {
151
- actual_actors: '2',
152
- host_storage: '2',
153
- privacy_mode_ts: `${ts}`
154
- },
155
- content: [{
156
- tag: 'engagement',
157
- attrs: {
158
- customer_service_state: 'open',
159
- conversation_state: 'open'
160
- }
161
- }, {
162
- tag: 'interactive',
163
- attrs: { type: 'native_flow', v: '1' },
164
- content: [{
165
- tag: 'native_flow',
166
- attrs: {
167
- v: '9',
168
- name: FLOW_NAME[lowerName] ?? 'mixed'
169
- },
170
- content: []
171
- }]
172
- }]
173
- }];
174
- }
175
- return [{
176
- tag: 'biz',
177
- attrs: {
178
- actual_actors: '2',
179
- host_storage: '2',
180
- privacy_mode_ts: `${ts}`
181
- },
182
- content: [{
183
- tag: 'engagement',
184
- attrs: {
185
- customer_service_state: 'open',
186
- conversation_state: 'open'
187
- }
188
- }]
189
- }];
190
- };
191
113
  //# sourceMappingURL=generic-utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"generic-utils.js","sourceRoot":"","sources":["../../src/WABinary/generic-utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generic-utils.js","sourceRoot":"","sources":["../../src/WABinary/generic-utils.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,3 @@
1
1
  import { BinaryInfo } from './BinaryInfo.js';
2
- export declare const encodeWAM: (binaryInfo: BinaryInfo) => Buffer;
2
+ export declare const encodeWAM: (binaryInfo: BinaryInfo) => Buffer<ArrayBuffer>;
3
3
  //# sourceMappingURL=encode.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"encode.d.ts","sourceRoot":"","sources":["../../src/WAM/encode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAczC,eAAO,MAAM,SAAS,GAAI,YAAY,UAAU,WAe/C,CAAA"}
1
+ {"version":3,"file":"encode.d.ts","sourceRoot":"","sources":["../../src/WAM/encode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAczC,eAAO,MAAM,SAAS,GAAI,YAAY,UAAU,wBAe/C,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"USyncContactProtocol.d.ts","sourceRoot":"","sources":["../../../src/WAUSync/Protocols/USyncContactProtocol.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AAC3D,OAAO,EAAuB,KAAK,UAAU,EAAE,MAAM,gBAAgB,CAAA;AACrE,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAExC,qBAAa,oBAAqB,YAAW,kBAAkB;IAC9D,IAAI,SAAY;IAEhB,eAAe,IAAI,UAAU;IAO7B,cAAc,CAAC,IAAI,EAAE,SAAS,GAAG,UAAU;IAS3C,MAAM,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO;CAQjC"}
1
+ {"version":3,"file":"USyncContactProtocol.d.ts","sourceRoot":"","sources":["../../../src/WAUSync/Protocols/USyncContactProtocol.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AAC3D,OAAO,EAAuB,KAAK,UAAU,EAAE,MAAM,gBAAgB,CAAA;AACrE,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAExC,qBAAa,oBAAqB,YAAW,kBAAkB;IAC9D,IAAI,SAAY;IAEhB,eAAe,IAAI,UAAU;IAO7B,cAAc,CAAC,IAAI,EAAE,SAAS,GAAG,UAAU;IAmC3C,MAAM,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO;CAQjC"}
@@ -11,11 +11,34 @@ export class USyncContactProtocol {
11
11
  };
12
12
  }
13
13
  getUserElement(user) {
14
- //TODO: Implement type / username fields (not yet supported)
14
+ if (user.phone) {
15
+ return {
16
+ tag: 'contact',
17
+ attrs: {},
18
+ content: user.phone
19
+ };
20
+ }
21
+ if (user.username) {
22
+ return {
23
+ tag: 'contact',
24
+ attrs: {
25
+ username: user.username,
26
+ ...(user.usernameKey ? { pin: user.usernameKey } : {}),
27
+ ...(user.lid ? { lid: user.lid } : {})
28
+ }
29
+ };
30
+ }
31
+ if (user.type) {
32
+ return {
33
+ tag: 'contact',
34
+ attrs: {
35
+ type: user.type
36
+ }
37
+ };
38
+ }
15
39
  return {
16
40
  tag: 'contact',
17
- attrs: {},
18
- content: user.phone
41
+ attrs: {}
19
42
  };
20
43
  }
21
44
  parser(node) {
@@ -1 +1 @@
1
- {"version":3,"file":"USyncContactProtocol.js","sourceRoot":"","sources":["../../../src/WAUSync/Protocols/USyncContactProtocol.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAmB,MAAM,gBAAgB,CAAA;AACrE,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAExC,MAAM,OAAO,oBAAoB;IAAjC;QACC,SAAI,GAAG,SAAS,CAAA;IA0BjB,CAAC;IAxBA,eAAe;QACd,OAAO;YACN,GAAG,EAAE,SAAS;YACd,KAAK,EAAE,EAAE;SACT,CAAA;IACF,CAAC;IAED,cAAc,CAAC,IAAe;QAC7B,4DAA4D;QAC5D,OAAO;YACN,GAAG,EAAE,SAAS;YACd,KAAK,EAAE,EAAE;YACT,OAAO,EAAE,IAAI,CAAC,KAAK;SACnB,CAAA;IACF,CAAC;IAED,MAAM,CAAC,IAAgB;QACtB,IAAI,IAAI,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;YAC5B,mBAAmB,CAAC,IAAI,CAAC,CAAA;YACzB,OAAO,IAAI,EAAE,KAAK,EAAE,IAAI,KAAK,IAAI,CAAA;QAClC,CAAC;QAED,OAAO,KAAK,CAAA;IACb,CAAC;CACD"}
1
+ {"version":3,"file":"USyncContactProtocol.js","sourceRoot":"","sources":["../../../src/WAUSync/Protocols/USyncContactProtocol.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAmB,MAAM,gBAAgB,CAAA;AACrE,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAExC,MAAM,OAAO,oBAAoB;IAAjC;QACC,SAAI,GAAG,SAAS,CAAA;IAoDjB,CAAC;IAlDA,eAAe;QACd,OAAO;YACN,GAAG,EAAE,SAAS;YACd,KAAK,EAAE,EAAE;SACT,CAAA;IACF,CAAC;IAED,cAAc,CAAC,IAAe;QAC7B,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YAChB,OAAO;gBACN,GAAG,EAAE,SAAS;gBACd,KAAK,EAAE,EAAE;gBACT,OAAO,EAAE,IAAI,CAAC,KAAK;aACnB,CAAA;QACF,CAAC;QAED,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,OAAO;gBACN,GAAG,EAAE,SAAS;gBACd,KAAK,EAAE;oBACN,QAAQ,EAAE,IAAI,CAAC,QAAQ;oBACvB,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACtD,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBACtC;aACD,CAAA;QACF,CAAC;QAED,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACf,OAAO;gBACN,GAAG,EAAE,SAAS;gBACd,KAAK,EAAE;oBACN,IAAI,EAAE,IAAI,CAAC,IAAI;iBACf;aACD,CAAA;QACF,CAAC;QAED,OAAO;YACN,GAAG,EAAE,SAAS;YACd,KAAK,EAAE,EAAE;SACT,CAAA;IACF,CAAC;IAED,MAAM,CAAC,IAAgB;QACtB,IAAI,IAAI,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;YAC5B,mBAAmB,CAAC,IAAI,CAAC,CAAA;YACzB,OAAO,IAAI,EAAE,KAAK,EAAE,IAAI,KAAK,IAAI,CAAA;QAClC,CAAC;QAED,OAAO,KAAK,CAAA;IACb,CAAC;CACD"}
@@ -0,0 +1,10 @@
1
+ import type { USyncQueryProtocol } from '../../Types/USync.js';
2
+ import { type BinaryNode } from '../../WABinary/index.js';
3
+ import { USyncUser } from '../USyncUser.js';
4
+ export declare class USyncUsernameProtocol implements USyncQueryProtocol {
5
+ name: string;
6
+ getQueryElement(): BinaryNode;
7
+ getUserElement(user: USyncUser): BinaryNode | null;
8
+ parser(node: BinaryNode): string | null;
9
+ }
10
+ //# sourceMappingURL=USyncUsernameProtocol.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"USyncUsernameProtocol.d.ts","sourceRoot":"","sources":["../../../src/WAUSync/Protocols/USyncUsernameProtocol.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AAC3D,OAAO,EAAuB,KAAK,UAAU,EAAE,MAAM,gBAAgB,CAAA;AACrE,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAExC,qBAAa,qBAAsB,YAAW,kBAAkB;IAC/D,IAAI,SAAa;IAEjB,eAAe,IAAI,UAAU;IAO7B,cAAc,CAAC,IAAI,EAAE,SAAS,GAAG,UAAU,GAAG,IAAI;IAKlD,MAAM,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,GAAG,IAAI;CAQvC"}
@@ -0,0 +1,25 @@
1
+ import { assertNodeErrorFree } from '../../WABinary/index.js';
2
+ import { USyncUser } from '../USyncUser.js';
3
+ export class USyncUsernameProtocol {
4
+ constructor() {
5
+ this.name = 'username';
6
+ }
7
+ getQueryElement() {
8
+ return {
9
+ tag: 'username',
10
+ attrs: {}
11
+ };
12
+ }
13
+ getUserElement(user) {
14
+ void user;
15
+ return null;
16
+ }
17
+ parser(node) {
18
+ if (node.tag === 'username') {
19
+ assertNodeErrorFree(node);
20
+ return typeof node.content === 'string' ? node.content : null;
21
+ }
22
+ return null;
23
+ }
24
+ }
25
+ //# sourceMappingURL=USyncUsernameProtocol.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"USyncUsernameProtocol.js","sourceRoot":"","sources":["../../../src/WAUSync/Protocols/USyncUsernameProtocol.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAmB,MAAM,gBAAgB,CAAA;AACrE,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAExC,MAAM,OAAO,qBAAqB;IAAlC;QACC,SAAI,GAAG,UAAU,CAAA;IAsBlB,CAAC;IApBA,eAAe;QACd,OAAO;YACN,GAAG,EAAE,UAAU;YACf,KAAK,EAAE,EAAE;SACT,CAAA;IACF,CAAC;IAED,cAAc,CAAC,IAAe;QAC7B,KAAK,IAAI,CAAA;QACT,OAAO,IAAI,CAAA;IACZ,CAAC;IAED,MAAM,CAAC,IAAgB;QACtB,IAAI,IAAI,CAAC,GAAG,KAAK,UAAU,EAAE,CAAC;YAC7B,mBAAmB,CAAC,IAAI,CAAC,CAAA;YACzB,OAAO,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAA;QAC9D,CAAC;QAED,OAAO,IAAI,CAAA;IACZ,CAAC;CACD"}
@@ -2,4 +2,5 @@ export * from './USyncDeviceProtocol.js';
2
2
  export * from './USyncContactProtocol.js';
3
3
  export * from './USyncStatusProtocol.js';
4
4
  export * from './USyncDisappearingModeProtocol.js';
5
+ export * from './USyncUsernameProtocol.js';
5
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/WAUSync/Protocols/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAA;AACrC,cAAc,wBAAwB,CAAA;AACtC,cAAc,uBAAuB,CAAA;AACrC,cAAc,iCAAiC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/WAUSync/Protocols/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAA;AACrC,cAAc,wBAAwB,CAAA;AACtC,cAAc,uBAAuB,CAAA;AACrC,cAAc,iCAAiC,CAAA;AAC/C,cAAc,yBAAyB,CAAA"}
@@ -2,4 +2,5 @@ export * from './USyncDeviceProtocol.js';
2
2
  export * from './USyncContactProtocol.js';
3
3
  export * from './USyncStatusProtocol.js';
4
4
  export * from './USyncDisappearingModeProtocol.js';
5
+ export * from './USyncUsernameProtocol.js';
5
6
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/WAUSync/Protocols/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAA;AACrC,cAAc,wBAAwB,CAAA;AACtC,cAAc,uBAAuB,CAAA;AACrC,cAAc,iCAAiC,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/WAUSync/Protocols/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAA;AACrC,cAAc,wBAAwB,CAAA;AACtC,cAAc,uBAAuB,CAAA;AACrC,cAAc,iCAAiC,CAAA;AAC/C,cAAc,yBAAyB,CAAA"}
@@ -25,5 +25,6 @@ export declare class USyncQuery {
25
25
  withDisappearingModeProtocol(): this;
26
26
  withBotProfileProtocol(): this;
27
27
  withLIDProtocol(): this;
28
+ withUsernameProtocol(): this;
28
29
  }
29
30
  //# sourceMappingURL=USyncQuery.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"USyncQuery.d.ts","sourceRoot":"","sources":["../../src/WAUSync/USyncQuery.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AACxD,OAAO,EAAE,KAAK,UAAU,EAAsB,MAAM,aAAa,CAAA;AASjE,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAEvC,MAAM,MAAM,oBAAoB,GAAG;IAAE,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,CAAA;AAE9E,MAAM,MAAM,gBAAgB,GAAG;IAC9B,IAAI,EAAE,oBAAoB,EAAE,CAAA;IAC5B,QAAQ,EAAE,oBAAoB,EAAE,CAAA;CAChC,CAAA;AAED,qBAAa,UAAU;IACtB,SAAS,EAAE,kBAAkB,EAAE,CAAA;IAC/B,KAAK,EAAE,SAAS,EAAE,CAAA;IAClB,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,MAAM,CAAA;;IASZ,QAAQ,CAAC,IAAI,EAAE,MAAM;IAKrB,WAAW,CAAC,OAAO,EAAE,MAAM;IAK3B,QAAQ,CAAC,IAAI,EAAE,SAAS;IAKxB,qBAAqB,CAAC,MAAM,EAAE,UAAU,GAAG,SAAS,GAAG,gBAAgB,GAAG,SAAS;IAwDnF,kBAAkB;IAKlB,mBAAmB;IAKnB,kBAAkB;IAKlB,4BAA4B;IAK5B,sBAAsB;IAKtB,eAAe;CAIf"}
1
+ {"version":3,"file":"USyncQuery.d.ts","sourceRoot":"","sources":["../../src/WAUSync/USyncQuery.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AACxD,OAAO,EAAE,KAAK,UAAU,EAAsB,MAAM,aAAa,CAAA;AAUjE,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAEvC,MAAM,MAAM,oBAAoB,GAAG;IAAE,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,CAAA;AAE9E,MAAM,MAAM,gBAAgB,GAAG;IAC9B,IAAI,EAAE,oBAAoB,EAAE,CAAA;IAC5B,QAAQ,EAAE,oBAAoB,EAAE,CAAA;CAChC,CAAA;AAED,qBAAa,UAAU;IACtB,SAAS,EAAE,kBAAkB,EAAE,CAAA;IAC/B,KAAK,EAAE,SAAS,EAAE,CAAA;IAClB,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,MAAM,CAAA;;IASZ,QAAQ,CAAC,IAAI,EAAE,MAAM;IAKrB,WAAW,CAAC,OAAO,EAAE,MAAM;IAK3B,QAAQ,CAAC,IAAI,EAAE,SAAS;IAKxB,qBAAqB,CAAC,MAAM,EAAE,UAAU,GAAG,SAAS,GAAG,gBAAgB,GAAG,SAAS;IAwDnF,kBAAkB;IAKlB,mBAAmB;IAKnB,kBAAkB;IAKlB,4BAA4B;IAK5B,sBAAsB;IAKtB,eAAe;IAKf,oBAAoB;CAIpB"}
@@ -1,7 +1,7 @@
1
1
  import { getBinaryNodeChild } from '../WABinary/index.js';
2
2
  import { USyncBotProfileProtocol } from './Protocols/UsyncBotProfileProtocol.js';
3
3
  import { USyncLIDProtocol } from './Protocols/UsyncLIDProtocol.js';
4
- import { USyncContactProtocol, USyncDeviceProtocol, USyncDisappearingModeProtocol, USyncStatusProtocol } from './Protocols/index.js';
4
+ import { USyncContactProtocol, USyncDeviceProtocol, USyncDisappearingModeProtocol, USyncStatusProtocol, USyncUsernameProtocol } from './Protocols/index.js';
5
5
  import { USyncUser } from './USyncUser.js';
6
6
  export class USyncQuery {
7
7
  constructor() {
@@ -23,7 +23,7 @@ export class USyncQuery {
23
23
  return this;
24
24
  }
25
25
  parseUSyncQueryResult(result) {
26
- if (!result || result.attrs.type !== 'result') {
26
+ if (result?.attrs.type !== 'result') {
27
27
  return;
28
28
  }
29
29
  const protocolMap = Object.fromEntries(this.protocols.map(protocol => {
@@ -90,5 +90,9 @@ export class USyncQuery {
90
90
  this.protocols.push(new USyncLIDProtocol());
91
91
  return this;
92
92
  }
93
+ withUsernameProtocol() {
94
+ this.protocols.push(new USyncUsernameProtocol());
95
+ return this;
96
+ }
93
97
  }
94
98
  //# sourceMappingURL=USyncQuery.js.map