@neelegirl/baileys 1.5.3 → 1.5.5

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 (224) hide show
  1. package/README.md +16 -195
  2. package/index.js +38 -0
  3. package/package.json +16 -96
  4. package/LICENSE +0 -21
  5. package/WAProto/WAProto.proto +0 -5308
  6. package/WAProto/index.d.ts +0 -61295
  7. package/WAProto/index.js +0 -189754
  8. package/lib/Defaults/baileys-version.json +0 -3
  9. package/lib/Defaults/index.d.ts +0 -78
  10. package/lib/Defaults/index.js +0 -149
  11. package/lib/Defaults/phonenumber-mcc.json +0 -223
  12. package/lib/Signal/WASignalGroup/GroupProtocol.js +0 -1909
  13. package/lib/Signal/WASignalGroup/ciphertext-message.d.ts +0 -9
  14. package/lib/Signal/WASignalGroup/ciphertext-message.js +0 -19
  15. package/lib/Signal/WASignalGroup/ciphertext_message.js +0 -16
  16. package/lib/Signal/WASignalGroup/generate-proto.sh +0 -1
  17. package/lib/Signal/WASignalGroup/group-session-builder.d.ts +0 -17
  18. package/lib/Signal/WASignalGroup/group-session-builder.js +0 -72
  19. package/lib/Signal/WASignalGroup/group.proto +0 -42
  20. package/lib/Signal/WASignalGroup/group_cipher.d.ts +0 -19
  21. package/lib/Signal/WASignalGroup/group_cipher.js +0 -111
  22. package/lib/Signal/WASignalGroup/group_session_builder.js +0 -46
  23. package/lib/Signal/WASignalGroup/index.d.ts +0 -11
  24. package/lib/Signal/WASignalGroup/index.js +0 -61
  25. package/lib/Signal/WASignalGroup/keyhelper.d.ts +0 -16
  26. package/lib/Signal/WASignalGroup/keyhelper.js +0 -66
  27. package/lib/Signal/WASignalGroup/protobufs.js +0 -3
  28. package/lib/Signal/WASignalGroup/queue_job.js +0 -69
  29. package/lib/Signal/WASignalGroup/readme.md +0 -6
  30. package/lib/Signal/WASignalGroup/sender-chain-key.d.ts +0 -14
  31. package/lib/Signal/WASignalGroup/sender-chain-key.js +0 -47
  32. package/lib/Signal/WASignalGroup/sender-key-distribution-message.d.ts +0 -17
  33. package/lib/Signal/WASignalGroup/sender-key-distribution-message.js +0 -71
  34. package/lib/Signal/WASignalGroup/sender-key-message.d.ts +0 -19
  35. package/lib/Signal/WASignalGroup/sender-key-message.js +0 -73
  36. package/lib/Signal/WASignalGroup/sender-key-name.d.ts +0 -19
  37. package/lib/Signal/WASignalGroup/sender-key-name.js +0 -59
  38. package/lib/Signal/WASignalGroup/sender-key-record.d.ts +0 -32
  39. package/lib/Signal/WASignalGroup/sender-key-record.js +0 -58
  40. package/lib/Signal/WASignalGroup/sender-key-state.d.ts +0 -44
  41. package/lib/Signal/WASignalGroup/sender-key-state.js +0 -147
  42. package/lib/Signal/WASignalGroup/sender-message-key.d.ts +0 -11
  43. package/lib/Signal/WASignalGroup/sender-message-key.js +0 -33
  44. package/lib/Signal/WASignalGroup/sender_chain_key.js +0 -50
  45. package/lib/Signal/WASignalGroup/sender_key_distribution_message.js +0 -78
  46. package/lib/Signal/WASignalGroup/sender_key_message.js +0 -92
  47. package/lib/Signal/WASignalGroup/sender_key_name.js +0 -70
  48. package/lib/Signal/WASignalGroup/sender_key_record.js +0 -56
  49. package/lib/Signal/WASignalGroup/sender_key_state.js +0 -129
  50. package/lib/Signal/WASignalGroup/sender_message_key.js +0 -39
  51. package/lib/Signal/libsignal.d.ts +0 -8
  52. package/lib/Signal/libsignal.js +0 -391
  53. package/lib/Signal/lid-mapping.d.ts +0 -28
  54. package/lib/Signal/lid-mapping.js +0 -184
  55. package/lib/Socket/Client/abstract-socket-client.d.ts +0 -15
  56. package/lib/Socket/Client/abstract-socket-client.js +0 -13
  57. package/lib/Socket/Client/index.d.ts +0 -2
  58. package/lib/Socket/Client/index.js +0 -22
  59. package/lib/Socket/Client/mobile-socket-client.d.ts +0 -12
  60. package/lib/Socket/Client/mobile-socket-client.js +0 -65
  61. package/lib/Socket/Client/types.d.ts +0 -16
  62. package/lib/Socket/Client/types.js +0 -18
  63. package/lib/Socket/Client/websocket.d.ts +0 -13
  64. package/lib/Socket/Client/websocket.js +0 -62
  65. package/lib/Socket/business.d.ts +0 -187
  66. package/lib/Socket/business.js +0 -415
  67. package/lib/Socket/chats.d.ts +0 -97
  68. package/lib/Socket/chats.js +0 -1118
  69. package/lib/Socket/communities.d.ts +0 -223
  70. package/lib/Socket/communities.js +0 -433
  71. package/lib/Socket/groups.d.ts +0 -129
  72. package/lib/Socket/groups.js +0 -360
  73. package/lib/Socket/index.d.ts +0 -191
  74. package/lib/Socket/index.js +0 -24
  75. package/lib/Socket/messages-recv.d.ts +0 -174
  76. package/lib/Socket/messages-recv.js +0 -1506
  77. package/lib/Socket/messages-send.d.ts +0 -165
  78. package/lib/Socket/messages-send.js +0 -1785
  79. package/lib/Socket/mex.d.ts +0 -2
  80. package/lib/Socket/mex.js +0 -47
  81. package/lib/Socket/newsletter.d.ts +0 -145
  82. package/lib/Socket/newsletter.js +0 -295
  83. package/lib/Socket/socket.d.ts +0 -45
  84. package/lib/Socket/socket.js +0 -934
  85. package/lib/Socket/usync.d.ts +0 -37
  86. package/lib/Socket/usync.js +0 -83
  87. package/lib/Store/index.d.ts +0 -4
  88. package/lib/Store/index.js +0 -24
  89. package/lib/Store/make-cache-manager-store.d.ts +0 -14
  90. package/lib/Store/make-cache-manager-store.js +0 -90
  91. package/lib/Store/make-in-memory-store.d.ts +0 -123
  92. package/lib/Store/make-in-memory-store.js +0 -429
  93. package/lib/Store/make-ordered-dictionary.d.ts +0 -12
  94. package/lib/Store/make-ordered-dictionary.js +0 -86
  95. package/lib/Store/object-repository.d.ts +0 -10
  96. package/lib/Store/object-repository.js +0 -31
  97. package/lib/Types/Auth.d.ts +0 -121
  98. package/lib/Types/Auth.js +0 -3
  99. package/lib/Types/Bussines.js +0 -3
  100. package/lib/Types/Bussiness.d.ts +0 -28
  101. package/lib/Types/Call.d.ts +0 -14
  102. package/lib/Types/Call.js +0 -3
  103. package/lib/Types/Chat.d.ts +0 -143
  104. package/lib/Types/Chat.js +0 -9
  105. package/lib/Types/Contact.d.ts +0 -23
  106. package/lib/Types/Contact.js +0 -3
  107. package/lib/Types/Events.d.ts +0 -226
  108. package/lib/Types/Events.js +0 -3
  109. package/lib/Types/GroupMetadata.d.ts +0 -66
  110. package/lib/Types/GroupMetadata.js +0 -3
  111. package/lib/Types/Label.d.ts +0 -48
  112. package/lib/Types/Label.js +0 -31
  113. package/lib/Types/LabelAssociation.d.ts +0 -35
  114. package/lib/Types/LabelAssociation.js +0 -13
  115. package/lib/Types/Message.d.ts +0 -484
  116. package/lib/Types/Message.js +0 -19
  117. package/lib/Types/MexUpdates.d.ts +0 -9
  118. package/lib/Types/MexUpdates.js +0 -18
  119. package/lib/Types/Newsletter.d.ts +0 -109
  120. package/lib/Types/Newsletter.js +0 -40
  121. package/lib/Types/Product.d.ts +0 -92
  122. package/lib/Types/Product.js +0 -3
  123. package/lib/Types/Signal.d.ts +0 -98
  124. package/lib/Types/Signal.js +0 -3
  125. package/lib/Types/Socket.d.ts +0 -141
  126. package/lib/Types/Socket.js +0 -3
  127. package/lib/Types/State.d.ts +0 -41
  128. package/lib/Types/State.js +0 -14
  129. package/lib/Types/USync.d.ts +0 -26
  130. package/lib/Types/USync.js +0 -3
  131. package/lib/Types/index.d.ts +0 -80
  132. package/lib/Types/index.js +0 -50
  133. package/lib/Utils/auth-utils.d.ts +0 -21
  134. package/lib/Utils/auth-utils.js +0 -528
  135. package/lib/Utils/baileys-event-stream.d.ts +0 -18
  136. package/lib/Utils/baileys-event-stream.js +0 -70
  137. package/lib/Utils/business.d.ts +0 -29
  138. package/lib/Utils/business.js +0 -255
  139. package/lib/Utils/chat-utils.d.ts +0 -82
  140. package/lib/Utils/chat-utils.js +0 -809
  141. package/lib/Utils/crypto.d.ts +0 -56
  142. package/lib/Utils/crypto.js +0 -189
  143. package/lib/Utils/decode-wa-message.d.ts +0 -53
  144. package/lib/Utils/decode-wa-message.js +0 -323
  145. package/lib/Utils/event-buffer.d.ts +0 -39
  146. package/lib/Utils/event-buffer.js +0 -595
  147. package/lib/Utils/generics.d.ts +0 -131
  148. package/lib/Utils/generics.js +0 -630
  149. package/lib/Utils/history.d.ts +0 -23
  150. package/lib/Utils/history.js +0 -104
  151. package/lib/Utils/index.d.ts +0 -20
  152. package/lib/Utils/index.js +0 -40
  153. package/lib/Utils/link-preview.d.ts +0 -23
  154. package/lib/Utils/link-preview.js +0 -120
  155. package/lib/Utils/logger.d.ts +0 -13
  156. package/lib/Utils/logger.js +0 -7
  157. package/lib/Utils/lt-hash.d.ts +0 -14
  158. package/lib/Utils/lt-hash.js +0 -58
  159. package/lib/Utils/make-mutex.d.ts +0 -9
  160. package/lib/Utils/make-mutex.js +0 -49
  161. package/lib/Utils/message-retry-manager.d.ts +0 -88
  162. package/lib/Utils/message-retry-manager.js +0 -160
  163. package/lib/Utils/messages-media.d.ts +0 -135
  164. package/lib/Utils/messages-media.js +0 -869
  165. package/lib/Utils/messages.d.ts +0 -105
  166. package/lib/Utils/messages.js +0 -1745
  167. package/lib/Utils/noise-handler.d.ts +0 -21
  168. package/lib/Utils/noise-handler.js +0 -165
  169. package/lib/Utils/process-message.d.ts +0 -49
  170. package/lib/Utils/process-message.js +0 -427
  171. package/lib/Utils/signal.d.ts +0 -42
  172. package/lib/Utils/signal.js +0 -166
  173. package/lib/Utils/use-mongo-file-auth-state.d.ts +0 -6
  174. package/lib/Utils/use-mongo-file-auth-state.js +0 -84
  175. package/lib/Utils/use-multi-file-auth-state.d.ts +0 -18
  176. package/lib/Utils/use-multi-file-auth-state.js +0 -238
  177. package/lib/Utils/use-single-file-auth-state.d.ts +0 -13
  178. package/lib/Utils/use-single-file-auth-state.js +0 -80
  179. package/lib/Utils/validate-connection.d.ts +0 -13
  180. package/lib/Utils/validate-connection.js +0 -220
  181. package/lib/WABinary/constants.d.ts +0 -30
  182. package/lib/WABinary/constants.js +0 -1316
  183. package/lib/WABinary/decode.d.ts +0 -9
  184. package/lib/WABinary/decode.js +0 -288
  185. package/lib/WABinary/encode.d.ts +0 -3
  186. package/lib/WABinary/encode.js +0 -265
  187. package/lib/WABinary/generic-utils.d.ts +0 -28
  188. package/lib/WABinary/generic-utils.js +0 -142
  189. package/lib/WABinary/index.d.ts +0 -5
  190. package/lib/WABinary/index.js +0 -25
  191. package/lib/WABinary/jid-utils.d.ts +0 -58
  192. package/lib/WABinary/jid-utils.js +0 -104
  193. package/lib/WABinary/types.d.ts +0 -22
  194. package/lib/WABinary/types.js +0 -3
  195. package/lib/WAM/BinaryInfo.d.ts +0 -16
  196. package/lib/WAM/BinaryInfo.js +0 -17
  197. package/lib/WAM/constants.d.ts +0 -47
  198. package/lib/WAM/constants.js +0 -15371
  199. package/lib/WAM/encode.d.ts +0 -3
  200. package/lib/WAM/encode.js +0 -164
  201. package/lib/WAM/index.d.ts +0 -3
  202. package/lib/WAM/index.js +0 -23
  203. package/lib/WAUSync/Protocols/USyncBotProfileProtocol.d.ts +0 -28
  204. package/lib/WAUSync/Protocols/USyncBotProfileProtocol.js +0 -69
  205. package/lib/WAUSync/Protocols/USyncContactProtocol.d.ts +0 -10
  206. package/lib/WAUSync/Protocols/USyncContactProtocol.js +0 -36
  207. package/lib/WAUSync/Protocols/USyncDeviceProtocol.d.ts +0 -26
  208. package/lib/WAUSync/Protocols/USyncDeviceProtocol.js +0 -62
  209. package/lib/WAUSync/Protocols/USyncDisappearingModeProtocol.d.ts +0 -14
  210. package/lib/WAUSync/Protocols/USyncDisappearingModeProtocol.js +0 -35
  211. package/lib/WAUSync/Protocols/USyncLIDProtocol.d.ts +0 -10
  212. package/lib/WAUSync/Protocols/USyncLIDProtocol.js +0 -38
  213. package/lib/WAUSync/Protocols/USyncStatusProtocol.d.ts +0 -14
  214. package/lib/WAUSync/Protocols/USyncStatusProtocol.js +0 -46
  215. package/lib/WAUSync/Protocols/index.d.ts +0 -6
  216. package/lib/WAUSync/Protocols/index.js +0 -26
  217. package/lib/WAUSync/USyncQuery.d.ts +0 -31
  218. package/lib/WAUSync/USyncQuery.js +0 -92
  219. package/lib/WAUSync/USyncUser.d.ts +0 -12
  220. package/lib/WAUSync/USyncUser.js +0 -30
  221. package/lib/WAUSync/index.d.ts +0 -3
  222. package/lib/WAUSync/index.js +0 -23
  223. package/lib/index.d.ts +0 -13
  224. package/lib/index.js +0 -33
