@trungdlp/zca-js 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 (547) hide show
  1. package/.prettierrc +5 -0
  2. package/CODE_OF_CONDUCT.md +163 -0
  3. package/CONTRIBUTING.md +470 -0
  4. package/LICENSE +21 -0
  5. package/README.md +225 -0
  6. package/SECURITY.md +83 -0
  7. package/dist/Errors/ZaloApiError.d.ts +4 -0
  8. package/dist/Errors/ZaloApiError.js +7 -0
  9. package/dist/Errors/ZaloApiLoginQRAborted.d.ts +4 -0
  10. package/dist/Errors/ZaloApiLoginQRAborted.js +7 -0
  11. package/dist/Errors/ZaloApiLoginQRDeclined.d.ts +4 -0
  12. package/dist/Errors/ZaloApiLoginQRDeclined.js +7 -0
  13. package/dist/Errors/ZaloApiMissingImageMetadataGetter.d.ts +4 -0
  14. package/dist/Errors/ZaloApiMissingImageMetadataGetter.js +7 -0
  15. package/dist/Errors/index.d.ts +4 -0
  16. package/dist/Errors/index.js +4 -0
  17. package/dist/apis/acceptFriendRequest.d.ts +2 -0
  18. package/dist/apis/acceptFriendRequest.js +28 -0
  19. package/dist/apis/addGroupBlockedMember.d.ts +2 -0
  20. package/dist/apis/addGroupBlockedMember.js +28 -0
  21. package/dist/apis/addGroupDeputy.d.ts +2 -0
  22. package/dist/apis/addGroupDeputy.js +30 -0
  23. package/dist/apis/addPollOptions.d.ts +14 -0
  24. package/dist/apis/addPollOptions.js +26 -0
  25. package/dist/apis/addQuickMessage.d.ts +11 -0
  26. package/dist/apis/addQuickMessage.js +60 -0
  27. package/dist/apis/addReaction.d.ts +18 -0
  28. package/dist/apis/addReaction.js +294 -0
  29. package/dist/apis/addUnreadMark.d.ts +8 -0
  30. package/dist/apis/addUnreadMark.js +52 -0
  31. package/dist/apis/addUserToGroup.d.ts +5 -0
  32. package/dist/apis/addUserToGroup.js +34 -0
  33. package/dist/apis/blockUser.d.ts +2 -0
  34. package/dist/apis/blockUser.js +28 -0
  35. package/dist/apis/blockViewFeed.d.ts +2 -0
  36. package/dist/apis/blockViewFeed.js +30 -0
  37. package/dist/apis/changeAccountAvatar.d.ts +3 -0
  38. package/dist/apis/changeAccountAvatar.js +52 -0
  39. package/dist/apis/changeFriendAlias.d.ts +2 -0
  40. package/dist/apis/changeFriendAlias.js +27 -0
  41. package/dist/apis/changeGroupAvatar.d.ts +3 -0
  42. package/dist/apis/changeGroupAvatar.js +44 -0
  43. package/dist/apis/changeGroupName.d.ts +4 -0
  44. package/dist/apis/changeGroupName.js +32 -0
  45. package/dist/apis/changeGroupOwner.d.ts +4 -0
  46. package/dist/apis/changeGroupOwner.js +30 -0
  47. package/dist/apis/createAutoReply.d.ts +14 -0
  48. package/dist/apis/createAutoReply.js +37 -0
  49. package/dist/apis/createCatalog.d.ts +7 -0
  50. package/dist/apis/createCatalog.js +29 -0
  51. package/dist/apis/createGroup.d.ts +28 -0
  52. package/dist/apis/createGroup.js +43 -0
  53. package/dist/apis/createNote.d.ts +7 -0
  54. package/dist/apis/createNote.js +47 -0
  55. package/dist/apis/createPoll.d.ts +36 -0
  56. package/dist/apis/createPoll.js +40 -0
  57. package/dist/apis/createProductCatalog.d.ts +23 -0
  58. package/dist/apis/createProductCatalog.js +50 -0
  59. package/dist/apis/createReminder.d.ts +12 -0
  60. package/dist/apis/createReminder.js +63 -0
  61. package/dist/apis/custom.d.ts +9 -0
  62. package/dist/apis/custom.js +15 -0
  63. package/dist/apis/deleteAutoReply.d.ts +5 -0
  64. package/dist/apis/deleteAutoReply.js +29 -0
  65. package/dist/apis/deleteAvatar.d.ts +9 -0
  66. package/dist/apis/deleteAvatar.js +27 -0
  67. package/dist/apis/deleteCatalog.d.ts +2 -0
  68. package/dist/apis/deleteCatalog.js +28 -0
  69. package/dist/apis/deleteChat.d.ts +19 -0
  70. package/dist/apis/deleteChat.js +50 -0
  71. package/dist/apis/deleteGroupInviteBox.d.ts +9 -0
  72. package/dist/apis/deleteGroupInviteBox.js +27 -0
  73. package/dist/apis/deleteMessage.d.ts +14 -0
  74. package/dist/apis/deleteMessage.js +52 -0
  75. package/dist/apis/deleteProductCatalog.d.ts +10 -0
  76. package/dist/apis/deleteProductCatalog.js +31 -0
  77. package/dist/apis/disableGroupLink.d.ts +2 -0
  78. package/dist/apis/disableGroupLink.js +24 -0
  79. package/dist/apis/disperseGroup.d.ts +2 -0
  80. package/dist/apis/disperseGroup.js +28 -0
  81. package/dist/apis/editNote.d.ts +17 -0
  82. package/dist/apis/editNote.js +46 -0
  83. package/dist/apis/editReminder.d.ts +13 -0
  84. package/dist/apis/editReminder.js +61 -0
  85. package/dist/apis/enableGroupLink.d.ts +6 -0
  86. package/dist/apis/enableGroupLink.js +25 -0
  87. package/dist/apis/fetchAccountInfo.d.ts +3 -0
  88. package/dist/apis/fetchAccountInfo.js +10 -0
  89. package/dist/apis/findUser.d.ts +3 -0
  90. package/dist/apis/findUser.js +41 -0
  91. package/dist/apis/findUserByUsername.d.ts +3 -0
  92. package/dist/apis/findUserByUsername.js +26 -0
  93. package/dist/apis/forwardMessage.d.ts +24 -0
  94. package/dist/apis/forwardMessage.js +99 -0
  95. package/dist/apis/getAliasList.d.ts +8 -0
  96. package/dist/apis/getAliasList.js +27 -0
  97. package/dist/apis/getAllFriends.d.ts +3 -0
  98. package/dist/apis/getAllFriends.js +33 -0
  99. package/dist/apis/getAllGroups.d.ts +7 -0
  100. package/dist/apis/getAllGroups.js +10 -0
  101. package/dist/apis/getArchivedChatList.d.ts +5 -0
  102. package/dist/apis/getArchivedChatList.js +23 -0
  103. package/dist/apis/getAutoDeleteChat.d.ts +9 -0
  104. package/dist/apis/getAutoDeleteChat.js +21 -0
  105. package/dist/apis/getAutoReplyList.d.ts +6 -0
  106. package/dist/apis/getAutoReplyList.js +24 -0
  107. package/dist/apis/getAvatarList.d.ts +12 -0
  108. package/dist/apis/getAvatarList.js +28 -0
  109. package/dist/apis/getAvatarUrlProfile.d.ts +6 -0
  110. package/dist/apis/getAvatarUrlProfile.js +29 -0
  111. package/dist/apis/getBizAccount.d.ts +24 -0
  112. package/dist/apis/getBizAccount.js +27 -0
  113. package/dist/apis/getCatalogList.d.ts +18 -0
  114. package/dist/apis/getCatalogList.js +32 -0
  115. package/dist/apis/getCloseFriends.d.ts +3 -0
  116. package/dist/apis/getCloseFriends.js +20 -0
  117. package/dist/apis/getContext.d.ts +1 -0
  118. package/dist/apis/getContext.js +4 -0
  119. package/dist/apis/getCookie.d.ts +1 -0
  120. package/dist/apis/getCookie.js +9 -0
  121. package/dist/apis/getFriendBoardList.d.ts +5 -0
  122. package/dist/apis/getFriendBoardList.js +26 -0
  123. package/dist/apis/getFriendOnlines.d.ts +10 -0
  124. package/dist/apis/getFriendOnlines.js +35 -0
  125. package/dist/apis/getFriendRecommendations.d.ts +42 -0
  126. package/dist/apis/getFriendRecommendations.js +27 -0
  127. package/dist/apis/getFriendRequestStatus.d.ts +8 -0
  128. package/dist/apis/getFriendRequestStatus.js +25 -0
  129. package/dist/apis/getFullAvatar.d.ts +5 -0
  130. package/dist/apis/getFullAvatar.js +25 -0
  131. package/dist/apis/getGroupBlockedMember.d.ts +23 -0
  132. package/dist/apis/getGroupBlockedMember.js +29 -0
  133. package/dist/apis/getGroupChatHistory.d.ts +8 -0
  134. package/dist/apis/getGroupChatHistory.js +36 -0
  135. package/dist/apis/getGroupInfo.d.ts +16 -0
  136. package/dist/apis/getGroupInfo.js +32 -0
  137. package/dist/apis/getGroupInviteBoxInfo.d.ts +32 -0
  138. package/dist/apis/getGroupInviteBoxInfo.js +38 -0
  139. package/dist/apis/getGroupInviteBoxList.d.ts +38 -0
  140. package/dist/apis/getGroupInviteBoxList.js +31 -0
  141. package/dist/apis/getGroupLinkDetail.d.ts +9 -0
  142. package/dist/apis/getGroupLinkDetail.js +25 -0
  143. package/dist/apis/getGroupLinkInfo.d.ts +34 -0
  144. package/dist/apis/getGroupLinkInfo.js +28 -0
  145. package/dist/apis/getGroupMembersInfo.d.ts +17 -0
  146. package/dist/apis/getGroupMembersInfo.js +24 -0
  147. package/dist/apis/getHiddenConversations.d.ts +11 -0
  148. package/dist/apis/getHiddenConversations.js +23 -0
  149. package/dist/apis/getLabels.d.ts +7 -0
  150. package/dist/apis/getLabels.js +28 -0
  151. package/dist/apis/getListBoard.d.ts +21 -0
  152. package/dist/apis/getListBoard.js +45 -0
  153. package/dist/apis/getListReminder.d.ts +28 -0
  154. package/dist/apis/getListReminder.js +47 -0
  155. package/dist/apis/getMultiUsersByPhone.d.ts +5 -0
  156. package/dist/apis/getMultiUsersByPhone.js +38 -0
  157. package/dist/apis/getMute.d.ts +13 -0
  158. package/dist/apis/getMute.js +22 -0
  159. package/dist/apis/getOwnId.d.ts +1 -0
  160. package/dist/apis/getOwnId.js +4 -0
  161. package/dist/apis/getPendingGroupMembers.d.ts +11 -0
  162. package/dist/apis/getPendingGroupMembers.js +27 -0
  163. package/dist/apis/getPinConversations.d.ts +5 -0
  164. package/dist/apis/getPinConversations.js +22 -0
  165. package/dist/apis/getPollDetail.d.ts +3 -0
  166. package/dist/apis/getPollDetail.js +30 -0
  167. package/dist/apis/getProductCatalogList.d.ts +20 -0
  168. package/dist/apis/getProductCatalogList.js +33 -0
  169. package/dist/apis/getQR.d.ts +4 -0
  170. package/dist/apis/getQR.js +29 -0
  171. package/dist/apis/getQuickMessageList.d.ts +7 -0
  172. package/dist/apis/getQuickMessageList.js +24 -0
  173. package/dist/apis/getRelatedFriendGroup.d.ts +6 -0
  174. package/dist/apis/getRelatedFriendGroup.js +30 -0
  175. package/dist/apis/getReminder.d.ts +3 -0
  176. package/dist/apis/getReminder.js +25 -0
  177. package/dist/apis/getReminderResponses.d.ts +5 -0
  178. package/dist/apis/getReminderResponses.js +24 -0
  179. package/dist/apis/getSearchSticker.d.ts +3 -0
  180. package/dist/apis/getSearchSticker.js +28 -0
  181. package/dist/apis/getSentFriendRequest.d.ts +18 -0
  182. package/dist/apis/getSentFriendRequest.js +24 -0
  183. package/dist/apis/getSettings.d.ts +3 -0
  184. package/dist/apis/getSettings.js +20 -0
  185. package/dist/apis/getStickerCategoryDetail.d.ts +3 -0
  186. package/dist/apis/getStickerCategoryDetail.js +24 -0
  187. package/dist/apis/getStickers.d.ts +1 -0
  188. package/dist/apis/getStickers.js +40 -0
  189. package/dist/apis/getStickersDetail.d.ts +3 -0
  190. package/dist/apis/getStickersDetail.js +40 -0
  191. package/dist/apis/getUnreadMark.d.ts +14 -0
  192. package/dist/apis/getUnreadMark.js +30 -0
  193. package/dist/apis/getUserInfo.d.ts +8 -0
  194. package/dist/apis/getUserInfo.js +43 -0
  195. package/dist/apis/inviteUserToGroups.d.ts +10 -0
  196. package/dist/apis/inviteUserToGroups.js +30 -0
  197. package/dist/apis/joinGroupInviteBox.d.ts +2 -0
  198. package/dist/apis/joinGroupInviteBox.js +25 -0
  199. package/dist/apis/joinGroupLink.d.ts +2 -0
  200. package/dist/apis/joinGroupLink.js +27 -0
  201. package/dist/apis/keepAlive.d.ts +4 -0
  202. package/dist/apis/keepAlive.js +22 -0
  203. package/dist/apis/lastOnline.d.ts +7 -0
  204. package/dist/apis/lastOnline.js +26 -0
  205. package/dist/apis/leaveGroup.d.ts +4 -0
  206. package/dist/apis/leaveGroup.js +33 -0
  207. package/dist/apis/listen.d.ts +102 -0
  208. package/dist/apis/listen.js +425 -0
  209. package/dist/apis/lockPoll.d.ts +2 -0
  210. package/dist/apis/lockPoll.js +28 -0
  211. package/dist/apis/login.d.ts +3 -0
  212. package/dist/apis/login.js +96 -0
  213. package/dist/apis/loginQR.d.ts +70 -0
  214. package/dist/apis/loginQR.js +365 -0
  215. package/dist/apis/parseLink.d.ts +21 -0
  216. package/dist/apis/parseLink.js +27 -0
  217. package/dist/apis/rejectFriendRequest.d.ts +2 -0
  218. package/dist/apis/rejectFriendRequest.js +27 -0
  219. package/dist/apis/removeFriend.d.ts +2 -0
  220. package/dist/apis/removeFriend.js +28 -0
  221. package/dist/apis/removeFriendAlias.d.ts +2 -0
  222. package/dist/apis/removeFriendAlias.js +24 -0
  223. package/dist/apis/removeGroupBlockedMember.d.ts +2 -0
  224. package/dist/apis/removeGroupBlockedMember.js +28 -0
  225. package/dist/apis/removeGroupDeputy.d.ts +2 -0
  226. package/dist/apis/removeGroupDeputy.js +30 -0
  227. package/dist/apis/removeQuickMessage.d.ts +5 -0
  228. package/dist/apis/removeQuickMessage.js +27 -0
  229. package/dist/apis/removeReminder.d.ts +3 -0
  230. package/dist/apis/removeReminder.js +40 -0
  231. package/dist/apis/removeUnreadMark.d.ts +8 -0
  232. package/dist/apis/removeUnreadMark.js +50 -0
  233. package/dist/apis/removeUserFromGroup.d.ts +4 -0
  234. package/dist/apis/removeUserFromGroup.js +34 -0
  235. package/dist/apis/resetHiddenConversPin.d.ts +2 -0
  236. package/dist/apis/resetHiddenConversPin.js +20 -0
  237. package/dist/apis/reuseAvatar.d.ts +2 -0
  238. package/dist/apis/reuseAvatar.js +26 -0
  239. package/dist/apis/reviewPendingMemberRequest.d.ts +14 -0
  240. package/dist/apis/reviewPendingMemberRequest.js +38 -0
  241. package/dist/apis/sendBankCard.d.ts +9 -0
  242. package/dist/apis/sendBankCard.js +37 -0
  243. package/dist/apis/sendCard.d.ts +10 -0
  244. package/dist/apis/sendCard.js +59 -0
  245. package/dist/apis/sendDeliveredEvent.d.ts +16 -0
  246. package/dist/apis/sendDeliveredEvent.js +55 -0
  247. package/dist/apis/sendFriendRequest.d.ts +2 -0
  248. package/dist/apis/sendFriendRequest.js +39 -0
  249. package/dist/apis/sendLink.d.ts +10 -0
  250. package/dist/apis/sendLink.js +61 -0
  251. package/dist/apis/sendMessage.d.ts +99 -0
  252. package/dist/apis/sendMessage.js +451 -0
  253. package/dist/apis/sendReport.d.ts +17 -0
  254. package/dist/apis/sendReport.js +53 -0
  255. package/dist/apis/sendSeenEvent.d.ts +16 -0
  256. package/dist/apis/sendSeenEvent.js +63 -0
  257. package/dist/apis/sendSticker.d.ts +10 -0
  258. package/dist/apis/sendSticker.js +57 -0
  259. package/dist/apis/sendTypingEvent.d.ts +5 -0
  260. package/dist/apis/sendTypingEvent.js +33 -0
  261. package/dist/apis/sendVideo.d.ts +35 -0
  262. package/dist/apis/sendVideo.js +118 -0
  263. package/dist/apis/sendVoice.d.ts +12 -0
  264. package/dist/apis/sendVoice.js +73 -0
  265. package/dist/apis/setArchivedConversations.d.ts +10 -0
  266. package/dist/apis/setArchivedConversations.js +34 -0
  267. package/dist/apis/setHiddenConversations.d.ts +3 -0
  268. package/dist/apis/setHiddenConversations.js +39 -0
  269. package/dist/apis/setMute.d.ts +20 -0
  270. package/dist/apis/setMute.js +67 -0
  271. package/dist/apis/setPinnedConversations.d.ts +3 -0
  272. package/dist/apis/setPinnedConversations.js +34 -0
  273. package/dist/apis/sharePoll.d.ts +2 -0
  274. package/dist/apis/sharePoll.js +28 -0
  275. package/dist/apis/unblockUser.d.ts +2 -0
  276. package/dist/apis/unblockUser.js +28 -0
  277. package/dist/apis/undo.d.ts +9 -0
  278. package/dist/apis/undo.js +42 -0
  279. package/dist/apis/undoFriendRequest.d.ts +2 -0
  280. package/dist/apis/undoFriendRequest.js +27 -0
  281. package/dist/apis/updateActiveStatus.d.ts +4 -0
  282. package/dist/apis/updateActiveStatus.js +27 -0
  283. package/dist/apis/updateAutoDeleteChat.d.ts +9 -0
  284. package/dist/apis/updateAutoDeleteChat.js +40 -0
  285. package/dist/apis/updateAutoReply.d.ts +15 -0
  286. package/dist/apis/updateAutoReply.js +38 -0
  287. package/dist/apis/updateCatalog.d.ts +11 -0
  288. package/dist/apis/updateCatalog.js +30 -0
  289. package/dist/apis/updateGroupSettings.d.ts +40 -0
  290. package/dist/apis/updateGroupSettings.js +43 -0
  291. package/dist/apis/updateHiddenConversPin.d.ts +2 -0
  292. package/dist/apis/updateHiddenConversPin.js +30 -0
  293. package/dist/apis/updateLabels.d.ts +15 -0
  294. package/dist/apis/updateLabels.js +34 -0
  295. package/dist/apis/updateLang.d.ts +6 -0
  296. package/dist/apis/updateLang.js +30 -0
  297. package/dist/apis/updateProductCatalog.d.ts +25 -0
  298. package/dist/apis/updateProductCatalog.js +51 -0
  299. package/dist/apis/updateProfile.d.ts +20 -0
  300. package/dist/apis/updateProfile.js +43 -0
  301. package/dist/apis/updateQuickMessage.d.ts +11 -0
  302. package/dist/apis/updateQuickMessage.js +61 -0
  303. package/dist/apis/updateSettings.d.ts +16 -0
  304. package/dist/apis/updateSettings.js +90 -0
  305. package/dist/apis/updateStatus.d.ts +2 -0
  306. package/dist/apis/updateStatus.js +27 -0
  307. package/dist/apis/upgradeGroupCommunity.d.ts +2 -0
  308. package/dist/apis/upgradeGroupCommunity.js +27 -0
  309. package/dist/apis/uploadAttachment.d.ts +50 -0
  310. package/dist/apis/uploadAttachment.js +196 -0
  311. package/dist/apis/uploadProductPhoto.d.ts +14 -0
  312. package/dist/apis/uploadProductPhoto.js +50 -0
  313. package/dist/apis/votePoll.d.ts +5 -0
  314. package/dist/apis/votePoll.js +29 -0
  315. package/dist/apis.d.ts +299 -0
  316. package/dist/apis.js +299 -0
  317. package/dist/cjs/Errors/ZaloApiError.cjs +11 -0
  318. package/dist/cjs/Errors/ZaloApiLoginQRAborted.cjs +12 -0
  319. package/dist/cjs/Errors/ZaloApiLoginQRDeclined.cjs +12 -0
  320. package/dist/cjs/Errors/ZaloApiMissingImageMetadataGetter.cjs +12 -0
  321. package/dist/cjs/apis/acceptFriendRequest.cjs +33 -0
  322. package/dist/cjs/apis/addGroupBlockedMember.cjs +33 -0
  323. package/dist/cjs/apis/addGroupDeputy.cjs +35 -0
  324. package/dist/cjs/apis/addPollOptions.cjs +31 -0
  325. package/dist/cjs/apis/addQuickMessage.cjs +65 -0
  326. package/dist/cjs/apis/addReaction.cjs +307 -0
  327. package/dist/cjs/apis/addUnreadMark.cjs +65 -0
  328. package/dist/cjs/apis/addUserToGroup.cjs +39 -0
  329. package/dist/cjs/apis/blockUser.cjs +33 -0
  330. package/dist/cjs/apis/blockViewFeed.cjs +35 -0
  331. package/dist/cjs/apis/changeAccountAvatar.cjs +57 -0
  332. package/dist/cjs/apis/changeFriendAlias.cjs +32 -0
  333. package/dist/cjs/apis/changeGroupAvatar.cjs +49 -0
  334. package/dist/cjs/apis/changeGroupName.cjs +37 -0
  335. package/dist/cjs/apis/changeGroupOwner.cjs +35 -0
  336. package/dist/cjs/apis/createAutoReply.cjs +42 -0
  337. package/dist/cjs/apis/createCatalog.cjs +34 -0
  338. package/dist/cjs/apis/createGroup.cjs +48 -0
  339. package/dist/cjs/apis/createNote.cjs +52 -0
  340. package/dist/cjs/apis/createPoll.cjs +45 -0
  341. package/dist/cjs/apis/createProductCatalog.cjs +55 -0
  342. package/dist/cjs/apis/createReminder.cjs +76 -0
  343. package/dist/cjs/apis/custom.cjs +19 -0
  344. package/dist/cjs/apis/deleteAutoReply.cjs +34 -0
  345. package/dist/cjs/apis/deleteAvatar.cjs +32 -0
  346. package/dist/cjs/apis/deleteCatalog.cjs +33 -0
  347. package/dist/cjs/apis/deleteChat.cjs +63 -0
  348. package/dist/cjs/apis/deleteGroupInviteBox.cjs +32 -0
  349. package/dist/cjs/apis/deleteMessage.cjs +65 -0
  350. package/dist/cjs/apis/deleteProductCatalog.cjs +36 -0
  351. package/dist/cjs/apis/disableGroupLink.cjs +29 -0
  352. package/dist/cjs/apis/disperseGroup.cjs +33 -0
  353. package/dist/cjs/apis/editNote.cjs +51 -0
  354. package/dist/cjs/apis/editReminder.cjs +74 -0
  355. package/dist/cjs/apis/enableGroupLink.cjs +30 -0
  356. package/dist/cjs/apis/fetchAccountInfo.cjs +15 -0
  357. package/dist/cjs/apis/findUser.cjs +46 -0
  358. package/dist/cjs/apis/findUserByUsername.cjs +31 -0
  359. package/dist/cjs/apis/forwardMessage.cjs +112 -0
  360. package/dist/cjs/apis/getAliasList.cjs +32 -0
  361. package/dist/cjs/apis/getAllFriends.cjs +38 -0
  362. package/dist/cjs/apis/getAllGroups.cjs +15 -0
  363. package/dist/cjs/apis/getArchivedChatList.cjs +28 -0
  364. package/dist/cjs/apis/getAutoDeleteChat.cjs +26 -0
  365. package/dist/cjs/apis/getAutoReplyList.cjs +29 -0
  366. package/dist/cjs/apis/getAvatarList.cjs +33 -0
  367. package/dist/cjs/apis/getAvatarUrlProfile.cjs +34 -0
  368. package/dist/cjs/apis/getBizAccount.cjs +32 -0
  369. package/dist/cjs/apis/getCatalogList.cjs +37 -0
  370. package/dist/cjs/apis/getCloseFriends.cjs +25 -0
  371. package/dist/cjs/apis/getContext.cjs +9 -0
  372. package/dist/cjs/apis/getCookie.cjs +14 -0
  373. package/dist/cjs/apis/getFriendBoardList.cjs +31 -0
  374. package/dist/cjs/apis/getFriendOnlines.cjs +40 -0
  375. package/dist/cjs/apis/getFriendRecommendations.cjs +32 -0
  376. package/dist/cjs/apis/getFriendRequestStatus.cjs +30 -0
  377. package/dist/cjs/apis/getFullAvatar.cjs +30 -0
  378. package/dist/cjs/apis/getGroupBlockedMember.cjs +34 -0
  379. package/dist/cjs/apis/getGroupChatHistory.cjs +50 -0
  380. package/dist/cjs/apis/getGroupInfo.cjs +37 -0
  381. package/dist/cjs/apis/getGroupInviteBoxInfo.cjs +43 -0
  382. package/dist/cjs/apis/getGroupInviteBoxList.cjs +36 -0
  383. package/dist/cjs/apis/getGroupLinkDetail.cjs +30 -0
  384. package/dist/cjs/apis/getGroupLinkInfo.cjs +33 -0
  385. package/dist/cjs/apis/getGroupMembersInfo.cjs +29 -0
  386. package/dist/cjs/apis/getHiddenConversations.cjs +28 -0
  387. package/dist/cjs/apis/getLabels.cjs +33 -0
  388. package/dist/cjs/apis/getListBoard.cjs +58 -0
  389. package/dist/cjs/apis/getListReminder.cjs +60 -0
  390. package/dist/cjs/apis/getMultiUsersByPhone.cjs +43 -0
  391. package/dist/cjs/apis/getMute.cjs +27 -0
  392. package/dist/cjs/apis/getOwnId.cjs +9 -0
  393. package/dist/cjs/apis/getPendingGroupMembers.cjs +32 -0
  394. package/dist/cjs/apis/getPinConversations.cjs +27 -0
  395. package/dist/cjs/apis/getPollDetail.cjs +35 -0
  396. package/dist/cjs/apis/getProductCatalogList.cjs +38 -0
  397. package/dist/cjs/apis/getQR.cjs +34 -0
  398. package/dist/cjs/apis/getQuickMessageList.cjs +29 -0
  399. package/dist/cjs/apis/getRelatedFriendGroup.cjs +35 -0
  400. package/dist/cjs/apis/getReminder.cjs +30 -0
  401. package/dist/cjs/apis/getReminderResponses.cjs +29 -0
  402. package/dist/cjs/apis/getSearchSticker.cjs +33 -0
  403. package/dist/cjs/apis/getSentFriendRequest.cjs +29 -0
  404. package/dist/cjs/apis/getSettings.cjs +25 -0
  405. package/dist/cjs/apis/getStickerCategoryDetail.cjs +29 -0
  406. package/dist/cjs/apis/getStickers.cjs +45 -0
  407. package/dist/cjs/apis/getStickersDetail.cjs +45 -0
  408. package/dist/cjs/apis/getUnreadMark.cjs +35 -0
  409. package/dist/cjs/apis/getUserInfo.cjs +48 -0
  410. package/dist/cjs/apis/inviteUserToGroups.cjs +35 -0
  411. package/dist/cjs/apis/joinGroupInviteBox.cjs +30 -0
  412. package/dist/cjs/apis/joinGroupLink.cjs +32 -0
  413. package/dist/cjs/apis/keepAlive.cjs +27 -0
  414. package/dist/cjs/apis/lastOnline.cjs +31 -0
  415. package/dist/cjs/apis/leaveGroup.cjs +38 -0
  416. package/dist/cjs/apis/listen.cjs +439 -0
  417. package/dist/cjs/apis/lockPoll.cjs +33 -0
  418. package/dist/cjs/apis/login.cjs +102 -0
  419. package/dist/cjs/apis/loginQR.cjs +370 -0
  420. package/dist/cjs/apis/parseLink.cjs +32 -0
  421. package/dist/cjs/apis/rejectFriendRequest.cjs +32 -0
  422. package/dist/cjs/apis/removeFriend.cjs +33 -0
  423. package/dist/cjs/apis/removeFriendAlias.cjs +29 -0
  424. package/dist/cjs/apis/removeGroupBlockedMember.cjs +33 -0
  425. package/dist/cjs/apis/removeGroupDeputy.cjs +35 -0
  426. package/dist/cjs/apis/removeQuickMessage.cjs +32 -0
  427. package/dist/cjs/apis/removeReminder.cjs +53 -0
  428. package/dist/cjs/apis/removeUnreadMark.cjs +63 -0
  429. package/dist/cjs/apis/removeUserFromGroup.cjs +39 -0
  430. package/dist/cjs/apis/resetHiddenConversPin.cjs +25 -0
  431. package/dist/cjs/apis/reuseAvatar.cjs +31 -0
  432. package/dist/cjs/apis/reviewPendingMemberRequest.cjs +43 -0
  433. package/dist/cjs/apis/sendBankCard.cjs +50 -0
  434. package/dist/cjs/apis/sendCard.cjs +72 -0
  435. package/dist/cjs/apis/sendDeliveredEvent.cjs +68 -0
  436. package/dist/cjs/apis/sendFriendRequest.cjs +44 -0
  437. package/dist/cjs/apis/sendLink.cjs +74 -0
  438. package/dist/cjs/apis/sendMessage.cjs +464 -0
  439. package/dist/cjs/apis/sendReport.cjs +66 -0
  440. package/dist/cjs/apis/sendSeenEvent.cjs +76 -0
  441. package/dist/cjs/apis/sendSticker.cjs +70 -0
  442. package/dist/cjs/apis/sendTypingEvent.cjs +46 -0
  443. package/dist/cjs/apis/sendVideo.cjs +131 -0
  444. package/dist/cjs/apis/sendVoice.cjs +86 -0
  445. package/dist/cjs/apis/setArchivedConversations.cjs +39 -0
  446. package/dist/cjs/apis/setHiddenConversations.cjs +52 -0
  447. package/dist/cjs/apis/setMute.cjs +80 -0
  448. package/dist/cjs/apis/setPinnedConversations.cjs +47 -0
  449. package/dist/cjs/apis/sharePoll.cjs +33 -0
  450. package/dist/cjs/apis/unblockUser.cjs +33 -0
  451. package/dist/cjs/apis/undo.cjs +55 -0
  452. package/dist/cjs/apis/undoFriendRequest.cjs +32 -0
  453. package/dist/cjs/apis/updateActiveStatus.cjs +32 -0
  454. package/dist/cjs/apis/updateAutoDeleteChat.cjs +53 -0
  455. package/dist/cjs/apis/updateAutoReply.cjs +43 -0
  456. package/dist/cjs/apis/updateCatalog.cjs +35 -0
  457. package/dist/cjs/apis/updateGroupSettings.cjs +48 -0
  458. package/dist/cjs/apis/updateHiddenConversPin.cjs +35 -0
  459. package/dist/cjs/apis/updateLabels.cjs +39 -0
  460. package/dist/cjs/apis/updateLang.cjs +35 -0
  461. package/dist/cjs/apis/updateProductCatalog.cjs +56 -0
  462. package/dist/cjs/apis/updateProfile.cjs +48 -0
  463. package/dist/cjs/apis/updateQuickMessage.cjs +66 -0
  464. package/dist/cjs/apis/updateSettings.cjs +95 -0
  465. package/dist/cjs/apis/updateStatus.cjs +32 -0
  466. package/dist/cjs/apis/upgradeGroupCommunity.cjs +32 -0
  467. package/dist/cjs/apis/uploadAttachment.cjs +209 -0
  468. package/dist/cjs/apis/uploadProductPhoto.cjs +55 -0
  469. package/dist/cjs/apis/votePoll.cjs +34 -0
  470. package/dist/cjs/apis.cjs +304 -0
  471. package/dist/cjs/context.cjs +34 -0
  472. package/dist/cjs/index.cjs +149 -0
  473. package/dist/cjs/models/AutoReply.cjs +9 -0
  474. package/dist/cjs/models/Board.cjs +8 -0
  475. package/dist/cjs/models/DeliveredMessage.cjs +23 -0
  476. package/dist/cjs/models/Enum.cjs +253 -0
  477. package/dist/cjs/models/FriendEvent.cjs +87 -0
  478. package/dist/cjs/models/Group.cjs +13 -0
  479. package/dist/cjs/models/GroupEvent.cjs +94 -0
  480. package/dist/cjs/models/Message.cjs +35 -0
  481. package/dist/cjs/models/Reaction.cjs +74 -0
  482. package/dist/cjs/models/Reminder.cjs +9 -0
  483. package/dist/cjs/models/SeenMessage.cjs +23 -0
  484. package/dist/cjs/models/Typing.cjs +23 -0
  485. package/dist/cjs/models/Undo.cjs +16 -0
  486. package/dist/cjs/models/ZBusiness.cjs +39 -0
  487. package/dist/cjs/update.cjs +34 -0
  488. package/dist/cjs/utils.cjs +680 -0
  489. package/dist/cjs/zalo.cjs +112 -0
  490. package/dist/context.d.ts +179 -0
  491. package/dist/context.js +28 -0
  492. package/dist/index.d.ts +156 -0
  493. package/dist/index.js +13 -0
  494. package/dist/models/Attachment.d.ts +9 -0
  495. package/dist/models/Attachment.js +1 -0
  496. package/dist/models/AutoReply.d.ts +20 -0
  497. package/dist/models/AutoReply.js +7 -0
  498. package/dist/models/Board.d.ts +60 -0
  499. package/dist/models/Board.js +6 -0
  500. package/dist/models/Catalog.d.ts +16 -0
  501. package/dist/models/Catalog.js +1 -0
  502. package/dist/models/DeliveredMessage.d.ts +27 -0
  503. package/dist/models/DeliveredMessage.js +17 -0
  504. package/dist/models/Enum.d.ts +247 -0
  505. package/dist/models/Enum.js +251 -0
  506. package/dist/models/FriendEvent.d.ts +107 -0
  507. package/dist/models/FriendEvent.js +83 -0
  508. package/dist/models/Group.d.ts +125 -0
  509. package/dist/models/Group.js +11 -0
  510. package/dist/models/GroupEvent.d.ts +178 -0
  511. package/dist/models/GroupEvent.js +90 -0
  512. package/dist/models/Label.d.ts +10 -0
  513. package/dist/models/Label.js +1 -0
  514. package/dist/models/Message.d.ts +91 -0
  515. package/dist/models/Message.js +29 -0
  516. package/dist/models/ProductCatalog.d.ts +17 -0
  517. package/dist/models/ProductCatalog.js +1 -0
  518. package/dist/models/QuickMessage.d.ts +25 -0
  519. package/dist/models/QuickMessage.js +1 -0
  520. package/dist/models/Reaction.d.ts +85 -0
  521. package/dist/models/Reaction.js +70 -0
  522. package/dist/models/Reminder.d.ts +51 -0
  523. package/dist/models/Reminder.js +7 -0
  524. package/dist/models/SeenMessage.d.ts +26 -0
  525. package/dist/models/SeenMessage.js +17 -0
  526. package/dist/models/Sticker.d.ts +27 -0
  527. package/dist/models/Sticker.js +1 -0
  528. package/dist/models/Typing.d.ts +24 -0
  529. package/dist/models/Typing.js +17 -0
  530. package/dist/models/Undo.d.ts +34 -0
  531. package/dist/models/Undo.js +12 -0
  532. package/dist/models/User.d.ts +62 -0
  533. package/dist/models/User.js +1 -0
  534. package/dist/models/ZBusiness.d.ts +22 -0
  535. package/dist/models/ZBusiness.js +35 -0
  536. package/dist/models/index.d.ts +21 -0
  537. package/dist/models/index.js +21 -0
  538. package/dist/update.d.ts +2 -0
  539. package/dist/update.js +29 -0
  540. package/dist/utils.d.ts +166 -0
  541. package/dist/utils.js +697 -0
  542. package/dist/zalo.d.ts +41 -0
  543. package/dist/zalo.js +107 -0
  544. package/eslint.config.js +21 -0
  545. package/index.d.ts +2 -0
  546. package/package.json +78 -0
  547. package/rollup.config.js +28 -0
