@ohos-ports/zca-js 2.2.0-beta.1

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 (571) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +225 -0
  3. package/dist/Errors/ZaloApiError.d.ts +4 -0
  4. package/dist/Errors/ZaloApiError.js +7 -0
  5. package/dist/Errors/ZaloApiLoginQRAborted.d.ts +4 -0
  6. package/dist/Errors/ZaloApiLoginQRAborted.js +7 -0
  7. package/dist/Errors/ZaloApiLoginQRDeclined.d.ts +4 -0
  8. package/dist/Errors/ZaloApiLoginQRDeclined.js +7 -0
  9. package/dist/Errors/ZaloApiMissingImageMetadataGetter.d.ts +4 -0
  10. package/dist/Errors/ZaloApiMissingImageMetadataGetter.js +7 -0
  11. package/dist/Errors/index.d.ts +4 -0
  12. package/dist/Errors/index.js +4 -0
  13. package/dist/apis/acceptFriendRequest.d.ts +2 -0
  14. package/dist/apis/acceptFriendRequest.js +28 -0
  15. package/dist/apis/addGroupBlockedMember.d.ts +2 -0
  16. package/dist/apis/addGroupBlockedMember.js +28 -0
  17. package/dist/apis/addGroupDeputy.d.ts +2 -0
  18. package/dist/apis/addGroupDeputy.js +30 -0
  19. package/dist/apis/addPollOptions.d.ts +14 -0
  20. package/dist/apis/addPollOptions.js +26 -0
  21. package/dist/apis/addQuickMessage.d.ts +11 -0
  22. package/dist/apis/addQuickMessage.js +60 -0
  23. package/dist/apis/addReaction.d.ts +18 -0
  24. package/dist/apis/addReaction.js +294 -0
  25. package/dist/apis/addUnreadMark.d.ts +8 -0
  26. package/dist/apis/addUnreadMark.js +52 -0
  27. package/dist/apis/addUserToGroup.d.ts +5 -0
  28. package/dist/apis/addUserToGroup.js +34 -0
  29. package/dist/apis/blockUser.d.ts +2 -0
  30. package/dist/apis/blockUser.js +28 -0
  31. package/dist/apis/blockViewFeed.d.ts +2 -0
  32. package/dist/apis/blockViewFeed.js +30 -0
  33. package/dist/apis/changeAccountAvatar.d.ts +3 -0
  34. package/dist/apis/changeAccountAvatar.js +52 -0
  35. package/dist/apis/changeFriendAlias.d.ts +2 -0
  36. package/dist/apis/changeFriendAlias.js +27 -0
  37. package/dist/apis/changeGroupAvatar.d.ts +3 -0
  38. package/dist/apis/changeGroupAvatar.js +44 -0
  39. package/dist/apis/changeGroupName.d.ts +4 -0
  40. package/dist/apis/changeGroupName.js +32 -0
  41. package/dist/apis/changeGroupOwner.d.ts +4 -0
  42. package/dist/apis/changeGroupOwner.js +30 -0
  43. package/dist/apis/createAutoReply.d.ts +14 -0
  44. package/dist/apis/createAutoReply.js +37 -0
  45. package/dist/apis/createBankAccount.d.ts +8 -0
  46. package/dist/apis/createBankAccount.js +32 -0
  47. package/dist/apis/createCatalog.d.ts +7 -0
  48. package/dist/apis/createCatalog.js +29 -0
  49. package/dist/apis/createGroup.d.ts +28 -0
  50. package/dist/apis/createGroup.js +43 -0
  51. package/dist/apis/createNote.d.ts +7 -0
  52. package/dist/apis/createNote.js +47 -0
  53. package/dist/apis/createPoll.d.ts +36 -0
  54. package/dist/apis/createPoll.js +40 -0
  55. package/dist/apis/createProductCatalog.d.ts +23 -0
  56. package/dist/apis/createProductCatalog.js +50 -0
  57. package/dist/apis/createReminder.d.ts +12 -0
  58. package/dist/apis/createReminder.js +63 -0
  59. package/dist/apis/custom.d.ts +9 -0
  60. package/dist/apis/custom.js +15 -0
  61. package/dist/apis/deleteAutoReply.d.ts +5 -0
  62. package/dist/apis/deleteAutoReply.js +29 -0
  63. package/dist/apis/deleteAvatar.d.ts +9 -0
  64. package/dist/apis/deleteAvatar.js +27 -0
  65. package/dist/apis/deleteBankAccount.d.ts +11 -0
  66. package/dist/apis/deleteBankAccount.js +32 -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 +5 -0
  88. package/dist/apis/fetchAccountInfo.js +10 -0
  89. package/dist/apis/findUser.d.ts +3 -0
  90. package/dist/apis/findUser.js +42 -0
  91. package/dist/apis/findUserByUsername.d.ts +3 -0
  92. package/dist/apis/findUserByUsername.js +27 -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 +34 -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 +7 -0
  110. package/dist/apis/getAvatarUrlProfile.js +30 -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/getListBank.d.ts +5 -0
  152. package/dist/apis/getListBank.js +20 -0
  153. package/dist/apis/getListBankAccount.d.ts +7 -0
  154. package/dist/apis/getListBankAccount.js +27 -0
  155. package/dist/apis/getListBoard.d.ts +21 -0
  156. package/dist/apis/getListBoard.js +45 -0
  157. package/dist/apis/getListDevice.d.ts +10 -0
  158. package/dist/apis/getListDevice.js +22 -0
  159. package/dist/apis/getListReminder.d.ts +28 -0
  160. package/dist/apis/getListReminder.js +47 -0
  161. package/dist/apis/getMultiUsersByPhones.d.ts +5 -0
  162. package/dist/apis/getMultiUsersByPhones.js +39 -0
  163. package/dist/apis/getMute.d.ts +13 -0
  164. package/dist/apis/getMute.js +22 -0
  165. package/dist/apis/getOwnId.d.ts +1 -0
  166. package/dist/apis/getOwnId.js +4 -0
  167. package/dist/apis/getPendingGroupMembers.d.ts +11 -0
  168. package/dist/apis/getPendingGroupMembers.js +27 -0
  169. package/dist/apis/getPinConversations.d.ts +5 -0
  170. package/dist/apis/getPinConversations.js +22 -0
  171. package/dist/apis/getPollDetail.d.ts +3 -0
  172. package/dist/apis/getPollDetail.js +30 -0
  173. package/dist/apis/getProductCatalogList.d.ts +20 -0
  174. package/dist/apis/getProductCatalogList.js +33 -0
  175. package/dist/apis/getQR.d.ts +4 -0
  176. package/dist/apis/getQR.js +29 -0
  177. package/dist/apis/getQuickMessageList.d.ts +7 -0
  178. package/dist/apis/getQuickMessageList.js +24 -0
  179. package/dist/apis/getRelatedFriendGroup.d.ts +6 -0
  180. package/dist/apis/getRelatedFriendGroup.js +30 -0
  181. package/dist/apis/getReminder.d.ts +3 -0
  182. package/dist/apis/getReminder.js +25 -0
  183. package/dist/apis/getReminderResponses.d.ts +5 -0
  184. package/dist/apis/getReminderResponses.js +24 -0
  185. package/dist/apis/getSentFriendRequest.d.ts +18 -0
  186. package/dist/apis/getSentFriendRequest.js +24 -0
  187. package/dist/apis/getSettings.d.ts +3 -0
  188. package/dist/apis/getSettings.js +20 -0
  189. package/dist/apis/getStickerCategoryDetail.d.ts +3 -0
  190. package/dist/apis/getStickerCategoryDetail.js +24 -0
  191. package/dist/apis/getStickers.d.ts +1 -0
  192. package/dist/apis/getStickers.js +40 -0
  193. package/dist/apis/getStickersDetail.d.ts +3 -0
  194. package/dist/apis/getStickersDetail.js +40 -0
  195. package/dist/apis/getUnreadMark.d.ts +14 -0
  196. package/dist/apis/getUnreadMark.js +30 -0
  197. package/dist/apis/getUserInfo.d.ts +8 -0
  198. package/dist/apis/getUserInfo.js +44 -0
  199. package/dist/apis/inviteUserToGroups.d.ts +10 -0
  200. package/dist/apis/inviteUserToGroups.js +30 -0
  201. package/dist/apis/joinGroupInviteBox.d.ts +2 -0
  202. package/dist/apis/joinGroupInviteBox.js +25 -0
  203. package/dist/apis/joinGroupLink.d.ts +2 -0
  204. package/dist/apis/joinGroupLink.js +27 -0
  205. package/dist/apis/keepAlive.d.ts +4 -0
  206. package/dist/apis/keepAlive.js +22 -0
  207. package/dist/apis/lastOnline.d.ts +7 -0
  208. package/dist/apis/lastOnline.js +26 -0
  209. package/dist/apis/leaveGroup.d.ts +4 -0
  210. package/dist/apis/leaveGroup.js +33 -0
  211. package/dist/apis/listen.d.ts +102 -0
  212. package/dist/apis/listen.js +425 -0
  213. package/dist/apis/lockPoll.d.ts +2 -0
  214. package/dist/apis/lockPoll.js +28 -0
  215. package/dist/apis/login.d.ts +3 -0
  216. package/dist/apis/login.js +96 -0
  217. package/dist/apis/loginQR.d.ts +71 -0
  218. package/dist/apis/loginQR.js +365 -0
  219. package/dist/apis/lostFocus.d.ts +4 -0
  220. package/dist/apis/lostFocus.js +23 -0
  221. package/dist/apis/parseLink.d.ts +21 -0
  222. package/dist/apis/parseLink.js +27 -0
  223. package/dist/apis/registerCatalog.d.ts +2 -0
  224. package/dist/apis/registerCatalog.js +27 -0
  225. package/dist/apis/rejectFriendRequest.d.ts +2 -0
  226. package/dist/apis/rejectFriendRequest.js +27 -0
  227. package/dist/apis/removeFriend.d.ts +2 -0
  228. package/dist/apis/removeFriend.js +28 -0
  229. package/dist/apis/removeFriendAlias.d.ts +2 -0
  230. package/dist/apis/removeFriendAlias.js +24 -0
  231. package/dist/apis/removeGroupBlockedMember.d.ts +2 -0
  232. package/dist/apis/removeGroupBlockedMember.js +28 -0
  233. package/dist/apis/removeGroupDeputy.d.ts +2 -0
  234. package/dist/apis/removeGroupDeputy.js +30 -0
  235. package/dist/apis/removeQuickMessage.d.ts +5 -0
  236. package/dist/apis/removeQuickMessage.js +27 -0
  237. package/dist/apis/removeReminder.d.ts +3 -0
  238. package/dist/apis/removeReminder.js +40 -0
  239. package/dist/apis/removeUnreadMark.d.ts +8 -0
  240. package/dist/apis/removeUnreadMark.js +50 -0
  241. package/dist/apis/removeUserFromGroup.d.ts +4 -0
  242. package/dist/apis/removeUserFromGroup.js +34 -0
  243. package/dist/apis/resetHiddenConversPin.d.ts +2 -0
  244. package/dist/apis/resetHiddenConversPin.js +20 -0
  245. package/dist/apis/reuseAvatar.d.ts +2 -0
  246. package/dist/apis/reuseAvatar.js +26 -0
  247. package/dist/apis/reviewPendingMemberRequest.d.ts +14 -0
  248. package/dist/apis/reviewPendingMemberRequest.js +38 -0
  249. package/dist/apis/scanURL.d.ts +4 -0
  250. package/dist/apis/scanURL.js +28 -0
  251. package/dist/apis/searchSticker.d.ts +3 -0
  252. package/dist/apis/searchSticker.js +28 -0
  253. package/dist/apis/sendBankCard.d.ts +9 -0
  254. package/dist/apis/sendBankCard.js +37 -0
  255. package/dist/apis/sendCard.d.ts +10 -0
  256. package/dist/apis/sendCard.js +59 -0
  257. package/dist/apis/sendDeliveredEvent.d.ts +16 -0
  258. package/dist/apis/sendDeliveredEvent.js +55 -0
  259. package/dist/apis/sendFriendRequest.d.ts +2 -0
  260. package/dist/apis/sendFriendRequest.js +39 -0
  261. package/dist/apis/sendLink.d.ts +10 -0
  262. package/dist/apis/sendLink.js +61 -0
  263. package/dist/apis/sendMessage.d.ts +99 -0
  264. package/dist/apis/sendMessage.js +452 -0
  265. package/dist/apis/sendReport.d.ts +17 -0
  266. package/dist/apis/sendReport.js +53 -0
  267. package/dist/apis/sendSeenEvent.d.ts +16 -0
  268. package/dist/apis/sendSeenEvent.js +63 -0
  269. package/dist/apis/sendSticker.d.ts +10 -0
  270. package/dist/apis/sendSticker.js +57 -0
  271. package/dist/apis/sendTypingEvent.d.ts +5 -0
  272. package/dist/apis/sendTypingEvent.js +33 -0
  273. package/dist/apis/sendVideo.d.ts +35 -0
  274. package/dist/apis/sendVideo.js +118 -0
  275. package/dist/apis/sendVoice.d.ts +12 -0
  276. package/dist/apis/sendVoice.js +73 -0
  277. package/dist/apis/setHiddenConversations.d.ts +3 -0
  278. package/dist/apis/setHiddenConversations.js +39 -0
  279. package/dist/apis/setMute.d.ts +20 -0
  280. package/dist/apis/setMute.js +67 -0
  281. package/dist/apis/setPinnedConversations.d.ts +3 -0
  282. package/dist/apis/setPinnedConversations.js +34 -0
  283. package/dist/apis/sharePoll.d.ts +2 -0
  284. package/dist/apis/sharePoll.js +28 -0
  285. package/dist/apis/unblockUser.d.ts +2 -0
  286. package/dist/apis/unblockUser.js +28 -0
  287. package/dist/apis/undo.d.ts +9 -0
  288. package/dist/apis/undo.js +42 -0
  289. package/dist/apis/undoFriendRequest.d.ts +2 -0
  290. package/dist/apis/undoFriendRequest.js +27 -0
  291. package/dist/apis/updateActiveStatus.d.ts +4 -0
  292. package/dist/apis/updateActiveStatus.js +27 -0
  293. package/dist/apis/updateArchivedChatList.d.ts +10 -0
  294. package/dist/apis/updateArchivedChatList.js +34 -0
  295. package/dist/apis/updateAutoDeleteChat.d.ts +9 -0
  296. package/dist/apis/updateAutoDeleteChat.js +40 -0
  297. package/dist/apis/updateAutoReply.d.ts +15 -0
  298. package/dist/apis/updateAutoReply.js +38 -0
  299. package/dist/apis/updateBankAccount.d.ts +9 -0
  300. package/dist/apis/updateBankAccount.js +31 -0
  301. package/dist/apis/updateCatalog.d.ts +11 -0
  302. package/dist/apis/updateCatalog.js +30 -0
  303. package/dist/apis/updateGroupSettings.d.ts +40 -0
  304. package/dist/apis/updateGroupSettings.js +43 -0
  305. package/dist/apis/updateHiddenConversPin.d.ts +2 -0
  306. package/dist/apis/updateHiddenConversPin.js +30 -0
  307. package/dist/apis/updateLabels.d.ts +15 -0
  308. package/dist/apis/updateLabels.js +34 -0
  309. package/dist/apis/updateLang.d.ts +6 -0
  310. package/dist/apis/updateLang.js +30 -0
  311. package/dist/apis/updateProductCatalog.d.ts +25 -0
  312. package/dist/apis/updateProductCatalog.js +51 -0
  313. package/dist/apis/updateProfile.d.ts +20 -0
  314. package/dist/apis/updateProfile.js +43 -0
  315. package/dist/apis/updateProfileBio.d.ts +2 -0
  316. package/dist/apis/updateProfileBio.js +27 -0
  317. package/dist/apis/updateQuickMessage.d.ts +11 -0
  318. package/dist/apis/updateQuickMessage.js +61 -0
  319. package/dist/apis/updateSettings.d.ts +16 -0
  320. package/dist/apis/updateSettings.js +90 -0
  321. package/dist/apis/upgradeGroupToCommunity.d.ts +2 -0
  322. package/dist/apis/upgradeGroupToCommunity.js +27 -0
  323. package/dist/apis/uploadAttachment.d.ts +50 -0
  324. package/dist/apis/uploadAttachment.js +197 -0
  325. package/dist/apis/uploadProductPhoto.d.ts +14 -0
  326. package/dist/apis/uploadProductPhoto.js +50 -0
  327. package/dist/apis/votePoll.d.ts +5 -0
  328. package/dist/apis/votePoll.js +29 -0
  329. package/dist/apis.d.ts +317 -0
  330. package/dist/apis.js +317 -0
  331. package/dist/cjs/Errors/ZaloApiError.cjs +11 -0
  332. package/dist/cjs/Errors/ZaloApiLoginQRAborted.cjs +12 -0
  333. package/dist/cjs/Errors/ZaloApiLoginQRDeclined.cjs +12 -0
  334. package/dist/cjs/Errors/ZaloApiMissingImageMetadataGetter.cjs +12 -0
  335. package/dist/cjs/apis/acceptFriendRequest.cjs +33 -0
  336. package/dist/cjs/apis/addGroupBlockedMember.cjs +33 -0
  337. package/dist/cjs/apis/addGroupDeputy.cjs +35 -0
  338. package/dist/cjs/apis/addPollOptions.cjs +31 -0
  339. package/dist/cjs/apis/addQuickMessage.cjs +65 -0
  340. package/dist/cjs/apis/addReaction.cjs +308 -0
  341. package/dist/cjs/apis/addUnreadMark.cjs +66 -0
  342. package/dist/cjs/apis/addUserToGroup.cjs +39 -0
  343. package/dist/cjs/apis/blockUser.cjs +33 -0
  344. package/dist/cjs/apis/blockViewFeed.cjs +35 -0
  345. package/dist/cjs/apis/changeAccountAvatar.cjs +57 -0
  346. package/dist/cjs/apis/changeFriendAlias.cjs +32 -0
  347. package/dist/cjs/apis/changeGroupAvatar.cjs +49 -0
  348. package/dist/cjs/apis/changeGroupName.cjs +37 -0
  349. package/dist/cjs/apis/changeGroupOwner.cjs +35 -0
  350. package/dist/cjs/apis/createAutoReply.cjs +42 -0
  351. package/dist/cjs/apis/createBankAccount.cjs +37 -0
  352. package/dist/cjs/apis/createCatalog.cjs +34 -0
  353. package/dist/cjs/apis/createGroup.cjs +48 -0
  354. package/dist/cjs/apis/createNote.cjs +52 -0
  355. package/dist/cjs/apis/createPoll.cjs +45 -0
  356. package/dist/cjs/apis/createProductCatalog.cjs +55 -0
  357. package/dist/cjs/apis/createReminder.cjs +77 -0
  358. package/dist/cjs/apis/custom.cjs +19 -0
  359. package/dist/cjs/apis/deleteAutoReply.cjs +34 -0
  360. package/dist/cjs/apis/deleteAvatar.cjs +32 -0
  361. package/dist/cjs/apis/deleteBankAccount.cjs +37 -0
  362. package/dist/cjs/apis/deleteCatalog.cjs +33 -0
  363. package/dist/cjs/apis/deleteChat.cjs +64 -0
  364. package/dist/cjs/apis/deleteGroupInviteBox.cjs +32 -0
  365. package/dist/cjs/apis/deleteMessage.cjs +66 -0
  366. package/dist/cjs/apis/deleteProductCatalog.cjs +36 -0
  367. package/dist/cjs/apis/disableGroupLink.cjs +29 -0
  368. package/dist/cjs/apis/disperseGroup.cjs +33 -0
  369. package/dist/cjs/apis/editNote.cjs +51 -0
  370. package/dist/cjs/apis/editReminder.cjs +75 -0
  371. package/dist/cjs/apis/enableGroupLink.cjs +30 -0
  372. package/dist/cjs/apis/fetchAccountInfo.cjs +15 -0
  373. package/dist/cjs/apis/findUser.cjs +56 -0
  374. package/dist/cjs/apis/findUserByUsername.cjs +41 -0
  375. package/dist/cjs/apis/forwardMessage.cjs +113 -0
  376. package/dist/cjs/apis/getAliasList.cjs +32 -0
  377. package/dist/cjs/apis/getAllFriends.cjs +48 -0
  378. package/dist/cjs/apis/getAllGroups.cjs +15 -0
  379. package/dist/cjs/apis/getArchivedChatList.cjs +28 -0
  380. package/dist/cjs/apis/getAutoDeleteChat.cjs +26 -0
  381. package/dist/cjs/apis/getAutoReplyList.cjs +29 -0
  382. package/dist/cjs/apis/getAvatarList.cjs +33 -0
  383. package/dist/cjs/apis/getAvatarUrlProfile.cjs +44 -0
  384. package/dist/cjs/apis/getBizAccount.cjs +32 -0
  385. package/dist/cjs/apis/getCatalogList.cjs +37 -0
  386. package/dist/cjs/apis/getCloseFriends.cjs +25 -0
  387. package/dist/cjs/apis/getContext.cjs +9 -0
  388. package/dist/cjs/apis/getCookie.cjs +14 -0
  389. package/dist/cjs/apis/getFriendBoardList.cjs +31 -0
  390. package/dist/cjs/apis/getFriendOnlines.cjs +40 -0
  391. package/dist/cjs/apis/getFriendRecommendations.cjs +32 -0
  392. package/dist/cjs/apis/getFriendRequestStatus.cjs +30 -0
  393. package/dist/cjs/apis/getFullAvatar.cjs +30 -0
  394. package/dist/cjs/apis/getGroupBlockedMember.cjs +34 -0
  395. package/dist/cjs/apis/getGroupChatHistory.cjs +51 -0
  396. package/dist/cjs/apis/getGroupInfo.cjs +37 -0
  397. package/dist/cjs/apis/getGroupInviteBoxInfo.cjs +43 -0
  398. package/dist/cjs/apis/getGroupInviteBoxList.cjs +36 -0
  399. package/dist/cjs/apis/getGroupLinkDetail.cjs +30 -0
  400. package/dist/cjs/apis/getGroupLinkInfo.cjs +33 -0
  401. package/dist/cjs/apis/getGroupMembersInfo.cjs +29 -0
  402. package/dist/cjs/apis/getHiddenConversations.cjs +28 -0
  403. package/dist/cjs/apis/getLabels.cjs +33 -0
  404. package/dist/cjs/apis/getListBank.cjs +25 -0
  405. package/dist/cjs/apis/getListBankAccount.cjs +32 -0
  406. package/dist/cjs/apis/getListBoard.cjs +59 -0
  407. package/dist/cjs/apis/getListDevice.cjs +27 -0
  408. package/dist/cjs/apis/getListReminder.cjs +61 -0
  409. package/dist/cjs/apis/getMultiUsersByPhones.cjs +53 -0
  410. package/dist/cjs/apis/getMute.cjs +27 -0
  411. package/dist/cjs/apis/getOwnId.cjs +9 -0
  412. package/dist/cjs/apis/getPendingGroupMembers.cjs +32 -0
  413. package/dist/cjs/apis/getPinConversations.cjs +27 -0
  414. package/dist/cjs/apis/getPollDetail.cjs +35 -0
  415. package/dist/cjs/apis/getProductCatalogList.cjs +38 -0
  416. package/dist/cjs/apis/getQR.cjs +34 -0
  417. package/dist/cjs/apis/getQuickMessageList.cjs +29 -0
  418. package/dist/cjs/apis/getRelatedFriendGroup.cjs +35 -0
  419. package/dist/cjs/apis/getReminder.cjs +30 -0
  420. package/dist/cjs/apis/getReminderResponses.cjs +29 -0
  421. package/dist/cjs/apis/getSentFriendRequest.cjs +29 -0
  422. package/dist/cjs/apis/getSettings.cjs +25 -0
  423. package/dist/cjs/apis/getStickerCategoryDetail.cjs +29 -0
  424. package/dist/cjs/apis/getStickers.cjs +45 -0
  425. package/dist/cjs/apis/getStickersDetail.cjs +45 -0
  426. package/dist/cjs/apis/getUnreadMark.cjs +35 -0
  427. package/dist/cjs/apis/getUserInfo.cjs +58 -0
  428. package/dist/cjs/apis/inviteUserToGroups.cjs +35 -0
  429. package/dist/cjs/apis/joinGroupInviteBox.cjs +30 -0
  430. package/dist/cjs/apis/joinGroupLink.cjs +32 -0
  431. package/dist/cjs/apis/keepAlive.cjs +27 -0
  432. package/dist/cjs/apis/lastOnline.cjs +31 -0
  433. package/dist/cjs/apis/leaveGroup.cjs +38 -0
  434. package/dist/cjs/apis/listen.cjs +440 -0
  435. package/dist/cjs/apis/lockPoll.cjs +33 -0
  436. package/dist/cjs/apis/login.cjs +102 -0
  437. package/dist/cjs/apis/loginQR.cjs +370 -0
  438. package/dist/cjs/apis/lostFocus.cjs +28 -0
  439. package/dist/cjs/apis/parseLink.cjs +32 -0
  440. package/dist/cjs/apis/registerCatalog.cjs +32 -0
  441. package/dist/cjs/apis/rejectFriendRequest.cjs +32 -0
  442. package/dist/cjs/apis/removeFriend.cjs +33 -0
  443. package/dist/cjs/apis/removeFriendAlias.cjs +29 -0
  444. package/dist/cjs/apis/removeGroupBlockedMember.cjs +33 -0
  445. package/dist/cjs/apis/removeGroupDeputy.cjs +35 -0
  446. package/dist/cjs/apis/removeQuickMessage.cjs +32 -0
  447. package/dist/cjs/apis/removeReminder.cjs +54 -0
  448. package/dist/cjs/apis/removeUnreadMark.cjs +64 -0
  449. package/dist/cjs/apis/removeUserFromGroup.cjs +39 -0
  450. package/dist/cjs/apis/resetHiddenConversPin.cjs +25 -0
  451. package/dist/cjs/apis/reuseAvatar.cjs +31 -0
  452. package/dist/cjs/apis/reviewPendingMemberRequest.cjs +43 -0
  453. package/dist/cjs/apis/scanURL.cjs +33 -0
  454. package/dist/cjs/apis/searchSticker.cjs +33 -0
  455. package/dist/cjs/apis/sendBankCard.cjs +51 -0
  456. package/dist/cjs/apis/sendCard.cjs +73 -0
  457. package/dist/cjs/apis/sendDeliveredEvent.cjs +69 -0
  458. package/dist/cjs/apis/sendFriendRequest.cjs +44 -0
  459. package/dist/cjs/apis/sendLink.cjs +75 -0
  460. package/dist/cjs/apis/sendMessage.cjs +466 -0
  461. package/dist/cjs/apis/sendReport.cjs +67 -0
  462. package/dist/cjs/apis/sendSeenEvent.cjs +77 -0
  463. package/dist/cjs/apis/sendSticker.cjs +71 -0
  464. package/dist/cjs/apis/sendTypingEvent.cjs +47 -0
  465. package/dist/cjs/apis/sendVideo.cjs +132 -0
  466. package/dist/cjs/apis/sendVoice.cjs +87 -0
  467. package/dist/cjs/apis/setHiddenConversations.cjs +53 -0
  468. package/dist/cjs/apis/setMute.cjs +81 -0
  469. package/dist/cjs/apis/setPinnedConversations.cjs +48 -0
  470. package/dist/cjs/apis/sharePoll.cjs +33 -0
  471. package/dist/cjs/apis/unblockUser.cjs +33 -0
  472. package/dist/cjs/apis/undo.cjs +56 -0
  473. package/dist/cjs/apis/undoFriendRequest.cjs +32 -0
  474. package/dist/cjs/apis/updateActiveStatus.cjs +32 -0
  475. package/dist/cjs/apis/updateArchivedChatList.cjs +39 -0
  476. package/dist/cjs/apis/updateAutoDeleteChat.cjs +54 -0
  477. package/dist/cjs/apis/updateAutoReply.cjs +43 -0
  478. package/dist/cjs/apis/updateBankAccount.cjs +36 -0
  479. package/dist/cjs/apis/updateCatalog.cjs +35 -0
  480. package/dist/cjs/apis/updateGroupSettings.cjs +48 -0
  481. package/dist/cjs/apis/updateHiddenConversPin.cjs +35 -0
  482. package/dist/cjs/apis/updateLabels.cjs +39 -0
  483. package/dist/cjs/apis/updateLang.cjs +35 -0
  484. package/dist/cjs/apis/updateProductCatalog.cjs +56 -0
  485. package/dist/cjs/apis/updateProfile.cjs +48 -0
  486. package/dist/cjs/apis/updateProfileBio.cjs +32 -0
  487. package/dist/cjs/apis/updateQuickMessage.cjs +66 -0
  488. package/dist/cjs/apis/updateSettings.cjs +95 -0
  489. package/dist/cjs/apis/upgradeGroupToCommunity.cjs +32 -0
  490. package/dist/cjs/apis/uploadAttachment.cjs +211 -0
  491. package/dist/cjs/apis/uploadProductPhoto.cjs +55 -0
  492. package/dist/cjs/apis/votePoll.cjs +34 -0
  493. package/dist/cjs/apis.cjs +322 -0
  494. package/dist/cjs/context.cjs +34 -0
  495. package/dist/cjs/index.cjs +159 -0
  496. package/dist/cjs/models/AutoReply.cjs +9 -0
  497. package/dist/cjs/models/Bank.cjs +263 -0
  498. package/dist/cjs/models/Board.cjs +8 -0
  499. package/dist/cjs/models/DeliveredMessage.cjs +23 -0
  500. package/dist/cjs/models/Enum.cjs +27 -0
  501. package/dist/cjs/models/FriendEvent.cjs +87 -0
  502. package/dist/cjs/models/Group.cjs +13 -0
  503. package/dist/cjs/models/GroupEvent.cjs +94 -0
  504. package/dist/cjs/models/Message.cjs +35 -0
  505. package/dist/cjs/models/Reaction.cjs +74 -0
  506. package/dist/cjs/models/Reminder.cjs +9 -0
  507. package/dist/cjs/models/SeenMessage.cjs +23 -0
  508. package/dist/cjs/models/Typing.cjs +23 -0
  509. package/dist/cjs/models/Undo.cjs +16 -0
  510. package/dist/cjs/models/ZBusiness.cjs +39 -0
  511. package/dist/cjs/update.cjs +34 -0
  512. package/dist/cjs/utils.cjs +703 -0
  513. package/dist/cjs/zalo.cjs +112 -0
  514. package/dist/context.d.ts +179 -0
  515. package/dist/context.js +28 -0
  516. package/dist/index.d.ts +166 -0
  517. package/dist/index.js +14 -0
  518. package/dist/models/Attachment.d.ts +9 -0
  519. package/dist/models/Attachment.js +1 -0
  520. package/dist/models/AutoReply.d.ts +20 -0
  521. package/dist/models/AutoReply.js +7 -0
  522. package/dist/models/Bank.d.ts +291 -0
  523. package/dist/models/Bank.js +262 -0
  524. package/dist/models/Board.d.ts +60 -0
  525. package/dist/models/Board.js +6 -0
  526. package/dist/models/Catalog.d.ts +16 -0
  527. package/dist/models/Catalog.js +1 -0
  528. package/dist/models/DeliveredMessage.d.ts +27 -0
  529. package/dist/models/DeliveredMessage.js +17 -0
  530. package/dist/models/Enum.d.ts +21 -0
  531. package/dist/models/Enum.js +25 -0
  532. package/dist/models/FriendEvent.d.ts +107 -0
  533. package/dist/models/FriendEvent.js +83 -0
  534. package/dist/models/Group.d.ts +125 -0
  535. package/dist/models/Group.js +11 -0
  536. package/dist/models/GroupEvent.d.ts +178 -0
  537. package/dist/models/GroupEvent.js +90 -0
  538. package/dist/models/Label.d.ts +10 -0
  539. package/dist/models/Label.js +1 -0
  540. package/dist/models/Message.d.ts +91 -0
  541. package/dist/models/Message.js +29 -0
  542. package/dist/models/ProductCatalog.d.ts +17 -0
  543. package/dist/models/ProductCatalog.js +1 -0
  544. package/dist/models/QuickMessage.d.ts +25 -0
  545. package/dist/models/QuickMessage.js +1 -0
  546. package/dist/models/Reaction.d.ts +85 -0
  547. package/dist/models/Reaction.js +70 -0
  548. package/dist/models/Reminder.d.ts +51 -0
  549. package/dist/models/Reminder.js +7 -0
  550. package/dist/models/SeenMessage.d.ts +26 -0
  551. package/dist/models/SeenMessage.js +17 -0
  552. package/dist/models/Sticker.d.ts +27 -0
  553. package/dist/models/Sticker.js +1 -0
  554. package/dist/models/Typing.d.ts +24 -0
  555. package/dist/models/Typing.js +17 -0
  556. package/dist/models/Undo.d.ts +34 -0
  557. package/dist/models/Undo.js +12 -0
  558. package/dist/models/User.d.ts +70 -0
  559. package/dist/models/User.js +1 -0
  560. package/dist/models/ZBusiness.d.ts +22 -0
  561. package/dist/models/ZBusiness.js +35 -0
  562. package/dist/models/index.d.ts +22 -0
  563. package/dist/models/index.js +22 -0
  564. package/dist/update.d.ts +2 -0
  565. package/dist/update.js +29 -0
  566. package/dist/utils.d.ts +167 -0
  567. package/dist/utils.js +719 -0
  568. package/dist/zalo.d.ts +41 -0
  569. package/dist/zalo.js +107 -0
  570. package/index.d.ts +2 -0
  571. package/package.json +85 -0
