@alannxd/baileys 6.0.5 → 6.0.6

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 (234) hide show
  1. package/WAProto/fix-import.js +29 -0
  2. package/WAProto/index.js +160 -201
  3. package/engine-requirements.js +1 -1
  4. package/lib/Defaults/baileys-version.json +3 -0
  5. package/lib/Defaults/index.d.ts +15 -37
  6. package/lib/Defaults/index.js +136 -119
  7. package/lib/Defaults/phonenumber-mcc.json +223 -0
  8. package/lib/Signal/Group/ciphertext-message.d.ts +0 -1
  9. package/lib/Signal/Group/ciphertext-message.js +5 -2
  10. package/lib/Signal/Group/group-session-builder.d.ts +3 -4
  11. package/lib/Signal/Group/group-session-builder.js +41 -7
  12. package/lib/Signal/Group/group_cipher.d.ts +4 -4
  13. package/lib/Signal/Group/group_cipher.js +51 -37
  14. package/lib/Signal/Group/index.d.ts +11 -12
  15. package/lib/Signal/Group/index.js +57 -12
  16. package/lib/Signal/Group/keyhelper.d.ts +1 -2
  17. package/lib/Signal/Group/keyhelper.js +44 -7
  18. package/lib/Signal/Group/queue-job.d.ts +1 -0
  19. package/lib/Signal/Group/queue-job.js +57 -0
  20. package/lib/Signal/Group/sender-chain-key.d.ts +2 -3
  21. package/lib/Signal/Group/sender-chain-key.js +15 -7
  22. package/lib/Signal/Group/sender-key-distribution-message.d.ts +1 -2
  23. package/lib/Signal/Group/sender-key-distribution-message.js +11 -8
  24. package/lib/Signal/Group/sender-key-message.d.ts +1 -2
  25. package/lib/Signal/Group/sender-key-message.js +12 -9
  26. package/lib/Signal/Group/sender-key-name.d.ts +0 -1
  27. package/lib/Signal/Group/sender-key-name.js +5 -2
  28. package/lib/Signal/Group/sender-key-record.d.ts +2 -3
  29. package/lib/Signal/Group/sender-key-record.js +21 -9
  30. package/lib/Signal/Group/sender-key-state.d.ts +6 -7
  31. package/lib/Signal/Group/sender-key-state.js +42 -27
  32. package/lib/Signal/Group/sender-message-key.d.ts +0 -1
  33. package/lib/Signal/Group/sender-message-key.js +7 -4
  34. package/lib/Signal/libsignal.d.ts +3 -5
  35. package/lib/Signal/libsignal.js +90 -347
  36. package/lib/Socket/Client/{types.d.ts → abstract-socket-client.d.ts} +5 -4
  37. package/lib/Socket/Client/abstract-socket-client.js +13 -0
  38. package/lib/Socket/Client/index.d.ts +3 -3
  39. package/lib/Socket/Client/index.js +19 -3
  40. package/lib/Socket/Client/mobile-socket-client.d.ts +13 -0
  41. package/lib/Socket/Client/mobile-socket-client.js +65 -0
  42. package/lib/Socket/Client/{websocket.d.ts → web-socket-client.d.ts} +2 -3
  43. package/lib/Socket/Client/web-socket-client.js +62 -0
  44. package/lib/Socket/business.d.ts +108 -154
  45. package/lib/Socket/business.js +43 -162
  46. package/lib/Socket/chats.d.ts +239 -96
  47. package/lib/Socket/chats.js +427 -627
  48. package/lib/Socket/communities.d.ts +146 -239
  49. package/lib/Socket/communities.js +80 -90
  50. package/lib/Socket/groups.d.ts +57 -104
  51. package/lib/Socket/groups.js +161 -154
  52. package/lib/Socket/index.d.ts +115 -202
  53. package/lib/Socket/index.js +10 -11
  54. package/lib/Socket/luxu.d.ts +266 -22
  55. package/lib/Socket/luxu.js +465 -422
  56. package/lib/Socket/messages-recv.d.ts +84 -136
  57. package/lib/Socket/messages-recv.js +615 -1421
  58. package/lib/Socket/messages-send.d.ts +126 -142
  59. package/lib/Socket/messages-send.js +671 -878
  60. package/lib/Socket/newsletter.d.ts +85 -121
  61. package/lib/Socket/newsletter.js +272 -147
  62. package/lib/Socket/registration.d.ts +267 -0
  63. package/lib/Socket/registration.js +166 -0
  64. package/lib/Socket/socket.d.ts +19 -34
  65. package/lib/Socket/socket.js +313 -544
  66. package/lib/Socket/usync.d.ts +36 -0
  67. package/lib/Socket/usync.js +70 -0
  68. package/lib/Store/index.d.ts +3 -10
  69. package/lib/Store/index.js +10 -10
  70. package/lib/Store/make-cache-manager-store.d.ts +11 -17
  71. package/lib/Store/make-cache-manager-store.js +41 -43
  72. package/lib/Store/make-in-memory-store.d.ts +118 -39
  73. package/lib/Store/make-in-memory-store.js +341 -112
  74. package/lib/Store/make-ordered-dictionary.d.ts +10 -11
  75. package/lib/Store/make-ordered-dictionary.js +20 -14
  76. package/lib/Store/object-repository.d.ts +9 -10
  77. package/lib/Store/object-repository.js +6 -11
  78. package/lib/Types/Auth.d.ts +12 -19
  79. package/lib/Types/Auth.js +2 -2
  80. package/lib/Types/Call.d.ts +1 -3
  81. package/lib/Types/Call.js +2 -2
  82. package/lib/Types/Chat.d.ts +13 -35
  83. package/lib/Types/Chat.js +4 -8
  84. package/lib/Types/Contact.d.ts +1 -8
  85. package/lib/Types/Contact.js +2 -2
  86. package/lib/Types/Events.d.ts +17 -116
  87. package/lib/Types/Events.js +2 -2
  88. package/lib/Types/GroupMetadata.d.ts +5 -21
  89. package/lib/Types/GroupMetadata.js +2 -2
  90. package/lib/Types/Label.d.ts +0 -12
  91. package/lib/Types/Label.js +5 -3
  92. package/lib/Types/LabelAssociation.d.ts +0 -1
  93. package/lib/Types/LabelAssociation.js +5 -3
  94. package/lib/Types/Message.d.ts +58 -105
  95. package/lib/Types/Message.js +9 -11
  96. package/lib/Types/Newsletter.d.ts +103 -0
  97. package/lib/Types/Newsletter.js +38 -0
  98. package/lib/Types/Product.d.ts +1 -2
  99. package/lib/Types/Product.js +2 -2
  100. package/lib/Types/Signal.d.ts +2 -32
  101. package/lib/Types/Signal.js +2 -2
  102. package/lib/Types/Socket.d.ts +25 -50
  103. package/lib/Types/Socket.js +2 -3
  104. package/lib/Types/State.d.ts +2 -72
  105. package/lib/Types/State.js +2 -56
  106. package/lib/Types/USync.d.ts +2 -3
  107. package/lib/Types/USync.js +2 -2
  108. package/lib/Types/index.d.ts +14 -22
  109. package/lib/Types/index.js +31 -15
  110. package/lib/Utils/auth-utils.d.ts +6 -12
  111. package/lib/Utils/auth-utils.js +143 -239
  112. package/lib/Utils/baileys-event-stream.d.ts +16 -0
  113. package/lib/Utils/baileys-event-stream.js +63 -0
  114. package/lib/Utils/business.d.ts +2 -3
  115. package/lib/Utils/business.js +69 -66
  116. package/lib/Utils/chat-utils.d.ts +23 -52
  117. package/lib/Utils/chat-utils.js +253 -396
  118. package/lib/Utils/crypto.d.ts +22 -18
  119. package/lib/Utils/crypto.js +90 -57
  120. package/lib/Utils/decode-wa-message.d.ts +8 -55
  121. package/lib/Utils/decode-wa-message.js +84 -203
  122. package/lib/Utils/event-buffer.d.ts +8 -9
  123. package/lib/Utils/event-buffer.js +77 -185
  124. package/lib/Utils/generics.d.ts +29 -28
  125. package/lib/Utils/generics.js +210 -180
  126. package/lib/Utils/history.d.ts +9 -18
  127. package/lib/Utils/history.js +55 -93
  128. package/lib/Utils/index.d.ts +17 -22
  129. package/lib/Utils/index.js +33 -22
  130. package/lib/Utils/link-preview.d.ts +5 -5
  131. package/lib/Utils/link-preview.js +24 -16
  132. package/lib/Utils/logger.d.ts +3 -11
  133. package/lib/Utils/logger.js +7 -3
  134. package/lib/Utils/lt-hash.d.ts +12 -8
  135. package/lib/Utils/lt-hash.js +46 -3
  136. package/lib/Utils/make-mutex.d.ts +2 -4
  137. package/lib/Utils/make-mutex.js +34 -24
  138. package/lib/Utils/messages-media.d.ts +44 -61
  139. package/lib/Utils/messages-media.js +482 -451
  140. package/lib/Utils/messages.d.ts +18 -32
  141. package/lib/Utils/messages.js +369 -458
  142. package/lib/Utils/noise-handler.d.ts +14 -13
  143. package/lib/Utils/noise-handler.js +99 -145
  144. package/lib/Utils/process-message.d.ts +12 -31
  145. package/lib/Utils/process-message.js +150 -459
  146. package/lib/Utils/signal.d.ts +5 -20
  147. package/lib/Utils/signal.js +72 -120
  148. package/lib/Utils/use-multi-file-auth-state.d.ts +2 -2
  149. package/lib/Utils/use-multi-file-auth-state.js +27 -29
  150. package/lib/Utils/validate-connection.d.ts +7 -7
  151. package/lib/Utils/validate-connection.js +99 -73
  152. package/lib/WABinary/constants.d.ts +27 -25
  153. package/lib/WABinary/constants.js +20 -1281
  154. package/lib/WABinary/decode.d.ts +5 -5
  155. package/lib/WABinary/decode.js +42 -52
  156. package/lib/WABinary/encode.d.ts +3 -3
  157. package/lib/WABinary/encode.js +155 -110
  158. package/lib/WABinary/generic-utils.d.ts +7 -8
  159. package/lib/WABinary/generic-utils.js +49 -48
  160. package/lib/WABinary/index.d.ts +5 -6
  161. package/lib/WABinary/index.js +21 -6
  162. package/lib/WABinary/jid-utils.d.ts +8 -25
  163. package/lib/WABinary/jid-utils.js +40 -74
  164. package/lib/WABinary/types.d.ts +1 -2
  165. package/lib/WABinary/types.js +2 -2
  166. package/lib/WAM/BinaryInfo.d.ts +11 -3
  167. package/lib/WAM/BinaryInfo.js +5 -2
  168. package/lib/WAM/constants.d.ts +3 -5
  169. package/lib/WAM/constants.js +11958 -19461
  170. package/lib/WAM/encode.d.ts +3 -3
  171. package/lib/WAM/encode.js +22 -17
  172. package/lib/WAM/index.d.ts +3 -4
  173. package/lib/WAM/index.js +19 -4
  174. package/lib/WAUSync/Protocols/USyncContactProtocol.d.ts +3 -4
  175. package/lib/WAUSync/Protocols/USyncContactProtocol.js +13 -33
  176. package/lib/WAUSync/Protocols/USyncDeviceProtocol.d.ts +2 -3
  177. package/lib/WAUSync/Protocols/USyncDeviceProtocol.js +14 -11
  178. package/lib/WAUSync/Protocols/USyncDisappearingModeProtocol.d.ts +2 -3
  179. package/lib/WAUSync/Protocols/USyncDisappearingModeProtocol.js +12 -9
  180. package/lib/WAUSync/Protocols/USyncStatusProtocol.d.ts +2 -3
  181. package/lib/WAUSync/Protocols/USyncStatusProtocol.js +13 -9
  182. package/lib/WAUSync/Protocols/UsyncBotProfileProtocol.d.ts +3 -4
  183. package/lib/WAUSync/Protocols/UsyncBotProfileProtocol.js +22 -20
  184. package/lib/WAUSync/Protocols/UsyncLIDProtocol.d.ts +3 -5
  185. package/lib/WAUSync/Protocols/UsyncLIDProtocol.js +8 -13
  186. package/lib/WAUSync/Protocols/index.d.ts +4 -6
  187. package/lib/WAUSync/Protocols/index.js +20 -6
  188. package/lib/WAUSync/USyncQuery.d.ts +4 -6
  189. package/lib/WAUSync/USyncQuery.js +35 -44
  190. package/lib/WAUSync/USyncUser.d.ts +5 -10
  191. package/lib/WAUSync/USyncUser.js +5 -10
  192. package/lib/WAUSync/index.js +19 -4
  193. package/lib/index.d.ts +9 -10
  194. package/lib/index.js +34 -12
  195. package/package.json +50 -83
  196. package/WAProto/GenerateStatics.sh +0 -3
  197. package/WAProto/WAProto.proto +0 -5479
  198. package/WAProto/fix-imports.js +0 -85
  199. package/WAProto/index.d.ts +0 -14017
  200. package/lib/Signal/lid-mapping.d.ts +0 -23
  201. package/lib/Signal/lid-mapping.js +0 -277
  202. package/lib/Socket/Client/types.js +0 -11
  203. package/lib/Socket/Client/websocket.js +0 -54
  204. package/lib/Socket/mex.d.ts +0 -3
  205. package/lib/Socket/mex.js +0 -42
  206. package/lib/Store/keyed-db.d.ts +0 -22
  207. package/lib/Store/keyed-db.js +0 -108
  208. package/lib/Types/Bussines.d.ts +0 -25
  209. package/lib/Types/Bussines.js +0 -2
  210. package/lib/Types/Mex.d.ts +0 -141
  211. package/lib/Types/Mex.js +0 -37
  212. package/lib/Utils/browser-utils.d.ts +0 -4
  213. package/lib/Utils/browser-utils.js +0 -28
  214. package/lib/Utils/companion-reg-client-utils.d.ts +0 -17
  215. package/lib/Utils/companion-reg-client-utils.js +0 -35
  216. package/lib/Utils/identity-change-handler.d.ts +0 -44
  217. package/lib/Utils/identity-change-handler.js +0 -50
  218. package/lib/Utils/message-retry-manager.d.ts +0 -115
  219. package/lib/Utils/message-retry-manager.js +0 -265
  220. package/lib/Utils/offline-node-processor.d.ts +0 -17
  221. package/lib/Utils/offline-node-processor.js +0 -40
  222. package/lib/Utils/pre-key-manager.d.ts +0 -28
  223. package/lib/Utils/pre-key-manager.js +0 -106
  224. package/lib/Utils/reporting-utils.d.ts +0 -11
  225. package/lib/Utils/reporting-utils.js +0 -258
  226. package/lib/Utils/stanza-ack.d.ts +0 -11
  227. package/lib/Utils/stanza-ack.js +0 -38
  228. package/lib/Utils/sync-action-utils.d.ts +0 -19
  229. package/lib/Utils/sync-action-utils.js +0 -49
  230. package/lib/Utils/tc-token-utils.d.ts +0 -37
  231. package/lib/Utils/tc-token-utils.js +0 -163
  232. package/lib/WAUSync/Protocols/USyncUsernameProtocol.d.ts +0 -10
  233. package/lib/WAUSync/Protocols/USyncUsernameProtocol.js +0 -25
  234. package/lib/WAUSync/index.d.ts +0 -4