@@ -0,0 +1,46 @@
1
+ 'use strict';
2
+
3
+ var ZaloApiError = require('../Errors/ZaloApiError.cjs');
4
+ require('../models/AutoReply.cjs');
5
+ require('../models/Board.cjs');
6
+ var Enum = require('../models/Enum.cjs');
7
+ require('../models/FriendEvent.cjs');
8
+ require('../models/Group.cjs');
9
+ require('../models/GroupEvent.cjs');
10
+ require('../models/Reaction.cjs');
11
+ require('../models/Reminder.cjs');
12
+ require('../models/ZBusiness.cjs');
13
+ var utils = require('../utils.cjs');
14
+
15
+ const sendTypingEventFactory = utils.apiFactory()((api, ctx, utils) => {
16
+ const serviceURL = {
17
+ [Enum.ThreadType.User]: utils.makeURL(`${api.zpwServiceMap.chat[0]}/api/message/typing`),
18
+ [Enum.ThreadType.Group]: utils.makeURL(`${api.zpwServiceMap.group[0]}/api/group/typing`),
19
+ };
20
+ /**
21
+ * Send typing event
22
+ *
23
+ * @param threadId The ID of the User or Group to send the typing event to
24
+ * @param type The type of thread (User or Group)
25
+ * @param destType The destination type (User or Page), for User threads only, defaults to User
26
+ *
27
+ * @throws {ZaloApiError}
28
+ */
29
+ return async function sendTypingEvent(threadId, type = Enum.ThreadType.User, destType = Enum.DestType.User) {
30
+ if (!threadId)
31
+ throw new ZaloApiError.ZaloApiError("Missing threadId");
32
+ const params = Object.assign(Object.assign({ [type === Enum.ThreadType.User ? "toid" : "grid"]: threadId }, (type === Enum.ThreadType.User ? { destType } : {})), { imei: ctx.imei });
33
+ const encryptedParams = utils.encodeAES(JSON.stringify(params));
34
+ if (!encryptedParams)
35
+ throw new ZaloApiError.ZaloApiError("Failed to encrypt params");
36
+ const response = await utils.request(serviceURL[type], {
37
+ method: "POST",
38
+ body: new URLSearchParams({
39
+ params: encryptedParams,
40
+ }),
41
+ });
42
+ return utils.resolve(response);
43
+ };
44
+ });
45
+
46
+ exports.sendTypingEventFactory = sendTypingEventFactory;
@@ -0,0 +1,131 @@
1
+ 'use strict';
2
+
3
+ var ZaloApiError = require('../Errors/ZaloApiError.cjs');
4
+ require('../models/AutoReply.cjs');
5
+ require('../models/Board.cjs');
6
+ var Enum = require('../models/Enum.cjs');
7
+ require('../models/FriendEvent.cjs');
8
+ require('../models/Group.cjs');
9
+ require('../models/GroupEvent.cjs');
10
+ require('../models/Reaction.cjs');
11
+ require('../models/Reminder.cjs');
12
+ require('../models/ZBusiness.cjs');
13
+ var utils = require('../utils.cjs');
14
+
15
+ const sendVideoFactory = utils.apiFactory()((api, ctx, utils) => {
16
+ const serviceURL = {
17
+ [Enum.ThreadType.User]: utils.makeURL(`${api.zpwServiceMap.file[0]}/api/message/forward`),
18
+ [Enum.ThreadType.Group]: utils.makeURL(`${api.zpwServiceMap.file[0]}/api/group/forward`),
19
+ };
20
+ /**
21
+ * Send a video to a User - Group
22
+ *
23
+ * @param options send video options
24
+ * @param threadId ID of the user or group to send the video to
25
+ * @param type Type of thread (USER or GROUP)
26
+ *
27
+ * @throws {ZaloApiError}
28
+ *
29
+ * @examples Example Video Resolutions:
30
+ * - **Standard Videos**:
31
+ * - 3840x2160 (4K UHD): Width 3840px, Height 2160px.
32
+ * - 1920x1080 (Full HD): Width 1920px, Height 1080px.
33
+ * - 1280x720 (HD): Width 1280px, Height 720px.
34
+ * - **Document-Oriented Videos** (Portrait):
35
+ * - 3840x2160 (4K UHD): Width 3840px, Height 2160px.
36
+ * - 720x1280 (HD): Width 720px, Height 1280px.
37
+ * - 1440x2560 (2K): Width 1440px, Height 2560px.
38
+ *
39
+ */
40
+ return async function sendVideo(options, threadId, type = Enum.ThreadType.User) {
41
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
42
+ let fileSize = 0;
43
+ const clientId = Date.now();
44
+ try {
45
+ const headResponse = await utils.request(options.videoUrl, { method: "HEAD" }, true);
46
+ if (headResponse.ok) {
47
+ fileSize = parseInt(headResponse.headers.get("content-length") || "0");
48
+ }
49
+ }
50
+ catch (error) {
51
+ throw new ZaloApiError.ZaloApiError(`Unable to get video content: ${error instanceof Error ? error.message : String(error)}`);
52
+ }
53
+ const params = type === Enum.ThreadType.User
54
+ ? {
55
+ toId: threadId,
56
+ clientId: String(clientId),
57
+ ttl: (_a = options.ttl) !== null && _a !== void 0 ? _a : 0,
58
+ zsource: 704,
59
+ msgType: 5,
60
+ msgInfo: JSON.stringify({
61
+ videoUrl: options.videoUrl,
62
+ thumbUrl: options.thumbnailUrl,
63
+ duration: (_b = options.duration) !== null && _b !== void 0 ? _b : 0,
64
+ width: (_c = options.width) !== null && _c !== void 0 ? _c : 1280,
65
+ height: (_d = options.height) !== null && _d !== void 0 ? _d : 720,
66
+ fileSize: fileSize,
67
+ properties: {
68
+ color: -1,
69
+ size: -1,
70
+ type: 1003,
71
+ subType: 0,
72
+ ext: {
73
+ sSrcType: -1,
74
+ sSrcStr: "",
75
+ msg_warning_type: 0,
76
+ },
77
+ },
78
+ title: (_e = options.msg) !== null && _e !== void 0 ? _e : "",
79
+ }),
80
+ imei: ctx.imei,
81
+ }
82
+ : {
83
+ grid: threadId,
84
+ visibility: 0,
85
+ clientId: String(clientId),
86
+ ttl: (_f = options.ttl) !== null && _f !== void 0 ? _f : 0,
87
+ zsource: 704,
88
+ msgType: 5,
89
+ msgInfo: JSON.stringify({
90
+ videoUrl: options.videoUrl,
91
+ thumbUrl: options.thumbnailUrl,
92
+ duration: (_g = options.duration) !== null && _g !== void 0 ? _g : 0,
93
+ width: (_h = options.width) !== null && _h !== void 0 ? _h : 1280,
94
+ height: (_j = options.height) !== null && _j !== void 0 ? _j : 720,
95
+ fileSize: fileSize,
96
+ properties: {
97
+ color: -1,
98
+ size: -1,
99
+ type: 1003,
100
+ subType: 0,
101
+ ext: {
102
+ sSrcType: -1,
103
+ sSrcStr: "",
104
+ msg_warning_type: 0,
105
+ },
106
+ },
107
+ title: (_k = options.msg) !== null && _k !== void 0 ? _k : "",
108
+ }),
109
+ imei: ctx.imei,
110
+ };
111
+ // @TODO: later
112
+ // if (typeof message !== "string" && message.mention) {
113
+ // params.mentionInfo = message.mention;
114
+ // }
115
+ if (type !== Enum.ThreadType.User && type !== Enum.ThreadType.Group) {
116
+ throw new ZaloApiError.ZaloApiError("Thread type is invalid");
117
+ }
118
+ const encryptedParams = utils.encodeAES(JSON.stringify(params));
119
+ if (!encryptedParams)
120
+ throw new ZaloApiError.ZaloApiError("Failed to encrypt params");
121
+ const response = await utils.request(serviceURL[type], {
122
+ method: "POST",
123
+ body: new URLSearchParams({
124
+ params: encryptedParams,
125
+ }),
126
+ });
127
+ return utils.resolve(response);
128
+ };
129
+ });
130
+
131
+ exports.sendVideoFactory = sendVideoFactory;
@@ -0,0 +1,86 @@
1
+ 'use strict';
2
+
3
+ var ZaloApiError = require('../Errors/ZaloApiError.cjs');
4
+ require('../models/AutoReply.cjs');
5
+ require('../models/Board.cjs');
6
+ var Enum = require('../models/Enum.cjs');
7
+ require('../models/FriendEvent.cjs');
8
+ require('../models/Group.cjs');
9
+ require('../models/GroupEvent.cjs');
10
+ require('../models/Reaction.cjs');
11
+ require('../models/Reminder.cjs');
12
+ require('../models/ZBusiness.cjs');
13
+ var utils = require('../utils.cjs');
14
+
15
+ const sendVoiceFactory = utils.apiFactory()((api, ctx, utils) => {
16
+ const serviceURL = {
17
+ [Enum.ThreadType.User]: utils.makeURL(`${api.zpwServiceMap.file[0]}/api/message/forward`),
18
+ [Enum.ThreadType.Group]: utils.makeURL(`${api.zpwServiceMap.file[0]}/api/group/forward`),
19
+ };
20
+ /**
21
+ * Send a voice to a User - Group
22
+ *
23
+ * @param options voice options
24
+ * @param threadId ID of the user or group to send the voice to
25
+ * @param type Type of thread, default user
26
+ *
27
+ * @throws {ZaloApiError}
28
+ */
29
+ return async function sendVoice(options, threadId, type = Enum.ThreadType.User) {
30
+ var _a, _b;
31
+ let fileSize = null;
32
+ const clientId = Date.now().toString();
33
+ try {
34
+ const headResponse = await utils.request(options.voiceUrl, { method: "HEAD" }, true);
35
+ if (headResponse.ok) {
36
+ fileSize = parseInt(headResponse.headers.get("content-length") || "0");
37
+ }
38
+ }
39
+ catch (error) {
40
+ throw new ZaloApiError.ZaloApiError(`Unable to get voice content: ${error instanceof Error ? error.message : String(error)}`);
41
+ }
42
+ const params = type === Enum.ThreadType.User
43
+ ? {
44
+ toId: threadId,
45
+ ttl: (_a = options.ttl) !== null && _a !== void 0 ? _a : 0,
46
+ zsource: -1,
47
+ msgType: 3,
48
+ clientId: clientId,
49
+ msgInfo: JSON.stringify({
50
+ voiceUrl: options.voiceUrl,
51
+ m4aUrl: options.voiceUrl,
52
+ fileSize: fileSize !== null && fileSize !== void 0 ? fileSize : 0,
53
+ }),
54
+ imei: ctx.imei,
55
+ }
56
+ : {
57
+ grid: threadId,
58
+ visibility: 0,
59
+ ttl: (_b = options.ttl) !== null && _b !== void 0 ? _b : 0,
60
+ zsource: -1,
61
+ msgType: 3,
62
+ clientId: clientId,
63
+ msgInfo: JSON.stringify({
64
+ voiceUrl: options.voiceUrl,
65
+ m4aUrl: options.voiceUrl,
66
+ fileSize: fileSize !== null && fileSize !== void 0 ? fileSize : 0,
67
+ }),
68
+ imei: ctx.imei,
69
+ };
70
+ if (type !== Enum.ThreadType.User && type !== Enum.ThreadType.Group) {
71
+ throw new ZaloApiError.ZaloApiError("Thread type is invalid");
72
+ }
73
+ const encryptedParams = utils.encodeAES(JSON.stringify(params));
74
+ if (!encryptedParams)
75
+ throw new ZaloApiError.ZaloApiError("Failed to encrypt params");
76
+ const response = await utils.request(serviceURL[type], {
77
+ method: "POST",
78
+ body: new URLSearchParams({
79
+ params: encryptedParams,
80
+ }),
81
+ });
82
+ return utils.resolve(response);
83
+ };
84
+ });
85
+
86
+ exports.sendVoiceFactory = sendVoiceFactory;
@@ -0,0 +1,39 @@
1
+ 'use strict';
2
+
3
+ var ZaloApiError = require('../Errors/ZaloApiError.cjs');
4
+ var utils = require('../utils.cjs');
5
+
6
+ const setArchivedConversationsFactory = utils.apiFactory()((api, ctx, utils) => {
7
+ const serviceURL = utils.makeURL(`${api.zpwServiceMap.label[0]}/api/archivedchat/update`);
8
+ /**
9
+ * Archive conversations
10
+ *
11
+ * @param isArchived - true to archive, false to unarchive
12
+ * @param conversations - List of conversations to archive/unarchive
13
+ *
14
+ * @throws {ZaloApiError}
15
+ */
16
+ return async function setArchivedConversations(isArchived, conversations) {
17
+ if (!Array.isArray(conversations)) {
18
+ conversations = [conversations];
19
+ }
20
+ const params = {
21
+ actionType: isArchived ? 0 : 1,
22
+ ids: conversations,
23
+ imei: ctx.imei,
24
+ version: Date.now(),
25
+ };
26
+ const encryptedParams = utils.encodeAES(JSON.stringify(params));
27
+ if (!encryptedParams)
28
+ throw new ZaloApiError.ZaloApiError("Failed to encrypt message");
29
+ const response = await utils.request(serviceURL, {
30
+ method: "POST",
31
+ body: new URLSearchParams({
32
+ params: encryptedParams,
33
+ }),
34
+ });
35
+ return utils.resolve(response);
36
+ };
37
+ });
38
+
39
+ exports.setArchivedConversationsFactory = setArchivedConversationsFactory;
@@ -0,0 +1,52 @@
1
+ 'use strict';
2
+
3
+ var ZaloApiError = require('../Errors/ZaloApiError.cjs');
4
+ require('../models/AutoReply.cjs');
5
+ require('../models/Board.cjs');
6
+ var Enum = require('../models/Enum.cjs');
7
+ require('../models/FriendEvent.cjs');
8
+ require('../models/Group.cjs');
9
+ require('../models/GroupEvent.cjs');
10
+ require('../models/Reaction.cjs');
11
+ require('../models/Reminder.cjs');
12
+ require('../models/ZBusiness.cjs');
13
+ var utils = require('../utils.cjs');
14
+
15
+ const setHiddenConversationsFactory = utils.apiFactory()((api, ctx, utils) => {
16
+ const serviceURL = utils.makeURL(`${api.zpwServiceMap.conversation[0]}/api/hiddenconvers/add-remove`);
17
+ /**
18
+ * Set hidden conversations
19
+ *
20
+ * @param hidden - Hide or unhide conversations
21
+ * @param threadId Thread ID(s)
22
+ * @param type Thread type (User/Group)
23
+ *
24
+ * @throws {ZaloApiError}
25
+ */
26
+ return async function setHiddenConversations(hidden, threadId, type = Enum.ThreadType.User) {
27
+ threadId = Array.isArray(threadId) ? threadId : [threadId];
28
+ if (threadId.length === 0)
29
+ throw new ZaloApiError.ZaloApiError("threadId is required");
30
+ const is_group = type === Enum.ThreadType.Group ? 1 : 0;
31
+ const params = {
32
+ [hidden ? "add_threads" : "del_threads"]: JSON.stringify(threadId.map((id) => ({
33
+ thread_id: id,
34
+ is_group: is_group,
35
+ }))),
36
+ [hidden ? "del_threads" : "add_threads"]: "[]",
37
+ imei: ctx.imei,
38
+ };
39
+ const encryptedParams = utils.encodeAES(JSON.stringify(params));
40
+ if (!encryptedParams)
41
+ throw new ZaloApiError.ZaloApiError("Failed to encrypt params");
42
+ const response = await utils.request(serviceURL, {
43
+ method: "POST",
44
+ body: new URLSearchParams({
45
+ params: encryptedParams,
46
+ }),
47
+ });
48
+ return utils.resolve(response);
49
+ };
50
+ });
51
+
52
+ exports.setHiddenConversationsFactory = setHiddenConversationsFactory;
@@ -0,0 +1,80 @@
1
+ 'use strict';
2
+
3
+ var ZaloApiError = require('../Errors/ZaloApiError.cjs');
4
+ require('../models/AutoReply.cjs');
5
+ require('../models/Board.cjs');
6
+ var Enum = require('../models/Enum.cjs');
7
+ require('../models/FriendEvent.cjs');
8
+ require('../models/Group.cjs');
9
+ require('../models/GroupEvent.cjs');
10
+ require('../models/Reaction.cjs');
11
+ require('../models/Reminder.cjs');
12
+ require('../models/ZBusiness.cjs');
13
+ var utils = require('../utils.cjs');
14
+
15
+ exports.MuteDuration = void 0;
16
+ (function (MuteDuration) {
17
+ MuteDuration[MuteDuration["ONE_HOUR"] = 3600] = "ONE_HOUR";
18
+ MuteDuration[MuteDuration["FOUR_HOURS"] = 14400] = "FOUR_HOURS";
19
+ MuteDuration[MuteDuration["FOREVER"] = -1] = "FOREVER";
20
+ MuteDuration["UNTIL_8AM"] = "until8AM";
21
+ })(exports.MuteDuration || (exports.MuteDuration = {}));
22
+ exports.MuteAction = void 0;
23
+ (function (MuteAction) {
24
+ MuteAction[MuteAction["MUTE"] = 1] = "MUTE";
25
+ MuteAction[MuteAction["UNMUTE"] = 3] = "UNMUTE";
26
+ })(exports.MuteAction || (exports.MuteAction = {}));
27
+ const setMuteFactory = utils.apiFactory()((api, ctx, utils) => {
28
+ const serviceURL = utils.makeURL(`${api.zpwServiceMap.profile[0]}/api/social/profile/setmute`);
29
+ /**
30
+ * Set mute
31
+ *
32
+ * @param params - Mute parameters
33
+ * @param threadID - ID of the thread to mute
34
+ * @param type - Type of thread (User or Group)
35
+ *
36
+ * @throws {ZaloApiError}
37
+ */
38
+ return async function setMute(params = {}, threadID, type = Enum.ThreadType.User) {
39
+ const { duration = exports.MuteDuration.FOREVER, action = exports.MuteAction.MUTE } = params;
40
+ let muteDuration;
41
+ if (action === exports.MuteAction.UNMUTE) {
42
+ muteDuration = -1;
43
+ }
44
+ else if (duration === exports.MuteDuration.FOREVER) {
45
+ muteDuration = -1;
46
+ }
47
+ else if (duration === exports.MuteDuration.UNTIL_8AM) {
48
+ const now = new Date();
49
+ const next8AM = new Date(now);
50
+ next8AM.setHours(8, 0, 0, 0);
51
+ if (now.getHours() >= 8) {
52
+ next8AM.setDate(next8AM.getDate() + 1);
53
+ }
54
+ muteDuration = Math.floor((next8AM.getTime() - now.getTime()) / 1000);
55
+ }
56
+ else {
57
+ muteDuration = duration;
58
+ }
59
+ const requestParams = {
60
+ toid: threadID,
61
+ duration: muteDuration,
62
+ action: action,
63
+ startTime: Math.floor(Date.now() / 1000),
64
+ muteType: type === Enum.ThreadType.User ? 1 : 2,
65
+ imei: ctx.imei,
66
+ };
67
+ const encryptedParams = utils.encodeAES(JSON.stringify(requestParams));
68
+ if (!encryptedParams)
69
+ throw new ZaloApiError.ZaloApiError("Failed to encrypt params");
70
+ const response = await utils.request(serviceURL, {
71
+ method: "POST",
72
+ body: new URLSearchParams({
73
+ params: encryptedParams,
74
+ }),
75
+ });
76
+ return utils.resolve(response);
77
+ };
78
+ });
79
+
80
+ exports.setMuteFactory = setMuteFactory;
@@ -0,0 +1,47 @@
1
+ 'use strict';
2
+
3
+ var ZaloApiError = require('../Errors/ZaloApiError.cjs');
4
+ require('../models/AutoReply.cjs');
5
+ require('../models/Board.cjs');
6
+ var Enum = require('../models/Enum.cjs');
7
+ require('../models/FriendEvent.cjs');
8
+ require('../models/Group.cjs');
9
+ require('../models/GroupEvent.cjs');
10
+ require('../models/Reaction.cjs');
11
+ require('../models/Reminder.cjs');
12
+ require('../models/ZBusiness.cjs');
13
+ var utils = require('../utils.cjs');
14
+
15
+ const setPinnedConversationsFactory = utils.apiFactory()((api, _, utils) => {
16
+ const serviceURL = utils.makeURL(`${api.zpwServiceMap.conversation[0]}/api/pinconvers/updatev2`);
17
+ /**
18
+ * Pin and unpin conversations of threads)
19
+ *
20
+ * @param pinned Should pin conversations
21
+ * @param threadId The ID(s) of the thread
22
+ * @param type Type of thread, default User
23
+ *
24
+ * @throws {ZaloApiError}
25
+ *
26
+ */
27
+ return async function setPinnedConversations(pinned, threadId, type = Enum.ThreadType.User) {
28
+ if (typeof threadId == "string")
29
+ threadId = [threadId];
30
+ const params = {
31
+ actionType: pinned ? 1 : 2,
32
+ conversations: type == Enum.ThreadType.Group ? threadId.map((id) => `g${id}`) : threadId.map((id) => `u${id}`),
33
+ };
34
+ const encryptedParams = utils.encodeAES(JSON.stringify(params));
35
+ if (!encryptedParams)
36
+ throw new ZaloApiError.ZaloApiError("Failed to encrypt params");
37
+ const response = await utils.request(serviceURL, {
38
+ method: "POST",
39
+ body: new URLSearchParams({
40
+ params: encryptedParams,
41
+ }),
42
+ });
43
+ return utils.resolve(response);
44
+ };
45
+ });
46
+
47
+ exports.setPinnedConversationsFactory = setPinnedConversationsFactory;
@@ -0,0 +1,33 @@
1
+ 'use strict';
2
+
3
+ var ZaloApiError = require('../Errors/ZaloApiError.cjs');
4
+ var utils = require('../utils.cjs');
5
+
6
+ const sharePollFactory = utils.apiFactory()((api, ctx, utils) => {
7
+ const serviceURL = utils.makeURL(`${api.zpwServiceMap.group[0]}/api/poll/share`);
8
+ /**
9
+ * Share a poll
10
+ *
11
+ * @param pollId poll id to share
12
+ *
13
+ * @throws {ZaloApiError}
14
+ */
15
+ return async function sharePoll(pollId) {
16
+ const params = {
17
+ poll_id: pollId,
18
+ imei: ctx.imei,
19
+ };
20
+ const encryptedParams = utils.encodeAES(JSON.stringify(params));
21
+ if (!encryptedParams)
22
+ throw new ZaloApiError.ZaloApiError("Failed to encrypt params");
23
+ const response = await utils.request(serviceURL, {
24
+ method: "POST",
25
+ body: new URLSearchParams({
26
+ params: encryptedParams,
27
+ }),
28
+ });
29
+ return utils.resolve(response);
30
+ };
31
+ });
32
+
33
+ exports.sharePollFactory = sharePollFactory;
@@ -0,0 +1,33 @@
1
+ 'use strict';
2
+
3
+ var ZaloApiError = require('../Errors/ZaloApiError.cjs');
4
+ var utils = require('../utils.cjs');
5
+
6
+ const unblockUserFactory = utils.apiFactory()((api, ctx, utils) => {
7
+ const serviceURL = utils.makeURL(`${api.zpwServiceMap.friend[0]}/api/friend/unblock`);
8
+ /**
9
+ * Unblock a User
10
+ *
11
+ * @param userId The ID of the User to unblock
12
+ *
13
+ * @throws {ZaloApiError}
14
+ */
15
+ return async function unblockUser(userId) {
16
+ const params = {
17
+ fid: userId,
18
+ imei: ctx.imei,
19
+ };
20
+ const encryptedParams = utils.encodeAES(JSON.stringify(params));
21
+ if (!encryptedParams)
22
+ throw new ZaloApiError.ZaloApiError("Failed to encrypt params");
23
+ const response = await utils.request(serviceURL, {
24
+ method: "POST",
25
+ body: new URLSearchParams({
26
+ params: encryptedParams,
27
+ }),
28
+ });
29
+ return utils.resolve(response);
30
+ };
31
+ });
32
+
33
+ exports.unblockUserFactory = unblockUserFactory;
@@ -0,0 +1,55 @@
1
+ 'use strict';
2
+
3
+ var ZaloApiError = require('../Errors/ZaloApiError.cjs');
4
+ require('../models/AutoReply.cjs');
5
+ require('../models/Board.cjs');
6
+ var Enum = require('../models/Enum.cjs');
7
+ require('../models/FriendEvent.cjs');
8
+ require('../models/Group.cjs');
9
+ require('../models/GroupEvent.cjs');
10
+ require('../models/Reaction.cjs');
11
+ require('../models/Reminder.cjs');
12
+ require('../models/ZBusiness.cjs');
13
+ var utils = require('../utils.cjs');
14
+
15
+ const undoFactory = utils.apiFactory()((api, ctx, utils) => {
16
+ const URLType = {
17
+ [Enum.ThreadType.User]: utils.makeURL(`${api.zpwServiceMap.chat[0]}/api/message/undo`),
18
+ [Enum.ThreadType.Group]: utils.makeURL(`${api.zpwServiceMap.group[0]}/api/group/undomsg`),
19
+ };
20
+ /**
21
+ * Undo a message
22
+ *
23
+ * @param payload Undo payload containing message ID and client message ID
24
+ * @param threadId group or user id
25
+ * @param type Message type (User or Group), default is User
26
+ *
27
+ * @throws {ZaloApiError}
28
+ */
29
+ return async function undo(payload, threadId, type = Enum.ThreadType.User) {
30
+ const params = {
31
+ msgId: payload.msgId,
32
+ clientId: Date.now(),
33
+ cliMsgIdUndo: payload.cliMsgId,
34
+ };
35
+ if (type == Enum.ThreadType.Group) {
36
+ params["grid"] = threadId;
37
+ params["visibility"] = 0;
38
+ params["imei"] = ctx.imei;
39
+ }
40
+ else
41
+ params["toid"] = threadId;
42
+ const encryptedParams = utils.encodeAES(JSON.stringify(params));
43
+ if (!encryptedParams)
44
+ throw new ZaloApiError.ZaloApiError("Failed to encrypt message");
45
+ const response = await utils.request(URLType[type], {
46
+ method: "POST",
47
+ body: new URLSearchParams({
48
+ params: encryptedParams,
49
+ }),
50
+ });
51
+ return utils.resolve(response);
52
+ };
53
+ });
54
+
55
+ exports.undoFactory = undoFactory;
@@ -0,0 +1,32 @@
1
+ 'use strict';
2
+
3
+ var ZaloApiError = require('../Errors/ZaloApiError.cjs');
4
+ var utils = require('../utils.cjs');
5
+
6
+ const undoFriendRequestFactory = utils.apiFactory()((api, _ctx, utils) => {
7
+ const serviceURL = utils.makeURL(`${api.zpwServiceMap.friend[0]}/api/friend/undo`);
8
+ /**
9
+ * Undo send a friend request to a user.
10
+ *
11
+ * @param options
12
+ *
13
+ * @throws {ZaloApiError}
14
+ */
15
+ return async function undoFriendRequest(friendId) {
16
+ const params = {
17
+ fid: friendId,
18
+ };
19
+ const encryptedParams = utils.encodeAES(JSON.stringify(params));
20
+ if (!encryptedParams)
21
+ throw new ZaloApiError.ZaloApiError("Failed to encrypt params");
22
+ const response = await utils.request(serviceURL, {
23
+ method: "POST",
24
+ body: new URLSearchParams({
25
+ params: encryptedParams,
26
+ }),
27
+ });
28
+ return utils.resolve(response);
29
+ };
30
+ });
31
+
32
+ exports.undoFriendRequestFactory = undoFriendRequestFactory;
@@ -0,0 +1,32 @@
1
+ 'use strict';
2
+
3
+ var ZaloApiError = require('../Errors/ZaloApiError.cjs');
4
+ var utils = require('../utils.cjs');
5
+
6
+ const updateActiveStatusFactory = utils.apiFactory()((api, ctx, utils) => {
7
+ const pingURL = utils.makeURL(`${api.zpwServiceMap.profile[0]}/api/social/profile/ping`);
8
+ const deactiveURL = utils.makeURL(`${api.zpwServiceMap.profile[0]}/api/social/profile/deactive`);
9
+ /**
10
+ * Update active status?
11
+ *
12
+ * @param active
13
+ *
14
+ * @throws {ZaloApiError}
15
+ */
16
+ return async function updateActiveStatus(active) {
17
+ const params = {
18
+ status: active ? 1 : 0,
19
+ imei: ctx.imei,
20
+ };
21
+ const encryptedParams = utils.encodeAES(JSON.stringify(params));
22
+ if (!encryptedParams)
23
+ throw new ZaloApiError.ZaloApiError("Failed to encrypt params");
24
+ const targetURL = active ? pingURL : deactiveURL;
25
+ const response = await utils.request(utils.makeURL(targetURL, { params: encryptedParams }), {
26
+ method: "GET",
27
+ });
28
+ return utils.resolve(response);
29
+ };
30
+ });
31
+
32
+ exports.updateActiveStatusFactory = updateActiveStatusFactory;