trompot 1.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 (357) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +560 -0
  3. package/lib/bot/BotBase.d.ts +82 -0
  4. package/lib/bot/BotBase.js +144 -0
  5. package/lib/bot/BotBase.js.map +1 -0
  6. package/lib/bot/BotEvents.d.ts +87 -0
  7. package/lib/bot/BotEvents.js +51 -0
  8. package/lib/bot/BotEvents.js.map +1 -0
  9. package/lib/bot/BotServer.d.ts +34 -0
  10. package/lib/bot/BotServer.js +118 -0
  11. package/lib/bot/BotServer.js.map +1 -0
  12. package/lib/bot/BotStatus.d.ts +4 -0
  13. package/lib/bot/BotStatus.js +9 -0
  14. package/lib/bot/BotStatus.js.map +1 -0
  15. package/lib/bot/IBot.d.ts +292 -0
  16. package/lib/bot/IBot.js +3 -0
  17. package/lib/bot/IBot.js.map +1 -0
  18. package/lib/bot/index.d.ts +5 -0
  19. package/lib/bot/index.js +13 -0
  20. package/lib/bot/index.js.map +1 -0
  21. package/lib/client/Client.d.ts +120 -0
  22. package/lib/client/Client.js +687 -0
  23. package/lib/client/Client.js.map +1 -0
  24. package/lib/client/ClientEvents.d.ts +147 -0
  25. package/lib/client/ClientEvents.js +93 -0
  26. package/lib/client/ClientEvents.js.map +1 -0
  27. package/lib/client/ClientFunctionHandler.d.ts +15 -0
  28. package/lib/client/ClientFunctionHandler.js +70 -0
  29. package/lib/client/ClientFunctionHandler.js.map +1 -0
  30. package/lib/client/ConnectionType.d.ts +4 -0
  31. package/lib/client/ConnectionType.js +3 -0
  32. package/lib/client/ConnectionType.js.map +1 -0
  33. package/lib/client/IAuth.d.ts +9 -0
  34. package/lib/client/IAuth.js +3 -0
  35. package/lib/client/IAuth.js.map +1 -0
  36. package/lib/client/IClient.d.ts +358 -0
  37. package/lib/client/IClient.js +3 -0
  38. package/lib/client/IClient.js.map +1 -0
  39. package/lib/client/index.d.ts +7 -0
  40. package/lib/client/index.js +13 -0
  41. package/lib/client/index.js.map +1 -0
  42. package/lib/cluster/ClientCluster.d.ts +428 -0
  43. package/lib/cluster/ClientCluster.js +1746 -0
  44. package/lib/cluster/ClientCluster.js.map +1 -0
  45. package/lib/cluster/WorkerMessage.d.ts +99 -0
  46. package/lib/cluster/WorkerMessage.js +84 -0
  47. package/lib/cluster/WorkerMessage.js.map +1 -0
  48. package/lib/cluster/index.d.ts +5 -0
  49. package/lib/cluster/index.js +27 -0
  50. package/lib/cluster/index.js.map +1 -0
  51. package/lib/configs/ConnectionConfig.d.ts +22 -0
  52. package/lib/configs/ConnectionConfig.js +3 -0
  53. package/lib/configs/ConnectionConfig.js.map +1 -0
  54. package/lib/configs/Defaults.d.ts +2 -0
  55. package/lib/configs/Defaults.js +16 -0
  56. package/lib/configs/Defaults.js.map +1 -0
  57. package/lib/configs/WAConfigs.d.ts +1 -0
  58. package/lib/configs/WAConfigs.js +5 -0
  59. package/lib/configs/WAConfigs.js.map +1 -0
  60. package/lib/configs/index.d.ts +3 -0
  61. package/lib/configs/index.js +18 -0
  62. package/lib/configs/index.js.map +1 -0
  63. package/lib/errors/ChatNotDefinedError.d.ts +4 -0
  64. package/lib/errors/ChatNotDefinedError.js +9 -0
  65. package/lib/errors/ChatNotDefinedError.js.map +1 -0
  66. package/lib/errors/ClientNotDefinedError.d.ts +4 -0
  67. package/lib/errors/ClientNotDefinedError.js +9 -0
  68. package/lib/errors/ClientNotDefinedError.js.map +1 -0
  69. package/lib/errors/UserNotDefinedError.d.ts +4 -0
  70. package/lib/errors/UserNotDefinedError.js +9 -0
  71. package/lib/errors/UserNotDefinedError.js.map +1 -0
  72. package/lib/index.d.ts +17 -0
  73. package/lib/index.js +60 -0
  74. package/lib/index.js.map +1 -0
  75. package/lib/messages/AudioMessage.d.ts +42 -0
  76. package/lib/messages/AudioMessage.js +66 -0
  77. package/lib/messages/AudioMessage.js.map +1 -0
  78. package/lib/messages/ButtonMessage.d.ts +88 -0
  79. package/lib/messages/ButtonMessage.js +137 -0
  80. package/lib/messages/ButtonMessage.js.map +1 -0
  81. package/lib/messages/ContactMessage.d.ts +37 -0
  82. package/lib/messages/ContactMessage.js +93 -0
  83. package/lib/messages/ContactMessage.js.map +1 -0
  84. package/lib/messages/CustomMessage.d.ts +35 -0
  85. package/lib/messages/CustomMessage.js +88 -0
  86. package/lib/messages/CustomMessage.js.map +1 -0
  87. package/lib/messages/EmptyMessage.d.ts +25 -0
  88. package/lib/messages/EmptyMessage.js +78 -0
  89. package/lib/messages/EmptyMessage.js.map +1 -0
  90. package/lib/messages/ErrorMessage.d.ts +35 -0
  91. package/lib/messages/ErrorMessage.js +86 -0
  92. package/lib/messages/ErrorMessage.js.map +1 -0
  93. package/lib/messages/FileMessage.d.ts +36 -0
  94. package/lib/messages/FileMessage.js +60 -0
  95. package/lib/messages/FileMessage.js.map +1 -0
  96. package/lib/messages/ImageMessage.d.ts +41 -0
  97. package/lib/messages/ImageMessage.js +65 -0
  98. package/lib/messages/ImageMessage.js.map +1 -0
  99. package/lib/messages/ListMessage.d.ts +91 -0
  100. package/lib/messages/ListMessage.js +126 -0
  101. package/lib/messages/ListMessage.js.map +1 -0
  102. package/lib/messages/LocationMessage.d.ts +48 -0
  103. package/lib/messages/LocationMessage.js +107 -0
  104. package/lib/messages/LocationMessage.js.map +1 -0
  105. package/lib/messages/MediaMessage.d.ts +54 -0
  106. package/lib/messages/MediaMessage.js +113 -0
  107. package/lib/messages/MediaMessage.js.map +1 -0
  108. package/lib/messages/Message.d.ts +144 -0
  109. package/lib/messages/Message.js +223 -0
  110. package/lib/messages/Message.js.map +1 -0
  111. package/lib/messages/PollMessage.d.ts +87 -0
  112. package/lib/messages/PollMessage.js +145 -0
  113. package/lib/messages/PollMessage.js.map +1 -0
  114. package/lib/messages/PollUpdateMessage.d.ts +40 -0
  115. package/lib/messages/PollUpdateMessage.js +98 -0
  116. package/lib/messages/PollUpdateMessage.js.map +1 -0
  117. package/lib/messages/ReactionMessage.d.ts +36 -0
  118. package/lib/messages/ReactionMessage.js +91 -0
  119. package/lib/messages/ReactionMessage.js.map +1 -0
  120. package/lib/messages/StickerMessage.d.ts +49 -0
  121. package/lib/messages/StickerMessage.js +73 -0
  122. package/lib/messages/StickerMessage.js.map +1 -0
  123. package/lib/messages/TextMessage.d.ts +33 -0
  124. package/lib/messages/TextMessage.js +84 -0
  125. package/lib/messages/TextMessage.js.map +1 -0
  126. package/lib/messages/VideoMessage.d.ts +42 -0
  127. package/lib/messages/VideoMessage.js +66 -0
  128. package/lib/messages/VideoMessage.js.map +1 -0
  129. package/lib/messages/index.d.ts +19 -0
  130. package/lib/messages/index.js +81 -0
  131. package/lib/messages/index.js.map +1 -0
  132. package/lib/models/Address.d.ts +11 -0
  133. package/lib/models/Address.js +18 -0
  134. package/lib/models/Address.js.map +1 -0
  135. package/lib/models/Call.d.ts +68 -0
  136. package/lib/models/Call.js +127 -0
  137. package/lib/models/Call.js.map +1 -0
  138. package/lib/modules/chat/Chat.d.ts +142 -0
  139. package/lib/modules/chat/Chat.js +246 -0
  140. package/lib/modules/chat/Chat.js.map +1 -0
  141. package/lib/modules/chat/ChatAction.d.ts +3 -0
  142. package/lib/modules/chat/ChatAction.js +3 -0
  143. package/lib/modules/chat/ChatAction.js.map +1 -0
  144. package/lib/modules/chat/ChatStatus.d.ts +9 -0
  145. package/lib/modules/chat/ChatStatus.js +13 -0
  146. package/lib/modules/chat/ChatStatus.js.map +1 -0
  147. package/lib/modules/chat/ChatType.d.ts +7 -0
  148. package/lib/modules/chat/ChatType.js +11 -0
  149. package/lib/modules/chat/ChatType.js.map +1 -0
  150. package/lib/modules/chat/index.d.ts +5 -0
  151. package/lib/modules/chat/index.js +13 -0
  152. package/lib/modules/chat/index.js.map +1 -0
  153. package/lib/modules/command/Command.d.ts +67 -0
  154. package/lib/modules/command/Command.js +139 -0
  155. package/lib/modules/command/Command.js.map +1 -0
  156. package/lib/modules/command/CommandController.d.ts +50 -0
  157. package/lib/modules/command/CommandController.js +119 -0
  158. package/lib/modules/command/CommandController.js.map +1 -0
  159. package/lib/modules/command/CommandControllerEvent.d.ts +9 -0
  160. package/lib/modules/command/CommandControllerEvent.js +25 -0
  161. package/lib/modules/command/CommandControllerEvent.js.map +1 -0
  162. package/lib/modules/command/CommandEnums.d.ts +14 -0
  163. package/lib/modules/command/CommandEnums.js +20 -0
  164. package/lib/modules/command/CommandEnums.js.map +1 -0
  165. package/lib/modules/command/CommandKey.d.ts +17 -0
  166. package/lib/modules/command/CommandKey.js +67 -0
  167. package/lib/modules/command/CommandKey.js.map +1 -0
  168. package/lib/modules/command/CommandPermission.d.ts +9 -0
  169. package/lib/modules/command/CommandPermission.js +35 -0
  170. package/lib/modules/command/CommandPermission.js.map +1 -0
  171. package/lib/modules/command/ICommandControllerConfig.d.ts +7 -0
  172. package/lib/modules/command/ICommandControllerConfig.js +3 -0
  173. package/lib/modules/command/ICommandControllerConfig.js.map +1 -0
  174. package/lib/modules/command/advanced/AdvancedCommand.d.ts +23 -0
  175. package/lib/modules/command/advanced/AdvancedCommand.js +131 -0
  176. package/lib/modules/command/advanced/AdvancedCommand.js.map +1 -0
  177. package/lib/modules/command/advanced/AdvancedCommandContext.d.ts +10 -0
  178. package/lib/modules/command/advanced/AdvancedCommandContext.js +3 -0
  179. package/lib/modules/command/advanced/AdvancedCommandContext.js.map +1 -0
  180. package/lib/modules/command/advanced/AdvancedCommandController.d.ts +29 -0
  181. package/lib/modules/command/advanced/AdvancedCommandController.js +118 -0
  182. package/lib/modules/command/advanced/AdvancedCommandController.js.map +1 -0
  183. package/lib/modules/command/advanced/AdvancedCommandData.d.ts +6 -0
  184. package/lib/modules/command/advanced/AdvancedCommandData.js +3 -0
  185. package/lib/modules/command/advanced/AdvancedCommandData.js.map +1 -0
  186. package/lib/modules/command/advanced/AdvancedCommandJob.d.ts +12 -0
  187. package/lib/modules/command/advanced/AdvancedCommandJob.js +3 -0
  188. package/lib/modules/command/advanced/AdvancedCommandJob.js.map +1 -0
  189. package/lib/modules/command/advanced/AdvancedCommandNext.d.ts +4 -0
  190. package/lib/modules/command/advanced/AdvancedCommandNext.js +3 -0
  191. package/lib/modules/command/advanced/AdvancedCommandNext.js.map +1 -0
  192. package/lib/modules/command/advanced/AdvancedCommandOptions.d.ts +8 -0
  193. package/lib/modules/command/advanced/AdvancedCommandOptions.js +3 -0
  194. package/lib/modules/command/advanced/AdvancedCommandOptions.js.map +1 -0
  195. package/lib/modules/command/advanced/AdvancedCommandStart.d.ts +11 -0
  196. package/lib/modules/command/advanced/AdvancedCommandStart.js +3 -0
  197. package/lib/modules/command/advanced/AdvancedCommandStart.js.map +1 -0
  198. package/lib/modules/command/advanced/AdvancedCommandStop.d.ts +3 -0
  199. package/lib/modules/command/advanced/AdvancedCommandStop.js +3 -0
  200. package/lib/modules/command/advanced/AdvancedCommandStop.js.map +1 -0
  201. package/lib/modules/command/advanced/AdvancedCommandTask.d.ts +2 -0
  202. package/lib/modules/command/advanced/AdvancedCommandTask.js +3 -0
  203. package/lib/modules/command/advanced/AdvancedCommandTask.js.map +1 -0
  204. package/lib/modules/command/defaults.d.ts +2 -0
  205. package/lib/modules/command/defaults.js +8 -0
  206. package/lib/modules/command/defaults.js.map +1 -0
  207. package/lib/modules/command/index.d.ts +12 -0
  208. package/lib/modules/command/index.js +36 -0
  209. package/lib/modules/command/index.js.map +1 -0
  210. package/lib/modules/command/keys.d.ts +9 -0
  211. package/lib/modules/command/keys.js +27 -0
  212. package/lib/modules/command/keys.js.map +1 -0
  213. package/lib/modules/command/perms.d.ts +2 -0
  214. package/lib/modules/command/perms.js +11 -0
  215. package/lib/modules/command/perms.js.map +1 -0
  216. package/lib/modules/quickResponse/QuickResponse.d.ts +49 -0
  217. package/lib/modules/quickResponse/QuickResponse.js +64 -0
  218. package/lib/modules/quickResponse/QuickResponse.js.map +1 -0
  219. package/lib/modules/quickResponse/QuickResponseController.d.ts +55 -0
  220. package/lib/modules/quickResponse/QuickResponseController.js +125 -0
  221. package/lib/modules/quickResponse/QuickResponseController.js.map +1 -0
  222. package/lib/modules/quickResponse/QuickResponseOptions.d.ts +56 -0
  223. package/lib/modules/quickResponse/QuickResponseOptions.js +76 -0
  224. package/lib/modules/quickResponse/QuickResponseOptions.js.map +1 -0
  225. package/lib/modules/quickResponse/QuickResponsePattern.d.ts +28 -0
  226. package/lib/modules/quickResponse/QuickResponsePattern.js +3 -0
  227. package/lib/modules/quickResponse/QuickResponsePattern.js.map +1 -0
  228. package/lib/modules/quickResponse/QuickResponseReply.d.ts +6 -0
  229. package/lib/modules/quickResponse/QuickResponseReply.js +3 -0
  230. package/lib/modules/quickResponse/QuickResponseReply.js.map +1 -0
  231. package/lib/modules/quickResponse/index.d.ts +6 -0
  232. package/lib/modules/quickResponse/index.js +13 -0
  233. package/lib/modules/quickResponse/index.js.map +1 -0
  234. package/lib/modules/user/User.d.ts +91 -0
  235. package/lib/modules/user/User.js +173 -0
  236. package/lib/modules/user/User.js.map +1 -0
  237. package/lib/modules/user/UserAction.d.ts +4 -0
  238. package/lib/modules/user/UserAction.js +3 -0
  239. package/lib/modules/user/UserAction.js.map +1 -0
  240. package/lib/modules/user/UserEvent.d.ts +3 -0
  241. package/lib/modules/user/UserEvent.js +3 -0
  242. package/lib/modules/user/UserEvent.js.map +1 -0
  243. package/lib/modules/user/index.d.ts +4 -0
  244. package/lib/modules/user/index.js +9 -0
  245. package/lib/modules/user/index.js.map +1 -0
  246. package/lib/routes/botServer/api/v1/emitEvent.d.ts +3 -0
  247. package/lib/routes/botServer/api/v1/emitEvent.js +17 -0
  248. package/lib/routes/botServer/api/v1/emitEvent.js.map +1 -0
  249. package/lib/routes/botServer/api/v1/function.d.ts +3 -0
  250. package/lib/routes/botServer/api/v1/function.js +22 -0
  251. package/lib/routes/botServer/api/v1/function.js.map +1 -0
  252. package/lib/routes/botServer/api/v1/ping.d.ts +3 -0
  253. package/lib/routes/botServer/api/v1/ping.js +12 -0
  254. package/lib/routes/botServer/api/v1/ping.js.map +1 -0
  255. package/lib/routes/botServer/api/v1/register.d.ts +3 -0
  256. package/lib/routes/botServer/api/v1/register.js +23 -0
  257. package/lib/routes/botServer/api/v1/register.js.map +1 -0
  258. package/lib/routes/botServer/api/v1/setValue.d.ts +3 -0
  259. package/lib/routes/botServer/api/v1/setValue.js +18 -0
  260. package/lib/routes/botServer/api/v1/setValue.js.map +1 -0
  261. package/lib/routes/botServer/api/v1/unregister.d.ts +3 -0
  262. package/lib/routes/botServer/api/v1/unregister.js +22 -0
  263. package/lib/routes/botServer/api/v1/unregister.js.map +1 -0
  264. package/lib/routes/botServer/middlewares/setBotServer.d.ts +4 -0
  265. package/lib/routes/botServer/middlewares/setBotServer.js +16 -0
  266. package/lib/routes/botServer/middlewares/setBotServer.js.map +1 -0
  267. package/lib/routes/botServer/routes.d.ts +8 -0
  268. package/lib/routes/botServer/routes.js +33 -0
  269. package/lib/routes/botServer/routes.js.map +1 -0
  270. package/lib/services/AddressService.d.ts +12 -0
  271. package/lib/services/AddressService.js +51 -0
  272. package/lib/services/AddressService.js.map +1 -0
  273. package/lib/services/BaseService.d.ts +5 -0
  274. package/lib/services/BaseService.js +19 -0
  275. package/lib/services/BaseService.js.map +1 -0
  276. package/lib/services/index.d.ts +3 -0
  277. package/lib/services/index.js +11 -0
  278. package/lib/services/index.js.map +1 -0
  279. package/lib/telegram/TelegramAuth.d.ts +17 -0
  280. package/lib/telegram/TelegramAuth.js +96 -0
  281. package/lib/telegram/TelegramAuth.js.map +1 -0
  282. package/lib/telegram/TelegramBot.d.ts +88 -0
  283. package/lib/telegram/TelegramBot.js +345 -0
  284. package/lib/telegram/TelegramBot.js.map +1 -0
  285. package/lib/telegram/TelegramEvents.d.ts +13 -0
  286. package/lib/telegram/TelegramEvents.js +131 -0
  287. package/lib/telegram/TelegramEvents.js.map +1 -0
  288. package/lib/telegram/TelegramSendingController.d.ts +36 -0
  289. package/lib/telegram/TelegramSendingController.js +213 -0
  290. package/lib/telegram/TelegramSendingController.js.map +1 -0
  291. package/lib/telegram/TelegramToRompotConverter.d.ts +22 -0
  292. package/lib/telegram/TelegramToRompotConverter.js +226 -0
  293. package/lib/telegram/TelegramToRompotConverter.js.map +1 -0
  294. package/lib/telegram/TelegramUtils.d.ts +14 -0
  295. package/lib/telegram/TelegramUtils.js +98 -0
  296. package/lib/telegram/TelegramUtils.js.map +1 -0
  297. package/lib/telegram/index.d.ts +7 -0
  298. package/lib/telegram/index.js +19 -0
  299. package/lib/telegram/index.js.map +1 -0
  300. package/lib/utils/ClientUtils.d.ts +27 -0
  301. package/lib/utils/ClientUtils.js +62 -0
  302. package/lib/utils/ClientUtils.js.map +1 -0
  303. package/lib/utils/Generic.d.ts +47 -0
  304. package/lib/utils/Generic.js +173 -0
  305. package/lib/utils/Generic.js.map +1 -0
  306. package/lib/utils/Libs.d.ts +10 -0
  307. package/lib/utils/Libs.js +55 -0
  308. package/lib/utils/Libs.js.map +1 -0
  309. package/lib/utils/MessageHandler.d.ts +54 -0
  310. package/lib/utils/MessageHandler.js +81 -0
  311. package/lib/utils/MessageHandler.js.map +1 -0
  312. package/lib/utils/MessageUtils.d.ts +3 -0
  313. package/lib/utils/MessageUtils.js +114 -0
  314. package/lib/utils/MessageUtils.js.map +1 -0
  315. package/lib/utils/index.d.ts +6 -0
  316. package/lib/utils/index.js +27 -0
  317. package/lib/utils/index.js.map +1 -0
  318. package/lib/utils/nonce.d.ts +1 -0
  319. package/lib/utils/nonce.js +16 -0
  320. package/lib/utils/nonce.js.map +1 -0
  321. package/lib/utils/server.d.ts +33 -0
  322. package/lib/utils/server.js +75 -0
  323. package/lib/utils/server.js.map +1 -0
  324. package/lib/wa/Auth.d.ts +19 -0
  325. package/lib/wa/Auth.js +123 -0
  326. package/lib/wa/Auth.js.map +1 -0
  327. package/lib/wa/ConfigWAEvents.d.ts +22 -0
  328. package/lib/wa/ConfigWAEvents.js +526 -0
  329. package/lib/wa/ConfigWAEvents.js.map +1 -0
  330. package/lib/wa/ConvertToWAMessage.d.ts +67 -0
  331. package/lib/wa/ConvertToWAMessage.js +403 -0
  332. package/lib/wa/ConvertToWAMessage.js.map +1 -0
  333. package/lib/wa/ConvertWAMessage.d.ts +108 -0
  334. package/lib/wa/ConvertWAMessage.js +527 -0
  335. package/lib/wa/ConvertWAMessage.js.map +1 -0
  336. package/lib/wa/ID.d.ts +4 -0
  337. package/lib/wa/ID.js +19 -0
  338. package/lib/wa/ID.js.map +1 -0
  339. package/lib/wa/WAMessage.d.ts +3 -0
  340. package/lib/wa/WAMessage.js +8 -0
  341. package/lib/wa/WAMessage.js.map +1 -0
  342. package/lib/wa/WAModule.d.ts +3 -0
  343. package/lib/wa/WAModule.js +3 -0
  344. package/lib/wa/WAModule.js.map +1 -0
  345. package/lib/wa/WAStatus.d.ts +3 -0
  346. package/lib/wa/WAStatus.js +15 -0
  347. package/lib/wa/WAStatus.js.map +1 -0
  348. package/lib/wa/WhatsAppBot.d.ts +188 -0
  349. package/lib/wa/WhatsAppBot.js +980 -0
  350. package/lib/wa/WhatsAppBot.js.map +1 -0
  351. package/lib/wa/index.d.ts +12 -0
  352. package/lib/wa/index.js +37 -0
  353. package/lib/wa/index.js.map +1 -0
  354. package/lib/wa/makeInMemoryStore.d.ts +43 -0
  355. package/lib/wa/makeInMemoryStore.js +430 -0
  356. package/lib/wa/makeInMemoryStore.js.map +1 -0
  357. package/package.json +79 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WhatsAppBot.js","sourceRoot":"","sources":["../../src/wa/WhatsAppBot.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ import ConfigWAEvents from "./ConfigWAEvents";