@@ -1,36 +1,38 @@
1
- import { Boom } from '@hapi/boom'
2
- import { proto } from '../../WAProto/index.js'
3
- import { unixTimestampSeconds } from '../Utils/generics.js'
4
-
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getAdditionalNode = exports.getBinaryNodeFilter = exports.binaryNodeToString = exports.getBinaryNodeMessages = exports.reduceBinaryNodeToDictionary = exports.assertNodeErrorFree = exports.getBinaryNodeChildUInt = exports.getBinaryNodeChildString = exports.getBinaryNodeChildBuffer = exports.getBinaryNodeChild = exports.getAllBinaryNodeChildren = exports.getBinaryNodeChildren = void 0;
4
+ const boom_1 = require("@hapi/boom");
5
+ const WAProto_1 = require("../../WAProto");
6
+ const Utils_1 = require("../Utils")
5
7
  // some extra useful utilities
6
- export const getBinaryNodeChildren = (node, childTag) => {
8
+ const getBinaryNodeChildren = (node, childTag) => {
7
9
  if (Array.isArray(node?.content)) {
8
10
  return node.content.filter(item => item.tag === childTag)
9
11
  }
10
12
  return []
11
13
  }
12
-
13
- export const getAllBinaryNodeChildren = ({ content }) => {
14
+ exports.getBinaryNodeChildren = getBinaryNodeChildren;
15
+ const getAllBinaryNodeChildren = ({ content }) => {
14
16
  if (Array.isArray(content)) {
15
17
  return content
16
18
  }
17
19
  return []
18
20
  }
19
-
20
- export const getBinaryNodeChild = (node, childTag) => {
21
+ exports.getAllBinaryNodeChildren = getAllBinaryNodeChildren;
22
+ const getBinaryNodeChild = (node, childTag) => {
21
23
  if (Array.isArray(node?.content)) {
22
24
  return node?.content.find(item => item.tag === childTag)
23
25
  }
24
26
  }
25
-
26
- export const getBinaryNodeChildBuffer = (node, childTag) => {
27
+ exports.getBinaryNodeChild = getBinaryNodeChild;
28
+ const getBinaryNodeChildBuffer = (node, childTag) => {
27
29
  const child = getBinaryNodeChild(node, childTag)?.content
28
30
  if (Buffer.isBuffer(child) || child instanceof Uint8Array) {
29
31
  return child
30
32
  }
31
33
  }
32
-
33
- export const getBinaryNodeChildString = (node, childTag) => {
34
+ exports.getBinaryNodeChildBuffer = getBinaryNodeChildBuffer;
35
+ const getBinaryNodeChildString = (node, childTag) => {
34
36
  const child = getBinaryNodeChild(node, childTag)?.content
35
37
  if (Buffer.isBuffer(child) || child instanceof Uint8Array) {
36
38
  return Buffer.from(child).toString('utf-8')
@@ -39,22 +41,22 @@ export const getBinaryNodeChildString = (node, childTag) => {
39
41
  return child
40
42
  }
41
43
  }
42
-
43
- export const getBinaryNodeChildUInt = (node, childTag, length) => {
44
+ exports.getBinaryNodeChildString = getBinaryNodeChildString;
45
+ const getBinaryNodeChildUInt = (node, childTag, length) => {
44
46
  const buff = getBinaryNodeChildBuffer(node, childTag)
45
47
  if (buff) {
46
48
  return bufferToUInt(buff, length)
47
49
  }
48
50
  }
49
-
50
- export const assertNodeErrorFree = (node) => {
51
+ exports.getBinaryNodeChildUInt = getBinaryNodeChildUInt;
52
+ const assertNodeErrorFree = (node) => {
51
53
  const errNode = getBinaryNodeChild(node, 'error')
52
54
  if (errNode) {
53
- throw new Boom(errNode.attrs.text || 'Unknown error', { data: +errNode.attrs.code })
55
+ throw new boom_1.Boom(errNode.attrs.text || 'Unknown error', { data: +errNode.attrs.code })
54
56
  }
55
57
  }
56
-
57
- export const reduceBinaryNodeToDictionary = (node, tag) => {
58
+ exports.assertNodeErrorFree = assertNodeErrorFree;
59
+ const reduceBinaryNodeToDictionary = (node, tag) => {
58
60
  const nodes = getBinaryNodeChildren(node, tag)
59
61
  const dict = nodes.reduce((dict, { attrs }) => {
60
62
  dict[attrs.name || attrs.config_code] = attrs.value || attrs.config_value
@@ -62,19 +64,19 @@ export const reduceBinaryNodeToDictionary = (node, tag) => {
62
64
  }, {})
63
65
  return dict
64
66
  }
65
-
66
- export const getBinaryNodeMessages = ({ content }) => {
67
+ exports.reduceBinaryNodeToDictionary = reduceBinaryNodeToDictionary;
68
+ const getBinaryNodeMessages = ({ content }) => {
67
69
  const msgs = []
68
70
  if (Array.isArray(content)) {
69
71
  for (const item of content) {
70
72
  if (item.tag === 'message') {
71
- msgs.push(proto.WebMessageInfo.decode(item.content))
73
+ msgs.push(WAProto_1.proto.WebMessageInfo.decode(item.content))
72
74
  }
73
75
  }
74
76
  }
75
77
  return msgs
76
78
  }
77
-
79
+ exports.getBinaryNodeMessages = getBinaryNodeMessages;
78
80
  function bufferToUInt(e, t) {
79
81
  let a = 0;
80
82
  for (let i = 0; i < t; i++) {
@@ -82,10 +84,8 @@ function bufferToUInt(e, t) {
82
84
  }
83
85
  return a;
84
86
  }
85
-
86
- const tabs = (n) => '\t'.repeat(n)
87
-
88
- export function binaryNodeToString(node, i = 0) {
87
+ const tabs = (n) => '\t'.repeat(n);
88
+ function binaryNodeToString(node, i = 0) {
89
89
  if (!node) {
90
90
  return node;
91
91
  }
@@ -100,28 +100,28 @@ export function binaryNodeToString(node, i = 0) {
100
100
  }
101
101
  const children = binaryNodeToString(node.content, i + 1);
102
102
  const tag = `<${node.tag} ${Object.entries(node.attrs || {})
103
- .filter(([, v]) => v!== undefined)
104
- .map(([k, v]) => `${k}='${v}'`)
105
- .join(' ')}`;
106
- const content = children? `>\n${children}\n${tabs(i)}</${node.tag}>` : '/>';
103
+ .filter(([, v]) => v !== undefined)
104
+ .map(([k, v]) => `${k}='${v}'`)
105
+ .join(' ')}`;
106
+ const content = children ? `>\n${children}\n${tabs(i)}</${node.tag}>` : '/>';
107
107
  return tag + content;
108
108
  }
109
-
110
- export const getBinaryNodeFilter = (node) => {
109
+ exports.binaryNodeToString = binaryNodeToString;
110
+ const getBinaryNodeFilter = (node) => {
111
111
  if (!Array.isArray(node)) return false
112
-
113
- return node.some(item =>
112
+
113
+ return node.some(item =>
114
114
  ['native_flow'].includes(item?.content?.[0]?.content?.[0]?.tag) ||
115
115
  ['interactive', 'buttons', 'list'].includes(item?.content?.[0]?.tag) ||
116
116
  ['hsm', 'biz'].includes(item?.tag) ||
117
117
  ['bot'].includes(item?.tag) && item?.attrs?.biz_bot === '1'
118
118
  )
119
119
  }
120
-
121
- export const getAdditionalNode = (name) => {
120
+ exports.getBinaryNodeFilter = getBinaryNodeFilter;
121
+ const getAdditionalNode = (name) => {
122
122
  if (name) name = name.toLowerCase()
123
- const ts = unixTimestampSeconds(new Date()) - 77980457
124
-
123
+ const ts = Utils_1.unixTimestampSeconds(new Date()) - 77980457
124
+
125
125
  const order_response_name = {
126
126
  review_and_pay: 'order_details',
127
127
  review_order: 'order_status',
@@ -129,7 +129,7 @@ export const getAdditionalNode = (name) => {
129
129
  payment_status: 'payment_status',
130
130
  payment_method: 'payment_method'
131
131
  }
132
-
132
+
133
133
  const flow_name = {
134
134
  cta_catalog: 'cta_catalog',
135
135
  mpm: 'mpm',
@@ -138,19 +138,19 @@ export const getAdditionalNode = (name) => {
138
138
  wa_pay_detail: 'wa_payment_transaction_details',
139
139
  send_location: 'send_location',
140
140
  }
141
-
141
+
142
142
  if(order_response_name[name]) {
143
143
  return [{
144
144
  tag: 'biz',
145
- attrs: {
146
- native_flow_name: order_response_name[name]
145
+ attrs: {
146
+ native_flow_name: order_response_name[name]
147
147
  },
148
148
  content: []
149
149
  }]
150
150
  } else if (flow_name[name] || name === 'interactive' || name === 'buttons') {
151
151
  return [{
152
152
  tag: 'biz',
153
- attrs: {
153
+ attrs: {
154
154
  actual_actors: '2',
155
155
  host_storage: '2',
156
156
  privacy_mode_ts: `${ts}`
@@ -169,9 +169,9 @@ export const getAdditionalNode = (name) => {
169
169
  },
170
170
  content: [{
171
171
  tag: 'native_flow',
172
- attrs: {
172
+ attrs: {
173
173
  v: '9',
174
- name: flow_name[name]?? 'mixed',
174
+ name: flow_name[name] ?? 'mixed',
175
175
  },
176
176
  content: []
177
177
  }]
@@ -194,4 +194,5 @@ export const getAdditionalNode = (name) => {
194
194
  }]
195
195
  }]
196
196
  }
197
- }
197
+ }
198
+ exports.getAdditionalNode = getAdditionalNode;
@@ -1,6 +1,5 @@
1
- export * from './encode.js';
2
- export * from './decode.js';
3
- export * from './generic-utils.js';
4
- export * from './jid-utils.js';
5
- export * from './types.js';
6
- //# sourceMappingURL=index.d.ts.map
1
+ export * from './encode';
2
+ export * from './decode';
3
+ export * from './generic-utils';
4
+ export * from './jid-utils';
5
+ export * from './types';
@@ -1,6 +1,21 @@
1
- export * from './encode.js';
2
- export * from './decode.js';
3
- export * from './generic-utils.js';
4
- export * from './jid-utils.js';
5
- export * from './types.js';
6
- //# sourceMappingURL=index.js.map
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./encode"), exports);
18
+ __exportStar(require("./decode"), exports);
19
+ __exportStar(require("./generic-utils"), exports);
20
+ __exportStar(require("./jid-utils"), exports);
21
+ __exportStar(require("./types"), exports);
@@ -3,46 +3,29 @@ export declare const OFFICIAL_BIZ_JID = "16505361212@c.us";
3
3
  export declare const SERVER_JID = "server@c.us";
4
4
  export declare const PSA_WID = "0@c.us";
5
5
  export declare const STORIES_JID = "status@broadcast";
6
- export declare const META_AI_JID = "13135550002@c.us";
7
- export type JidServer = 'c.us' | 'g.us' | 'broadcast' | 's.whatsapp.net' | 'call' | 'lid' | 'newsletter' | 'bot' | 'hosted' | 'hosted.lid';
8
- export declare enum WAJIDDomains {
9
- WHATSAPP = 0,
10
- LID = 1,
11
- HOSTED = 128,
12
- HOSTED_LID = 129
13
- }
6
+ export type JidServer = 'c.us' | 'g.us' | 'broadcast' | 's.whatsapp.net' | 'call' | 'lid' | 'newsletter';
14
7
  export type JidWithDevice = {
15
8
  user: string;
16
9
  device?: number;
17
10
  };
18
11
  export type FullJid = JidWithDevice & {
19
- server: JidServer;
12
+ server: JidServer | string;
20
13
  domainType?: number;
21
14
  };
22
- export declare const getServerFromDomainType: (initialServer: string, domainType?: WAJIDDomains) => JidServer;
23
15
  export declare const jidEncode: (user: string | number | null, server: JidServer, device?: number, agent?: number) => string;
24
16
  export declare const jidDecode: (jid: string | undefined) => FullJid | undefined;
25
17
  /** is the jid a user */
26
18
  export declare const areJidsSameUser: (jid1: string | undefined, jid2: string | undefined) => boolean;
27
- /** is the jid Meta AI */
28
- export declare const isJidMetaAI: (jid: string | undefined) => boolean | undefined;
29
- /** is the jid a PN user */
30
- export declare const isPnUser: (jid: string | undefined) => boolean | undefined;
31
- /** is the jid a LID */
19
+ /** is the jid a user */
20
+ export declare const isJidUser: (jid: string | undefined) => boolean | undefined;
21
+ /** is the jid a group */
32
22
  export declare const isLidUser: (jid: string | undefined) => boolean | undefined;
33
23
  /** is the jid a broadcast */
34
24
  export declare const isJidBroadcast: (jid: string | undefined) => boolean | undefined;
35
25
  /** is the jid a group */
36
26
  export declare const isJidGroup: (jid: string | undefined) => boolean | undefined;
37
27
  /** is the jid the status broadcast */
38
- export declare const isJidStatusBroadcast: (jid: string) => jid is "status@broadcast";
39
- /** is the jid a newsletter */
40
- export declare const isJidNewsletter: (jid: string | undefined) => boolean | undefined;
41
- /** is the jid a hosted PN */
42
- export declare const isHostedPnUser: (jid: string | undefined) => boolean | undefined;
43
- /** is the jid a hosted LID */
44
- export declare const isHostedLidUser: (jid: string | undefined) => boolean | undefined;
45
- export declare const isJidBot: (jid: string | undefined) => boolean | "" | undefined;
28
+ export declare const isJidStatusBroadcast: (jid: string) => boolean;
29
+ /** is the jid the newsletter */
30
+ export declare const isJidNewsLetter: (jid: string | undefined) => boolean | undefined;
46
31
  export declare const jidNormalizedUser: (jid: string | undefined) => string;
47
- export declare const transferDevice: (fromJid: string, toJid: string) => string;
48
- //# sourceMappingURL=jid-utils.d.ts.map
@@ -1,34 +1,16 @@
1
- export const S_WHATSAPP_NET = '@s.whatsapp.net';
2
- export const OFFICIAL_BIZ_JID = '16505361212@c.us';
3
- export const SERVER_JID = 'server@c.us';
4
- export const PSA_WID = '0@c.us';
5
- export const STORIES_JID = 'status@broadcast';
6
- export const META_AI_JID = '13135550002@c.us';
7
- export var WAJIDDomains;
8
- (function (WAJIDDomains) {
9
- WAJIDDomains[WAJIDDomains["WHATSAPP"] = 0] = "WHATSAPP";
10
- WAJIDDomains[WAJIDDomains["LID"] = 1] = "LID";
11
- WAJIDDomains[WAJIDDomains["HOSTED"] = 128] = "HOSTED";
12
- WAJIDDomains[WAJIDDomains["HOSTED_LID"] = 129] = "HOSTED_LID";
13
- })(WAJIDDomains || (WAJIDDomains = {}));
14
- export const getServerFromDomainType = (initialServer, domainType) => {
15
- switch (domainType) {
16
- case WAJIDDomains.LID:
17
- return 'lid';
18
- case WAJIDDomains.HOSTED:
19
- return 'hosted';
20
- case WAJIDDomains.HOSTED_LID:
21
- return 'hosted.lid';
22
- case WAJIDDomains.WHATSAPP:
23
- default:
24
- return initialServer;
25
- }
26
- };
27
- export const jidEncode = (user, server, device, agent) => {
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.jidNormalizedUser = exports.isJidNewsLetter = exports.isJidStatusBroadcast = exports.isJidGroup = exports.isJidBroadcast = exports.isLidUser = exports.isJidUser = exports.areJidsSameUser = exports.jidDecode = exports.jidEncode = exports.STORIES_JID = exports.PSA_WID = exports.SERVER_JID = exports.OFFICIAL_BIZ_JID = exports.S_WHATSAPP_NET = void 0;
4
+ exports.S_WHATSAPP_NET = '@s.whatsapp.net';
5
+ exports.OFFICIAL_BIZ_JID = '16505361212@c.us';
6
+ exports.SERVER_JID = 'server@c.us';
7
+ exports.PSA_WID = '0@c.us';
8
+ exports.STORIES_JID = 'status@broadcast';
9
+ const jidEncode = (user, server, device, agent) => {
28
10
  return `${user || ''}${!!agent ? `_${agent}` : ''}${!!device ? `:${device}` : ''}@${server}`;
29
11
  };
30
- export const jidDecode = (jid) => {
31
- // todo: investigate how to implement hosted ids in this case
12
+ exports.jidEncode = jidEncode;
13
+ const jidDecode = (jid) => {
32
14
  const sepIdx = typeof jid === 'string' ? jid.indexOf('@') : -1;
33
15
  if (sepIdx < 0) {
34
16
  return undefined;
@@ -36,61 +18,45 @@ export const jidDecode = (jid) => {
36
18
  const server = jid.slice(sepIdx + 1);
37
19
  const userCombined = jid.slice(0, sepIdx);
38
20
  const [userAgent, device] = userCombined.split(':');
39
- const [user, agent] = userAgent.split('_');
40
- let domainType = WAJIDDomains.WHATSAPP;
41
- if (server === 'lid') {
42
- domainType = WAJIDDomains.LID;
43
- }
44
- else if (server === 'hosted') {
45
- domainType = WAJIDDomains.HOSTED;
46
- }
47
- else if (server === 'hosted.lid') {
48
- domainType = WAJIDDomains.HOSTED_LID;
49
- }
50
- else if (agent) {
51
- domainType = parseInt(agent);
52
- }
21
+ const user = userAgent.split('_')[0];
53
22
  return {
54
- server: server,
55
- user: user,
56
- domainType,
23
+ server,
24
+ user,
25
+ domainType: server === 'lid' ? 1 : 0,
57
26
  device: device ? +device : undefined
58
27
  };
59
28
  };
29
+ exports.jidDecode = jidDecode;
30
+ /** is the jid a user */
31
+ const areJidsSameUser = (jid1, jid2) => {
32
+ var _a, _b;
33
+ return (((_a = (0, exports.jidDecode)(jid1)) === null || _a === void 0 ? void 0 : _a.user) === ((_b = (0, exports.jidDecode)(jid2)) === null || _b === void 0 ? void 0 : _b.user));
34
+ };
35
+ exports.areJidsSameUser = areJidsSameUser;
60
36
  /** is the jid a user */
61
- export const areJidsSameUser = (jid1, jid2) => jidDecode(jid1)?.user === jidDecode(jid2)?.user;
62
- /** is the jid Meta AI */
63
- export const isJidMetaAI = (jid) => jid?.endsWith('@bot');
64
- /** is the jid a PN user */
65
- export const isPnUser = (jid) => jid?.endsWith('@s.whatsapp.net');
66
- /** is the jid a LID */
67
- export const isLidUser = (jid) => jid?.endsWith('@lid');
37
+ const isJidUser = (jid) => (jid === null || jid === void 0 ? void 0 : jid.endsWith('@s.whatsapp.net'));
38
+ exports.isJidUser = isJidUser;
39
+ /** is the jid a group */
40
+ const isLidUser = (jid) => (jid === null || jid === void 0 ? void 0 : jid.endsWith('@lid'));
41
+ exports.isLidUser = isLidUser;
68
42
  /** is the jid a broadcast */
69
- export const isJidBroadcast = (jid) => jid?.endsWith('@broadcast');
43
+ const isJidBroadcast = (jid) => (jid === null || jid === void 0 ? void 0 : jid.endsWith('@broadcast'));
44
+ exports.isJidBroadcast = isJidBroadcast;
70
45
  /** is the jid a group */
71
- export const isJidGroup = (jid) => jid?.endsWith('@g.us');
46
+ const isJidGroup = (jid) => (jid === null || jid === void 0 ? void 0 : jid.endsWith('@g.us'));
47
+ exports.isJidGroup = isJidGroup;
72
48
  /** is the jid the status broadcast */
73
- export const isJidStatusBroadcast = (jid) => jid === 'status@broadcast';
74
- /** is the jid a newsletter */
75
- export const isJidNewsletter = (jid) => jid?.endsWith('@newsletter');
76
- /** is the jid a hosted PN */
77
- export const isHostedPnUser = (jid) => jid?.endsWith('@hosted');
78
- /** is the jid a hosted LID */
79
- export const isHostedLidUser = (jid) => jid?.endsWith('@hosted.lid');
80
- const botRegexp = /^1313555\d{4}$|^131655500\d{2}$/;
81
- export const isJidBot = (jid) => jid && botRegexp.test(jid.split('@')[0]) && jid.endsWith('@c.us');
82
- export const jidNormalizedUser = (jid) => {
83
- const result = jidDecode(jid);
49
+ const isJidStatusBroadcast = (jid) => jid === 'status@broadcast';
50
+ exports.isJidStatusBroadcast = isJidStatusBroadcast;
51
+ /** is the jid the newsletter */
52
+ const isJidNewsLetter = (jid) => (jid === null || jid === void 0 ? void 0 : jid.endsWith('newsletter'));
53
+ exports.isJidNewsLetter = isJidNewsLetter;
54
+ const jidNormalizedUser = (jid) => {
55
+ const result = (0, exports.jidDecode)(jid);
84
56
  if (!result) {
85
57
  return '';
86
58
  }
87
59
  const { user, server } = result;
88
- return jidEncode(user, server === 'c.us' ? 's.whatsapp.net' : server);
89
- };
90
- export const transferDevice = (fromJid, toJid) => {
91
- const fromDecoded = jidDecode(fromJid);
92
- const deviceId = fromDecoded?.device || 0;
93
- const { server, user } = jidDecode(toJid);
94
- return jidEncode(user, server, deviceId);
60
+ return (0, exports.jidEncode)(user, server === 'c.us' ? 's.whatsapp.net' : server);
95
61
  };
96
- //# sourceMappingURL=jid-utils.js.map
62
+ exports.jidNormalizedUser = jidNormalizedUser;
@@ -1,4 +1,4 @@
1
- import * as constants from './constants.js';
1
+ import * as constants from './constants';
2
2
  /**
3
3
  * the binary node WA uses internally for communication
4
4
  *
@@ -16,4 +16,3 @@ export type BinaryNode = {
16
16
  export type BinaryNodeAttributes = BinaryNode['attrs'];
17
17
  export type BinaryNodeData = BinaryNode['content'];
18
18
  export type BinaryNodeCodingOptions = typeof constants;
19
- //# sourceMappingURL=types.d.ts.map
@@ -1,2 +1,2 @@
1
- import * as constants from './constants.js';
2
- //# sourceMappingURL=types.js.map
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,9 +1,17 @@
1
- import type { EventInputType } from './constants.js';
1
+ /// <reference types="node" />
2
2
  export declare class BinaryInfo {
3
3
  protocolVersion: number;
4
4
  sequence: number;
5
- events: EventInputType[];
5
+ events: {
6
+ [x: string]: {
7
+ props: {
8
+ [x: string]: any;
9
+ };
10
+ globals: {
11
+ [x: string]: any;
12
+ };
13
+ };
14
+ }[];
6
15
  buffer: Buffer[];
7
16
  constructor(options?: Partial<BinaryInfo>);
8
17
  }
9
- //# sourceMappingURL=BinaryInfo.d.ts.map
@@ -1,4 +1,7 @@
1
- export class BinaryInfo {
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BinaryInfo = void 0;
4
+ class BinaryInfo {
2
5
  constructor(options = {}) {
3
6
  this.protocolVersion = 5;
4
7
  this.sequence = 0;
@@ -7,4 +10,4 @@ export class BinaryInfo {
7
10
  Object.assign(this, options);
8
11
  }
9
12
  }
10
- //# sourceMappingURL=BinaryInfo.js.map
13
+ exports.BinaryInfo = BinaryInfo;
@@ -11,7 +11,7 @@ export type Event = {
11
11
  };
12
12
  weight: number;
13
13
  wamChannel: string;
14
- privateStatsIdInt?: number;
14
+ privateStatsIdInt: number;
15
15
  };
16
16
  export type Global = {
17
17
  name: string;
@@ -28,13 +28,11 @@ type EventByName<T extends Event['name']> = Extract<Event, {
28
28
  export type EventInputType = {
29
29
  [key in Event['name']]: {
30
30
  props: {
31
- [k in keyof EventByName<key>['props']]: Value;
31
+ [k in keyof EventByName<key>['props']]: any;
32
32
  };
33
33
  globals: {
34
- [x: string]: Value;
34
+ [x: string]: any;
35
35
  };
36
36
  };
37
37
  } & {};
38
- export type Value = number | null | string;
39
38
  export {};
40
- //# sourceMappingURL=constants.d.ts.map