@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,35 @@
1
+ 'use strict';
2
+
3
+ var ZaloApiError = require('../Errors/ZaloApiError.cjs');
4
+ var utils = require('../utils.cjs');
5
+
6
+ const blockViewFeedFactory = utils.apiFactory()((api, ctx, utils) => {
7
+ const serviceURL = utils.makeURL(`${api.zpwServiceMap.friend[0]}/api/friend/feed/block`);
8
+ /**
9
+ * Block/Unblock friend view feed by ID
10
+ *
11
+ * @param isBlockFeed Boolean to block/unblock view feed
12
+ * @param userId User ID to block/unblock view feed
13
+ *
14
+ * @throws {ZaloApiError}
15
+ */
16
+ return async function blockViewFeed(isBlockFeed, userId) {
17
+ const params = {
18
+ fid: userId,
19
+ isBlockFeed: isBlockFeed ? 1 : 0,
20
+ imei: ctx.imei,
21
+ };
22
+ const encryptedParams = utils.encodeAES(JSON.stringify(params));
23
+ if (!encryptedParams)
24
+ throw new ZaloApiError.ZaloApiError("Failed to encrypt params");
25
+ const response = await utils.request(serviceURL, {
26
+ method: "POST",
27
+ body: new URLSearchParams({
28
+ params: encryptedParams,
29
+ }),
30
+ });
31
+ return utils.resolve(response);
32
+ };
33
+ });
34
+
35
+ exports.blockViewFeedFactory = blockViewFeedFactory;
@@ -0,0 +1,57 @@
1
+ 'use strict';
2
+
3
+ var FormData = require('form-data');
4
+ var fs = require('node:fs');
5
+ var ZaloApiError = require('../Errors/ZaloApiError.cjs');
6
+ var utils = require('../utils.cjs');
7
+
8
+ const changeAccountAvatarFactory = utils.apiFactory()((api, ctx, utils$1) => {
9
+ const serviceURL = utils$1.makeURL(`${api.zpwServiceMap.file[0]}/api/profile/upavatar`);
10
+ /**
11
+ * Change account avatar
12
+ *
13
+ * @param avatarSource Attachment source, can be a file path or an Attachment object
14
+ *
15
+ * @throws {ZaloApiError | ZaloApiMissingImageMetadataGetter}
16
+ */
17
+ return async function changeAccountAvatar(avatarSource) {
18
+ const isSourceFilePath = typeof avatarSource == "string";
19
+ const imageMetaData = isSourceFilePath ? await utils.getImageMetaData(ctx, avatarSource) : avatarSource.metadata;
20
+ const fileSize = imageMetaData.totalSize || 0;
21
+ const params = {
22
+ avatarSize: 120,
23
+ clientId: String(ctx.uid + utils.formatTime("%H:%M %d/%m/%Y")),
24
+ language: ctx.language,
25
+ metaData: JSON.stringify({
26
+ origin: {
27
+ width: imageMetaData.width || 1080,
28
+ height: imageMetaData.height || 1080,
29
+ },
30
+ processed: {
31
+ width: imageMetaData.width || 1080,
32
+ height: imageMetaData.height || 1080,
33
+ size: fileSize,
34
+ },
35
+ }),
36
+ };
37
+ const avatarData = isSourceFilePath ? fs.readFileSync(avatarSource) : avatarSource.data;
38
+ const formData = new FormData();
39
+ formData.append("fileContent", avatarData, {
40
+ filename: "blob",
41
+ contentType: "image/jpeg",
42
+ });
43
+ const encryptedParams = utils$1.encodeAES(JSON.stringify(params));
44
+ if (!encryptedParams)
45
+ throw new ZaloApiError.ZaloApiError("Failed to encrypt params");
46
+ const response = await utils$1.request(utils$1.makeURL(serviceURL, {
47
+ params: encryptedParams,
48
+ }), {
49
+ method: "POST",
50
+ headers: formData.getHeaders(),
51
+ body: formData.getBuffer(),
52
+ });
53
+ return utils$1.resolve(response);
54
+ };
55
+ });
56
+
57
+ exports.changeAccountAvatarFactory = changeAccountAvatarFactory;
@@ -0,0 +1,32 @@
1
+ 'use strict';
2
+
3
+ var ZaloApiError = require('../Errors/ZaloApiError.cjs');
4
+ var utils = require('../utils.cjs');
5
+
6
+ const changeFriendAliasFactory = utils.apiFactory()((api, ctx, utils) => {
7
+ const serviceURL = utils.makeURL(`${api.zpwServiceMap.alias[0]}/api/alias/update`);
8
+ /**
9
+ * Change friend's alias
10
+ *
11
+ * @param alias new alias (nickname - bietdanh)
12
+ * @param friendId friend id
13
+ *
14
+ * @throws {ZaloApiError}
15
+ */
16
+ return async function changeFriendAlias(alias, friendId) {
17
+ const params = {
18
+ friendId: friendId,
19
+ alias: alias,
20
+ imei: ctx.imei,
21
+ };
22
+ const encryptedParams = utils.encodeAES(JSON.stringify(params));
23
+ if (!encryptedParams)
24
+ throw new ZaloApiError.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
+ });
31
+
32
+ exports.changeFriendAliasFactory = changeFriendAliasFactory;
@@ -0,0 +1,49 @@
1
+ 'use strict';
2
+
3
+ var FormData = require('form-data');
4
+ var fs = require('node:fs');
5
+ var ZaloApiError = require('../Errors/ZaloApiError.cjs');
6
+ var utils = require('../utils.cjs');
7
+
8
+ const changeGroupAvatarFactory = utils.apiFactory()((api, ctx, utils$1) => {
9
+ const serviceURL = utils$1.makeURL(`${api.zpwServiceMap.file[0]}/api/group/upavatar`);
10
+ /**
11
+ * Change group avatar
12
+ *
13
+ * @param avatarSource Attachment source, can be a file path or an Attachment object
14
+ * @param groupId Group ID
15
+ *
16
+ * @throws {ZaloApiError | ZaloApiMissingImageMetadataGetter}
17
+ */
18
+ return async function changeGroupAvatar(avatarSource, groupId) {
19
+ const params = {
20
+ grid: groupId,
21
+ avatarSize: 120,
22
+ clientId: `g${groupId}${utils.getFullTimeFromMillisecond(new Date().getTime())}`,
23
+ imei: ctx.imei,
24
+ };
25
+ const isSourceFilePath = typeof avatarSource == "string";
26
+ const imageMetaData = isSourceFilePath ? await utils.getImageMetaData(ctx, avatarSource) : avatarSource.metadata;
27
+ params.originWidth = imageMetaData.width || 1080;
28
+ params.originHeight = imageMetaData.height || 1080;
29
+ const avatarData = isSourceFilePath ? fs.readFileSync(avatarSource) : avatarSource.data;
30
+ const formData = new FormData();
31
+ formData.append("fileContent", avatarData, {
32
+ filename: "blob",
33
+ contentType: "image/jpeg",
34
+ });
35
+ const encryptedParams = utils$1.encodeAES(JSON.stringify(params));
36
+ if (!encryptedParams)
37
+ throw new ZaloApiError.ZaloApiError("Failed to encrypt params");
38
+ const response = await utils$1.request(utils$1.makeURL(serviceURL, {
39
+ params: encryptedParams,
40
+ }), {
41
+ method: "POST",
42
+ headers: formData.getHeaders(),
43
+ body: formData.getBuffer(),
44
+ });
45
+ return utils$1.resolve(response);
46
+ };
47
+ });
48
+
49
+ exports.changeGroupAvatarFactory = changeGroupAvatarFactory;
@@ -0,0 +1,37 @@
1
+ 'use strict';
2
+
3
+ var ZaloApiError = require('../Errors/ZaloApiError.cjs');
4
+ var utils = require('../utils.cjs');
5
+
6
+ const changeGroupNameFactory = utils.apiFactory()((api, ctx, utils) => {
7
+ const serviceURL = utils.makeURL(`${api.zpwServiceMap.group[0]}/api/group/updateinfo`);
8
+ /**
9
+ * Change group name
10
+ *
11
+ * @param name New group name
12
+ * @param groupId Group ID
13
+ *
14
+ * @throws {ZaloApiError}
15
+ */
16
+ return async function changeGroupName(name, groupId) {
17
+ if (name.length == 0)
18
+ name = Date.now().toString();
19
+ const params = {
20
+ grid: groupId,
21
+ gname: name,
22
+ imei: ctx.imei,
23
+ };
24
+ const encryptedParams = utils.encodeAES(JSON.stringify(params));
25
+ if (!encryptedParams)
26
+ throw new ZaloApiError.ZaloApiError("Failed to encrypt params");
27
+ const response = await utils.request(serviceURL, {
28
+ method: "POST",
29
+ body: new URLSearchParams({
30
+ params: encryptedParams,
31
+ }),
32
+ });
33
+ return utils.resolve(response);
34
+ };
35
+ });
36
+
37
+ exports.changeGroupNameFactory = changeGroupNameFactory;
@@ -0,0 +1,35 @@
1
+ 'use strict';
2
+
3
+ var ZaloApiError = require('../Errors/ZaloApiError.cjs');
4
+ var utils = require('../utils.cjs');
5
+
6
+ const changeGroupOwnerFactory = utils.apiFactory()((api, ctx, utils) => {
7
+ const serviceURL = utils.makeURL(`${api.zpwServiceMap.group[0]}/api/group/change-owner`);
8
+ /**
9
+ * Change group owner
10
+ *
11
+ * @param memberId User Id of new group owner
12
+ * @param groupId Group Id
13
+ * @note Be careful when changing the key, as it will result in losing group admin rights
14
+ *
15
+ * @throws {ZaloApiError}
16
+ *
17
+ */
18
+ return async function changeGroupOwner(memberId, groupId) {
19
+ const params = {
20
+ grid: groupId,
21
+ newAdminId: memberId,
22
+ imei: ctx.imei,
23
+ language: ctx.language,
24
+ };
25
+ const encryptedParams = utils.encodeAES(JSON.stringify(params));
26
+ if (!encryptedParams)
27
+ throw new ZaloApiError.ZaloApiError("Failed to encrypt params");
28
+ const response = await utils.request(utils.makeURL(serviceURL, { params: encryptedParams }), {
29
+ method: "GET",
30
+ });
31
+ return utils.resolve(response);
32
+ };
33
+ });
34
+
35
+ exports.changeGroupOwnerFactory = changeGroupOwnerFactory;
@@ -0,0 +1,42 @@
1
+ 'use strict';
2
+
3
+ var ZaloApiError = require('../Errors/ZaloApiError.cjs');
4
+ var utils = require('../utils.cjs');
5
+
6
+ const createAutoReplyFactory = utils.apiFactory()((api, ctx, utils) => {
7
+ const serviceURL = utils.makeURL(`${api.zpwServiceMap.auto_reply[0]}/api/autoreply/create`);
8
+ /**
9
+ * Create auto reply
10
+ *
11
+ * @param payload payload
12
+ *
13
+ * @note this API used for zBusiness
14
+ * @throws {ZaloApiError}
15
+ */
16
+ return async function createAutoReply(payload) {
17
+ const uids = Array.isArray(payload.uids) ? payload.uids : [payload.uids];
18
+ const resultUids = (payload.scope === 2 || payload.scope === 3) ? uids : [];
19
+ const params = {
20
+ cliLang: ctx.language,
21
+ enable: payload.isEnable,
22
+ content: payload.content,
23
+ startTime: payload.startTime,
24
+ endTime: payload.endTime,
25
+ recurrence: ["RRULE:FREQ=DAILY;"],
26
+ scope: payload.scope,
27
+ uids: resultUids,
28
+ };
29
+ const encryptedParams = utils.encodeAES(JSON.stringify(params));
30
+ if (!encryptedParams)
31
+ throw new ZaloApiError.ZaloApiError("Failed to encrypt params");
32
+ const response = await utils.request(serviceURL, {
33
+ method: "POST",
34
+ body: new URLSearchParams({
35
+ params: encryptedParams,
36
+ }),
37
+ });
38
+ return utils.resolve(response);
39
+ };
40
+ });
41
+
42
+ exports.createAutoReplyFactory = createAutoReplyFactory;
@@ -0,0 +1,34 @@
1
+ 'use strict';
2
+
3
+ var ZaloApiError = require('../Errors/ZaloApiError.cjs');
4
+ var utils = require('../utils.cjs');
5
+
6
+ const createCatalogFactory = utils.apiFactory()((api, _, utils) => {
7
+ const serviceURL = utils.makeURL(`${api.zpwServiceMap.catalog[0]}/api/prodcatalog/catalog/create`);
8
+ /**
9
+ * Create catalog?
10
+ *
11
+ * @param catalogName catalog name
12
+ *
13
+ * @note this API is used for zBusiness
14
+ * @throws {ZaloApiError}
15
+ */
16
+ return async function createCatalog(catalogName) {
17
+ const params = {
18
+ catalog_name: catalogName,
19
+ catalog_photo: "",
20
+ };
21
+ const encryptedParams = utils.encodeAES(JSON.stringify(params));
22
+ if (!encryptedParams)
23
+ throw new ZaloApiError.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
+ });
33
+
34
+ exports.createCatalogFactory = createCatalogFactory;
@@ -0,0 +1,48 @@
1
+ 'use strict';
2
+
3
+ var ZaloApiError = require('../Errors/ZaloApiError.cjs');
4
+ var utils = require('../utils.cjs');
5
+
6
+ const createGroupFactory = utils.apiFactory()((api, ctx, utils) => {
7
+ const serviceURL = utils.makeURL(`${api.zpwServiceMap.group[0]}/api/group/create/v2`);
8
+ /**
9
+ * Create a new group
10
+ *
11
+ * @param options Group options
12
+ *
13
+ * @throws {ZaloApiError}
14
+ */
15
+ return async function createGroup(options) {
16
+ if (options.members.length == 0)
17
+ throw new ZaloApiError.ZaloApiError("Group must have at least one member");
18
+ const params = {
19
+ clientId: Date.now(),
20
+ gname: String(Date.now()),
21
+ gdesc: null,
22
+ members: options.members,
23
+ membersTypes: options.members.map(() => -1),
24
+ nameChanged: 0,
25
+ createLink: 1,
26
+ clientLang: ctx.language,
27
+ imei: ctx.imei,
28
+ zsource: 601,
29
+ };
30
+ if (options.name && options.name.length > 0) {
31
+ params.gname = options.name;
32
+ params.nameChanged = 1;
33
+ }
34
+ const encryptedParams = utils.encodeAES(JSON.stringify(params));
35
+ if (!encryptedParams)
36
+ throw new ZaloApiError.ZaloApiError("Failed to encrypt message");
37
+ const response = await utils.request(utils.makeURL(serviceURL, { params: encryptedParams }), {
38
+ method: "POST",
39
+ });
40
+ const data = await utils.resolve(response);
41
+ options.avatarSource = options.avatarSource || options.avatarPath;
42
+ if (options.avatarSource)
43
+ await api.changeGroupAvatar(options.avatarSource, data.groupId).catch(utils.logger.error);
44
+ return data;
45
+ };
46
+ });
47
+
48
+ exports.createGroupFactory = createGroupFactory;
@@ -0,0 +1,52 @@
1
+ 'use strict';
2
+
3
+ var ZaloApiError = require('../Errors/ZaloApiError.cjs');
4
+ var utils = require('../utils.cjs');
5
+
6
+ const createNoteFactory = utils.apiFactory()((api, ctx, utils) => {
7
+ const serviceURL = utils.makeURL(`${api.zpwServiceMap.group_board[0]}/api/board/topic/createv2`);
8
+ /**
9
+ * Create a note in a group
10
+ *
11
+ * @param options note options
12
+ * @param options.title note title
13
+ * @param options.pinAct pin action (pin note)
14
+ * @param groupId group id
15
+ *
16
+ * @throws {ZaloApiError}
17
+ */
18
+ return async function createNote(options, groupId) {
19
+ const params = {
20
+ grid: groupId,
21
+ type: 0,
22
+ color: -16777216,
23
+ emoji: "",
24
+ startTime: -1,
25
+ duration: -1,
26
+ params: JSON.stringify({
27
+ title: options.title,
28
+ }),
29
+ repeat: 0,
30
+ src: 1,
31
+ imei: ctx.imei,
32
+ pinAct: options.pinAct ? 1 : 0,
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, (result) => {
44
+ if (typeof result.data.params === "string") {
45
+ result.data.params = JSON.parse(result.data.params);
46
+ }
47
+ return result.data;
48
+ });
49
+ };
50
+ });
51
+
52
+ exports.createNoteFactory = createNoteFactory;
@@ -0,0 +1,45 @@
1
+ 'use strict';
2
+
3
+ var ZaloApiError = require('../Errors/ZaloApiError.cjs');
4
+ var utils = require('../utils.cjs');
5
+
6
+ const createPollFactory = utils.apiFactory()((api, ctx, utils) => {
7
+ const serviceURL = utils.makeURL(`${api.zpwServiceMap.group[0]}/api/poll/create`);
8
+ /**
9
+ * Create a poll in a group.
10
+ *
11
+ * @param options Poll options
12
+ * @param groupId Group ID to create poll from
13
+ *
14
+ * @throws {ZaloApiError}
15
+ */
16
+ return async function createPoll(options, groupId) {
17
+ var _a;
18
+ const params = {
19
+ group_id: groupId,
20
+ question: options.question,
21
+ options: options.options,
22
+ expired_time: (_a = options.expiredTime) !== null && _a !== void 0 ? _a : 0,
23
+ pinAct: false,
24
+ allow_multi_choices: !!options.allowMultiChoices,
25
+ allow_add_new_option: !!options.allowAddNewOption,
26
+ is_hide_vote_preview: !!options.hideVotePreview,
27
+ is_anonymous: !!options.isAnonymous,
28
+ poll_type: 0,
29
+ src: 1,
30
+ imei: ctx.imei,
31
+ };
32
+ const encryptedParams = utils.encodeAES(JSON.stringify(params));
33
+ if (!encryptedParams)
34
+ throw new ZaloApiError.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);
42
+ };
43
+ });
44
+
45
+ exports.createPollFactory = createPollFactory;
@@ -0,0 +1,55 @@
1
+ 'use strict';
2
+
3
+ var ZaloApiError = require('../Errors/ZaloApiError.cjs');
4
+ var utils = require('../utils.cjs');
5
+
6
+ const createProductCatalogFactory = utils.apiFactory()((api, _, utils) => {
7
+ const serviceURL = utils.makeURL(`${api.zpwServiceMap.catalog[0]}/api/prodcatalog/product/create`);
8
+ /**
9
+ * Create product catalog?
10
+ *
11
+ * @param payload payload
12
+ *
13
+ * @note this API is used for zBussiness - Maximum 5 media files are supported
14
+ * @throws {ZaloApiError}
15
+ */
16
+ return async function createProductCatalog(payload) {
17
+ const productPhoto = payload.product_photos || [];
18
+ if (payload.files && payload.files.length == 0) {
19
+ if (payload.files.length > 5) {
20
+ throw new ZaloApiError.ZaloApiError("Maximum 5 media files are allowed");
21
+ }
22
+ for (const mediaFile of payload.files) {
23
+ const uploadMedia = await api.uploadProductPhoto({
24
+ file: mediaFile,
25
+ });
26
+ const url = uploadMedia.normalUrl || uploadMedia.hdUrl;
27
+ productPhoto.push(url);
28
+ }
29
+ }
30
+ if (productPhoto.length > 5) {
31
+ throw new ZaloApiError.ZaloApiError("Maximum 5 media files are allowed");
32
+ }
33
+ const params = {
34
+ product_name: payload.productName,
35
+ price: payload.price,
36
+ description: payload.description,
37
+ product_photos: productPhoto,
38
+ catalog_id: payload.catalogId,
39
+ currency_unit: "₫", // $
40
+ create_time: Date.now(),
41
+ };
42
+ const encryptedParams = utils.encodeAES(JSON.stringify(params));
43
+ if (!encryptedParams)
44
+ throw new ZaloApiError.ZaloApiError("Failed to encrypt params");
45
+ const response = await utils.request(serviceURL, {
46
+ method: "POST",
47
+ body: new URLSearchParams({
48
+ params: encryptedParams,
49
+ }),
50
+ });
51
+ return utils.resolve(response);
52
+ };
53
+ });
54
+
55
+ exports.createProductCatalogFactory = createProductCatalogFactory;
@@ -0,0 +1,76 @@
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
+ var Reminder = require('../models/Reminder.cjs');
12
+ require('../models/ZBusiness.cjs');
13
+ var utils = require('../utils.cjs');
14
+
15
+ const createReminderFactory = utils.apiFactory()((api, ctx, utils) => {
16
+ const serviceURL = {
17
+ [Enum.ThreadType.User]: utils.makeURL(`${api.zpwServiceMap.group_board[0]}/api/board/oneone/create`),
18
+ [Enum.ThreadType.Group]: utils.makeURL(`${api.zpwServiceMap.group_board[0]}/api/board/topic/createv2`),
19
+ };
20
+ /**
21
+ * Create a reminder in a group
22
+ *
23
+ * @param options reminder options
24
+ * @param threadId Group ID to create note from
25
+ * @param type Thread type (User or Group)
26
+ *
27
+ * @throws {ZaloApiError}
28
+ */
29
+ return async function createReminder(options, threadId, type = Enum.ThreadType.User) {
30
+ var _a, _b, _c, _d, _e, _f;
31
+ const params = type === Enum.ThreadType.User
32
+ ? {
33
+ objectData: JSON.stringify({
34
+ toUid: threadId,
35
+ type: 0,
36
+ color: -16245706,
37
+ emoji: (_a = options.emoji) !== null && _a !== void 0 ? _a : "⏰",
38
+ startTime: (_b = options.startTime) !== null && _b !== void 0 ? _b : Date.now(),
39
+ duration: -1,
40
+ params: { title: options.title },
41
+ needPin: false,
42
+ repeat: (_c = options.repeat) !== null && _c !== void 0 ? _c : Reminder.ReminderRepeatMode.None,
43
+ creatorUid: ctx.uid, // Note: for some reason, you can put any valid UID here instead of your own and it still works, atleast for mobile
44
+ src: 1,
45
+ }),
46
+ imei: ctx.imei,
47
+ }
48
+ : {
49
+ grid: threadId,
50
+ type: 0,
51
+ color: -16245706,
52
+ emoji: (_d = options.emoji) !== null && _d !== void 0 ? _d : "⏰",
53
+ startTime: (_e = options.startTime) !== null && _e !== void 0 ? _e : Date.now(),
54
+ duration: -1,
55
+ params: JSON.stringify({
56
+ title: options.title,
57
+ }),
58
+ repeat: (_f = options.repeat) !== null && _f !== void 0 ? _f : Reminder.ReminderRepeatMode.None,
59
+ src: 1,
60
+ imei: ctx.imei,
61
+ pinAct: 0,
62
+ };
63
+ const encryptedParams = utils.encodeAES(JSON.stringify(params));
64
+ if (!encryptedParams)
65
+ throw new ZaloApiError.ZaloApiError("Failed to encrypt params");
66
+ const response = await utils.request(serviceURL[type], {
67
+ method: "POST",
68
+ body: new URLSearchParams({
69
+ params: encryptedParams,
70
+ }),
71
+ });
72
+ return utils.resolve(response);
73
+ };
74
+ });
75
+
76
+ exports.createReminderFactory = createReminderFactory;
@@ -0,0 +1,19 @@
1
+ 'use strict';
2
+
3
+ var utils = require('../utils.cjs');
4
+
5
+ /* eslint-disable */
6
+ const customFactory = utils.apiFactory()((api, ctx, utils) => {
7
+ return function custom(name, callback) {
8
+ Object.defineProperty(api, name, {
9
+ value: function (props) {
10
+ return callback({ ctx, utils, props });
11
+ },
12
+ writable: false,
13
+ enumerable: false,
14
+ configurable: false,
15
+ });
16
+ };
17
+ });
18
+
19
+ exports.customFactory = customFactory;
@@ -0,0 +1,34 @@
1
+ 'use strict';
2
+
3
+ var ZaloApiError = require('../Errors/ZaloApiError.cjs');
4
+ var utils = require('../utils.cjs');
5
+
6
+ const deleteAutoReplyFactory = utils.apiFactory()((api, ctx, utils) => {
7
+ const serviceURL = utils.makeURL(`${api.zpwServiceMap.auto_reply[0]}/api/autoreply/delete`);
8
+ /**
9
+ * Delete auto reply
10
+ *
11
+ * @param id id of auto reply
12
+ *
13
+ * @note this API used for zBusiness
14
+ * @throws {ZaloApiError}
15
+ */
16
+ return async function deleteAutoReply(id) {
17
+ const params = {
18
+ cliLang: ctx.language,
19
+ id: id,
20
+ };
21
+ const encryptedParams = utils.encodeAES(JSON.stringify(params));
22
+ if (!encryptedParams)
23
+ throw new ZaloApiError.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
+ });
33
+
34
+ exports.deleteAutoReplyFactory = deleteAutoReplyFactory;