2
+ import ConvertToWAMessage from "./ConvertToWAMessage";
3
+ import ConvertWAMessage from "./ConvertWAMessage";
4
+ import makeInMemoryStore from "./makeInMemoryStore";
5
+ import WhatsAppBot, { WhatsAppBotConfig } from "./WhatsAppBot";
6
+ export * from "./Auth";
7
+ export * from "./ID";
8
+ export * from "./makeInMemoryStore";
9
+ export * from "./WAMessage";
10
+ export * from "./WAModule";
11
+ export * from "./WAStatus";
12
+ export { ConfigWAEvents, ConvertToWAMessage, ConvertWAMessage, makeInMemoryStore, WhatsAppBot, WhatsAppBotConfig };
@@ -0,0 +1,37 @@
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
+ var __importDefault = (this && this.__importDefault) || function (mod) {
17
+ return (mod && mod.__esModule) ? mod : { "default": mod };
18
+ };
19
+ Object.defineProperty(exports, "__esModule", { value: true });
20
+ exports.WhatsAppBot = exports.makeInMemoryStore = exports.ConvertWAMessage = exports.ConvertToWAMessage = exports.ConfigWAEvents = void 0;
21
+ const ConfigWAEvents_1 = __importDefault(require("./ConfigWAEvents"));
22
+ exports.ConfigWAEvents = ConfigWAEvents_1.default;
23
+ const ConvertToWAMessage_1 = __importDefault(require("./ConvertToWAMessage"));
24
+ exports.ConvertToWAMessage = ConvertToWAMessage_1.default;
25
+ const ConvertWAMessage_1 = __importDefault(require("./ConvertWAMessage"));
26
+ exports.ConvertWAMessage = ConvertWAMessage_1.default;
27
+ const makeInMemoryStore_1 = __importDefault(require("./makeInMemoryStore"));
28
+ exports.makeInMemoryStore = makeInMemoryStore_1.default;
29
+ const WhatsAppBot_1 = __importDefault(require("./WhatsAppBot"));
30
+ exports.WhatsAppBot = WhatsAppBot_1.default;
31
+ __exportStar(require("./Auth"), exports);
32
+ __exportStar(require("./ID"), exports);
33
+ __exportStar(require("./makeInMemoryStore"), exports);
34
+ __exportStar(require("./WAMessage"), exports);
35
+ __exportStar(require("./WAModule"), exports);
36
+ __exportStar(require("./WAStatus"), exports);
37
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/wa/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA,sEAA8C;AAarC,yBAbF,wBAAc,CAaE;AAZvB,8EAAsD;AAY7B,6BAZlB,4BAAkB,CAYkB;AAX3C,0EAAkD;AAWL,2BAXtC,0BAAgB,CAWsC;AAV7D,4EAAoD;AAUW,4BAVxD,2BAAiB,CAUwD;AAThF,gEAA+D;AASmB,sBAT3E,qBAAW,CAS2E;AAP7F,yCAAuB;AACvB,uCAAqB;AACrB,sDAAoC;AACpC,8CAA4B;AAC5B,6CAA2B;AAC3B,6CAA2B"}
@@ -0,0 +1,43 @@
1
+ import NodeCache from 'node-cache';
2
+ import { Logger } from 'pino';
3
+ import { type Chat } from '@whiskeysockets/baileys';
4
+ export type Comparable<T, K> = (a: T, b: T) => number;
5
+ export type Label = {
6
+ id: string;
7
+ name: string;
8
+ predefinedId?: string;
9
+ color?: number;
10
+ deleted?: boolean;
11
+ };
12
+ export type LabelAssociation = any;
13
+ export type LabelAssociationKeyType = ((a: any, b: any) => number) & {
14
+ key: (la: any) => string;
15
+ };
16
+ export declare class ObjectRepository<T> {
17
+ constructor(_data?: any);
18
+ upsertById(id: string, label: T): void;
19
+ }
20
+ export declare const waChatKey: (_: boolean) => (a: any, b: any) => number;
21
+ export declare const waLabelAssociationKey: LabelAssociationKeyType;
22
+ export declare const waMessageID: (msg: any) => any;
23
+ export type BaileysInMemoryStoreConfig = {
24
+ chatKey?: Comparable<Chat, string>;
25
+ labelAssociationKey?: LabelAssociationKeyType;
26
+ logger?: Logger;
27
+ stdTTL?: number;
28
+ };
29
+ export declare function makeOrderedDictionary<T>(idGetter: (item: T) => string, stdTTL?: number): {
30
+ array: T[];
31
+ dictCache: NodeCache;
32
+ get: (id: string) => T | undefined;
33
+ upsert: (item: T, mode: "append" | "prepend") => void;
34
+ update: (item: T) => boolean;
35
+ remove: (item: T) => boolean;
36
+ updateAssign: (id: string, update: Partial<T>) => boolean;
37
+ clear: () => void;
38
+ filter: (contain: (item: T) => boolean) => void;
39
+ toJSON: () => T[];
40
+ fromJSON: (newItems: T[]) => void;
41
+ };
42
+ declare const _default: ({ logger: _logger, chatKey, labelAssociationKey, stdTTL, }: BaileysInMemoryStoreConfig) => any;
43
+ export default _default;
@@ -0,0 +1,430 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.waMessageID = exports.waLabelAssociationKey = exports.waChatKey = exports.ObjectRepository = void 0;
7
+ exports.makeOrderedDictionary = makeOrderedDictionary;
8
+ const node_cache_1 = __importDefault(require("node-cache"));
9
+ const baileys_1 = require("@whiskeysockets/baileys");
10
+ class ObjectRepository {
11
+ constructor(_data) { }
12
+ upsertById(id, label) { }
13
+ }
14
+ exports.ObjectRepository = ObjectRepository;
15
+ const waChatKey = (_) => (a, b) => 0;
16
+ exports.waChatKey = waChatKey;
17
+ // Mock corrigido para garantir compatibilidade
18
+ exports.waLabelAssociationKey = Object.assign((a, b) => 0, {
19
+ key: (la) => (la === null || la === void 0 ? void 0 : la.id) || '',
20
+ });
21
+ const waMessageID = (msg) => (msg === null || msg === void 0 ? void 0 : msg.id) || '';
22
+ exports.waMessageID = waMessageID;
23
+ const predefinedLabels = Object.freeze({
24
+ '1': {
25
+ id: '1',
26
+ name: 'New customer',
27
+ predefinedId: '1',
28
+ color: 1,
29
+ deleted: false,
30
+ },
31
+ '2': {
32
+ id: '2',
33
+ name: 'New order',
34
+ predefinedId: '2',
35
+ color: 2,
36
+ deleted: false,
37
+ },
38
+ '3': {
39
+ id: '3',
40
+ name: 'Pending payment',
41
+ predefinedId: '3',
42
+ color: 3,
43
+ deleted: false,
44
+ },
45
+ '4': {
46
+ id: '4',
47
+ name: 'Paid',
48
+ predefinedId: '4',
49
+ color: 4,
50
+ deleted: false,
51
+ },
52
+ '5': {
53
+ id: '5',
54
+ name: 'Order completed',
55
+ predefinedId: '5',
56
+ color: 5,
57
+ deleted: false,
58
+ },
59
+ });
60
+ function makeOrderedDictionary(idGetter, stdTTL) {
61
+ const dictCache = new node_cache_1.default({ stdTTL: stdTTL || 60 * 60 });
62
+ const get = (id) => dictCache.get(id);
63
+ const update = (item) => {
64
+ const id = idGetter(item);
65
+ const array = dictCache.keys().map((k) => dictCache.get(k));
66
+ const idx = array.findIndex((i) => idGetter(i) === id);
67
+ if (idx >= 0) {
68
+ dictCache.set(id, item);
69
+ return true;
70
+ }
71
+ return false;
72
+ };
73
+ const upsert = (item, mode) => {
74
+ try {
75
+ const id = idGetter(item);
76
+ if (get(id)) {
77
+ update(item);
78
+ }
79
+ else {
80
+ dictCache.set(id, JSON.parse(JSON.stringify(item || {}) || '{}'));
81
+ }
82
+ }
83
+ catch (_a) { }
84
+ };
85
+ const remove = (item) => {
86
+ const id = idGetter(item);
87
+ const array = dictCache.keys().map((k) => dictCache.get(k));
88
+ const idx = array.findIndex((i) => idGetter(i) === id);
89
+ if (idx >= 0) {
90
+ array.splice(idx, 1);
91
+ dictCache.del(id);
92
+ return true;
93
+ }
94
+ return false;
95
+ };
96
+ const array = dictCache.keys().map((k) => dictCache.get(k));
97
+ return {
98
+ array,
99
+ dictCache,
100
+ get,
101
+ upsert,
102
+ update,
103
+ remove,
104
+ updateAssign: (id, update) => {
105
+ const item = get(id);
106
+ if (item) {
107
+ Object.assign(item, update);
108
+ dictCache.del(id);
109
+ dictCache.set(idGetter(item), item);
110
+ return true;
111
+ }
112
+ return false;
113
+ },
114
+ clear: () => {
115
+ dictCache.flushAll();
116
+ },
117
+ filter: (contain) => {
118
+ const array = dictCache.keys().map((k) => dictCache.get(k));
119
+ let i = 0;
120
+ while (i < array.length) {
121
+ if (!contain(array[i])) {
122
+ const id = idGetter(array[i]);
123
+ dictCache.del(id);
124
+ array.splice(i, 1);
125
+ }
126
+ else {
127
+ i += 1;
128
+ }
129
+ }
130
+ },
131
+ toJSON: () => dictCache.keys().map((k) => dictCache.get(k)),
132
+ fromJSON: (newItems) => {
133
+ const array = dictCache.keys().map((k) => dictCache.get(k));
134
+ array.splice(0, array.length, ...newItems);
135
+ dictCache.flushAll();
136
+ newItems.forEach((item) => {
137
+ const id = idGetter(item);
138
+ dictCache.set(id, item);
139
+ });
140
+ },
141
+ };
142
+ }
143
+ const makeMessagesDictionary = (stdTTL) => makeOrderedDictionary(exports.waMessageID, stdTTL);
144
+ exports.default = ({ logger: _logger, chatKey, labelAssociationKey, stdTTL, }) => {
145
+ chatKey = chatKey || (0, exports.waChatKey)(true);
146
+ labelAssociationKey = labelAssociationKey || exports.waLabelAssociationKey;
147
+ stdTTL = stdTTL || 60 * 60;
148
+ const logger = _logger;
149
+ const KeyedDB = require('@adiwajshing/keyed-db').default;
150
+ const chats = new KeyedDB(chatKey, (c) => c.id);
151
+ const messages = {};
152
+ const contacts = {};
153
+ const groupMetadata = {};
154
+ const presences = {};
155
+ const state = { connection: 'close' };
156
+ const labels = new ObjectRepository(predefinedLabels);
157
+ const labelAssociations = new KeyedDB(labelAssociationKey, labelAssociationKey.key);
158
+ const assertMessageList = (jid) => {
159
+ if (!messages[jid]) {
160
+ messages[jid] = makeMessagesDictionary(stdTTL);
161
+ }
162
+ return messages[jid];
163
+ };
164
+ const contactsUpsert = (newContacts) => {
165
+ const oldContacts = new Set(Object.keys(contacts));
166
+ for (const contact of newContacts) {
167
+ oldContacts.delete(contact.id);
168
+ contacts[contact.id] = Object.assign(contacts[contact.id] || {}, contact);
169
+ }
170
+ return oldContacts;
171
+ };
172
+ const labelsUpsert = (newLabels) => {
173
+ for (const label of newLabels) {
174
+ labels.upsertById(label.id, label);
175
+ }
176
+ };
177
+ /**
178
+ * binds to a BaileysEventEmitter.
179
+ * It listens to all events and constructs a state that you can query accurate data from.
180
+ * Eg. can use the store to fetch chats, contacts, messages etc.
181
+ * @param ev typically the event emitter from the socket connection
182
+ */
183
+ const bind = (ev) => {
184
+ ev.on('connection.update', (update) => {
185
+ Object.assign(state, update);
186
+ });
187
+ ev.on('messaging-history.set', ({ chats: newChats, contacts: newContacts, messages: newMessages, isLatest, }) => {
188
+ try {
189
+ if (isLatest) {
190
+ chats.clear();
191
+ for (const id in messages) {
192
+ delete messages[id];
193
+ }
194
+ }
195
+ for (const msg of newMessages) {
196
+ const jid = msg.key.remoteJid;
197
+ const list = assertMessageList(jid);
198
+ list.upsert(msg, 'prepend');
199
+ }
200
+ logger === null || logger === void 0 ? void 0 : logger.debug({ messages: newMessages.length }, 'synced messages');
201
+ }
202
+ catch (_a) { }
203
+ });
204
+ ev.on('messages.upsert', ({ messages: newMessages, type }) => {
205
+ try {
206
+ switch (type) {
207
+ case 'append':
208
+ case 'notify':
209
+ for (const msg of newMessages) {
210
+ const jid = (0, baileys_1.jidNormalizedUser)(msg.key.remoteJid);
211
+ const list = assertMessageList(jid);
212
+ list.upsert(msg, 'append');
213
+ if (type === 'notify') {
214
+ if (!chats.get(jid)) {
215
+ ev.emit('chats.upsert', [
216
+ {
217
+ id: jid,
218
+ conversationTimestamp: (0, baileys_1.toNumber)(msg.messageTimestamp),
219
+ unreadCount: 1,
220
+ },
221
+ ]);
222
+ }
223
+ }
224
+ }
225
+ break;
226
+ }
227
+ }
228
+ catch (_a) { }
229
+ });
230
+ ev.on('messages.update', (updates) => {
231
+ var _a;
232
+ try {
233
+ for (const { update, key } of updates) {
234
+ const list = assertMessageList((0, baileys_1.jidNormalizedUser)(key.remoteJid));
235
+ if (update === null || update === void 0 ? void 0 : update.status) {
236
+ const listStatus = (_a = list.get(key.id)) === null || _a === void 0 ? void 0 : _a.status;
237
+ if (listStatus && (update === null || update === void 0 ? void 0 : update.status) <= listStatus) {
238
+ logger === null || logger === void 0 ? void 0 : logger.debug({ update, storedStatus: listStatus }, 'status stored newer then update');
239
+ delete update.status;
240
+ logger === null || logger === void 0 ? void 0 : logger.debug({ update }, 'new update object');
241
+ }
242
+ }
243
+ const result = list.updateAssign(key.id, update);
244
+ if (!result) {
245
+ logger === null || logger === void 0 ? void 0 : logger.debug({ update }, 'got update for non-existent message');
246
+ }
247
+ }
248
+ }
249
+ catch (_b) { }
250
+ });
251
+ ev.on('messages.delete', (item) => {
252
+ try {
253
+ if ('all' in item) {
254
+ const list = messages[item.jid];
255
+ list === null || list === void 0 ? void 0 : list.clear();
256
+ }
257
+ else {
258
+ const jid = item.keys[0].remoteJid;
259
+ const list = messages[jid];
260
+ if (list) {
261
+ const idSet = new Set(item.keys.map((k) => k.id));
262
+ list.filter((m) => !idSet.has(m.key.id));
263
+ }
264
+ }
265
+ }
266
+ catch (_a) { }
267
+ });
268
+ };
269
+ const toJSON = () => ({
270
+ chats,
271
+ contacts,
272
+ messages,
273
+ labels,
274
+ labelAssociations,
275
+ });
276
+ const fromJSON = (json) => {
277
+ chats.upsert(...json.chats);
278
+ labelAssociations.upsert(...(json.labelAssociations || []));
279
+ contactsUpsert(Object.values(json.contacts));
280
+ labelsUpsert(Object.values(json.labels || {}));
281
+ for (const jid in json.messages) {
282
+ const list = assertMessageList(jid);
283
+ for (const msg of json.messages[jid]) {
284
+ list.upsert(msg, 'append');
285
+ }
286
+ }
287
+ };
288
+ return {
289
+ chats,
290
+ contacts,
291
+ messages,
292
+ groupMetadata,
293
+ state,
294
+ presences,
295
+ labels,
296
+ labelAssociations,
297
+ bind,
298
+ /** loads messages from the store, if not found -- uses the legacy connection */
299
+ loadMessages: async (jid, count, cursor) => {
300
+ const list = assertMessageList(jid);
301
+ const mode = !cursor || 'before' in cursor ? 'before' : 'after';
302
+ const cursorKey = cursor
303
+ ? 'before' in cursor
304
+ ? cursor.before
305
+ : cursor.after
306
+ : undefined;
307
+ const cursorValue = cursorKey ? list.get(cursorKey.id) : undefined;
308
+ let messages;
309
+ if (list && mode === 'before' && (!cursorKey || cursorValue)) {
310
+ if (cursorKey && cursorValue) {
311
+ // NodeCache.mget retorna um objeto, precisamos extrair os valores
312
+ messages = Object.values(list.dictCache.mget([cursorKey.id]));
313
+ }
314
+ else {
315
+ messages = Object.values(list.dictCache.mget(list.dictCache.keys()));
316
+ }
317
+ }
318
+ else {
319
+ // Fallback removido: não há ev.connection disponível nesse escopo
320
+ messages = [];
321
+ }
322
+ return messages;
323
+ },
324
+ /** returns the latest message in the chat */
325
+ getLatestMessage: (jid) => {
326
+ const list = assertMessageList(jid);
327
+ const array = list.toJSON();
328
+ if (array.length > 0) {
329
+ return array[array.length - 1];
330
+ }
331
+ return undefined;
332
+ },
333
+ /** returns an array of all messages in a chat */
334
+ getMessages: (jid) => {
335
+ const list = assertMessageList(jid);
336
+ return list.toJSON();
337
+ },
338
+ /** returns the chat object, with the latest message populated */
339
+ getChat: (jid) => {
340
+ const chat = chats.get(jid);
341
+ if (chat) {
342
+ const message = this.getLatestMessage(jid);
343
+ if (message) {
344
+ chat.conversationTimestamp = (0, baileys_1.toNumber)(message.messageTimestamp);
345
+ }
346
+ }
347
+ return chat;
348
+ },
349
+ /** returns an array of all chats, with the latest message populated */
350
+ getAllChats: () => {
351
+ const array = chats.toJSON();
352
+ for (const chat of array) {
353
+ const message = this.getLatestMessage(chat.id);
354
+ if (message) {
355
+ chat.conversationTimestamp = (0, baileys_1.toNumber)(message.messageTimestamp);
356
+ }
357
+ }
358
+ return array;
359
+ },
360
+ /** returns an array of all contacts */
361
+ getAllContacts: () => {
362
+ return Object.values(contacts);
363
+ },
364
+ /** returns an array of all groups */
365
+ getAllGroups: () => {
366
+ return Object.values(groupMetadata);
367
+ },
368
+ /** returns the metadata of a group, or undefined if not a group chat */
369
+ getGroupMetadata: (jid) => {
370
+ return groupMetadata[jid];
371
+ },
372
+ /** returns the presence data of a participant in a group, or undefined if not a group chat */
373
+ getGroupParticipantPresence: (jid, participantId) => {
374
+ var _a;
375
+ return (_a = presences[jid]) === null || _a === void 0 ? void 0 : _a[participantId];
376
+ },
377
+ /** returns the connection state */
378
+ getConnectionState: () => {
379
+ return state;
380
+ },
381
+ /** returns the logger */
382
+ getLogger: () => {
383
+ return logger;
384
+ },
385
+ /** returns the label repository */
386
+ getLabelRepository: () => {
387
+ return labels;
388
+ },
389
+ /** returns the label association store */
390
+ getLabelAssociationStore: () => {
391
+ return labelAssociations;
392
+ },
393
+ /** returns the message store for a specific chat */
394
+ getMessageStore: (jid) => {
395
+ return assertMessageList(jid);
396
+ },
397
+ /** clears all data in the store */
398
+ clearAll: () => {
399
+ chats.clear();
400
+ for (const id in messages) {
401
+ delete messages[id];
402
+ }
403
+ contactsUpsert(Object.values(predefinedLabels));
404
+ },
405
+ /** imports data into the store */
406
+ importData: (data) => {
407
+ if (data.chats) {
408
+ chats.upsert(...data.chats);
409
+ }
410
+ if (data.contacts) {
411
+ contactsUpsert(data.contacts);
412
+ }
413
+ if (data.messages) {
414
+ for (const jid in data.messages) {
415
+ const list = assertMessageList(jid);
416
+ for (const msg of data.messages[jid]) {
417
+ list.upsert(msg, 'append');
418
+ }
419
+ }
420
+ }
421
+ if (data.labels) {
422
+ labelsUpsert(data.labels);
423
+ }
424
+ if (data.labelAssociations) {
425
+ labelAssociations.upsert(...data.labelAssociations);
426
+ }
427
+ },
428
+ };
429
+ };
430
+ //# sourceMappingURL=makeInMemoryStore.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"makeInMemoryStore.js","sourceRoot":"","sources":["../../src/wa/makeInMemoryStore.ts"],"names":[],"mappings":"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"}