@@ -0,0 +1,294 @@
1
+ import { ZaloApiError } from "../Errors/ZaloApiError.js";
2
+ import { ThreadType, Reactions } from "../models/index.js";
3
+ import { apiFactory } from "../utils.js";
4
+ export const addReactionFactory = apiFactory()((api, ctx, utils) => {
5
+ const serviceURLs = {
6
+ [ThreadType.User]: utils.makeURL(`${api.zpwServiceMap.reaction[0]}/api/message/reaction`),
7
+ [ThreadType.Group]: utils.makeURL(`${api.zpwServiceMap.reaction[0]}/api/group/reaction`),
8
+ };
9
+ /**
10
+ * Add reaction to a message
11
+ *
12
+ * @param icon Reaction icon
13
+ * @param dest Destination data including message IDs and thread information
14
+ *
15
+ * @throws {ZaloApiError}
16
+ */
17
+ return async function addReaction(icon, dest) {
18
+ const serviceURL = serviceURLs[dest.type];
19
+ let rType, source;
20
+ if (typeof icon == "object") {
21
+ rType = icon.rType;
22
+ source = icon.source;
23
+ }
24
+ else
25
+ switch (icon) {
26
+ case Reactions.HAHA:
27
+ rType = 0;
28
+ source = 6;
29
+ break;
30
+ case Reactions.LIKE:
31
+ rType = 3;
32
+ source = 6;
33
+ break;
34
+ case Reactions.HEART:
35
+ rType = 5;
36
+ source = 6;
37
+ break;
38
+ case Reactions.WOW:
39
+ rType = 32;
40
+ source = 6;
41
+ break;
42
+ case Reactions.CRY:
43
+ rType = 2;
44
+ source = 6;
45
+ break;
46
+ case Reactions.ANGRY:
47
+ rType = 20;
48
+ source = 6;
49
+ break;
50
+ case Reactions.KISS:
51
+ rType = 8;
52
+ source = 6;
53
+ break;
54
+ case Reactions.TEARS_OF_JOY:
55
+ rType = 7;
56
+ source = 6;
57
+ break;
58
+ case Reactions.SHIT:
59
+ rType = 66;
60
+ source = 6;
61
+ break;
62
+ case Reactions.ROSE:
63
+ rType = 120;
64
+ source = 6;
65
+ break;
66
+ case Reactions.BROKEN_HEART:
67
+ rType = 65;
68
+ source = 6;
69
+ break;
70
+ case Reactions.DISLIKE:
71
+ rType = 4;
72
+ source = 6;
73
+ break;
74
+ case Reactions.LOVE:
75
+ rType = 29;
76
+ source = 6;
77
+ break;
78
+ case Reactions.CONFUSED:
79
+ rType = 51;
80
+ source = 6;
81
+ break;
82
+ case Reactions.WINK:
83
+ rType = 45;
84
+ source = 6;
85
+ break;
86
+ case Reactions.FADE:
87
+ rType = 121;
88
+ source = 6;
89
+ break;
90
+ case Reactions.SUN:
91
+ rType = 67;
92
+ source = 6;
93
+ break;
94
+ case Reactions.BIRTHDAY:
95
+ rType = 126;
96
+ source = 6;
97
+ break;
98
+ case Reactions.BOMB:
99
+ rType = 127;
100
+ source = 6;
101
+ break;
102
+ case Reactions.OK:
103
+ rType = 68;
104
+ source = 6;
105
+ break;
106
+ case Reactions.PEACE:
107
+ rType = 69;
108
+ source = 6;
109
+ break;
110
+ case Reactions.THANKS:
111
+ rType = 70;
112
+ source = 6;
113
+ break;
114
+ case Reactions.PUNCH:
115
+ rType = 71;
116
+ source = 6;
117
+ break;
118
+ case Reactions.SHARE:
119
+ rType = 72;
120
+ source = 6;
121
+ break;
122
+ case Reactions.PRAY:
123
+ rType = 73;
124
+ source = 6;
125
+ break;
126
+ case Reactions.NO:
127
+ rType = 131;
128
+ source = 6;
129
+ break;
130
+ case Reactions.BAD:
131
+ rType = 132;
132
+ source = 6;
133
+ break;
134
+ case Reactions.LOVE_YOU:
135
+ rType = 133;
136
+ source = 6;
137
+ break;
138
+ case Reactions.SAD:
139
+ rType = 1;
140
+ source = 6;
141
+ break;
142
+ case Reactions.VERY_SAD:
143
+ rType = 16;
144
+ source = 6;
145
+ break;
146
+ case Reactions.COOL:
147
+ rType = 21;
148
+ source = 6;
149
+ break;
150
+ case Reactions.NERD:
151
+ rType = 22;
152
+ source = 6;
153
+ break;
154
+ case Reactions.BIG_SMILE:
155
+ rType = 23;
156
+ source = 6;
157
+ break;
158
+ case Reactions.SUNGLASSES:
159
+ rType = 26;
160
+ source = 6;
161
+ break;
162
+ case Reactions.NEUTRAL:
163
+ rType = 30;
164
+ source = 6;
165
+ break;
166
+ case Reactions.SAD_FACE:
167
+ rType = 35;
168
+ source = 6;
169
+ break;
170
+ case Reactions.BYE:
171
+ rType = 36;
172
+ source = 6;
173
+ break;
174
+ case Reactions.SLEEPY:
175
+ rType = 38;
176
+ source = 6;
177
+ break;
178
+ case Reactions.WIPE:
179
+ rType = 39;
180
+ source = 6;
181
+ break;
182
+ case Reactions.DIG:
183
+ rType = 42;
184
+ source = 6;
185
+ break;
186
+ case Reactions.ANGUISH:
187
+ rType = 44;
188
+ source = 6;
189
+ break;
190
+ case Reactions.HANDCLAP:
191
+ rType = 46;
192
+ source = 6;
193
+ break;
194
+ case Reactions.ANGRY_FACE:
195
+ rType = 47;
196
+ source = 6;
197
+ break;
198
+ case Reactions.F_CHAIR:
199
+ rType = 48;
200
+ source = 6;
201
+ break;
202
+ case Reactions.L_CHAIR:
203
+ rType = 49;
204
+ source = 6;
205
+ break;
206
+ case Reactions.R_CHAIR:
207
+ rType = 50;
208
+ source = 6;
209
+ break;
210
+ case Reactions.SILENT:
211
+ rType = 52;
212
+ source = 6;
213
+ break;
214
+ case Reactions.SURPRISE:
215
+ rType = 53;
216
+ source = 6;
217
+ break;
218
+ case Reactions.EMBARRASSED:
219
+ rType = 54;
220
+ source = 6;
221
+ break;
222
+ case Reactions.AFRAID:
223
+ rType = 60;
224
+ source = 6;
225
+ break;
226
+ case Reactions.SAD2:
227
+ rType = 61;
228
+ source = 6;
229
+ break;
230
+ case Reactions.BIG_LAUGH:
231
+ rType = 62;
232
+ source = 6;
233
+ break;
234
+ case Reactions.RICH:
235
+ rType = 63;
236
+ source = 6;
237
+ break;
238
+ case Reactions.BEER:
239
+ rType = 99;
240
+ source = 6;
241
+ break;
242
+ default:
243
+ rType = -1;
244
+ source = 6;
245
+ }
246
+ const rIcon = typeof icon == "object" ? icon.icon : icon;
247
+ if (rType == undefined || source == undefined || rIcon == undefined) {
248
+ throw new ZaloApiError("Invalid reaction");
249
+ }
250
+ const params = {
251
+ react_list: [
252
+ {
253
+ message: JSON.stringify({
254
+ rMsg: [
255
+ {
256
+ gMsgID: parseInt(dest.data.msgId),
257
+ cMsgID: parseInt(dest.data.cliMsgId),
258
+ msgType: 1,
259
+ },
260
+ ],
261
+ rIcon,
262
+ rType,
263
+ source,
264
+ }),
265
+ clientId: Date.now(),
266
+ },
267
+ ],
268
+ };
269
+ if (dest.type == ThreadType.User) {
270
+ params.toid = dest.threadId;
271
+ }
272
+ else {
273
+ params.grid = dest.threadId;
274
+ params.imei = ctx.imei;
275
+ }
276
+ const encryptedParams = utils.encodeAES(JSON.stringify(params));
277
+ if (!encryptedParams)
278
+ throw new ZaloApiError("Failed to encrypt message");
279
+ const response = await utils.request(serviceURL, {
280
+ method: "POST",
281
+ body: new URLSearchParams({
282
+ params: encryptedParams,
283
+ }),
284
+ });
285
+ return utils.resolve(response, (result) => {
286
+ if (typeof result.data.msgIds === "string") {
287
+ return {
288
+ msgIds: JSON.parse(result.data.msgIds),
289
+ };
290
+ }
291
+ return result.data;
292
+ });
293
+ };
294
+ });
@@ -0,0 +1,8 @@
1
+ import { ThreadType } from "../models/index.js";
2
+ export type AddUnreadMarkResponse = {
3
+ data: {
4
+ updateId: number;
5
+ };
6
+ status: number;
7
+ };
8
+ export declare const addUnreadMarkFactory: (ctx: import("../context.js").ContextBase, api: import("../apis.js").API) => (threadId: string, type?: ThreadType) => Promise<AddUnreadMarkResponse>;
@@ -0,0 +1,52 @@
1
+ import { ZaloApiError } from "../Errors/ZaloApiError.js";
2
+ import { ThreadType } from "../models/index.js";
3
+ import { apiFactory } from "../utils.js";
4
+ export const addUnreadMarkFactory = apiFactory()((api, ctx, utils) => {
5
+ const serviceURL = utils.makeURL(`${api.zpwServiceMap.conversation[0]}/api/conv/addUnreadMark`);
6
+ /**
7
+ * Add unread mark to conversation
8
+ *
9
+ * @param threadId Thread ID
10
+ * @param type Thread type (User/Group)
11
+ *
12
+ * @throws {ZaloApiError}
13
+ */
14
+ return async function addUnreadMark(threadId, type = ThreadType.User) {
15
+ const timestamp = Date.now();
16
+ const timestampString = timestamp.toString();
17
+ const isGroup = type === ThreadType.Group;
18
+ const requestParams = {
19
+ param: JSON.stringify({
20
+ [isGroup ? "convsGroup" : "convsUser"]: [
21
+ {
22
+ id: threadId,
23
+ cliMsgId: timestampString,
24
+ fromUid: "0",
25
+ ts: timestamp,
26
+ },
27
+ ],
28
+ [isGroup ? "convsUser" : "convsGroup"]: [],
29
+ imei: ctx.imei,
30
+ }),
31
+ };
32
+ const encryptedParams = utils.encodeAES(JSON.stringify(requestParams));
33
+ if (!encryptedParams)
34
+ throw new ZaloApiError("Failed to encrypt params");
35
+ const response = await utils.request(serviceURL, {
36
+ method: "POST",
37
+ body: new URLSearchParams({
38
+ params: encryptedParams,
39
+ }),
40
+ });
41
+ return utils.resolve(response, (result) => {
42
+ const data = result.data;
43
+ if (typeof data.data === "string") {
44
+ return {
45
+ data: JSON.parse(data.data),
46
+ status: data.status,
47
+ };
48
+ }
49
+ return result.data;
50
+ });
51
+ };
52
+ });
@@ -0,0 +1,5 @@
1
+ export type AddUserToGroupResponse = {
2
+ errorMembers: string[];
3
+ error_data: Record<string, string[]>;
4
+ };
5
+ export declare const addUserToGroupFactory: (ctx: import("../context.js").ContextBase, api: import("../apis.js").API) => (memberId: string | string[], groupId: string) => Promise<AddUserToGroupResponse>;
@@ -0,0 +1,34 @@
1
+ import { ZaloApiError } from "../Errors/ZaloApiError.js";
2
+ import { apiFactory } from "../utils.js";
3
+ export const addUserToGroupFactory = apiFactory()((api, ctx, utils) => {
4
+ const serviceURL = utils.makeURL(`${api.zpwServiceMap.group[0]}/api/group/invite/v2`);
5
+ /**
6
+ * Add user to existing group
7
+ *
8
+ * @param memberId User ID or list of user IDs to add
9
+ * @param groupId Group ID
10
+ *
11
+ * @throws {ZaloApiError}
12
+ */
13
+ return async function addUserToGroup(memberId, groupId) {
14
+ if (!Array.isArray(memberId))
15
+ memberId = [memberId];
16
+ const params = {
17
+ grid: groupId,
18
+ members: memberId,
19
+ memberTypes: memberId.map(() => -1),
20
+ imei: ctx.imei,
21
+ clientLang: ctx.language,
22
+ };
23
+ const encryptedParams = utils.encodeAES(JSON.stringify(params));
24
+ if (!encryptedParams)
25
+ throw new ZaloApiError("Failed to encrypt params");
26
+ const response = await utils.request(serviceURL, {
27
+ method: "POST",
28
+ body: new URLSearchParams({
29
+ params: encryptedParams,
30
+ }),
31
+ });
32
+ return utils.resolve(response);
33
+ };
34
+ });
@@ -0,0 +1,2 @@
1
+ export type BlockUserResponse = "";
2
+ export declare const blockUserFactory: (ctx: import("../context.js").ContextBase, api: import("../apis.js").API) => (userId: string) => Promise<"">;
@@ -0,0 +1,28 @@
1
+ import { ZaloApiError } from "../Errors/ZaloApiError.js";
2
+ import { apiFactory } from "../utils.js";
3
+ export const blockUserFactory = apiFactory()((api, ctx, utils) => {
4
+ const serviceURL = utils.makeURL(`${api.zpwServiceMap.friend[0]}/api/friend/block`);
5
+ /**
6
+ * Block a User
7
+ *
8
+ * @param userId The ID of the User to block
9
+ *
10
+ * @throws {ZaloApiError}
11
+ */
12
+ return async function blockUser(userId) {
13
+ const params = {
14
+ fid: userId,
15
+ imei: ctx.imei,
16
+ };
17
+ const encryptedParams = utils.encodeAES(JSON.stringify(params));
18
+ if (!encryptedParams)
19
+ throw new ZaloApiError("Failed to encrypt params");
20
+ const response = await utils.request(serviceURL, {
21
+ method: "POST",
22
+ body: new URLSearchParams({
23
+ params: encryptedParams,
24
+ }),
25
+ });
26
+ return utils.resolve(response);
27
+ };
28
+ });
@@ -0,0 +1,2 @@
1
+ export type BlockViewFeedResponse = "";
2
+ export declare const blockViewFeedFactory: (ctx: import("../context.js").ContextBase, api: import("../apis.js").API) => (isBlockFeed: boolean, userId: string) => Promise<"">;
@@ -0,0 +1,30 @@
1
+ import { ZaloApiError } from "../Errors/ZaloApiError.js";
2
+ import { apiFactory } from "../utils.js";
3
+ export const blockViewFeedFactory = apiFactory()((api, ctx, utils) => {
4
+ const serviceURL = utils.makeURL(`${api.zpwServiceMap.friend[0]}/api/friend/feed/block`);
5
+ /**
6
+ * Block/Unblock friend view feed by ID
7
+ *
8
+ * @param isBlockFeed Boolean to block/unblock view feed
9
+ * @param userId User ID to block/unblock view feed
10
+ *
11
+ * @throws {ZaloApiError}
12
+ */
13
+ return async function blockViewFeed(isBlockFeed, userId) {
14
+ const params = {
15
+ fid: userId,
16
+ isBlockFeed: isBlockFeed ? 1 : 0,
17
+ imei: ctx.imei,
18
+ };
19
+ const encryptedParams = utils.encodeAES(JSON.stringify(params));
20
+ if (!encryptedParams)
21
+ throw new 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
+ });
@@ -0,0 +1,3 @@
1
+ import type { AttachmentSource } from "../models/index.js";
2
+ export type ChangeAccountAvatarResponse = "";
3
+ export declare const changeAccountAvatarFactory: (ctx: import("../context.js").ContextBase, api: import("../apis.js").API) => (avatarSource: AttachmentSource) => Promise<"">;
@@ -0,0 +1,52 @@
1
+ import FormData from "form-data";
2
+ import fs from "node:fs";
3
+ import { ZaloApiError } from "../Errors/ZaloApiError.js";
4
+ import { apiFactory, formatTime, getImageMetaData } from "../utils.js";
5
+ export const changeAccountAvatarFactory = apiFactory()((api, ctx, utils) => {
6
+ const serviceURL = utils.makeURL(`${api.zpwServiceMap.file[0]}/api/profile/upavatar`);
7
+ /**
8
+ * Change account avatar
9
+ *
10
+ * @param avatarSource Attachment source, can be a file path or an Attachment object
11
+ *
12
+ * @throws {ZaloApiError | ZaloApiMissingImageMetadataGetter}
13
+ */
14
+ return async function changeAccountAvatar(avatarSource) {
15
+ const isSourceFilePath = typeof avatarSource == "string";
16
+ const imageMetaData = isSourceFilePath ? await getImageMetaData(ctx, avatarSource) : avatarSource.metadata;
17
+ const fileSize = imageMetaData.totalSize || 0;
18
+ const params = {
19
+ avatarSize: 120,
20
+ clientId: String(ctx.uid + formatTime("%H:%M %d/%m/%Y")),
21
+ language: ctx.language,
22
+ metaData: JSON.stringify({
23
+ origin: {
24
+ width: imageMetaData.width || 1080,
25
+ height: imageMetaData.height || 1080,
26
+ },
27
+ processed: {
28
+ width: imageMetaData.width || 1080,
29
+ height: imageMetaData.height || 1080,
30
+ size: fileSize,
31
+ },
32
+ }),
33
+ };
34
+ const avatarData = isSourceFilePath ? fs.readFileSync(avatarSource) : avatarSource.data;
35
+ const formData = new FormData();
36
+ formData.append("fileContent", avatarData, {
37
+ filename: "blob",
38
+ contentType: "image/jpeg",
39
+ });
40
+ const encryptedParams = utils.encodeAES(JSON.stringify(params));
41
+ if (!encryptedParams)
42
+ throw new ZaloApiError("Failed to encrypt params");
43
+ const response = await utils.request(utils.makeURL(serviceURL, {
44
+ params: encryptedParams,
45
+ }), {
46
+ method: "POST",
47
+ headers: formData.getHeaders(),
48
+ body: formData.getBuffer(),
49
+ });
50
+ return utils.resolve(response);
51
+ };
52
+ });
@@ -0,0 +1,2 @@
1
+ export type ChangeFriendAliasResponse = "";
2
+ export declare const changeFriendAliasFactory: (ctx: import("../context.js").ContextBase, api: import("../apis.js").API) => (alias: string, friendId: string) => Promise<"">;
@@ -0,0 +1,27 @@
1
+ import { ZaloApiError } from "../Errors/ZaloApiError.js";
2
+ import { apiFactory } from "../utils.js";
3
+ export const changeFriendAliasFactory = apiFactory()((api, ctx, utils) => {
4
+ const serviceURL = utils.makeURL(`${api.zpwServiceMap.alias[0]}/api/alias/update`);
5
+ /**
6
+ * Change friend's alias
7
+ *
8
+ * @param alias new alias (nickname - bietdanh)
9
+ * @param friendId friend id
10
+ *
11
+ * @throws {ZaloApiError}
12
+ */
13
+ return async function changeFriendAlias(alias, friendId) {
14
+ const params = {
15
+ friendId: friendId,
16
+ alias: alias,
17
+ imei: ctx.imei,
18
+ };
19
+ const encryptedParams = utils.encodeAES(JSON.stringify(params));
20
+ if (!encryptedParams)
21
+ throw new ZaloApiError("Failed to encrypt params");
22
+ const response = await utils.request(utils.makeURL(serviceURL, { params: encryptedParams }), {
23
+ method: "GET",
24
+ });
25
+ return utils.resolve(response);
26
+ };
27
+ });
@@ -0,0 +1,3 @@
1
+ import type { AttachmentSource } from "../models/index.js";
2
+ export type ChangeGroupAvatarResponse = "";
3
+ export declare const changeGroupAvatarFactory: (ctx: import("../context.js").ContextBase, api: import("../apis.js").API) => (avatarSource: AttachmentSource, groupId: string) => Promise<"">;
@@ -0,0 +1,44 @@
1
+ import FormData from "form-data";
2
+ import fs from "node:fs";
3
+ import { ZaloApiError } from "../Errors/ZaloApiError.js";
4
+ import { apiFactory, getFullTimeFromMillisecond, getImageMetaData } from "../utils.js";
5
+ export const changeGroupAvatarFactory = apiFactory()((api, ctx, utils) => {
6
+ const serviceURL = utils.makeURL(`${api.zpwServiceMap.file[0]}/api/group/upavatar`);
7
+ /**
8
+ * Change group avatar
9
+ *
10
+ * @param avatarSource Attachment source, can be a file path or an Attachment object
11
+ * @param groupId Group ID
12
+ *
13
+ * @throws {ZaloApiError | ZaloApiMissingImageMetadataGetter}
14
+ */
15
+ return async function changeGroupAvatar(avatarSource, groupId) {
16
+ const params = {
17
+ grid: groupId,
18
+ avatarSize: 120,
19
+ clientId: `g${groupId}${getFullTimeFromMillisecond(new Date().getTime())}`,
20
+ imei: ctx.imei,
21
+ };
22
+ const isSourceFilePath = typeof avatarSource == "string";
23
+ const imageMetaData = isSourceFilePath ? await getImageMetaData(ctx, avatarSource) : avatarSource.metadata;
24
+ params.originWidth = imageMetaData.width || 1080;
25
+ params.originHeight = imageMetaData.height || 1080;
26
+ const avatarData = isSourceFilePath ? fs.readFileSync(avatarSource) : avatarSource.data;
27
+ const formData = new FormData();
28
+ formData.append("fileContent", avatarData, {
29
+ filename: "blob",
30
+ contentType: "image/jpeg",
31
+ });
32
+ const encryptedParams = utils.encodeAES(JSON.stringify(params));
33
+ if (!encryptedParams)
34
+ throw new ZaloApiError("Failed to encrypt params");
35
+ const response = await utils.request(utils.makeURL(serviceURL, {
36
+ params: encryptedParams,
37
+ }), {
38
+ method: "POST",
39
+ headers: formData.getHeaders(),
40
+ body: formData.getBuffer(),
41
+ });
42
+ return utils.resolve(response);
43
+ };
44
+ });
@@ -0,0 +1,4 @@
1
+ export type ChangeGroupNameResponse = {
2
+ status: number;
3
+ };
4
+ export declare const changeGroupNameFactory: (ctx: import("../context.js").ContextBase, api: import("../apis.js").API) => (name: string, groupId: string) => Promise<ChangeGroupNameResponse>;
@@ -0,0 +1,32 @@
1
+ import { ZaloApiError } from "../Errors/ZaloApiError.js";
2
+ import { apiFactory } from "../utils.js";
3
+ export const changeGroupNameFactory = apiFactory()((api, ctx, utils) => {
4
+ const serviceURL = utils.makeURL(`${api.zpwServiceMap.group[0]}/api/group/updateinfo`);
5
+ /**
6
+ * Change group name
7
+ *
8
+ * @param name New group name
9
+ * @param groupId Group ID
10
+ *
11
+ * @throws {ZaloApiError}
12
+ */
13
+ return async function changeGroupName(name, groupId) {
14
+ if (name.length == 0)
15
+ name = Date.now().toString();
16
+ const params = {
17
+ grid: groupId,
18
+ gname: name,
19
+ imei: ctx.imei,
20
+ };
21
+ const encryptedParams = utils.encodeAES(JSON.stringify(params));
22
+ if (!encryptedParams)
23
+ throw new ZaloApiError("Failed to encrypt params");
24
+ const response = await utils.request(serviceURL, {
25
+ method: "POST",
26
+ body: new URLSearchParams({
27
+ params: encryptedParams,
28
+ }),
29
+ });
30
+ return utils.resolve(response);
31
+ };
32
+ });
@@ -0,0 +1,4 @@
1
+ export type ChangeGroupOwnerResponse = {
2
+ time: number;
3
+ };
4
+ export declare const changeGroupOwnerFactory: (ctx: import("../context.js").ContextBase, api: import("../apis.js").API) => (memberId: string, groupId: string) => Promise<ChangeGroupOwnerResponse>;
@@ -0,0 +1,30 @@
1
+ import { ZaloApiError } from "../Errors/ZaloApiError.js";
2
+ import { apiFactory } from "../utils.js";
3
+ export const changeGroupOwnerFactory = apiFactory()((api, ctx, utils) => {
4
+ const serviceURL = utils.makeURL(`${api.zpwServiceMap.group[0]}/api/group/change-owner`);
5
+ /**
6
+ * Change group owner
7
+ *
8
+ * @param memberId User Id of new group owner
9
+ * @param groupId Group Id
10
+ * @note Be careful when changing the key, as it will result in losing group admin rights
11
+ *
12
+ * @throws {ZaloApiError}
13
+ *
14
+ */
15
+ return async function changeGroupOwner(memberId, groupId) {
16
+ const params = {
17
+ grid: groupId,
18
+ newAdminId: memberId,
19
+ imei: ctx.imei,
20
+ language: ctx.language,
21
+ };
22
+ const encryptedParams = utils.encodeAES(JSON.stringify(params));
23
+ if (!encryptedParams)
24
+ throw new ZaloApiError("Failed to encrypt params");
25
+ const response = await utils.request(utils.makeURL(serviceURL, { params: encryptedParams }), {
26
+ method: "GET",
27
+ });
28
+ return utils.resolve(response);
29
+ };
30
+ });