@@ -1,3 +0,0 @@
1
- import { BinaryInfo } from '@neelegirl/baileys/lib/WAM/BinaryInfo'
2
-
3
- export declare const encodeWAM: (binaryInfo: BinaryInfo) => Buffer
package/lib/WAM/encode.js DELETED
@@ -1,164 +0,0 @@
1
- "use strict"
2
-
3
- Object.defineProperty(exports, "__esModule", { value: true })
4
-
5
- const constants_1 = require("./constants")
6
- const getHeaderBitLength = (key) => (key < 256 ? 2 : 3)
7
-
8
- const encodeWAM = (binaryInfo) => {
9
- binaryInfo.buffer = []
10
- encodeWAMHeader(binaryInfo)
11
- encodeEvents(binaryInfo)
12
- const totalSize = binaryInfo.buffer
13
- .map((a) => a.length)
14
- .reduce((a, b) => a + b)
15
- const buffer = Buffer.alloc(totalSize)
16
- let offset = 0
17
- for (const buffer_ of binaryInfo.buffer) {
18
- buffer_.copy(buffer, offset)
19
- offset += buffer_.length
20
- }
21
- return buffer
22
- }
23
-
24
- function encodeWAMHeader(binaryInfo) {
25
- const headerBuffer = Buffer.alloc(8) // starting buffer
26
- headerBuffer.write('WAM', 0, 'utf8')
27
- headerBuffer.writeUInt8(binaryInfo.protocolVersion, 3)
28
- headerBuffer.writeUInt8(1, 4) //random flag
29
- headerBuffer.writeUInt16BE(binaryInfo.sequence, 5)
30
- headerBuffer.writeUInt8(0, 7) // regular channel
31
- binaryInfo.buffer.push(headerBuffer)
32
- }
33
-
34
- function encodeGlobalAttributes(binaryInfo, globals) {
35
- for (const [key, _value] of Object.entries(globals)) {
36
- const id = constants_1.WEB_GLOBALS.find(a => a?.name === key)?.id
37
- let value = _value
38
- if (typeof value === 'boolean') {
39
- value = value ? 1 : 0
40
- }
41
- binaryInfo.buffer.push(serializeData(id, value, constants_1.FLAG_GLOBAL))
42
- }
43
- }
44
-
45
- function encodeEvents(binaryInfo) {
46
- for (const [name, { props, globals },] of binaryInfo.events.map((a) => Object.entries(a)[0])) {
47
- encodeGlobalAttributes(binaryInfo, globals)
48
- const event = constants_1.WEB_EVENTS.find((a) => a.name === name)
49
- const props_ = Object.entries(props)
50
- let extended = false
51
- for (const [, value] of props_) {
52
- extended || (extended = value !== null)
53
- }
54
- const eventFlag = extended ? constants_1.FLAG_EVENT : constants_1.FLAG_EVENT | constants_1.FLAG_EXTENDED
55
- binaryInfo.buffer.push(serializeData(event.id, -event.weight, eventFlag))
56
- for (let i = 0; i < props_.length; i++) {
57
- const [key, _value] = props_[i]
58
- const id = (event.props)[key][0]
59
- extended = i < (props_.length - 1)
60
- let value = _value
61
- if (typeof value === 'boolean') {
62
- value = value ? 1 : 0
63
- }
64
- const fieldFlag = extended ? constants_1.FLAG_EVENT : constants_1.FLAG_FIELD | constants_1.FLAG_EXTENDED
65
- binaryInfo.buffer.push(serializeData(id, value, fieldFlag))
66
- }
67
- }
68
- }
69
-
70
- function serializeData(key, value, flag) {
71
- const bufferLength = getHeaderBitLength(key)
72
- let buffer
73
- let offset = 0
74
- if (value === null) {
75
- if (flag === constants_1.FLAG_GLOBAL) {
76
- buffer = Buffer.alloc(bufferLength)
77
- offset = serializeHeader(buffer, offset, key, flag)
78
- return buffer
79
- }
80
- }
81
- else if (typeof value === 'number' && Number.isInteger(value)) {
82
- // is number
83
- if (value === 0 || value === 1) {
84
- buffer = Buffer.alloc(bufferLength)
85
- offset = serializeHeader(buffer, offset, key, flag | ((value + 1) << 4))
86
- return buffer
87
- }
88
- else if (-128 <= value && value < 128) {
89
- buffer = Buffer.alloc(bufferLength + 1)
90
- offset = serializeHeader(buffer, offset, key, flag | (3 << 4))
91
- buffer.writeInt8(value, offset)
92
- return buffer
93
- }
94
- else if (-32768 <= value && value < 32768) {
95
- buffer = Buffer.alloc(bufferLength + 2)
96
- offset = serializeHeader(buffer, offset, key, flag | (4 << 4))
97
- buffer.writeInt16LE(value, offset)
98
- return buffer
99
- }
100
- else if (-2147483648 <= value && value < 2147483648) {
101
- buffer = Buffer.alloc(bufferLength + 4)
102
- offset = serializeHeader(buffer, offset, key, flag | (5 << 4))
103
- buffer.writeInt32LE(value, offset)
104
- return buffer
105
- }
106
- else {
107
- buffer = Buffer.alloc(bufferLength + 8)
108
- offset = serializeHeader(buffer, offset, key, flag | (7 << 4))
109
- buffer.writeDoubleLE(value, offset)
110
- return buffer
111
- }
112
- }
113
- else if (typeof value === 'number') {
114
- // is float
115
- buffer = Buffer.alloc(bufferLength + 8)
116
- offset = serializeHeader(buffer, offset, key, flag | (7 << 4))
117
- buffer.writeDoubleLE(value, offset)
118
- return buffer
119
- }
120
- else if (typeof value === 'string') {
121
- // is string
122
- const utf8Bytes = Buffer.byteLength(value, 'utf8')
123
- if (utf8Bytes < 256) {
124
- buffer = Buffer.alloc(bufferLength + 1 + utf8Bytes)
125
- offset = serializeHeader(buffer, offset, key, flag | (8 << 4))
126
- buffer.writeUint8(utf8Bytes, offset++)
127
- }
128
- else if (utf8Bytes < 65536) {
129
- buffer = Buffer.alloc(bufferLength + 2 + utf8Bytes)
130
- offset = serializeHeader(buffer, offset, key, flag | (9 << 4))
131
- buffer.writeUInt16LE(utf8Bytes, offset)
132
- offset += 2
133
- }
134
- else {
135
- buffer = Buffer.alloc(bufferLength + 4 + utf8Bytes)
136
- offset = serializeHeader(buffer, offset, key, flag | (10 << 4))
137
- buffer.writeUInt32LE(utf8Bytes, offset)
138
- offset += 4
139
- }
140
- buffer.write(value, offset, 'utf8')
141
- return buffer
142
- }
143
- throw 'missing'
144
- }
145
-
146
- function serializeHeader(buffer, offset, key, flag) {
147
- if (key < 256) {
148
- buffer.writeUInt8(flag, offset)
149
- offset += 1
150
- buffer.writeUInt8(key, offset)
151
- offset += 1
152
- }
153
- else {
154
- buffer.writeUInt8(flag | constants_1.FLAG_BYTE, offset)
155
- offset += 1
156
- buffer.writeUInt16LE(key, offset)
157
- offset += 2
158
- }
159
- return offset
160
- }
161
-
162
- module.exports = {
163
- encodeWAM
164
- }
@@ -1,3 +0,0 @@
1
- export * from '@neelegirl/baileys/lib/WAM/constants'
2
- export * from '@neelegirl/baileys/lib/WAM/encode'
3
- export * from '@neelegirl/baileys/lib/WAM/BinaryInfo'
package/lib/WAM/index.js DELETED
@@ -1,23 +0,0 @@
1
- "use strict"
2
-
3
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
4
- if (k2 === undefined) k2 = k
5
- var desc = Object.getOwnPropertyDescriptor(m, k)
6
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
7
- desc = { enumerable: true, get: function() { return m[k] } }
8
- }
9
- Object.defineProperty(o, k2, desc)
10
- }) : (function(o, m, k, k2) {
11
- if (k2 === undefined) k2 = k
12
- o[k2] = m[k]
13
- }))
14
-
15
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
16
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p)
17
- }
18
-
19
- Object.defineProperty(exports, "__esModule", { value: true })
20
-
21
- __exportStar(require("./constants"), exports)
22
- __exportStar(require("./encode"), exports)
23
- __exportStar(require("./BinaryInfo"), exports)
@@ -1,28 +0,0 @@
1
- import { USyncQueryProtocol } from '@neelegirl/baileys/lib/Types/USync'
2
- import { BinaryNode } from '@neelegirl/baileys/lib/WABinary'
3
- import { USyncUser } from '@neelegirl/baileys/lib/WAUSync/USyncUser'
4
-
5
- export type BotProfileCommand = {
6
- name: string
7
- description: string
8
- }
9
-
10
- export type BotProfileInfo = {
11
- jid: string
12
- name: string
13
- attributes: string
14
- description: string
15
- category: string
16
- isDefault: boolean
17
- prompts: string[]
18
- personaId: string
19
- commands: BotProfileCommand[]
20
- commandsDescription: string
21
- }
22
-
23
- export declare class USyncBotProfileProtocol implements USyncQueryProtocol {
24
- name: string
25
- getQueryElement(): BinaryNode
26
- getUserElement(user: USyncUser): BinaryNode
27
- parser(node: BinaryNode): BotProfileInfo | undefined
28
- }
@@ -1,69 +0,0 @@
1
- "use strict"
2
-
3
- Object.defineProperty(exports, "__esModule", { value: true })
4
-
5
- const WABinary_1 = require("../../WABinary")
6
-
7
- class USyncBotProfileProtocol {
8
- constructor() {
9
- this.name = 'bot'
10
- }
11
- getQueryElement() {
12
- return {
13
- tag: 'bot',
14
- attrs: {},
15
- content: [{ tag: 'profile', attrs: { v: '1' } }]
16
- }
17
- }
18
- getUserElement(user) {
19
- return {
20
- tag: 'bot',
21
- attrs: {},
22
- content: [{ tag: 'profile', attrs: { 'persona_id': user.personaId } }]
23
- }
24
- }
25
- parser(node) {
26
- const botNode = WABinary_1.getBinaryNodeChild(node, 'bot')
27
- const profile = WABinary_1.getBinaryNodeChild(botNode, 'profile')
28
-
29
- const commandsNode = WABinary_1.getBinaryNodeChild(profile, 'commands')
30
- const promptsNode = WABinary_1.getBinaryNodeChild(profile, 'prompts')
31
-
32
- const commands = []
33
- const prompts = []
34
-
35
- if (commandsNode) {
36
- for (const command of WABinary_1.getBinaryNodeChildren(commandsNode, 'command')) {
37
- commands.push({
38
- name: WABinary_1.getBinaryNodeChildString(command, 'name') || '',
39
- description: WABinary_1.getBinaryNodeChildString(command, 'description') || ''
40
- })
41
- }
42
- }
43
-
44
- if (promptsNode) {
45
- for (const prompt of WABinary_1.getBinaryNodeChildren(promptsNode, 'prompt')) {
46
- prompts.push(
47
- `${WABinary_1.getBinaryNodeChildString(prompt, 'emoji') || ''} ${WABinary_1.getBinaryNodeChildString(prompt, 'text') || ''}`
48
- )
49
- }
50
- }
51
-
52
- return {
53
- isDefault: !!WABinary_1.getBinaryNodeChild(profile, 'default'),
54
- jid: node.attrs.jid,
55
- name: WABinary_1.getBinaryNodeChildString(profile, 'name') || '',
56
- attributes: WABinary_1.getBinaryNodeChildString(profile, 'attributes') || '',
57
- description: WABinary_1.getBinaryNodeChildString(profile, 'description') || '',
58
- category: WABinary_1.getBinaryNodeChildString(profile, 'category') || '',
59
- personaId: profile.attrs['persona_id'] || '',
60
- commandsDescription: WABinary_1.getBinaryNodeChildString(commandsNode, 'description') || '',
61
- commands,
62
- prompts
63
- }
64
- }
65
- }
66
-
67
- module.exports = {
68
- USyncBotProfileProtocol
69
- }
@@ -1,10 +0,0 @@
1
- import { USyncQueryProtocol } from '@neelegirl/baileys/lib/Types/USync'
2
- import { BinaryNode } from '@neelegirl/baileys/lib/WABinary'
3
- import { USyncUser } from '@neelegirl/baileys/lib/WAUSync/USyncUser'
4
-
5
- export declare class USyncContactProtocol implements USyncQueryProtocol {
6
- name: string
7
- getQueryElement(): BinaryNode
8
- getUserElement(user: USyncUser): BinaryNode
9
- parser(node: BinaryNode): boolean
10
- }
@@ -1,36 +0,0 @@
1
- "use strict"
2
-
3
- Object.defineProperty(exports, "__esModule", { value: true })
4
-
5
- const WABinary_1 = require("../../WABinary")
6
-
7
- class USyncContactProtocol {
8
- constructor() {
9
- this.name = 'contact'
10
- }
11
- getQueryElement() {
12
- return {
13
- tag: 'contact',
14
- attrs: {},
15
- }
16
- }
17
- getUserElement(user) {
18
- //TODO: Implement type / username fields (not yet supported)
19
- return {
20
- tag: 'contact',
21
- attrs: {},
22
- content: user.phone,
23
- }
24
- }
25
- parser(node) {
26
- if (node.tag === 'contact') {
27
- WABinary_1.assertNodeErrorFree(node)
28
- return node?.attrs?.type === 'in'
29
- }
30
- return false
31
- }
32
- }
33
-
34
- module.exports = {
35
- USyncContactProtocol
36
- }
@@ -1,26 +0,0 @@
1
- import { USyncQueryProtocol } from '@neelegirl/baileys/lib/Types/USync'
2
- import { BinaryNode } from '@neelegirl/baileys/lib/WABinary'
3
-
4
- export type KeyIndexData = {
5
- timestamp: number
6
- signedKeyIndex?: Uint8Array
7
- expectedTimestamp?: number
8
- }
9
-
10
- export type DeviceListData = {
11
- id: number
12
- keyIndex?: number
13
- isHosted?: boolean
14
- }
15
-
16
- export type ParsedDeviceInfo = {
17
- deviceList?: DeviceListData[]
18
- keyIndex?: KeyIndexData
19
- }
20
-
21
- export declare class USyncDeviceProtocol implements USyncQueryProtocol {
22
- name: string
23
- getQueryElement(): BinaryNode
24
- getUserElement(): BinaryNode | null
25
- parser(node: BinaryNode): ParsedDeviceInfo
26
- }
@@ -1,62 +0,0 @@
1
- "use strict"
2
-
3
- Object.defineProperty(exports, "__esModule", { value: true })
4
-
5
- const WABinary_1 = require("../../WABinary")
6
-
7
- class USyncDeviceProtocol {
8
- constructor() {
9
- this.name = 'devices'
10
- }
11
- getQueryElement() {
12
- return {
13
- tag: 'devices',
14
- attrs: {
15
- version: '2',
16
- },
17
- }
18
- }
19
- getUserElement( /* user: USyncUser */) {
20
- //TODO: Implement device phashing, ts and expectedTs
21
- //TODO: if all are not present, return null <- current behavior
22
- //TODO: otherwise return a node w tag 'devices' w those as attrs
23
- return null
24
- }
25
- parser(node) {
26
- const deviceList = []
27
- let keyIndex = undefined
28
- if (node.tag === 'devices') {
29
- WABinary_1.assertNodeErrorFree(node)
30
- const deviceListNode = WABinary_1.getBinaryNodeChild(node, 'device-list')
31
- const keyIndexNode = WABinary_1.getBinaryNodeChild(node, 'key-index-list')
32
- if (Array.isArray(deviceListNode?.content)) {
33
- for (const { tag, attrs } of deviceListNode.content) {
34
- const id = +attrs.id
35
- const keyIndex = +attrs['key-index']
36
- if (tag === 'device') {
37
- deviceList.push({
38
- id,
39
- keyIndex,
40
- isHosted: !!(attrs['is_hosted'] && attrs['is_hosted'] === 'true')
41
- })
42
- }
43
- }
44
- }
45
- if (keyIndexNode?.tag === 'key-index-list') {
46
- keyIndex = {
47
- timestamp: +keyIndexNode.attrs['ts'],
48
- signedKeyIndex: keyIndexNode?.content,
49
- expectedTimestamp: keyIndexNode.attrs['expected_ts'] ? +keyIndexNode.attrs['expected_ts'] : undefined
50
- }
51
- }
52
- }
53
- return {
54
- deviceList,
55
- keyIndex
56
- }
57
- }
58
- }
59
-
60
- module.exports = {
61
- USyncDeviceProtocol
62
- }
@@ -1,14 +0,0 @@
1
- import { USyncQueryProtocol } from '@neelegirl/baileys/lib/Types/USync'
2
- import { BinaryNode } from '@neelegirl/baileys/lib/WABinary'
3
-
4
- export type DisappearingModeData = {
5
- duration: number
6
- setAt?: Date
7
- }
8
-
9
- export declare class USyncDisappearingModeProtocol implements USyncQueryProtocol {
10
- name: string
11
- getQueryElement(): BinaryNode
12
- getUserElement(): null
13
- parser(node: BinaryNode): DisappearingModeData | undefined
14
- }
@@ -1,35 +0,0 @@
1
- "use strict"
2
-
3
- Object.defineProperty(exports, "__esModule", { value: true })
4
-
5
- const WABinary_1 = require("../../WABinary")
6
-
7
- class USyncDisappearingModeProtocol {
8
- constructor() {
9
- this.name = 'disappearing_mode'
10
- }
11
- getQueryElement() {
12
- return {
13
- tag: 'disappearing_mode',
14
- attrs: {},
15
- }
16
- }
17
- getUserElement() {
18
- return null
19
- }
20
- parser(node) {
21
- if (node.tag === 'disappearing_mode') {
22
- WABinary_1.assertNodeErrorFree(node)
23
- const duration = +node?.attrs?.duration
24
- const setAt = new Date(+(node?.attrs?.t || 0) * 1000)
25
- return {
26
- duration,
27
- setAt,
28
- }
29
- }
30
- }
31
- }
32
-
33
- module.exports = {
34
- USyncDisappearingModeProtocol
35
- }
@@ -1,10 +0,0 @@
1
- import { USyncQueryProtocol } from '@neelegirl/baileys/lib/Types/USync'
2
- import { BinaryNode } from '@neelegirl/baileys/lib/WABinary'
3
- import { USyncUser } from '@neelegirl/baileys/lib/WAUSync/USyncUser'
4
-
5
- export declare class USyncLIDProtocol implements USyncQueryProtocol {
6
- name: string
7
- getQueryElement(): BinaryNode
8
- getUserElement(user: USyncUser): BinaryNode | null
9
- parser(node: BinaryNode): string | null
10
- }
@@ -1,38 +0,0 @@
1
- "use strict"
2
-
3
- Object.defineProperty(exports, "__esModule", { value: true })
4
-
5
- const WABinary_1 = require("../../WABinary")
6
-
7
- class USyncLIDProtocol {
8
- constructor() {
9
- this.name = 'lid'
10
- }
11
- getQueryElement() {
12
- return {
13
- tag: 'lid',
14
- attrs: {}
15
- }
16
- }
17
- getUserElement(user) {
18
- if (user.lid) {
19
- return {
20
- tag: 'lid',
21
- attrs: { jid: user.lid }
22
- }
23
- }
24
- else {
25
- return null
26
- }
27
- }
28
- parser(node) {
29
- if (node.tag === 'lid') {
30
- return node.attrs.val
31
- }
32
- return null
33
- }
34
- }
35
-
36
- module.exports = {
37
- USyncLIDProtocol
38
- }
@@ -1,14 +0,0 @@
1
- import { USyncQueryProtocol } from '@neelegirl/baileys/lib/Types/USync'
2
- import { BinaryNode } from '@neelegirl/baileys/lib/WABinary'
3
-
4
- export type StatusData = {
5
- status?: string | null
6
- setAt?: Date
7
- }
8
-
9
- export declare class USyncStatusProtocol implements USyncQueryProtocol {
10
- name: string
11
- getQueryElement(): BinaryNode
12
- getUserElement(): null
13
- parser(node: BinaryNode): StatusData | undefined
14
- }
@@ -1,46 +0,0 @@
1
- "use strict"
2
-
3
- Object.defineProperty(exports, "__esModule", { value: true })
4
-
5
- const WABinary_1 = require("../../WABinary")
6
-
7
- class USyncStatusProtocol {
8
- constructor() {
9
- this.name = 'status'
10
- }
11
- getQueryElement() {
12
- return {
13
- tag: 'status',
14
- attrs: {},
15
- }
16
- }
17
- getUserElement() {
18
- return null
19
- }
20
- parser(node) {
21
- if (node.tag === 'status') {
22
- WABinary_1.assertNodeErrorFree(node)
23
- let status = node?.content?.toString() || null
24
- const setAt = new Date(+(node?.attrs?.t || 0) * 1000)
25
- if (!status) {
26
- if (+node.attrs?.code === 401) {
27
- status = ''
28
- }
29
- else {
30
- status = null
31
- }
32
- }
33
- else if (typeof status === 'string' && status.length === 0) {
34
- status = null
35
- }
36
- return {
37
- status,
38
- setAt,
39
- }
40
- }
41
- }
42
- }
43
-
44
- module.exports = {
45
- USyncStatusProtocol
46
- }
@@ -1,6 +0,0 @@
1
- export * from '@neelegirl/baileys/lib/WAUSync/Protocols/USyncBotProfileProtocol'
2
- export * from '@neelegirl/baileys/lib/WAUSync/Protocols/USyncContactProtocol'
3
- export * from '@neelegirl/baileys/lib/WAUSync/Protocols/USyncDeviceProtocol'
4
- export * from '@neelegirl/baileys/lib/WAUSync/Protocols/USyncLIDProtocol'
5
- export * from '@neelegirl/baileys/lib/WAUSync/Protocols/USyncStatusProtocol'
6
- export * from '@neelegirl/baileys/lib/WAUSync/Protocols/USyncDisappearingModeProtocol'
@@ -1,26 +0,0 @@
1
- "use strict"
2
-
3
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
4
- if (k2 === undefined) k2 = k
5
- var desc = Object.getOwnPropertyDescriptor(m, k)
6
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
7
- desc = { enumerable: true, get: function() { return m[k] } }
8
- }
9
- Object.defineProperty(o, k2, desc)
10
- }) : (function(o, m, k, k2) {
11
- if (k2 === undefined) k2 = k
12
- o[k2] = m[k]
13
- }))
14
-
15
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
16
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p)
17
- }
18
-
19
- Object.defineProperty(exports, "__esModule", { value: true })
20
-
21
- __exportStar(require("./USyncBotProfileProtocol"), exports)
22
- __exportStar(require("./USyncContactProtocol"), exports)
23
- __exportStar(require("./USyncDeviceProtocol"), exports)
24
- __exportStar(require("./USyncLIDProtocol"), exports)
25
- __exportStar(require("./USyncStatusProtocol"), exports)
26
- __exportStar(require("./USyncDisappearingModeProtocol"), exports)
@@ -1,31 +0,0 @@
1
- import { USyncQueryProtocol } from '@neelegirl/baileys/lib/Types/USync'
2
- import { BinaryNode } from '@neelegirl/baileys/lib/WABinary'
3
- import { USyncUser } from '@neelegirl/baileys/lib/WAUSync/USyncUser'
4
-
5
- export type USyncQueryResultList = {
6
- [protocol: string]: unknown
7
- id: string
8
- }
9
-
10
- export type USyncQueryResult = {
11
- list: USyncQueryResultList[]
12
- sideList: USyncQueryResultList[]
13
- }
14
-
15
- export declare class USyncQuery {
16
- protocols: USyncQueryProtocol[]
17
- users: USyncUser[]
18
- context: string
19
- mode: string
20
- constructor()
21
- withMode(mode: string): this
22
- withContext(context: string): this
23
- withUser(user: USyncUser): this
24
- parseUSyncQueryResult(result: BinaryNode): USyncQueryResult | undefined
25
- withLIDProtocol(): this
26
- withDeviceProtocol(): this
27
- withContactProtocol(): this
28
- withStatusProtocol(): this
29
- withBotProfileProtocol(): this
30
- withDisappearingModeProtocol(): this
31
- }