@ardennguyen/zalo-agent-cli 1.0.7 → 2.1.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 (1275) hide show
  1. package/DISCLAIMER.md +2 -2
  2. package/LICENSE +456 -21
  3. package/NOTICE +127 -0
  4. package/README.md +169 -70
  5. package/node_modules/asynckit/LICENSE +21 -0
  6. package/node_modules/asynckit/README.md +233 -0
  7. package/node_modules/asynckit/bench.js +76 -0
  8. package/node_modules/asynckit/index.js +6 -0
  9. package/node_modules/asynckit/lib/abort.js +29 -0
  10. package/node_modules/asynckit/lib/async.js +34 -0
  11. package/node_modules/asynckit/lib/defer.js +26 -0
  12. package/node_modules/asynckit/lib/iterate.js +75 -0
  13. package/node_modules/asynckit/lib/readable_asynckit.js +91 -0
  14. package/node_modules/asynckit/lib/readable_parallel.js +25 -0
  15. package/node_modules/asynckit/lib/readable_serial.js +25 -0
  16. package/node_modules/asynckit/lib/readable_serial_ordered.js +29 -0
  17. package/node_modules/asynckit/lib/state.js +37 -0
  18. package/node_modules/asynckit/lib/streamify.js +141 -0
  19. package/node_modules/asynckit/lib/terminator.js +29 -0
  20. package/node_modules/asynckit/package.json +63 -0
  21. package/node_modules/asynckit/parallel.js +43 -0
  22. package/node_modules/asynckit/serial.js +17 -0
  23. package/node_modules/asynckit/serialOrdered.js +75 -0
  24. package/node_modules/asynckit/stream.js +21 -0
  25. package/node_modules/bignumber.js/CHANGELOG.md +381 -0
  26. package/node_modules/bignumber.js/LICENCE.md +26 -0
  27. package/node_modules/bignumber.js/README.md +289 -0
  28. package/node_modules/bignumber.js/bignumber.d.mts +6 -0
  29. package/node_modules/bignumber.js/bignumber.d.ts +5 -0
  30. package/node_modules/bignumber.js/bignumber.js +2922 -0
  31. package/node_modules/bignumber.js/bignumber.mjs +2907 -0
  32. package/node_modules/bignumber.js/doc/API.html +2249 -0
  33. package/node_modules/bignumber.js/package.json +60 -0
  34. package/node_modules/bignumber.js/types.d.ts +1821 -0
  35. package/node_modules/call-bind-apply-helpers/.eslintrc +17 -0
  36. package/node_modules/call-bind-apply-helpers/.github/FUNDING.yml +12 -0
  37. package/node_modules/call-bind-apply-helpers/.nycrc +9 -0
  38. package/node_modules/call-bind-apply-helpers/CHANGELOG.md +30 -0
  39. package/node_modules/call-bind-apply-helpers/LICENSE +21 -0
  40. package/node_modules/call-bind-apply-helpers/README.md +62 -0
  41. package/node_modules/call-bind-apply-helpers/actualApply.d.ts +1 -0
  42. package/node_modules/call-bind-apply-helpers/actualApply.js +10 -0
  43. package/node_modules/call-bind-apply-helpers/applyBind.d.ts +19 -0
  44. package/node_modules/call-bind-apply-helpers/applyBind.js +10 -0
  45. package/node_modules/call-bind-apply-helpers/functionApply.d.ts +1 -0
  46. package/node_modules/call-bind-apply-helpers/functionApply.js +4 -0
  47. package/node_modules/call-bind-apply-helpers/functionCall.d.ts +1 -0
  48. package/node_modules/call-bind-apply-helpers/functionCall.js +4 -0
  49. package/node_modules/call-bind-apply-helpers/index.d.ts +64 -0
  50. package/node_modules/call-bind-apply-helpers/index.js +15 -0
  51. package/node_modules/call-bind-apply-helpers/package.json +85 -0
  52. package/node_modules/call-bind-apply-helpers/reflectApply.d.ts +3 -0
  53. package/node_modules/call-bind-apply-helpers/reflectApply.js +4 -0
  54. package/node_modules/call-bind-apply-helpers/test/index.js +63 -0
  55. package/node_modules/call-bind-apply-helpers/tsconfig.json +9 -0
  56. package/node_modules/combined-stream/License +19 -0
  57. package/node_modules/combined-stream/Readme.md +138 -0
  58. package/node_modules/combined-stream/lib/combined_stream.js +208 -0
  59. package/node_modules/combined-stream/package.json +25 -0
  60. package/node_modules/crypto-js/CONTRIBUTING.md +28 -0
  61. package/node_modules/crypto-js/LICENSE +24 -0
  62. package/node_modules/crypto-js/README.md +275 -0
  63. package/node_modules/crypto-js/aes.js +234 -0
  64. package/node_modules/crypto-js/blowfish.js +471 -0
  65. package/node_modules/crypto-js/bower.json +39 -0
  66. package/node_modules/crypto-js/cipher-core.js +895 -0
  67. package/node_modules/crypto-js/core.js +807 -0
  68. package/node_modules/crypto-js/crypto-js.js +6657 -0
  69. package/node_modules/crypto-js/docs/QuickStartGuide.wiki +470 -0
  70. package/node_modules/crypto-js/enc-base64.js +136 -0
  71. package/node_modules/crypto-js/enc-base64url.js +148 -0
  72. package/node_modules/crypto-js/enc-hex.js +18 -0
  73. package/node_modules/crypto-js/enc-latin1.js +18 -0
  74. package/node_modules/crypto-js/enc-utf16.js +149 -0
  75. package/node_modules/crypto-js/enc-utf8.js +18 -0
  76. package/node_modules/crypto-js/evpkdf.js +134 -0
  77. package/node_modules/crypto-js/format-hex.js +66 -0
  78. package/node_modules/crypto-js/format-openssl.js +18 -0
  79. package/node_modules/crypto-js/hmac-md5.js +18 -0
  80. package/node_modules/crypto-js/hmac-ripemd160.js +18 -0
  81. package/node_modules/crypto-js/hmac-sha1.js +18 -0
  82. package/node_modules/crypto-js/hmac-sha224.js +18 -0
  83. package/node_modules/crypto-js/hmac-sha256.js +18 -0
  84. package/node_modules/crypto-js/hmac-sha3.js +18 -0
  85. package/node_modules/crypto-js/hmac-sha384.js +18 -0
  86. package/node_modules/crypto-js/hmac-sha512.js +18 -0
  87. package/node_modules/crypto-js/hmac.js +143 -0
  88. package/node_modules/crypto-js/index.js +18 -0
  89. package/node_modules/crypto-js/lib-typedarrays.js +76 -0
  90. package/node_modules/crypto-js/md5.js +268 -0
  91. package/node_modules/crypto-js/mode-cfb.js +80 -0
  92. package/node_modules/crypto-js/mode-ctr-gladman.js +116 -0
  93. package/node_modules/crypto-js/mode-ctr.js +58 -0
  94. package/node_modules/crypto-js/mode-ecb.js +40 -0
  95. package/node_modules/crypto-js/mode-ofb.js +54 -0
  96. package/node_modules/crypto-js/package.json +42 -0
  97. package/node_modules/crypto-js/pad-ansix923.js +49 -0
  98. package/node_modules/crypto-js/pad-iso10126.js +44 -0
  99. package/node_modules/crypto-js/pad-iso97971.js +40 -0
  100. package/node_modules/crypto-js/pad-nopadding.js +30 -0
  101. package/node_modules/crypto-js/pad-pkcs7.js +18 -0
  102. package/node_modules/crypto-js/pad-zeropadding.js +47 -0
  103. package/node_modules/crypto-js/pbkdf2.js +145 -0
  104. package/node_modules/crypto-js/rabbit-legacy.js +190 -0
  105. package/node_modules/crypto-js/rabbit.js +192 -0
  106. package/node_modules/crypto-js/rc4.js +139 -0
  107. package/node_modules/crypto-js/ripemd160.js +267 -0
  108. package/node_modules/crypto-js/sha1.js +150 -0
  109. package/node_modules/crypto-js/sha224.js +80 -0
  110. package/node_modules/crypto-js/sha256.js +199 -0
  111. package/node_modules/crypto-js/sha3.js +326 -0
  112. package/node_modules/crypto-js/sha384.js +83 -0
  113. package/node_modules/crypto-js/sha512.js +326 -0
  114. package/node_modules/crypto-js/tripledes.js +779 -0
  115. package/node_modules/crypto-js/x64-core.js +304 -0
  116. package/node_modules/delayed-stream/.npmignore +1 -0
  117. package/node_modules/delayed-stream/License +19 -0
  118. package/node_modules/delayed-stream/Makefile +7 -0
  119. package/node_modules/delayed-stream/Readme.md +141 -0
  120. package/node_modules/delayed-stream/lib/delayed_stream.js +107 -0
  121. package/node_modules/delayed-stream/package.json +27 -0
  122. package/node_modules/dunder-proto/.eslintrc +5 -0
  123. package/node_modules/dunder-proto/.github/FUNDING.yml +12 -0
  124. package/node_modules/dunder-proto/.nycrc +13 -0
  125. package/node_modules/dunder-proto/CHANGELOG.md +24 -0
  126. package/node_modules/dunder-proto/LICENSE +21 -0
  127. package/node_modules/dunder-proto/README.md +54 -0
  128. package/node_modules/dunder-proto/get.d.ts +5 -0
  129. package/node_modules/dunder-proto/get.js +30 -0
  130. package/node_modules/dunder-proto/package.json +76 -0
  131. package/node_modules/dunder-proto/set.d.ts +5 -0
  132. package/node_modules/dunder-proto/set.js +35 -0
  133. package/node_modules/dunder-proto/test/get.js +34 -0
  134. package/node_modules/dunder-proto/test/index.js +4 -0
  135. package/node_modules/dunder-proto/test/set.js +50 -0
  136. package/node_modules/dunder-proto/tsconfig.json +9 -0
  137. package/node_modules/es-define-property/.eslintrc +13 -0
  138. package/node_modules/es-define-property/.github/FUNDING.yml +12 -0
  139. package/node_modules/es-define-property/.nycrc +9 -0
  140. package/node_modules/es-define-property/CHANGELOG.md +29 -0
  141. package/node_modules/es-define-property/LICENSE +21 -0
  142. package/node_modules/es-define-property/README.md +49 -0
  143. package/node_modules/es-define-property/index.d.ts +3 -0
  144. package/node_modules/es-define-property/index.js +14 -0
  145. package/node_modules/es-define-property/package.json +81 -0
  146. package/node_modules/es-define-property/test/index.js +56 -0
  147. package/node_modules/es-define-property/tsconfig.json +10 -0
  148. package/node_modules/es-errors/.eslintrc +5 -0
  149. package/node_modules/es-errors/.github/FUNDING.yml +12 -0
  150. package/node_modules/es-errors/CHANGELOG.md +40 -0
  151. package/node_modules/es-errors/LICENSE +21 -0
  152. package/node_modules/es-errors/README.md +55 -0
  153. package/node_modules/es-errors/eval.d.ts +3 -0
  154. package/node_modules/es-errors/eval.js +4 -0
  155. package/node_modules/es-errors/index.d.ts +3 -0
  156. package/node_modules/es-errors/index.js +4 -0
  157. package/node_modules/es-errors/package.json +80 -0
  158. package/node_modules/es-errors/range.d.ts +3 -0
  159. package/node_modules/es-errors/range.js +4 -0
  160. package/node_modules/es-errors/ref.d.ts +3 -0
  161. package/node_modules/es-errors/ref.js +4 -0
  162. package/node_modules/es-errors/syntax.d.ts +3 -0
  163. package/node_modules/es-errors/syntax.js +4 -0
  164. package/node_modules/es-errors/test/index.js +19 -0
  165. package/node_modules/es-errors/tsconfig.json +49 -0
  166. package/node_modules/es-errors/type.d.ts +3 -0
  167. package/node_modules/es-errors/type.js +4 -0
  168. package/node_modules/es-errors/uri.d.ts +3 -0
  169. package/node_modules/es-errors/uri.js +4 -0
  170. package/node_modules/es-object-atoms/.eslintrc +16 -0
  171. package/node_modules/es-object-atoms/.github/FUNDING.yml +12 -0
  172. package/node_modules/es-object-atoms/CHANGELOG.md +44 -0
  173. package/node_modules/es-object-atoms/LICENSE +21 -0
  174. package/node_modules/es-object-atoms/README.md +63 -0
  175. package/node_modules/es-object-atoms/RequireObjectCoercible.d.ts +3 -0
  176. package/node_modules/es-object-atoms/RequireObjectCoercible.js +11 -0
  177. package/node_modules/es-object-atoms/ToObject.d.ts +7 -0
  178. package/node_modules/es-object-atoms/ToObject.js +10 -0
  179. package/node_modules/es-object-atoms/index.d.ts +3 -0
  180. package/node_modules/es-object-atoms/index.js +4 -0
  181. package/node_modules/es-object-atoms/isObject.d.ts +3 -0
  182. package/node_modules/es-object-atoms/isObject.js +6 -0
  183. package/node_modules/es-object-atoms/package.json +79 -0
  184. package/node_modules/es-object-atoms/test/index.js +38 -0
  185. package/node_modules/es-object-atoms/tsconfig.json +7 -0
  186. package/node_modules/es-set-tostringtag/.eslintrc +13 -0
  187. package/node_modules/es-set-tostringtag/.nycrc +9 -0
  188. package/node_modules/es-set-tostringtag/CHANGELOG.md +67 -0
  189. package/node_modules/es-set-tostringtag/LICENSE +21 -0
  190. package/node_modules/es-set-tostringtag/README.md +53 -0
  191. package/node_modules/es-set-tostringtag/index.d.ts +10 -0
  192. package/node_modules/es-set-tostringtag/index.js +35 -0
  193. package/node_modules/es-set-tostringtag/package.json +78 -0
  194. package/node_modules/es-set-tostringtag/test/index.js +85 -0
  195. package/node_modules/es-set-tostringtag/tsconfig.json +9 -0
  196. package/node_modules/form-data/CHANGELOG.md +686 -0
  197. package/node_modules/form-data/License +19 -0
  198. package/node_modules/form-data/README.md +355 -0
  199. package/node_modules/form-data/index.d.ts +62 -0
  200. package/node_modules/form-data/lib/browser.js +4 -0
  201. package/node_modules/form-data/lib/form_data.js +506 -0
  202. package/node_modules/form-data/lib/populate.js +10 -0
  203. package/node_modules/form-data/node_modules/mime-db/HISTORY.md +507 -0
  204. package/node_modules/form-data/node_modules/mime-db/LICENSE +23 -0
  205. package/node_modules/form-data/node_modules/mime-db/README.md +100 -0
  206. package/node_modules/form-data/node_modules/mime-db/db.json +8519 -0
  207. package/node_modules/form-data/node_modules/mime-db/index.js +12 -0
  208. package/node_modules/form-data/node_modules/mime-db/package.json +60 -0
  209. package/node_modules/form-data/node_modules/mime-types/HISTORY.md +397 -0
  210. package/node_modules/form-data/node_modules/mime-types/LICENSE +23 -0
  211. package/node_modules/form-data/node_modules/mime-types/README.md +113 -0
  212. package/node_modules/form-data/node_modules/mime-types/index.js +188 -0
  213. package/node_modules/form-data/node_modules/mime-types/package.json +44 -0
  214. package/node_modules/form-data/package.json +82 -0
  215. package/node_modules/function-bind/.eslintrc +21 -0
  216. package/node_modules/function-bind/.github/FUNDING.yml +12 -0
  217. package/node_modules/function-bind/.github/SECURITY.md +3 -0
  218. package/node_modules/function-bind/.nycrc +13 -0
  219. package/node_modules/function-bind/CHANGELOG.md +136 -0
  220. package/node_modules/function-bind/LICENSE +20 -0
  221. package/node_modules/function-bind/README.md +46 -0
  222. package/node_modules/function-bind/implementation.js +84 -0
  223. package/node_modules/function-bind/index.js +5 -0
  224. package/node_modules/function-bind/package.json +87 -0
  225. package/node_modules/function-bind/test/.eslintrc +9 -0
  226. package/node_modules/function-bind/test/index.js +252 -0
  227. package/node_modules/get-intrinsic/.eslintrc +42 -0
  228. package/node_modules/get-intrinsic/.github/FUNDING.yml +12 -0
  229. package/node_modules/get-intrinsic/.nycrc +9 -0
  230. package/node_modules/get-intrinsic/CHANGELOG.md +186 -0
  231. package/node_modules/get-intrinsic/LICENSE +21 -0
  232. package/node_modules/get-intrinsic/README.md +71 -0
  233. package/node_modules/get-intrinsic/index.js +378 -0
  234. package/node_modules/get-intrinsic/package.json +97 -0
  235. package/node_modules/get-intrinsic/test/GetIntrinsic.js +274 -0
  236. package/node_modules/get-proto/.eslintrc +10 -0
  237. package/node_modules/get-proto/.github/FUNDING.yml +12 -0
  238. package/node_modules/get-proto/.nycrc +9 -0
  239. package/node_modules/get-proto/CHANGELOG.md +21 -0
  240. package/node_modules/get-proto/LICENSE +21 -0
  241. package/node_modules/get-proto/Object.getPrototypeOf.d.ts +5 -0
  242. package/node_modules/get-proto/Object.getPrototypeOf.js +6 -0
  243. package/node_modules/get-proto/README.md +50 -0
  244. package/node_modules/get-proto/Reflect.getPrototypeOf.d.ts +3 -0
  245. package/node_modules/get-proto/Reflect.getPrototypeOf.js +4 -0
  246. package/node_modules/get-proto/index.d.ts +5 -0
  247. package/node_modules/get-proto/index.js +27 -0
  248. package/node_modules/get-proto/package.json +81 -0
  249. package/node_modules/get-proto/test/index.js +68 -0
  250. package/node_modules/get-proto/tsconfig.json +9 -0
  251. package/node_modules/gopd/.eslintrc +16 -0
  252. package/node_modules/gopd/.github/FUNDING.yml +12 -0
  253. package/node_modules/gopd/CHANGELOG.md +45 -0
  254. package/node_modules/gopd/LICENSE +21 -0
  255. package/node_modules/gopd/README.md +40 -0
  256. package/node_modules/gopd/gOPD.d.ts +1 -0
  257. package/node_modules/gopd/gOPD.js +4 -0
  258. package/node_modules/gopd/index.d.ts +5 -0
  259. package/node_modules/gopd/index.js +15 -0
  260. package/node_modules/gopd/package.json +77 -0
  261. package/node_modules/gopd/test/index.js +36 -0
  262. package/node_modules/gopd/tsconfig.json +9 -0
  263. package/node_modules/has-symbols/.eslintrc +11 -0
  264. package/node_modules/has-symbols/.github/FUNDING.yml +12 -0
  265. package/node_modules/has-symbols/.nycrc +9 -0
  266. package/node_modules/has-symbols/CHANGELOG.md +91 -0
  267. package/node_modules/has-symbols/LICENSE +21 -0
  268. package/node_modules/has-symbols/README.md +46 -0
  269. package/node_modules/has-symbols/index.d.ts +3 -0
  270. package/node_modules/has-symbols/index.js +14 -0
  271. package/node_modules/has-symbols/package.json +111 -0
  272. package/node_modules/has-symbols/shams.d.ts +3 -0
  273. package/node_modules/has-symbols/shams.js +45 -0
  274. package/node_modules/has-symbols/test/index.js +22 -0
  275. package/node_modules/has-symbols/test/shams/core-js.js +29 -0
  276. package/node_modules/has-symbols/test/shams/get-own-property-symbols.js +29 -0
  277. package/node_modules/has-symbols/test/tests.js +58 -0
  278. package/node_modules/has-symbols/tsconfig.json +10 -0
  279. package/node_modules/has-tostringtag/.eslintrc +5 -0
  280. package/node_modules/has-tostringtag/.github/FUNDING.yml +12 -0
  281. package/node_modules/has-tostringtag/.nycrc +13 -0
  282. package/node_modules/has-tostringtag/CHANGELOG.md +42 -0
  283. package/node_modules/has-tostringtag/LICENSE +21 -0
  284. package/node_modules/has-tostringtag/README.md +46 -0
  285. package/node_modules/has-tostringtag/index.d.ts +3 -0
  286. package/node_modules/has-tostringtag/index.js +8 -0
  287. package/node_modules/has-tostringtag/package.json +108 -0
  288. package/node_modules/has-tostringtag/shams.d.ts +3 -0
  289. package/node_modules/has-tostringtag/shams.js +8 -0
  290. package/node_modules/has-tostringtag/test/index.js +21 -0
  291. package/node_modules/has-tostringtag/test/shams/core-js.js +31 -0
  292. package/node_modules/has-tostringtag/test/shams/get-own-property-symbols.js +30 -0
  293. package/node_modules/has-tostringtag/test/tests.js +15 -0
  294. package/node_modules/has-tostringtag/tsconfig.json +49 -0
  295. package/node_modules/hasown/.github/FUNDING.yml +12 -0
  296. package/node_modules/hasown/.nycrc +13 -0
  297. package/node_modules/hasown/CHANGELOG.md +58 -0
  298. package/node_modules/hasown/LICENSE +21 -0
  299. package/node_modules/hasown/README.md +40 -0
  300. package/node_modules/hasown/eslint.config.mjs +6 -0
  301. package/node_modules/hasown/index.d.ts +3 -0
  302. package/node_modules/hasown/index.js +8 -0
  303. package/node_modules/hasown/package.json +91 -0
  304. package/node_modules/hasown/tsconfig.json +6 -0
  305. package/node_modules/json-bigint/LICENSE +20 -0
  306. package/node_modules/json-bigint/README.md +240 -0
  307. package/node_modules/json-bigint/index.js +12 -0
  308. package/node_modules/json-bigint/lib/parse.js +443 -0
  309. package/node_modules/json-bigint/lib/stringify.js +384 -0
  310. package/node_modules/json-bigint/package.json +34 -0
  311. package/node_modules/math-intrinsics/.eslintrc +16 -0
  312. package/node_modules/math-intrinsics/.github/FUNDING.yml +12 -0
  313. package/node_modules/math-intrinsics/CHANGELOG.md +24 -0
  314. package/node_modules/math-intrinsics/LICENSE +21 -0
  315. package/node_modules/math-intrinsics/README.md +50 -0
  316. package/node_modules/math-intrinsics/abs.d.ts +1 -0
  317. package/node_modules/math-intrinsics/abs.js +4 -0
  318. package/node_modules/math-intrinsics/constants/maxArrayLength.d.ts +3 -0
  319. package/node_modules/math-intrinsics/constants/maxArrayLength.js +4 -0
  320. package/node_modules/math-intrinsics/constants/maxSafeInteger.d.ts +3 -0
  321. package/node_modules/math-intrinsics/constants/maxSafeInteger.js +5 -0
  322. package/node_modules/math-intrinsics/constants/maxValue.d.ts +3 -0
  323. package/node_modules/math-intrinsics/constants/maxValue.js +5 -0
  324. package/node_modules/math-intrinsics/floor.d.ts +1 -0
  325. package/node_modules/math-intrinsics/floor.js +4 -0
  326. package/node_modules/math-intrinsics/isFinite.d.ts +3 -0
  327. package/node_modules/math-intrinsics/isFinite.js +12 -0
  328. package/node_modules/math-intrinsics/isInteger.d.ts +3 -0
  329. package/node_modules/math-intrinsics/isInteger.js +16 -0
  330. package/node_modules/math-intrinsics/isNaN.d.ts +1 -0
  331. package/node_modules/math-intrinsics/isNaN.js +6 -0
  332. package/node_modules/math-intrinsics/isNegativeZero.d.ts +3 -0
  333. package/node_modules/math-intrinsics/isNegativeZero.js +6 -0
  334. package/node_modules/math-intrinsics/max.d.ts +1 -0
  335. package/node_modules/math-intrinsics/max.js +4 -0
  336. package/node_modules/math-intrinsics/min.d.ts +1 -0
  337. package/node_modules/math-intrinsics/min.js +4 -0
  338. package/node_modules/math-intrinsics/mod.d.ts +3 -0
  339. package/node_modules/math-intrinsics/mod.js +9 -0
  340. package/node_modules/math-intrinsics/package.json +86 -0
  341. package/node_modules/math-intrinsics/pow.d.ts +1 -0
  342. package/node_modules/math-intrinsics/pow.js +4 -0
  343. package/node_modules/math-intrinsics/round.d.ts +1 -0
  344. package/node_modules/math-intrinsics/round.js +4 -0
  345. package/node_modules/math-intrinsics/sign.d.ts +3 -0
  346. package/node_modules/math-intrinsics/sign.js +11 -0
  347. package/node_modules/math-intrinsics/test/index.js +192 -0
  348. package/node_modules/math-intrinsics/tsconfig.json +3 -0
  349. package/node_modules/pako/LICENSE +21 -0
  350. package/node_modules/pako/README.md +155 -0
  351. package/node_modules/pako/dist/pako.es5.js +6760 -0
  352. package/node_modules/pako/dist/pako.es5.min.js +2 -0
  353. package/node_modules/pako/dist/pako.esm.mjs +6945 -0
  354. package/node_modules/pako/dist/pako.js +6964 -0
  355. package/node_modules/pako/dist/pako.min.js +2 -0
  356. package/node_modules/pako/dist/pako_deflate.es5.js +3953 -0
  357. package/node_modules/pako/dist/pako_deflate.es5.min.js +2 -0
  358. package/node_modules/pako/dist/pako_deflate.js +4154 -0
  359. package/node_modules/pako/dist/pako_deflate.min.js +2 -0
  360. package/node_modules/pako/dist/pako_inflate.es5.js +3272 -0
  361. package/node_modules/pako/dist/pako_inflate.es5.min.js +2 -0
  362. package/node_modules/pako/dist/pako_inflate.js +3279 -0
  363. package/node_modules/pako/dist/pako_inflate.min.js +2 -0
  364. package/node_modules/pako/index.js +18 -0
  365. package/node_modules/pako/lib/deflate.js +387 -0
  366. package/node_modules/pako/lib/inflate.js +456 -0
  367. package/node_modules/pako/lib/utils/common.js +48 -0
  368. package/node_modules/pako/lib/utils/strings.js +174 -0
  369. package/node_modules/pako/lib/zlib/README +59 -0
  370. package/node_modules/pako/lib/zlib/adler32.js +51 -0
  371. package/node_modules/pako/lib/zlib/constants.js +68 -0
  372. package/node_modules/pako/lib/zlib/crc32.js +59 -0
  373. package/node_modules/pako/lib/zlib/deflate.js +2069 -0
  374. package/node_modules/pako/lib/zlib/gzheader.js +58 -0
  375. package/node_modules/pako/lib/zlib/inffast.js +344 -0
  376. package/node_modules/pako/lib/zlib/inflate.js +1575 -0
  377. package/node_modules/pako/lib/zlib/inftrees.js +340 -0
  378. package/node_modules/pako/lib/zlib/messages.js +32 -0
  379. package/node_modules/pako/lib/zlib/trees.js +1179 -0
  380. package/node_modules/pako/lib/zlib/zstream.js +47 -0
  381. package/node_modules/pako/package.json +73 -0
  382. package/node_modules/semver/LICENSE +15 -0
  383. package/node_modules/semver/README.md +680 -0
  384. package/node_modules/semver/bin/semver.js +195 -0
  385. package/node_modules/semver/classes/comparator.js +143 -0
  386. package/node_modules/semver/classes/index.js +7 -0
  387. package/node_modules/semver/classes/range.js +577 -0
  388. package/node_modules/semver/classes/semver.js +350 -0
  389. package/node_modules/semver/functions/clean.js +8 -0
  390. package/node_modules/semver/functions/cmp.js +54 -0
  391. package/node_modules/semver/functions/coerce.js +62 -0
  392. package/node_modules/semver/functions/compare-build.js +9 -0
  393. package/node_modules/semver/functions/compare-loose.js +5 -0
  394. package/node_modules/semver/functions/compare.js +7 -0
  395. package/node_modules/semver/functions/diff.js +60 -0
  396. package/node_modules/semver/functions/eq.js +5 -0
  397. package/node_modules/semver/functions/gt.js +5 -0
  398. package/node_modules/semver/functions/gte.js +5 -0
  399. package/node_modules/semver/functions/inc.js +21 -0
  400. package/node_modules/semver/functions/lt.js +5 -0
  401. package/node_modules/semver/functions/lte.js +5 -0
  402. package/node_modules/semver/functions/major.js +5 -0
  403. package/node_modules/semver/functions/minor.js +5 -0
  404. package/node_modules/semver/functions/neq.js +5 -0
  405. package/node_modules/semver/functions/parse.js +18 -0
  406. package/node_modules/semver/functions/patch.js +5 -0
  407. package/node_modules/semver/functions/prerelease.js +8 -0
  408. package/node_modules/semver/functions/rcompare.js +5 -0
  409. package/node_modules/semver/functions/rsort.js +5 -0
  410. package/node_modules/semver/functions/satisfies.js +12 -0
  411. package/node_modules/semver/functions/sort.js +5 -0
  412. package/node_modules/semver/functions/truncate.js +48 -0
  413. package/node_modules/semver/functions/valid.js +8 -0
  414. package/node_modules/semver/index.js +93 -0
  415. package/node_modules/semver/internal/constants.js +37 -0
  416. package/node_modules/semver/internal/debug.js +11 -0
  417. package/node_modules/semver/internal/identifiers.js +29 -0
  418. package/node_modules/semver/internal/lrucache.js +42 -0
  419. package/node_modules/semver/internal/parse-options.js +17 -0
  420. package/node_modules/semver/internal/re.js +223 -0
  421. package/node_modules/semver/package.json +78 -0
  422. package/node_modules/semver/preload.js +4 -0
  423. package/node_modules/semver/range.bnf +17 -0
  424. package/node_modules/semver/ranges/gtr.js +6 -0
  425. package/node_modules/semver/ranges/intersects.js +9 -0
  426. package/node_modules/semver/ranges/ltr.js +6 -0
  427. package/node_modules/semver/ranges/max-satisfying.js +27 -0
  428. package/node_modules/semver/ranges/min-satisfying.js +26 -0
  429. package/node_modules/semver/ranges/min-version.js +63 -0
  430. package/node_modules/semver/ranges/outside.js +82 -0
  431. package/node_modules/semver/ranges/simplify.js +49 -0
  432. package/node_modules/semver/ranges/subset.js +249 -0
  433. package/node_modules/semver/ranges/to-comparators.js +10 -0
  434. package/node_modules/semver/ranges/valid.js +13 -0
  435. package/node_modules/spark-md5/LICENSE +13 -0
  436. package/node_modules/spark-md5/README.md +191 -0
  437. package/node_modules/spark-md5/package.json +35 -0
  438. package/node_modules/spark-md5/spark-md5.js +751 -0
  439. package/node_modules/spark-md5/spark-md5.min.js +1 -0
  440. package/node_modules/tldts/LICENSE +13 -0
  441. package/node_modules/tldts/README.md +327 -0
  442. package/node_modules/tldts/bin/cli.js +21 -0
  443. package/node_modules/tldts/dist/cjs/index.js +666 -0
  444. package/node_modules/tldts/dist/cjs/index.js.map +1 -0
  445. package/node_modules/tldts/dist/cjs/src/data/trie.js +14 -0
  446. package/node_modules/tldts/dist/cjs/src/data/trie.js.map +1 -0
  447. package/node_modules/tldts/dist/cjs/src/suffix-trie.js +67 -0
  448. package/node_modules/tldts/dist/cjs/src/suffix-trie.js.map +1 -0
  449. package/node_modules/tldts/dist/cjs/tsconfig.tsbuildinfo +1 -0
  450. package/node_modules/tldts/dist/es6/index.js +33 -0
  451. package/node_modules/tldts/dist/es6/index.js.map +1 -0
  452. package/node_modules/tldts/dist/es6/src/data/trie.js +11 -0
  453. package/node_modules/tldts/dist/es6/src/data/trie.js.map +1 -0
  454. package/node_modules/tldts/dist/es6/src/suffix-trie.js +64 -0
  455. package/node_modules/tldts/dist/es6/src/suffix-trie.js.map +1 -0
  456. package/node_modules/tldts/dist/es6/tsconfig.bundle.tsbuildinfo +1 -0
  457. package/node_modules/tldts/dist/index.cjs.min.js +2 -0
  458. package/node_modules/tldts/dist/index.cjs.min.js.map +1 -0
  459. package/node_modules/tldts/dist/index.esm.min.js +2 -0
  460. package/node_modules/tldts/dist/index.esm.min.js.map +1 -0
  461. package/node_modules/tldts/dist/index.umd.min.js +2 -0
  462. package/node_modules/tldts/dist/index.umd.min.js.map +1 -0
  463. package/node_modules/tldts/dist/types/index.d.ts +7 -0
  464. package/node_modules/tldts/dist/types/src/data/trie.d.ts +5 -0
  465. package/node_modules/tldts/dist/types/src/suffix-trie.d.ts +5 -0
  466. package/node_modules/tldts/index.ts +62 -0
  467. package/node_modules/tldts/package.json +91 -0
  468. package/node_modules/tldts/src/data/trie.ts +14 -0
  469. package/node_modules/tldts/src/suffix-trie.ts +110 -0
  470. package/node_modules/tldts-core/LICENSE +13 -0
  471. package/node_modules/tldts-core/README.md +3 -0
  472. package/node_modules/tldts-core/dist/cjs/index.js +561 -0
  473. package/node_modules/tldts-core/dist/cjs/index.js.map +1 -0
  474. package/node_modules/tldts-core/dist/cjs/src/domain-without-suffix.js +15 -0
  475. package/node_modules/tldts-core/dist/cjs/src/domain-without-suffix.js.map +1 -0
  476. package/node_modules/tldts-core/dist/cjs/src/domain.js +83 -0
  477. package/node_modules/tldts-core/dist/cjs/src/domain.js.map +1 -0
  478. package/node_modules/tldts-core/dist/cjs/src/extract-hostname.js +149 -0
  479. package/node_modules/tldts-core/dist/cjs/src/extract-hostname.js.map +1 -0
  480. package/node_modules/tldts-core/dist/cjs/src/factory.js +104 -0
  481. package/node_modules/tldts-core/dist/cjs/src/factory.js.map +1 -0
  482. package/node_modules/tldts-core/dist/cjs/src/is-ip.js +72 -0
  483. package/node_modules/tldts-core/dist/cjs/src/is-ip.js.map +1 -0
  484. package/node_modules/tldts-core/dist/cjs/src/is-valid.js +69 -0
  485. package/node_modules/tldts-core/dist/cjs/src/is-valid.js.map +1 -0
  486. package/node_modules/tldts-core/dist/cjs/src/lookup/fast-path.js +69 -0
  487. package/node_modules/tldts-core/dist/cjs/src/lookup/fast-path.js.map +1 -0
  488. package/node_modules/tldts-core/dist/cjs/src/lookup/interface.js +3 -0
  489. package/node_modules/tldts-core/dist/cjs/src/lookup/interface.js.map +1 -0
  490. package/node_modules/tldts-core/dist/cjs/src/options.js +22 -0
  491. package/node_modules/tldts-core/dist/cjs/src/options.js.map +1 -0
  492. package/node_modules/tldts-core/dist/cjs/src/subdomain.js +14 -0
  493. package/node_modules/tldts-core/dist/cjs/src/subdomain.js.map +1 -0
  494. package/node_modules/tldts-core/dist/cjs/tsconfig.tsbuildinfo +1 -0
  495. package/node_modules/tldts-core/dist/es6/index.js +4 -0
  496. package/node_modules/tldts-core/dist/es6/index.js.map +1 -0
  497. package/node_modules/tldts-core/dist/es6/src/domain-without-suffix.js +12 -0
  498. package/node_modules/tldts-core/dist/es6/src/domain-without-suffix.js.map +1 -0
  499. package/node_modules/tldts-core/dist/es6/src/domain.js +80 -0
  500. package/node_modules/tldts-core/dist/es6/src/domain.js.map +1 -0
  501. package/node_modules/tldts-core/dist/es6/src/extract-hostname.js +146 -0
  502. package/node_modules/tldts-core/dist/es6/src/extract-hostname.js.map +1 -0
  503. package/node_modules/tldts-core/dist/es6/src/factory.js +99 -0
  504. package/node_modules/tldts-core/dist/es6/src/factory.js.map +1 -0
  505. package/node_modules/tldts-core/dist/es6/src/is-ip.js +69 -0
  506. package/node_modules/tldts-core/dist/es6/src/is-ip.js.map +1 -0
  507. package/node_modules/tldts-core/dist/es6/src/is-valid.js +66 -0
  508. package/node_modules/tldts-core/dist/es6/src/is-valid.js.map +1 -0
  509. package/node_modules/tldts-core/dist/es6/src/lookup/fast-path.js +66 -0
  510. package/node_modules/tldts-core/dist/es6/src/lookup/fast-path.js.map +1 -0
  511. package/node_modules/tldts-core/dist/es6/src/lookup/interface.js +2 -0
  512. package/node_modules/tldts-core/dist/es6/src/lookup/interface.js.map +1 -0
  513. package/node_modules/tldts-core/dist/es6/src/options.js +19 -0
  514. package/node_modules/tldts-core/dist/es6/src/options.js.map +1 -0
  515. package/node_modules/tldts-core/dist/es6/src/subdomain.js +11 -0
  516. package/node_modules/tldts-core/dist/es6/src/subdomain.js.map +1 -0
  517. package/node_modules/tldts-core/dist/es6/tsconfig.bundle.tsbuildinfo +1 -0
  518. package/node_modules/tldts-core/dist/types/index.d.ts +4 -0
  519. package/node_modules/tldts-core/dist/types/src/domain-without-suffix.d.ts +6 -0
  520. package/node_modules/tldts-core/dist/types/src/domain.d.ts +5 -0
  521. package/node_modules/tldts-core/dist/types/src/extract-hostname.d.ts +5 -0
  522. package/node_modules/tldts-core/dist/types/src/factory.d.ts +28 -0
  523. package/node_modules/tldts-core/dist/types/src/is-ip.d.ts +6 -0
  524. package/node_modules/tldts-core/dist/types/src/is-valid.d.ts +15 -0
  525. package/node_modules/tldts-core/dist/types/src/lookup/fast-path.d.ts +2 -0
  526. package/node_modules/tldts-core/dist/types/src/lookup/interface.d.ts +9 -0
  527. package/node_modules/tldts-core/dist/types/src/options.d.ts +10 -0
  528. package/node_modules/tldts-core/dist/types/src/subdomain.d.ts +4 -0
  529. package/node_modules/tldts-core/index.ts +10 -0
  530. package/node_modules/tldts-core/package.json +68 -0
  531. package/node_modules/tldts-core/src/domain-without-suffix.ts +14 -0
  532. package/node_modules/tldts-core/src/domain.ts +100 -0
  533. package/node_modules/tldts-core/src/extract-hostname.ts +170 -0
  534. package/node_modules/tldts-core/src/factory.ts +160 -0
  535. package/node_modules/tldts-core/src/is-ip.ts +87 -0
  536. package/node_modules/tldts-core/src/is-valid.ts +79 -0
  537. package/node_modules/tldts-core/src/lookup/fast-path.ts +80 -0
  538. package/node_modules/tldts-core/src/lookup/interface.ts +10 -0
  539. package/node_modules/tldts-core/src/options.ts +39 -0
  540. package/node_modules/tldts-core/src/subdomain.ts +11 -0
  541. package/node_modules/tough-cookie/LICENSE +12 -0
  542. package/node_modules/tough-cookie/README.md +154 -0
  543. package/node_modules/tough-cookie/dist/cookie/canonicalDomain.d.ts +33 -0
  544. package/node_modules/tough-cookie/dist/cookie/canonicalDomain.js +65 -0
  545. package/node_modules/tough-cookie/dist/cookie/constants.d.ts +54 -0
  546. package/node_modules/tough-cookie/dist/cookie/constants.js +38 -0
  547. package/node_modules/tough-cookie/dist/cookie/cookie.d.ts +326 -0
  548. package/node_modules/tough-cookie/dist/cookie/cookie.js +831 -0
  549. package/node_modules/tough-cookie/dist/cookie/cookieCompare.d.ts +58 -0
  550. package/node_modules/tough-cookie/dist/cookie/cookieCompare.js +84 -0
  551. package/node_modules/tough-cookie/dist/cookie/cookieJar.d.ts +621 -0
  552. package/node_modules/tough-cookie/dist/cookie/cookieJar.js +1000 -0
  553. package/node_modules/tough-cookie/dist/cookie/defaultPath.d.ts +40 -0
  554. package/node_modules/tough-cookie/dist/cookie/defaultPath.js +60 -0
  555. package/node_modules/tough-cookie/dist/cookie/domainMatch.d.ts +38 -0
  556. package/node_modules/tough-cookie/dist/cookie/domainMatch.js +94 -0
  557. package/node_modules/tough-cookie/dist/cookie/formatDate.d.ts +15 -0
  558. package/node_modules/tough-cookie/dist/cookie/formatDate.js +20 -0
  559. package/node_modules/tough-cookie/dist/cookie/index.d.ts +29 -0
  560. package/node_modules/tough-cookie/dist/cookie/index.js +54 -0
  561. package/node_modules/tough-cookie/dist/cookie/parseDate.d.ts +103 -0
  562. package/node_modules/tough-cookie/dist/cookie/parseDate.js +323 -0
  563. package/node_modules/tough-cookie/dist/cookie/permutePath.d.ts +14 -0
  564. package/node_modules/tough-cookie/dist/cookie/permutePath.js +32 -0
  565. package/node_modules/tough-cookie/dist/getPublicSuffix.d.ts +55 -0
  566. package/node_modules/tough-cookie/dist/getPublicSuffix.js +71 -0
  567. package/node_modules/tough-cookie/dist/memstore.d.ts +220 -0
  568. package/node_modules/tough-cookie/dist/memstore.js +187 -0
  569. package/node_modules/tough-cookie/dist/pathMatch.d.ts +17 -0
  570. package/node_modules/tough-cookie/dist/pathMatch.js +40 -0
  571. package/node_modules/tough-cookie/dist/permuteDomain.d.ts +15 -0
  572. package/node_modules/tough-cookie/dist/permuteDomain.js +44 -0
  573. package/node_modules/tough-cookie/dist/store.d.ts +211 -0
  574. package/node_modules/tough-cookie/dist/store.js +76 -0
  575. package/node_modules/tough-cookie/dist/utils.d.ts +34 -0
  576. package/node_modules/tough-cookie/dist/utils.js +99 -0
  577. package/node_modules/tough-cookie/dist/validators.d.ts +24 -0
  578. package/node_modules/tough-cookie/dist/validators.js +90 -0
  579. package/node_modules/tough-cookie/dist/version.d.ts +5 -0
  580. package/node_modules/tough-cookie/dist/version.js +8 -0
  581. package/node_modules/tough-cookie/package.json +144 -0
  582. package/node_modules/ws/LICENSE +20 -0
  583. package/node_modules/ws/README.md +548 -0
  584. package/node_modules/ws/browser.js +8 -0
  585. package/node_modules/ws/index.js +22 -0
  586. package/node_modules/ws/lib/buffer-util.js +131 -0
  587. package/node_modules/ws/lib/constants.js +19 -0
  588. package/node_modules/ws/lib/event-target.js +292 -0
  589. package/node_modules/ws/lib/extension.js +203 -0
  590. package/node_modules/ws/lib/limiter.js +55 -0
  591. package/node_modules/ws/lib/permessage-deflate.js +530 -0
  592. package/node_modules/ws/lib/receiver.js +743 -0
  593. package/node_modules/ws/lib/sender.js +607 -0
  594. package/node_modules/ws/lib/stream.js +161 -0
  595. package/node_modules/ws/lib/subprotocol.js +62 -0
  596. package/node_modules/ws/lib/validation.js +152 -0
  597. package/node_modules/ws/lib/websocket-server.js +562 -0
  598. package/node_modules/ws/lib/websocket.js +1407 -0
  599. package/node_modules/ws/package.json +74 -0
  600. package/node_modules/ws/wrapper.mjs +21 -0
  601. package/node_modules/zca-js/.prettierrc +5 -0
  602. package/node_modules/zca-js/CODE_OF_CONDUCT.md +163 -0
  603. package/node_modules/zca-js/CONTRIBUTING.md +470 -0
  604. package/node_modules/zca-js/LICENSE +21 -0
  605. package/node_modules/zca-js/README.md +225 -0
  606. package/node_modules/zca-js/SECURITY.md +83 -0
  607. package/node_modules/zca-js/dist/Errors/ZaloApiError.d.ts +4 -0
  608. package/node_modules/zca-js/dist/Errors/ZaloApiError.js +7 -0
  609. package/node_modules/zca-js/dist/Errors/ZaloApiLoginQRAborted.d.ts +4 -0
  610. package/node_modules/zca-js/dist/Errors/ZaloApiLoginQRAborted.js +7 -0
  611. package/node_modules/zca-js/dist/Errors/ZaloApiLoginQRDeclined.d.ts +4 -0
  612. package/node_modules/zca-js/dist/Errors/ZaloApiLoginQRDeclined.js +7 -0
  613. package/node_modules/zca-js/dist/Errors/ZaloApiMissingImageMetadataGetter.d.ts +4 -0
  614. package/node_modules/zca-js/dist/Errors/ZaloApiMissingImageMetadataGetter.js +7 -0
  615. package/node_modules/zca-js/dist/Errors/index.d.ts +4 -0
  616. package/node_modules/zca-js/dist/Errors/index.js +4 -0
  617. package/node_modules/zca-js/dist/apis/acceptFriendRequest.d.ts +2 -0
  618. package/node_modules/zca-js/dist/apis/acceptFriendRequest.js +28 -0
  619. package/node_modules/zca-js/dist/apis/addGroupBlockedMember.d.ts +2 -0
  620. package/node_modules/zca-js/dist/apis/addGroupBlockedMember.js +28 -0
  621. package/node_modules/zca-js/dist/apis/addGroupDeputy.d.ts +2 -0
  622. package/node_modules/zca-js/dist/apis/addGroupDeputy.js +30 -0
  623. package/node_modules/zca-js/dist/apis/addPollOptions.d.ts +14 -0
  624. package/node_modules/zca-js/dist/apis/addPollOptions.js +26 -0
  625. package/node_modules/zca-js/dist/apis/addQuickMessage.d.ts +11 -0
  626. package/node_modules/zca-js/dist/apis/addQuickMessage.js +60 -0
  627. package/node_modules/zca-js/dist/apis/addReaction.d.ts +18 -0
  628. package/node_modules/zca-js/dist/apis/addReaction.js +294 -0
  629. package/node_modules/zca-js/dist/apis/addUnreadMark.d.ts +8 -0
  630. package/node_modules/zca-js/dist/apis/addUnreadMark.js +52 -0
  631. package/node_modules/zca-js/dist/apis/addUserToGroup.d.ts +5 -0
  632. package/node_modules/zca-js/dist/apis/addUserToGroup.js +34 -0
  633. package/node_modules/zca-js/dist/apis/blockUser.d.ts +2 -0
  634. package/node_modules/zca-js/dist/apis/blockUser.js +28 -0
  635. package/node_modules/zca-js/dist/apis/blockViewFeed.d.ts +2 -0
  636. package/node_modules/zca-js/dist/apis/blockViewFeed.js +30 -0
  637. package/node_modules/zca-js/dist/apis/changeAccountAvatar.d.ts +3 -0
  638. package/node_modules/zca-js/dist/apis/changeAccountAvatar.js +52 -0
  639. package/node_modules/zca-js/dist/apis/changeFriendAlias.d.ts +2 -0
  640. package/node_modules/zca-js/dist/apis/changeFriendAlias.js +27 -0
  641. package/node_modules/zca-js/dist/apis/changeGroupAvatar.d.ts +3 -0
  642. package/node_modules/zca-js/dist/apis/changeGroupAvatar.js +44 -0
  643. package/node_modules/zca-js/dist/apis/changeGroupName.d.ts +4 -0
  644. package/node_modules/zca-js/dist/apis/changeGroupName.js +32 -0
  645. package/node_modules/zca-js/dist/apis/changeGroupOwner.d.ts +4 -0
  646. package/node_modules/zca-js/dist/apis/changeGroupOwner.js +30 -0
  647. package/node_modules/zca-js/dist/apis/createAutoReply.d.ts +14 -0
  648. package/node_modules/zca-js/dist/apis/createAutoReply.js +37 -0
  649. package/node_modules/zca-js/dist/apis/createBankAccount.d.ts +8 -0
  650. package/node_modules/zca-js/dist/apis/createBankAccount.js +32 -0
  651. package/node_modules/zca-js/dist/apis/createCatalog.d.ts +7 -0
  652. package/node_modules/zca-js/dist/apis/createCatalog.js +29 -0
  653. package/node_modules/zca-js/dist/apis/createGroup.d.ts +28 -0
  654. package/node_modules/zca-js/dist/apis/createGroup.js +43 -0
  655. package/node_modules/zca-js/dist/apis/createNote.d.ts +7 -0
  656. package/node_modules/zca-js/dist/apis/createNote.js +47 -0
  657. package/node_modules/zca-js/dist/apis/createPoll.d.ts +36 -0
  658. package/node_modules/zca-js/dist/apis/createPoll.js +40 -0
  659. package/node_modules/zca-js/dist/apis/createProductCatalog.d.ts +23 -0
  660. package/node_modules/zca-js/dist/apis/createProductCatalog.js +50 -0
  661. package/node_modules/zca-js/dist/apis/createReminder.d.ts +12 -0
  662. package/node_modules/zca-js/dist/apis/createReminder.js +63 -0
  663. package/node_modules/zca-js/dist/apis/custom.d.ts +9 -0
  664. package/node_modules/zca-js/dist/apis/custom.js +15 -0
  665. package/node_modules/zca-js/dist/apis/deleteAutoReply.d.ts +5 -0
  666. package/node_modules/zca-js/dist/apis/deleteAutoReply.js +29 -0
  667. package/node_modules/zca-js/dist/apis/deleteAvatar.d.ts +9 -0
  668. package/node_modules/zca-js/dist/apis/deleteAvatar.js +27 -0
  669. package/node_modules/zca-js/dist/apis/deleteBankAccount.d.ts +11 -0
  670. package/node_modules/zca-js/dist/apis/deleteBankAccount.js +32 -0
  671. package/node_modules/zca-js/dist/apis/deleteCatalog.d.ts +2 -0
  672. package/node_modules/zca-js/dist/apis/deleteCatalog.js +28 -0
  673. package/node_modules/zca-js/dist/apis/deleteChat.d.ts +19 -0
  674. package/node_modules/zca-js/dist/apis/deleteChat.js +50 -0
  675. package/node_modules/zca-js/dist/apis/deleteGroupInviteBox.d.ts +9 -0
  676. package/node_modules/zca-js/dist/apis/deleteGroupInviteBox.js +27 -0
  677. package/node_modules/zca-js/dist/apis/deleteMessage.d.ts +14 -0
  678. package/node_modules/zca-js/dist/apis/deleteMessage.js +52 -0
  679. package/node_modules/zca-js/dist/apis/deleteProductCatalog.d.ts +10 -0
  680. package/node_modules/zca-js/dist/apis/deleteProductCatalog.js +31 -0
  681. package/node_modules/zca-js/dist/apis/deleteSnapshotMobileMsg.js +18 -0
  682. package/node_modules/zca-js/dist/apis/disableGroupLink.d.ts +2 -0
  683. package/node_modules/zca-js/dist/apis/disableGroupLink.js +24 -0
  684. package/node_modules/zca-js/dist/apis/disperseGroup.d.ts +2 -0
  685. package/node_modules/zca-js/dist/apis/disperseGroup.js +28 -0
  686. package/node_modules/zca-js/dist/apis/editNote.d.ts +17 -0
  687. package/node_modules/zca-js/dist/apis/editNote.js +46 -0
  688. package/node_modules/zca-js/dist/apis/editReminder.d.ts +13 -0
  689. package/node_modules/zca-js/dist/apis/editReminder.js +61 -0
  690. package/node_modules/zca-js/dist/apis/enableGroupLink.d.ts +6 -0
  691. package/node_modules/zca-js/dist/apis/enableGroupLink.js +25 -0
  692. package/node_modules/zca-js/dist/apis/fetchAccountInfo.d.ts +5 -0
  693. package/node_modules/zca-js/dist/apis/fetchAccountInfo.js +10 -0
  694. package/node_modules/zca-js/dist/apis/findUser.d.ts +3 -0
  695. package/node_modules/zca-js/dist/apis/findUser.js +42 -0
  696. package/node_modules/zca-js/dist/apis/findUserByUsername.d.ts +3 -0
  697. package/node_modules/zca-js/dist/apis/findUserByUsername.js +27 -0
  698. package/node_modules/zca-js/dist/apis/forwardMessage.d.ts +24 -0
  699. package/node_modules/zca-js/dist/apis/forwardMessage.js +114 -0
  700. package/node_modules/zca-js/dist/apis/getAliasList.d.ts +8 -0
  701. package/node_modules/zca-js/dist/apis/getAliasList.js +27 -0
  702. package/node_modules/zca-js/dist/apis/getAllFriends.d.ts +3 -0
  703. package/node_modules/zca-js/dist/apis/getAllFriends.js +34 -0
  704. package/node_modules/zca-js/dist/apis/getAllGroups.d.ts +7 -0
  705. package/node_modules/zca-js/dist/apis/getAllGroups.js +10 -0
  706. package/node_modules/zca-js/dist/apis/getArchivedChatList.d.ts +5 -0
  707. package/node_modules/zca-js/dist/apis/getArchivedChatList.js +23 -0
  708. package/node_modules/zca-js/dist/apis/getAutoDeleteChat.d.ts +9 -0
  709. package/node_modules/zca-js/dist/apis/getAutoDeleteChat.js +21 -0
  710. package/node_modules/zca-js/dist/apis/getAutoReplyList.d.ts +6 -0
  711. package/node_modules/zca-js/dist/apis/getAutoReplyList.js +24 -0
  712. package/node_modules/zca-js/dist/apis/getAvatarList.d.ts +12 -0
  713. package/node_modules/zca-js/dist/apis/getAvatarList.js +28 -0
  714. package/node_modules/zca-js/dist/apis/getAvatarUrlProfile.d.ts +7 -0
  715. package/node_modules/zca-js/dist/apis/getAvatarUrlProfile.js +30 -0
  716. package/node_modules/zca-js/dist/apis/getBizAccount.d.ts +24 -0
  717. package/node_modules/zca-js/dist/apis/getBizAccount.js +27 -0
  718. package/node_modules/zca-js/dist/apis/getCatalogList.d.ts +18 -0
  719. package/node_modules/zca-js/dist/apis/getCatalogList.js +32 -0
  720. package/node_modules/zca-js/dist/apis/getCloseFriends.d.ts +3 -0
  721. package/node_modules/zca-js/dist/apis/getCloseFriends.js +20 -0
  722. package/node_modules/zca-js/dist/apis/getContext.d.ts +1 -0
  723. package/node_modules/zca-js/dist/apis/getContext.js +4 -0
  724. package/node_modules/zca-js/dist/apis/getCookie.d.ts +1 -0
  725. package/node_modules/zca-js/dist/apis/getCookie.js +9 -0
  726. package/node_modules/zca-js/dist/apis/getCrossDB.js +18 -0
  727. package/node_modules/zca-js/dist/apis/getFriendBoardList.d.ts +5 -0
  728. package/node_modules/zca-js/dist/apis/getFriendBoardList.js +26 -0
  729. package/node_modules/zca-js/dist/apis/getFriendOnlines.d.ts +10 -0
  730. package/node_modules/zca-js/dist/apis/getFriendOnlines.js +35 -0
  731. package/node_modules/zca-js/dist/apis/getFriendRecommendations.d.ts +42 -0
  732. package/node_modules/zca-js/dist/apis/getFriendRecommendations.js +27 -0
  733. package/node_modules/zca-js/dist/apis/getFriendRequestStatus.d.ts +8 -0
  734. package/node_modules/zca-js/dist/apis/getFriendRequestStatus.js +25 -0
  735. package/node_modules/zca-js/dist/apis/getFullAvatar.d.ts +5 -0
  736. package/node_modules/zca-js/dist/apis/getFullAvatar.js +25 -0
  737. package/node_modules/zca-js/dist/apis/getGroupBlockedMember.d.ts +23 -0
  738. package/node_modules/zca-js/dist/apis/getGroupBlockedMember.js +29 -0
  739. package/node_modules/zca-js/dist/apis/getGroupChatHistory.d.ts +8 -0
  740. package/node_modules/zca-js/dist/apis/getGroupChatHistory.js +36 -0
  741. package/node_modules/zca-js/dist/apis/getGroupInfo.d.ts +16 -0
  742. package/node_modules/zca-js/dist/apis/getGroupInfo.js +32 -0
  743. package/node_modules/zca-js/dist/apis/getGroupInviteBoxInfo.d.ts +32 -0
  744. package/node_modules/zca-js/dist/apis/getGroupInviteBoxInfo.js +38 -0
  745. package/node_modules/zca-js/dist/apis/getGroupInviteBoxList.d.ts +38 -0
  746. package/node_modules/zca-js/dist/apis/getGroupInviteBoxList.js +31 -0
  747. package/node_modules/zca-js/dist/apis/getGroupLinkDetail.d.ts +9 -0
  748. package/node_modules/zca-js/dist/apis/getGroupLinkDetail.js +25 -0
  749. package/node_modules/zca-js/dist/apis/getGroupLinkInfo.d.ts +34 -0
  750. package/node_modules/zca-js/dist/apis/getGroupLinkInfo.js +28 -0
  751. package/node_modules/zca-js/dist/apis/getGroupMembersInfo.d.ts +17 -0
  752. package/node_modules/zca-js/dist/apis/getGroupMembersInfo.js +24 -0
  753. package/node_modules/zca-js/dist/apis/getHiddenConversations.d.ts +11 -0
  754. package/node_modules/zca-js/dist/apis/getHiddenConversations.js +23 -0
  755. package/node_modules/zca-js/dist/apis/getLabels.d.ts +7 -0
  756. package/node_modules/zca-js/dist/apis/getLabels.js +28 -0
  757. package/node_modules/zca-js/dist/apis/getListBank.d.ts +5 -0
  758. package/node_modules/zca-js/dist/apis/getListBank.js +20 -0
  759. package/node_modules/zca-js/dist/apis/getListBankAccount.d.ts +7 -0
  760. package/node_modules/zca-js/dist/apis/getListBankAccount.js +27 -0
  761. package/node_modules/zca-js/dist/apis/getListBoard.d.ts +21 -0
  762. package/node_modules/zca-js/dist/apis/getListBoard.js +45 -0
  763. package/node_modules/zca-js/dist/apis/getListDevice.d.ts +10 -0
  764. package/node_modules/zca-js/dist/apis/getListDevice.js +22 -0
  765. package/node_modules/zca-js/dist/apis/getListReminder.d.ts +28 -0
  766. package/node_modules/zca-js/dist/apis/getListReminder.js +47 -0
  767. package/node_modules/zca-js/dist/apis/getMultiUsersByPhones.d.ts +5 -0
  768. package/node_modules/zca-js/dist/apis/getMultiUsersByPhones.js +39 -0
  769. package/node_modules/zca-js/dist/apis/getMute.d.ts +13 -0
  770. package/node_modules/zca-js/dist/apis/getMute.js +22 -0
  771. package/node_modules/zca-js/dist/apis/getOwnId.d.ts +1 -0
  772. package/node_modules/zca-js/dist/apis/getOwnId.js +4 -0
  773. package/node_modules/zca-js/dist/apis/getPendingGroupMembers.d.ts +11 -0
  774. package/node_modules/zca-js/dist/apis/getPendingGroupMembers.js +27 -0
  775. package/node_modules/zca-js/dist/apis/getPinConversations.d.ts +5 -0
  776. package/node_modules/zca-js/dist/apis/getPinConversations.js +22 -0
  777. package/node_modules/zca-js/dist/apis/getPollDetail.d.ts +3 -0
  778. package/node_modules/zca-js/dist/apis/getPollDetail.js +30 -0
  779. package/node_modules/zca-js/dist/apis/getProductCatalogList.d.ts +20 -0
  780. package/node_modules/zca-js/dist/apis/getProductCatalogList.js +33 -0
  781. package/node_modules/zca-js/dist/apis/getQR.d.ts +4 -0
  782. package/node_modules/zca-js/dist/apis/getQR.js +29 -0
  783. package/node_modules/zca-js/dist/apis/getQuickMessageList.d.ts +7 -0
  784. package/node_modules/zca-js/dist/apis/getQuickMessageList.js +24 -0
  785. package/node_modules/zca-js/dist/apis/getRelatedFriendGroup.d.ts +6 -0
  786. package/node_modules/zca-js/dist/apis/getRelatedFriendGroup.js +30 -0
  787. package/node_modules/zca-js/dist/apis/getReminder.d.ts +3 -0
  788. package/node_modules/zca-js/dist/apis/getReminder.js +25 -0
  789. package/node_modules/zca-js/dist/apis/getReminderResponses.d.ts +5 -0
  790. package/node_modules/zca-js/dist/apis/getReminderResponses.js +24 -0
  791. package/node_modules/zca-js/dist/apis/getSentFriendRequest.d.ts +18 -0
  792. package/node_modules/zca-js/dist/apis/getSentFriendRequest.js +24 -0
  793. package/node_modules/zca-js/dist/apis/getSettings.d.ts +3 -0
  794. package/node_modules/zca-js/dist/apis/getSettings.js +20 -0
  795. package/node_modules/zca-js/dist/apis/getStickerCategoryDetail.d.ts +3 -0
  796. package/node_modules/zca-js/dist/apis/getStickerCategoryDetail.js +24 -0
  797. package/node_modules/zca-js/dist/apis/getStickers.d.ts +1 -0
  798. package/node_modules/zca-js/dist/apis/getStickers.js +40 -0
  799. package/node_modules/zca-js/dist/apis/getStickersDetail.d.ts +3 -0
  800. package/node_modules/zca-js/dist/apis/getStickersDetail.js +40 -0
  801. package/node_modules/zca-js/dist/apis/getUnreadMark.d.ts +14 -0
  802. package/node_modules/zca-js/dist/apis/getUnreadMark.js +30 -0
  803. package/node_modules/zca-js/dist/apis/getUserInfo.d.ts +8 -0
  804. package/node_modules/zca-js/dist/apis/getUserInfo.js +44 -0
  805. package/node_modules/zca-js/dist/apis/inviteUserToGroups.d.ts +10 -0
  806. package/node_modules/zca-js/dist/apis/inviteUserToGroups.js +30 -0
  807. package/node_modules/zca-js/dist/apis/joinGroupInviteBox.d.ts +2 -0
  808. package/node_modules/zca-js/dist/apis/joinGroupInviteBox.js +25 -0
  809. package/node_modules/zca-js/dist/apis/joinGroupLink.d.ts +2 -0
  810. package/node_modules/zca-js/dist/apis/joinGroupLink.js +27 -0
  811. package/node_modules/zca-js/dist/apis/keepAlive.d.ts +4 -0
  812. package/node_modules/zca-js/dist/apis/keepAlive.js +22 -0
  813. package/node_modules/zca-js/dist/apis/lastOnline.d.ts +7 -0
  814. package/node_modules/zca-js/dist/apis/lastOnline.js +26 -0
  815. package/node_modules/zca-js/dist/apis/leaveGroup.d.ts +4 -0
  816. package/node_modules/zca-js/dist/apis/leaveGroup.js +33 -0
  817. package/node_modules/zca-js/dist/apis/listen.d.ts +102 -0
  818. package/node_modules/zca-js/dist/apis/listen.js +425 -0
  819. package/node_modules/zca-js/dist/apis/lockPoll.d.ts +2 -0
  820. package/node_modules/zca-js/dist/apis/lockPoll.js +28 -0
  821. package/node_modules/zca-js/dist/apis/login.d.ts +3 -0
  822. package/node_modules/zca-js/dist/apis/login.js +96 -0
  823. package/node_modules/zca-js/dist/apis/loginQR.d.ts +71 -0
  824. package/node_modules/zca-js/dist/apis/loginQR.js +376 -0
  825. package/node_modules/zca-js/dist/apis/logoutV2.js +79 -0
  826. package/node_modules/zca-js/dist/apis/lostFocus.d.ts +4 -0
  827. package/node_modules/zca-js/dist/apis/lostFocus.js +23 -0
  828. package/node_modules/zca-js/dist/apis/parseLink.d.ts +21 -0
  829. package/node_modules/zca-js/dist/apis/parseLink.js +27 -0
  830. package/node_modules/zca-js/dist/apis/pullMobileMsg.js +22 -0
  831. package/node_modules/zca-js/dist/apis/registerCatalog.d.ts +2 -0
  832. package/node_modules/zca-js/dist/apis/registerCatalog.js +27 -0
  833. package/node_modules/zca-js/dist/apis/rejectFriendRequest.d.ts +2 -0
  834. package/node_modules/zca-js/dist/apis/rejectFriendRequest.js +27 -0
  835. package/node_modules/zca-js/dist/apis/removeFriend.d.ts +2 -0
  836. package/node_modules/zca-js/dist/apis/removeFriend.js +28 -0
  837. package/node_modules/zca-js/dist/apis/removeFriendAlias.d.ts +2 -0
  838. package/node_modules/zca-js/dist/apis/removeFriendAlias.js +24 -0
  839. package/node_modules/zca-js/dist/apis/removeGroupBlockedMember.d.ts +2 -0
  840. package/node_modules/zca-js/dist/apis/removeGroupBlockedMember.js +28 -0
  841. package/node_modules/zca-js/dist/apis/removeGroupDeputy.d.ts +2 -0
  842. package/node_modules/zca-js/dist/apis/removeGroupDeputy.js +30 -0
  843. package/node_modules/zca-js/dist/apis/removeQuickMessage.d.ts +5 -0
  844. package/node_modules/zca-js/dist/apis/removeQuickMessage.js +27 -0
  845. package/node_modules/zca-js/dist/apis/removeReminder.d.ts +3 -0
  846. package/node_modules/zca-js/dist/apis/removeReminder.js +40 -0
  847. package/node_modules/zca-js/dist/apis/removeUnreadMark.d.ts +8 -0
  848. package/node_modules/zca-js/dist/apis/removeUnreadMark.js +50 -0
  849. package/node_modules/zca-js/dist/apis/removeUserFromGroup.d.ts +4 -0
  850. package/node_modules/zca-js/dist/apis/removeUserFromGroup.js +34 -0
  851. package/node_modules/zca-js/dist/apis/requestSyncMessage.js +18 -0
  852. package/node_modules/zca-js/dist/apis/resetHiddenConversPin.d.ts +2 -0
  853. package/node_modules/zca-js/dist/apis/resetHiddenConversPin.js +20 -0
  854. package/node_modules/zca-js/dist/apis/reuseAvatar.d.ts +2 -0
  855. package/node_modules/zca-js/dist/apis/reuseAvatar.js +26 -0
  856. package/node_modules/zca-js/dist/apis/reviewPendingMemberRequest.d.ts +14 -0
  857. package/node_modules/zca-js/dist/apis/reviewPendingMemberRequest.js +38 -0
  858. package/node_modules/zca-js/dist/apis/scanURL.d.ts +4 -0
  859. package/node_modules/zca-js/dist/apis/scanURL.js +28 -0
  860. package/node_modules/zca-js/dist/apis/searchSticker.d.ts +3 -0
  861. package/node_modules/zca-js/dist/apis/searchSticker.js +28 -0
  862. package/node_modules/zca-js/dist/apis/sendBankCard.d.ts +9 -0
  863. package/node_modules/zca-js/dist/apis/sendBankCard.js +53 -0
  864. package/node_modules/zca-js/dist/apis/sendCard.d.ts +10 -0
  865. package/node_modules/zca-js/dist/apis/sendCard.js +75 -0
  866. package/node_modules/zca-js/dist/apis/sendDeliveredEvent.d.ts +16 -0
  867. package/node_modules/zca-js/dist/apis/sendDeliveredEvent.js +55 -0
  868. package/node_modules/zca-js/dist/apis/sendFriendRequest.d.ts +2 -0
  869. package/node_modules/zca-js/dist/apis/sendFriendRequest.js +39 -0
  870. package/node_modules/zca-js/dist/apis/sendLink.d.ts +10 -0
  871. package/node_modules/zca-js/dist/apis/sendLink.js +78 -0
  872. package/node_modules/zca-js/dist/apis/sendMessage.d.ts +105 -0
  873. package/node_modules/zca-js/dist/apis/sendMessage.js +486 -0
  874. package/node_modules/zca-js/dist/apis/sendReport.d.ts +17 -0
  875. package/node_modules/zca-js/dist/apis/sendReport.js +53 -0
  876. package/node_modules/zca-js/dist/apis/sendSeenEvent.d.ts +16 -0
  877. package/node_modules/zca-js/dist/apis/sendSeenEvent.js +63 -0
  878. package/node_modules/zca-js/dist/apis/sendSticker.d.ts +10 -0
  879. package/node_modules/zca-js/dist/apis/sendSticker.js +74 -0
  880. package/node_modules/zca-js/dist/apis/sendTypingEvent.d.ts +5 -0
  881. package/node_modules/zca-js/dist/apis/sendTypingEvent.js +33 -0
  882. package/node_modules/zca-js/dist/apis/sendVideo.d.ts +35 -0
  883. package/node_modules/zca-js/dist/apis/sendVideo.js +134 -0
  884. package/node_modules/zca-js/dist/apis/sendVoice.d.ts +12 -0
  885. package/node_modules/zca-js/dist/apis/sendVoice.js +89 -0
  886. package/node_modules/zca-js/dist/apis/setHiddenConversations.d.ts +3 -0
  887. package/node_modules/zca-js/dist/apis/setHiddenConversations.js +39 -0
  888. package/node_modules/zca-js/dist/apis/setMute.d.ts +20 -0
  889. package/node_modules/zca-js/dist/apis/setMute.js +67 -0
  890. package/node_modules/zca-js/dist/apis/setPinnedConversations.d.ts +3 -0
  891. package/node_modules/zca-js/dist/apis/setPinnedConversations.js +34 -0
  892. package/node_modules/zca-js/dist/apis/sharePoll.d.ts +2 -0
  893. package/node_modules/zca-js/dist/apis/sharePoll.js +28 -0
  894. package/node_modules/zca-js/dist/apis/unblockUser.d.ts +2 -0
  895. package/node_modules/zca-js/dist/apis/unblockUser.js +28 -0
  896. package/node_modules/zca-js/dist/apis/undo.d.ts +9 -0
  897. package/node_modules/zca-js/dist/apis/undo.js +42 -0
  898. package/node_modules/zca-js/dist/apis/undoFriendRequest.d.ts +2 -0
  899. package/node_modules/zca-js/dist/apis/undoFriendRequest.js +27 -0
  900. package/node_modules/zca-js/dist/apis/updateActiveStatus.d.ts +4 -0
  901. package/node_modules/zca-js/dist/apis/updateActiveStatus.js +27 -0
  902. package/node_modules/zca-js/dist/apis/updateArchivedChatList.d.ts +10 -0
  903. package/node_modules/zca-js/dist/apis/updateArchivedChatList.js +34 -0
  904. package/node_modules/zca-js/dist/apis/updateAutoDeleteChat.d.ts +9 -0
  905. package/node_modules/zca-js/dist/apis/updateAutoDeleteChat.js +40 -0
  906. package/node_modules/zca-js/dist/apis/updateAutoReply.d.ts +15 -0
  907. package/node_modules/zca-js/dist/apis/updateAutoReply.js +38 -0
  908. package/node_modules/zca-js/dist/apis/updateBankAccount.d.ts +9 -0
  909. package/node_modules/zca-js/dist/apis/updateBankAccount.js +31 -0
  910. package/node_modules/zca-js/dist/apis/updateCatalog.d.ts +11 -0
  911. package/node_modules/zca-js/dist/apis/updateCatalog.js +30 -0
  912. package/node_modules/zca-js/dist/apis/updateGroupSettings.d.ts +40 -0
  913. package/node_modules/zca-js/dist/apis/updateGroupSettings.js +43 -0
  914. package/node_modules/zca-js/dist/apis/updateHiddenConversPin.d.ts +2 -0
  915. package/node_modules/zca-js/dist/apis/updateHiddenConversPin.js +30 -0
  916. package/node_modules/zca-js/dist/apis/updateLabels.d.ts +15 -0
  917. package/node_modules/zca-js/dist/apis/updateLabels.js +34 -0
  918. package/node_modules/zca-js/dist/apis/updateLang.d.ts +6 -0
  919. package/node_modules/zca-js/dist/apis/updateLang.js +30 -0
  920. package/node_modules/zca-js/dist/apis/updateProductCatalog.d.ts +25 -0
  921. package/node_modules/zca-js/dist/apis/updateProductCatalog.js +51 -0
  922. package/node_modules/zca-js/dist/apis/updateProfile.d.ts +20 -0
  923. package/node_modules/zca-js/dist/apis/updateProfile.js +43 -0
  924. package/node_modules/zca-js/dist/apis/updateProfileBio.d.ts +2 -0
  925. package/node_modules/zca-js/dist/apis/updateProfileBio.js +27 -0
  926. package/node_modules/zca-js/dist/apis/updateQuickMessage.d.ts +11 -0
  927. package/node_modules/zca-js/dist/apis/updateQuickMessage.js +61 -0
  928. package/node_modules/zca-js/dist/apis/updateSettings.d.ts +16 -0
  929. package/node_modules/zca-js/dist/apis/updateSettings.js +90 -0
  930. package/node_modules/zca-js/dist/apis/upgradeGroupToCommunity.d.ts +2 -0
  931. package/node_modules/zca-js/dist/apis/upgradeGroupToCommunity.js +27 -0
  932. package/node_modules/zca-js/dist/apis/uploadAttachment.d.ts +50 -0
  933. package/node_modules/zca-js/dist/apis/uploadAttachment.js +197 -0
  934. package/node_modules/zca-js/dist/apis/uploadProductPhoto.d.ts +14 -0
  935. package/node_modules/zca-js/dist/apis/uploadProductPhoto.js +50 -0
  936. package/node_modules/zca-js/dist/apis/votePoll.d.ts +5 -0
  937. package/node_modules/zca-js/dist/apis/votePoll.js +29 -0
  938. package/node_modules/zca-js/dist/apis.d.ts +317 -0
  939. package/node_modules/zca-js/dist/apis.js +327 -0
  940. package/node_modules/zca-js/dist/cjs/Errors/ZaloApiError.cjs +11 -0
  941. package/node_modules/zca-js/dist/cjs/Errors/ZaloApiLoginQRAborted.cjs +12 -0
  942. package/node_modules/zca-js/dist/cjs/Errors/ZaloApiLoginQRDeclined.cjs +12 -0
  943. package/node_modules/zca-js/dist/cjs/Errors/ZaloApiMissingImageMetadataGetter.cjs +12 -0
  944. package/node_modules/zca-js/dist/cjs/apis/acceptFriendRequest.cjs +33 -0
  945. package/node_modules/zca-js/dist/cjs/apis/addGroupBlockedMember.cjs +33 -0
  946. package/node_modules/zca-js/dist/cjs/apis/addGroupDeputy.cjs +35 -0
  947. package/node_modules/zca-js/dist/cjs/apis/addPollOptions.cjs +31 -0
  948. package/node_modules/zca-js/dist/cjs/apis/addQuickMessage.cjs +65 -0
  949. package/node_modules/zca-js/dist/cjs/apis/addReaction.cjs +308 -0
  950. package/node_modules/zca-js/dist/cjs/apis/addUnreadMark.cjs +66 -0
  951. package/node_modules/zca-js/dist/cjs/apis/addUserToGroup.cjs +39 -0
  952. package/node_modules/zca-js/dist/cjs/apis/blockUser.cjs +33 -0
  953. package/node_modules/zca-js/dist/cjs/apis/blockViewFeed.cjs +35 -0
  954. package/node_modules/zca-js/dist/cjs/apis/changeAccountAvatar.cjs +57 -0
  955. package/node_modules/zca-js/dist/cjs/apis/changeFriendAlias.cjs +32 -0
  956. package/node_modules/zca-js/dist/cjs/apis/changeGroupAvatar.cjs +49 -0
  957. package/node_modules/zca-js/dist/cjs/apis/changeGroupName.cjs +37 -0
  958. package/node_modules/zca-js/dist/cjs/apis/changeGroupOwner.cjs +35 -0
  959. package/node_modules/zca-js/dist/cjs/apis/createAutoReply.cjs +42 -0
  960. package/node_modules/zca-js/dist/cjs/apis/createBankAccount.cjs +37 -0
  961. package/node_modules/zca-js/dist/cjs/apis/createCatalog.cjs +34 -0
  962. package/node_modules/zca-js/dist/cjs/apis/createGroup.cjs +48 -0
  963. package/node_modules/zca-js/dist/cjs/apis/createNote.cjs +52 -0
  964. package/node_modules/zca-js/dist/cjs/apis/createPoll.cjs +45 -0
  965. package/node_modules/zca-js/dist/cjs/apis/createProductCatalog.cjs +55 -0
  966. package/node_modules/zca-js/dist/cjs/apis/createReminder.cjs +77 -0
  967. package/node_modules/zca-js/dist/cjs/apis/custom.cjs +19 -0
  968. package/node_modules/zca-js/dist/cjs/apis/deleteAutoReply.cjs +34 -0
  969. package/node_modules/zca-js/dist/cjs/apis/deleteAvatar.cjs +32 -0
  970. package/node_modules/zca-js/dist/cjs/apis/deleteBankAccount.cjs +37 -0
  971. package/node_modules/zca-js/dist/cjs/apis/deleteCatalog.cjs +33 -0
  972. package/node_modules/zca-js/dist/cjs/apis/deleteChat.cjs +64 -0
  973. package/node_modules/zca-js/dist/cjs/apis/deleteGroupInviteBox.cjs +32 -0
  974. package/node_modules/zca-js/dist/cjs/apis/deleteMessage.cjs +66 -0
  975. package/node_modules/zca-js/dist/cjs/apis/deleteProductCatalog.cjs +36 -0
  976. package/node_modules/zca-js/dist/cjs/apis/deleteSnapshotMobileMsg.cjs +22 -0
  977. package/node_modules/zca-js/dist/cjs/apis/disableGroupLink.cjs +29 -0
  978. package/node_modules/zca-js/dist/cjs/apis/disperseGroup.cjs +33 -0
  979. package/node_modules/zca-js/dist/cjs/apis/editNote.cjs +51 -0
  980. package/node_modules/zca-js/dist/cjs/apis/editReminder.cjs +75 -0
  981. package/node_modules/zca-js/dist/cjs/apis/enableGroupLink.cjs +30 -0
  982. package/node_modules/zca-js/dist/cjs/apis/fetchAccountInfo.cjs +15 -0
  983. package/node_modules/zca-js/dist/cjs/apis/findUser.cjs +56 -0
  984. package/node_modules/zca-js/dist/cjs/apis/findUserByUsername.cjs +41 -0
  985. package/node_modules/zca-js/dist/cjs/apis/forwardMessage.cjs +129 -0
  986. package/node_modules/zca-js/dist/cjs/apis/getAliasList.cjs +32 -0
  987. package/node_modules/zca-js/dist/cjs/apis/getAllFriends.cjs +48 -0
  988. package/node_modules/zca-js/dist/cjs/apis/getAllGroups.cjs +15 -0
  989. package/node_modules/zca-js/dist/cjs/apis/getArchivedChatList.cjs +28 -0
  990. package/node_modules/zca-js/dist/cjs/apis/getAutoDeleteChat.cjs +26 -0
  991. package/node_modules/zca-js/dist/cjs/apis/getAutoReplyList.cjs +29 -0
  992. package/node_modules/zca-js/dist/cjs/apis/getAvatarList.cjs +33 -0
  993. package/node_modules/zca-js/dist/cjs/apis/getAvatarUrlProfile.cjs +44 -0
  994. package/node_modules/zca-js/dist/cjs/apis/getBizAccount.cjs +32 -0
  995. package/node_modules/zca-js/dist/cjs/apis/getCatalogList.cjs +37 -0
  996. package/node_modules/zca-js/dist/cjs/apis/getCloseFriends.cjs +25 -0
  997. package/node_modules/zca-js/dist/cjs/apis/getContext.cjs +9 -0
  998. package/node_modules/zca-js/dist/cjs/apis/getCookie.cjs +14 -0
  999. package/node_modules/zca-js/dist/cjs/apis/getCrossDB.cjs +22 -0
  1000. package/node_modules/zca-js/dist/cjs/apis/getFriendBoardList.cjs +31 -0
  1001. package/node_modules/zca-js/dist/cjs/apis/getFriendOnlines.cjs +40 -0
  1002. package/node_modules/zca-js/dist/cjs/apis/getFriendRecommendations.cjs +32 -0
  1003. package/node_modules/zca-js/dist/cjs/apis/getFriendRequestStatus.cjs +30 -0
  1004. package/node_modules/zca-js/dist/cjs/apis/getFullAvatar.cjs +30 -0
  1005. package/node_modules/zca-js/dist/cjs/apis/getGroupBlockedMember.cjs +34 -0
  1006. package/node_modules/zca-js/dist/cjs/apis/getGroupChatHistory.cjs +51 -0
  1007. package/node_modules/zca-js/dist/cjs/apis/getGroupInfo.cjs +37 -0
  1008. package/node_modules/zca-js/dist/cjs/apis/getGroupInviteBoxInfo.cjs +43 -0
  1009. package/node_modules/zca-js/dist/cjs/apis/getGroupInviteBoxList.cjs +36 -0
  1010. package/node_modules/zca-js/dist/cjs/apis/getGroupLinkDetail.cjs +30 -0
  1011. package/node_modules/zca-js/dist/cjs/apis/getGroupLinkInfo.cjs +33 -0
  1012. package/node_modules/zca-js/dist/cjs/apis/getGroupMembersInfo.cjs +29 -0
  1013. package/node_modules/zca-js/dist/cjs/apis/getHiddenConversations.cjs +28 -0
  1014. package/node_modules/zca-js/dist/cjs/apis/getLabels.cjs +33 -0
  1015. package/node_modules/zca-js/dist/cjs/apis/getListBank.cjs +25 -0
  1016. package/node_modules/zca-js/dist/cjs/apis/getListBankAccount.cjs +32 -0
  1017. package/node_modules/zca-js/dist/cjs/apis/getListBoard.cjs +59 -0
  1018. package/node_modules/zca-js/dist/cjs/apis/getListDevice.cjs +27 -0
  1019. package/node_modules/zca-js/dist/cjs/apis/getListReminder.cjs +61 -0
  1020. package/node_modules/zca-js/dist/cjs/apis/getMultiUsersByPhones.cjs +53 -0
  1021. package/node_modules/zca-js/dist/cjs/apis/getMute.cjs +27 -0
  1022. package/node_modules/zca-js/dist/cjs/apis/getOwnId.cjs +9 -0
  1023. package/node_modules/zca-js/dist/cjs/apis/getPendingGroupMembers.cjs +32 -0
  1024. package/node_modules/zca-js/dist/cjs/apis/getPinConversations.cjs +27 -0
  1025. package/node_modules/zca-js/dist/cjs/apis/getPollDetail.cjs +35 -0
  1026. package/node_modules/zca-js/dist/cjs/apis/getProductCatalogList.cjs +38 -0
  1027. package/node_modules/zca-js/dist/cjs/apis/getQR.cjs +34 -0
  1028. package/node_modules/zca-js/dist/cjs/apis/getQuickMessageList.cjs +29 -0
  1029. package/node_modules/zca-js/dist/cjs/apis/getRelatedFriendGroup.cjs +35 -0
  1030. package/node_modules/zca-js/dist/cjs/apis/getReminder.cjs +30 -0
  1031. package/node_modules/zca-js/dist/cjs/apis/getReminderResponses.cjs +29 -0
  1032. package/node_modules/zca-js/dist/cjs/apis/getSentFriendRequest.cjs +29 -0
  1033. package/node_modules/zca-js/dist/cjs/apis/getSettings.cjs +25 -0
  1034. package/node_modules/zca-js/dist/cjs/apis/getStickerCategoryDetail.cjs +29 -0
  1035. package/node_modules/zca-js/dist/cjs/apis/getStickers.cjs +45 -0
  1036. package/node_modules/zca-js/dist/cjs/apis/getStickersDetail.cjs +45 -0
  1037. package/node_modules/zca-js/dist/cjs/apis/getUnreadMark.cjs +35 -0
  1038. package/node_modules/zca-js/dist/cjs/apis/getUserInfo.cjs +58 -0
  1039. package/node_modules/zca-js/dist/cjs/apis/inviteUserToGroups.cjs +35 -0
  1040. package/node_modules/zca-js/dist/cjs/apis/joinGroupInviteBox.cjs +30 -0
  1041. package/node_modules/zca-js/dist/cjs/apis/joinGroupLink.cjs +32 -0
  1042. package/node_modules/zca-js/dist/cjs/apis/keepAlive.cjs +27 -0
  1043. package/node_modules/zca-js/dist/cjs/apis/lastOnline.cjs +31 -0
  1044. package/node_modules/zca-js/dist/cjs/apis/leaveGroup.cjs +38 -0
  1045. package/node_modules/zca-js/dist/cjs/apis/listen.cjs +440 -0
  1046. package/node_modules/zca-js/dist/cjs/apis/lockPoll.cjs +33 -0
  1047. package/node_modules/zca-js/dist/cjs/apis/login.cjs +102 -0
  1048. package/node_modules/zca-js/dist/cjs/apis/loginQR.cjs +368 -0
  1049. package/node_modules/zca-js/dist/cjs/apis/logoutV2.cjs +83 -0
  1050. package/node_modules/zca-js/dist/cjs/apis/lostFocus.cjs +28 -0
  1051. package/node_modules/zca-js/dist/cjs/apis/parseLink.cjs +32 -0
  1052. package/node_modules/zca-js/dist/cjs/apis/pullMobileMsg.cjs +26 -0
  1053. package/node_modules/zca-js/dist/cjs/apis/registerCatalog.cjs +32 -0
  1054. package/node_modules/zca-js/dist/cjs/apis/rejectFriendRequest.cjs +32 -0
  1055. package/node_modules/zca-js/dist/cjs/apis/removeFriend.cjs +33 -0
  1056. package/node_modules/zca-js/dist/cjs/apis/removeFriendAlias.cjs +29 -0
  1057. package/node_modules/zca-js/dist/cjs/apis/removeGroupBlockedMember.cjs +33 -0
  1058. package/node_modules/zca-js/dist/cjs/apis/removeGroupDeputy.cjs +35 -0
  1059. package/node_modules/zca-js/dist/cjs/apis/removeQuickMessage.cjs +32 -0
  1060. package/node_modules/zca-js/dist/cjs/apis/removeReminder.cjs +54 -0
  1061. package/node_modules/zca-js/dist/cjs/apis/removeUnreadMark.cjs +64 -0
  1062. package/node_modules/zca-js/dist/cjs/apis/removeUserFromGroup.cjs +39 -0
  1063. package/node_modules/zca-js/dist/cjs/apis/requestSyncMessage.cjs +22 -0
  1064. package/node_modules/zca-js/dist/cjs/apis/resetHiddenConversPin.cjs +25 -0
  1065. package/node_modules/zca-js/dist/cjs/apis/reuseAvatar.cjs +31 -0
  1066. package/node_modules/zca-js/dist/cjs/apis/reviewPendingMemberRequest.cjs +43 -0
  1067. package/node_modules/zca-js/dist/cjs/apis/scanURL.cjs +33 -0
  1068. package/node_modules/zca-js/dist/cjs/apis/searchSticker.cjs +33 -0
  1069. package/node_modules/zca-js/dist/cjs/apis/sendBankCard.cjs +68 -0
  1070. package/node_modules/zca-js/dist/cjs/apis/sendCard.cjs +89 -0
  1071. package/node_modules/zca-js/dist/cjs/apis/sendDeliveredEvent.cjs +69 -0
  1072. package/node_modules/zca-js/dist/cjs/apis/sendFriendRequest.cjs +44 -0
  1073. package/node_modules/zca-js/dist/cjs/apis/sendLink.cjs +92 -0
  1074. package/node_modules/zca-js/dist/cjs/apis/sendMessage.cjs +500 -0
  1075. package/node_modules/zca-js/dist/cjs/apis/sendReport.cjs +67 -0
  1076. package/node_modules/zca-js/dist/cjs/apis/sendSeenEvent.cjs +77 -0
  1077. package/node_modules/zca-js/dist/cjs/apis/sendSticker.cjs +88 -0
  1078. package/node_modules/zca-js/dist/cjs/apis/sendTypingEvent.cjs +47 -0
  1079. package/node_modules/zca-js/dist/cjs/apis/sendVideo.cjs +148 -0
  1080. package/node_modules/zca-js/dist/cjs/apis/sendVoice.cjs +103 -0
  1081. package/node_modules/zca-js/dist/cjs/apis/setHiddenConversations.cjs +53 -0
  1082. package/node_modules/zca-js/dist/cjs/apis/setMute.cjs +81 -0
  1083. package/node_modules/zca-js/dist/cjs/apis/setPinnedConversations.cjs +48 -0
  1084. package/node_modules/zca-js/dist/cjs/apis/sharePoll.cjs +33 -0
  1085. package/node_modules/zca-js/dist/cjs/apis/unblockUser.cjs +33 -0
  1086. package/node_modules/zca-js/dist/cjs/apis/undo.cjs +56 -0
  1087. package/node_modules/zca-js/dist/cjs/apis/undoFriendRequest.cjs +32 -0
  1088. package/node_modules/zca-js/dist/cjs/apis/updateActiveStatus.cjs +32 -0
  1089. package/node_modules/zca-js/dist/cjs/apis/updateArchivedChatList.cjs +39 -0
  1090. package/node_modules/zca-js/dist/cjs/apis/updateAutoDeleteChat.cjs +54 -0
  1091. package/node_modules/zca-js/dist/cjs/apis/updateAutoReply.cjs +43 -0
  1092. package/node_modules/zca-js/dist/cjs/apis/updateBankAccount.cjs +36 -0
  1093. package/node_modules/zca-js/dist/cjs/apis/updateCatalog.cjs +35 -0
  1094. package/node_modules/zca-js/dist/cjs/apis/updateGroupSettings.cjs +48 -0
  1095. package/node_modules/zca-js/dist/cjs/apis/updateHiddenConversPin.cjs +35 -0
  1096. package/node_modules/zca-js/dist/cjs/apis/updateLabels.cjs +39 -0
  1097. package/node_modules/zca-js/dist/cjs/apis/updateLang.cjs +35 -0
  1098. package/node_modules/zca-js/dist/cjs/apis/updateProductCatalog.cjs +56 -0
  1099. package/node_modules/zca-js/dist/cjs/apis/updateProfile.cjs +48 -0
  1100. package/node_modules/zca-js/dist/cjs/apis/updateProfileBio.cjs +32 -0
  1101. package/node_modules/zca-js/dist/cjs/apis/updateQuickMessage.cjs +66 -0
  1102. package/node_modules/zca-js/dist/cjs/apis/updateSettings.cjs +95 -0
  1103. package/node_modules/zca-js/dist/cjs/apis/upgradeGroupToCommunity.cjs +32 -0
  1104. package/node_modules/zca-js/dist/cjs/apis/uploadAttachment.cjs +211 -0
  1105. package/node_modules/zca-js/dist/cjs/apis/uploadProductPhoto.cjs +55 -0
  1106. package/node_modules/zca-js/dist/cjs/apis/votePoll.cjs +34 -0
  1107. package/node_modules/zca-js/dist/cjs/apis.cjs +332 -0
  1108. package/node_modules/zca-js/dist/cjs/context.cjs +34 -0
  1109. package/node_modules/zca-js/dist/cjs/index.cjs +159 -0
  1110. package/node_modules/zca-js/dist/cjs/models/AutoReply.cjs +9 -0
  1111. package/node_modules/zca-js/dist/cjs/models/Bank.cjs +263 -0
  1112. package/node_modules/zca-js/dist/cjs/models/Board.cjs +8 -0
  1113. package/node_modules/zca-js/dist/cjs/models/DeliveredMessage.cjs +23 -0
  1114. package/node_modules/zca-js/dist/cjs/models/Enum.cjs +27 -0
  1115. package/node_modules/zca-js/dist/cjs/models/FriendEvent.cjs +87 -0
  1116. package/node_modules/zca-js/dist/cjs/models/Group.cjs +13 -0
  1117. package/node_modules/zca-js/dist/cjs/models/GroupEvent.cjs +94 -0
  1118. package/node_modules/zca-js/dist/cjs/models/Message.cjs +35 -0
  1119. package/node_modules/zca-js/dist/cjs/models/Reaction.cjs +74 -0
  1120. package/node_modules/zca-js/dist/cjs/models/Reminder.cjs +9 -0
  1121. package/node_modules/zca-js/dist/cjs/models/SeenMessage.cjs +23 -0
  1122. package/node_modules/zca-js/dist/cjs/models/Typing.cjs +23 -0
  1123. package/node_modules/zca-js/dist/cjs/models/Undo.cjs +16 -0
  1124. package/node_modules/zca-js/dist/cjs/models/ZBusiness.cjs +39 -0
  1125. package/node_modules/zca-js/dist/cjs/update.cjs +34 -0
  1126. package/node_modules/zca-js/dist/cjs/utils.cjs +703 -0
  1127. package/node_modules/zca-js/dist/cjs/zalo.cjs +112 -0
  1128. package/node_modules/zca-js/dist/context.d.ts +179 -0
  1129. package/node_modules/zca-js/dist/context.js +28 -0
  1130. package/node_modules/zca-js/dist/index.d.ts +166 -0
  1131. package/node_modules/zca-js/dist/index.js +14 -0
  1132. package/node_modules/zca-js/dist/models/Attachment.d.ts +9 -0
  1133. package/node_modules/zca-js/dist/models/Attachment.js +1 -0
  1134. package/node_modules/zca-js/dist/models/AutoReply.d.ts +20 -0
  1135. package/node_modules/zca-js/dist/models/AutoReply.js +7 -0
  1136. package/node_modules/zca-js/dist/models/Bank.d.ts +291 -0
  1137. package/node_modules/zca-js/dist/models/Bank.js +262 -0
  1138. package/node_modules/zca-js/dist/models/Board.d.ts +60 -0
  1139. package/node_modules/zca-js/dist/models/Board.js +6 -0
  1140. package/node_modules/zca-js/dist/models/Catalog.d.ts +16 -0
  1141. package/node_modules/zca-js/dist/models/Catalog.js +1 -0
  1142. package/node_modules/zca-js/dist/models/DeliveredMessage.d.ts +27 -0
  1143. package/node_modules/zca-js/dist/models/DeliveredMessage.js +17 -0
  1144. package/node_modules/zca-js/dist/models/Enum.d.ts +21 -0
  1145. package/node_modules/zca-js/dist/models/Enum.js +25 -0
  1146. package/node_modules/zca-js/dist/models/FriendEvent.d.ts +107 -0
  1147. package/node_modules/zca-js/dist/models/FriendEvent.js +83 -0
  1148. package/node_modules/zca-js/dist/models/Group.d.ts +125 -0
  1149. package/node_modules/zca-js/dist/models/Group.js +11 -0
  1150. package/node_modules/zca-js/dist/models/GroupEvent.d.ts +178 -0
  1151. package/node_modules/zca-js/dist/models/GroupEvent.js +90 -0
  1152. package/node_modules/zca-js/dist/models/Label.d.ts +10 -0
  1153. package/node_modules/zca-js/dist/models/Label.js +1 -0
  1154. package/node_modules/zca-js/dist/models/Message.d.ts +91 -0
  1155. package/node_modules/zca-js/dist/models/Message.js +29 -0
  1156. package/node_modules/zca-js/dist/models/ProductCatalog.d.ts +17 -0
  1157. package/node_modules/zca-js/dist/models/ProductCatalog.js +1 -0
  1158. package/node_modules/zca-js/dist/models/QuickMessage.d.ts +25 -0
  1159. package/node_modules/zca-js/dist/models/QuickMessage.js +1 -0
  1160. package/node_modules/zca-js/dist/models/Reaction.d.ts +85 -0
  1161. package/node_modules/zca-js/dist/models/Reaction.js +70 -0
  1162. package/node_modules/zca-js/dist/models/Reminder.d.ts +51 -0
  1163. package/node_modules/zca-js/dist/models/Reminder.js +7 -0
  1164. package/node_modules/zca-js/dist/models/SeenMessage.d.ts +26 -0
  1165. package/node_modules/zca-js/dist/models/SeenMessage.js +17 -0
  1166. package/node_modules/zca-js/dist/models/Sticker.d.ts +27 -0
  1167. package/node_modules/zca-js/dist/models/Sticker.js +1 -0
  1168. package/node_modules/zca-js/dist/models/Typing.d.ts +24 -0
  1169. package/node_modules/zca-js/dist/models/Typing.js +17 -0
  1170. package/node_modules/zca-js/dist/models/Undo.d.ts +34 -0
  1171. package/node_modules/zca-js/dist/models/Undo.js +12 -0
  1172. package/node_modules/zca-js/dist/models/User.d.ts +70 -0
  1173. package/node_modules/zca-js/dist/models/User.js +1 -0
  1174. package/node_modules/zca-js/dist/models/ZBusiness.d.ts +22 -0
  1175. package/node_modules/zca-js/dist/models/ZBusiness.js +35 -0
  1176. package/node_modules/zca-js/dist/models/index.d.ts +22 -0
  1177. package/node_modules/zca-js/dist/models/index.js +22 -0
  1178. package/node_modules/zca-js/dist/update.d.ts +2 -0
  1179. package/node_modules/zca-js/dist/update.js +29 -0
  1180. package/node_modules/zca-js/dist/utils.d.ts +167 -0
  1181. package/node_modules/zca-js/dist/utils.js +719 -0
  1182. package/node_modules/zca-js/dist/zalo.d.ts +41 -0
  1183. package/node_modules/zca-js/dist/zalo.js +107 -0
  1184. package/node_modules/zca-js/eslint.config.js +21 -0
  1185. package/node_modules/zca-js/index.d.ts +2 -0
  1186. package/node_modules/zca-js/package.json +78 -0
  1187. package/node_modules/zca-js/rollup.config.js +28 -0
  1188. package/package.json +80 -62
  1189. package/patches/zca-js+2.2.0.patch +1677 -0
  1190. package/src/cli.test.js +34 -5
  1191. package/src/commands/account.js +98 -5
  1192. package/src/commands/auto-reply.js +30 -10
  1193. package/src/commands/catalog.js +5 -4
  1194. package/src/commands/conv.js +551 -14
  1195. package/src/commands/friend.js +19 -7
  1196. package/src/commands/group.js +82 -31
  1197. package/src/commands/listen.js +624 -68
  1198. package/src/commands/login.js +179 -20
  1199. package/src/commands/mcp.js +422 -44
  1200. package/src/commands/msg.js +1288 -140
  1201. package/src/commands/oa-listen.js +130 -20
  1202. package/src/commands/oa.js +26 -5
  1203. package/src/commands/poll.js +7 -2
  1204. package/src/commands/profile.js +3 -2
  1205. package/src/commands/sync.js +2052 -0
  1206. package/src/core/accounts.js +69 -6
  1207. package/src/core/cached-message.js +200 -0
  1208. package/src/core/coverage.js +90 -0
  1209. package/src/core/current-user-names.js +104 -0
  1210. package/src/core/daemon-account.js +61 -0
  1211. package/src/core/daemon-channel.js +638 -0
  1212. package/src/core/daemon-sync.js +181 -0
  1213. package/src/core/db.js +1625 -0
  1214. package/src/core/forward.js +112 -0
  1215. package/src/core/group-history.js +248 -0
  1216. package/src/core/group-members.js +68 -0
  1217. package/src/core/group-settings.js +250 -0
  1218. package/src/core/history-fetch.js +208 -0
  1219. package/src/core/listener-lifecycle.js +90 -0
  1220. package/src/core/live-api.js +47 -0
  1221. package/src/core/live-store.js +733 -0
  1222. package/src/core/lock.js +129 -0
  1223. package/src/core/logout.js +289 -0
  1224. package/src/core/offline-queue.js +194 -0
  1225. package/src/core/pin.js +222 -0
  1226. package/src/core/read-state.js +318 -0
  1227. package/src/core/receipts.js +679 -0
  1228. package/src/core/recent-conversations.js +30 -0
  1229. package/src/core/self-heal.js +522 -0
  1230. package/src/core/socket-tap.js +154 -0
  1231. package/src/core/sync-v2/assets.js +181 -0
  1232. package/src/core/sync-v2/board.js +338 -0
  1233. package/src/core/sync-v2/conv-state.js +152 -0
  1234. package/src/core/sync-v2/gap-advice.js +110 -0
  1235. package/src/core/sync-v2/gid.js +106 -0
  1236. package/src/core/sync-v2/index.js +1259 -0
  1237. package/src/core/sync-v2/keepalive.js +177 -0
  1238. package/src/core/sync-v2/media.js +704 -0
  1239. package/src/core/sync-v2/message-types.js +522 -0
  1240. package/src/core/sync-v2/plan.js +95 -0
  1241. package/src/core/sync-v2/reactions.js +236 -0
  1242. package/src/core/sync-v2/renewlink.js +124 -0
  1243. package/src/core/sync-v2/senders.js +61 -0
  1244. package/src/core/sync-v2/zcloud-cipher.js +88 -0
  1245. package/src/core/sync-v2/zcloud.js +675 -0
  1246. package/src/core/sync.js +540 -0
  1247. package/src/core/zalo-client.js +179 -61
  1248. package/src/core/zca-custom.js +78 -0
  1249. package/src/index.js +15 -3
  1250. package/src/mcp/mcp-config.js +40 -3
  1251. package/src/mcp/mcp-http-transport.js +12 -2
  1252. package/src/mcp/mcp-server.js +5 -2
  1253. package/src/mcp/mcp-tools.js +969 -99
  1254. package/src/mcp/message-buffer.js +38 -8
  1255. package/src/mcp/message-buffer.test.js +67 -15
  1256. package/src/mcp/notifier.js +17 -1
  1257. package/src/mcp/notifier.test.js +6 -0
  1258. package/src/mcp/sync-jobs.js +82 -0
  1259. package/src/mcp/thread-name-cache.js +14 -1
  1260. package/src/mcp/thread-name-cache.test.js +4 -1
  1261. package/src/utils/bank-helpers.js +8 -3
  1262. package/src/utils/device-fingerprint.js +72 -0
  1263. package/src/utils/mentions.js +140 -0
  1264. package/src/utils/my-documents.js +95 -0
  1265. package/src/utils/open-file.js +49 -0
  1266. package/src/utils/output.js +75 -4
  1267. package/src/utils/parse-options.js +56 -0
  1268. package/src/utils/qr-http-server.js +44 -7
  1269. package/src/utils/quote.js +203 -0
  1270. package/src/utils/thread-type.js +72 -0
  1271. package/src/utils/update-check.js +42 -1
  1272. package/src/utils/urgency.js +29 -0
  1273. package/src/mcp/media-downloader.js +0 -191
  1274. package/src/mcp/media-downloader.test.js +0 -45
  1275. package/src/utils/qr-display.test.js +0 -97
@@ -5,8 +5,32 @@
5
5
 
6
6
  import { appendFileSync, mkdirSync, existsSync } from "fs";
7
7
  import { resolve, join } from "path";
8
- import { getApi, autoLogin, clearSession } from "../core/zalo-client.js";
8
+ import { getApi, clearSession } from "../core/zalo-client.js";
9
9
  import { success, error, info, warning } from "../utils/output.js";
10
+ import { parseAccountId, selectDaemonAccount, loginDaemonAccount } from "../core/daemon-account.js";
11
+ import { CONFIG_DIR } from "../core/credentials.js";
12
+ import { acquireLock, releaseLock } from "../core/lock.js";
13
+ import { createStageLock, startDaemonChannel } from "../core/daemon-channel.js";
14
+ import { createSyncRunners } from "../core/daemon-sync.js";
15
+ import { createSocketTap } from "../core/socket-tap.js";
16
+ import { createSelfHeal } from "../core/self-heal.js";
17
+ import { createReadStateSync, readStateEvent } from "../core/read-state.js";
18
+ import { initDb, getPendingSyncGaps } from "../core/db.js";
19
+ import {
20
+ storeLiveMessage,
21
+ storeLiveDelete,
22
+ storeLiveReaction,
23
+ storeLiveUndo,
24
+ storeGroupEvent,
25
+ storeGroupEventRow,
26
+ noteBoardChange,
27
+ storeReceipts,
28
+ isRemovalMessage,
29
+ } from "../core/live-store.js";
30
+ import { downloadSyncedMedia } from "../core/sync-v2/media.js";
31
+ import { SyncManager } from "../core/sync.js";
32
+ import { describeGap } from "../core/sync-v2/gap-advice.js";
33
+ import { createDeliveredReceipts } from "../core/receipts.js";
10
34
 
11
35
  /** Thread types matching zca-js ThreadType enum */
12
36
  const THREAD_USER = 0;
@@ -31,12 +55,17 @@ const CLOSE_DUPLICATE = 3000;
31
55
  export function registerListenCommand(program) {
32
56
  program
33
57
  .command("listen")
58
+ .option(
59
+ "--account <id>",
60
+ "Pin this daemon to an exact registered account ID (default: active at startup)",
61
+ parseAccountId,
62
+ )
34
63
  .description(
35
64
  "Listen for all Zalo events (messages, friend requests, group events) via one WebSocket. Auto-reconnect enabled.",
36
65
  )
37
66
  .option(
38
67
  "-e, --events <types>",
39
- "Comma-separated event types: message,friend,group,reaction (default: message,friend)",
68
+ "Comma-separated event types: message,friend,group,reaction,read (default: message,friend)",
40
69
  "message,friend",
41
70
  )
42
71
  .option("-f, --filter <type>", "Message filter: user (DM only), group (groups only), all", "all")
@@ -44,13 +73,232 @@ export function registerListenCommand(program) {
44
73
  .option("--no-self", "Exclude self-sent messages")
45
74
  .option("--auto-accept", "Auto-accept incoming friend requests")
46
75
  .option("--save <dir>", "Save messages locally as JSONL files (one file per thread, e.g. --save ./zalo-logs)")
76
+ .option(
77
+ "--no-delivered-receipts",
78
+ "Do not acknowledge received messages as delivered (every Zalo client does; seen receipts are never sent)",
79
+ )
80
+ .option(
81
+ "--no-self-heal",
82
+ "Do not pull what a dropped socket missed from Zalo's offline queue on reconnect (the default does, as Zalo Web does, on this socket and with no phone tap)",
83
+ )
47
84
  .action(async (opts) => {
85
+ let activeAcc;
86
+ try {
87
+ activeAcc = selectDaemonAccount(opts.account);
88
+ } catch (e) {
89
+ error(e.message);
90
+ process.exit(1);
91
+ }
92
+ const accountDir = join(CONFIG_DIR, "accounts", activeAcc.ownId);
93
+ if (!acquireLock(accountDir)) {
94
+ error(`Another listen daemon is already running for account ${activeAcc.ownId}.`);
95
+ process.exit(1);
96
+ }
97
+ /**
98
+ * Stop the daemon channel and release the lock before an exit that
99
+ * skips the SIGINT path, as `mcp start`'s dropLock() does -- so no
100
+ * channel file or lock is left for the next start to reclaim.
101
+ */
102
+ const dropLock = () => {
103
+ try {
104
+ channel?.stop();
105
+ } catch {
106
+ /* not started yet: the socket closed during start-up */
107
+ }
108
+ try {
109
+ releaseLock(accountDir);
110
+ } catch (e) {
111
+ console.error(`[listen] Failed to release lock: ${e.message}`);
112
+ }
113
+ };
114
+ try {
115
+ await loginDaemonAccount(activeAcc);
116
+ } catch (e) {
117
+ releaseLock(accountDir);
118
+ error(`Pinned account login failed: ${e.message}`);
119
+ process.exit(1);
120
+ }
121
+ try {
122
+ initDb(join(accountDir, "zalo.db"));
123
+ info(`Local database initialized at ${accountDir}/zalo.db`);
124
+ } catch (err) {
125
+ releaseLock(accountDir);
126
+ error(`Failed to initialize local DB: ${err.message}`);
127
+ process.exit(1);
128
+ }
129
+
130
+ // Gap tracking: a small per-account SyncManager shares zalo.db with
131
+ // this listener so a crash, manual close, or WS drop gets its window
132
+ // recorded, and the owner is told which `sync` run closes it —
133
+ // instead of silently losing whatever arrived while we weren't
134
+ // connected. See reportGap() for why the daemon reports rather than
135
+ // backfilling on its own.
136
+ const syncManager = new SyncManager(getApi(), activeAcc.ownId);
137
+ const HEARTBEAT_MS = 60 * 1000;
138
+ let lastHeartbeatAt = 0;
139
+ // The one place that knows whether the socket is actually up. The
140
+ // `connected`/`disconnected` handlers below own it; everything else
141
+ // reads it. Starts null: nothing is claimed before the first connect.
142
+ let downSince = null;
143
+ // Set by SIGINT before anything is torn down. listener.stop() emits
144
+ // closed(1000), which is indistinguishable from a real drop, so
145
+ // without this the shutdown path runs the RECOVERY path: five
146
+ // seconds after the user sees "Stopped", the process re-logged in
147
+ // and opened a fresh socket -- with daemon.lock already released and
148
+ // daemon-channel.json already deleted. The next listen/mcp/sync then
149
+ // took the free lock and the two sessions flapped over code 3000.
150
+ let stopping = false;
151
+ function heartbeat() {
152
+ const now = Date.now();
153
+ if (now - lastHeartbeatAt < HEARTBEAT_MS) return;
154
+ lastHeartbeatAt = now;
155
+ // markConnected() means "coverage is good up to now". Stamping
156
+ // that on a timer with no liveness check kept advancing
157
+ // lastConnectedAt while the socket was down -- through zca-js's
158
+ // internal retry, the 5s re-login wait and the 30s retry wait --
159
+ // so a crash mid-outage made the NEXT launch compute its
160
+ // startup-gap from a moment we were not actually connected, and
161
+ // the outage vanished.
162
+ if (downSince !== null) return;
163
+ syncManager.markConnected();
164
+ }
165
+
166
+ /**
167
+ * Record a window we were not connected for, and tell the owner how
168
+ * to close it.
169
+ *
170
+ * How the daemon self-heals
171
+ * -------------------------
172
+ * A window the socket was down for is first RECORDED here, then
173
+ * closed from Zalo's offline queue -- the way Zalo Web closes it on
174
+ * every connect. After each handshake the daemon asks each message
175
+ * queue (510_1, 511_1) for everything after the last message it
176
+ * stored, pages until the server says there is no more, and writes
177
+ * what comes back insert-if-absent (src/core/self-heal.js). The gap
178
+ * is resolved only for the window that pull covered; whatever it
179
+ * could not reach stays pending, named with the `sync` command that
180
+ * closes it.
181
+ *
182
+ * Three facts shape it:
183
+ *
184
+ * - The socket is shared fine. The catch-up runs on this daemon's
185
+ * own socket while live traffic keeps arriving and being stored;
186
+ * nothing is stopped or reopened.
187
+ * - One of OUR stages at a time. It holds the daemon channel's
188
+ * stage lock, so it waits behind a running `zalo-agent sync`
189
+ * stage or `msg history` fetch, and a stage arriving meanwhile is
190
+ * refused (409) rather than run beside it. Two stages sharing the
191
+ * socket is what is measured to break the restore (the ordering
192
+ * note in src/commands/sync.js).
193
+ * - The phone tap is only for the full restore. The offline queue
194
+ * is served by Zalo's servers; `transfer-sync-v2` (cmd 590) is
195
+ * the one step that needs "ĐỒNG BỘ NGAY" on the owner's phone,
196
+ * and the daemon never starts it on its own -- only a
197
+ * `zalo-agent sync` someone typed does. (The self-heal this
198
+ * replaces called the retired pullMobileMsg/getCrossDB pair,
199
+ * MEASURED 2026-09-20 to have zero call sites in Zalo Web: it
200
+ * announced an attempt, said nothing more, and the gap stayed
201
+ * pending forever.)
202
+ *
203
+ * With `--no-self-heal` a gap is recorded and reported as before,
204
+ * and closes only when a `sync` run does, via
205
+ * `recordRestoreSuccess(win, {resolveGaps: true})`.
206
+ */
207
+ /** @returns {number|null} the recorded gap's id, or null when none was filed. */
208
+ function reportGap(fromTs, reason) {
209
+ if (!fromTs) return null;
210
+ const toTs = Date.now();
211
+ const gapId = syncManager.recordGap(fromTs, toTs, reason);
212
+ if (!gapId) return null; // under recordGap's 1-second floor
213
+ let pendingGaps = [];
214
+ try {
215
+ pendingGaps = getPendingSyncGaps();
216
+ } catch {
217
+ // Advice degrades to this gap alone — never worth crashing a listener.
218
+ }
219
+ // recordGap() clamps to MAX_GAP_MS, so re-read the stored row
220
+ // rather than trusting fromTs: a 30-day-old lastConnectedAt is
221
+ // filed as a 14-day gap, and `--from` must match what was filed.
222
+ const stored = pendingGaps.find((g) => String(g.id) === String(gapId));
223
+ const advice = describeGap({
224
+ fromTs: stored ? Number(stored.fromTs) : fromTs,
225
+ toTs: stored ? Number(stored.toTs) : toTs,
226
+ reason,
227
+ pendingGaps,
228
+ });
229
+
230
+ warning(`Coverage gap (${advice.reason}, ${advice.span}): ${advice.from} → ${advice.to}`);
231
+ if (opts.selfHeal !== false) {
232
+ // The self-heal runs on the next handshake and reports what
233
+ // it recovered, and what it could not, on its own.
234
+ info(" Recovering it now from Zalo's offline queue on this socket (no phone tap needed).");
235
+ info(` Whatever that cannot reach stays pending for: ${advice.command}`);
236
+ return gapId;
237
+ }
238
+ info(" Messages that arrived in that window are not in the local cache.");
239
+ info(` To restore them: ${advice.command}`);
240
+ // No longer "stop this daemon first". That run asks this daemon
241
+ // to perform the restore on the socket it already holds, so
242
+ // nothing is torn down -- which matters here more than anywhere,
243
+ // because the stop/start recipe opened a fresh gap of its own
244
+ // while closing this one. The phone tap is NOT removed by that;
245
+ // only the second WebSocket is.
246
+ info(" That run uses this daemon's own socket while it keeps listening, so nothing");
247
+ info(' needs stopping. It does need a tap on "ĐỒNG BỘ NGAY" on your phone.');
248
+ // Load-bearing: recordRestoreSuccess() only clears a gap lying
249
+ // wholly inside the restored window, so a run started from a
250
+ // later date succeeds and leaves this gap pending anyway.
251
+ info(" The gap stays pending until such a run completes.");
252
+ if (advice.allCommand) {
253
+ info(
254
+ ` ${advice.otherPending} other gap(s) are also pending — ` +
255
+ `${advice.allCommand} covers all ${advice.pendingCount}.`,
256
+ );
257
+ }
258
+ return gapId;
259
+ }
260
+
261
+ // On startup, report whatever window we were not connected for.
262
+ //
263
+ // This used to fire only when the process had been down longer than
264
+ // ~30s, on the theory that a quick restart is not worth reporting.
265
+ // That theory is wrong in the one case that matters: a crash under a
266
+ // supervisor restarts in seconds, lands inside the old threshold,
267
+ // and the listener then called markConnected() -- asserting it was
268
+ // caught up over a window it never saw. Messages lost to a 5-second
269
+ // restart are just as lost as messages lost to a 5-minute one, and
270
+ // nothing else would ever have flagged them.
271
+ //
272
+ // The reconnect path never had this gate. recordGap's own 1-second
273
+ // floor is the only threshold worth keeping, so use it here too.
274
+ // Deliberate restarts stay quiet on their own merits: SIGINT stamps
275
+ // markConnected() on the way out, so a clean stop/start reports the
276
+ // true downtime rather than a heartbeat-rounded guess.
277
+ const lastConnectedAt = syncManager.getLastConnectedAt();
278
+ if (!reportGap(lastConnectedAt, "startup-gap")) {
279
+ // Nothing filed -- no prior connection on record, or a gap under
280
+ // the floor. Either way we are caught up as of now.
281
+ syncManager.markConnected();
282
+ }
283
+ const heartbeatTimer = setInterval(heartbeat, HEARTBEAT_MS);
284
+
48
285
  const jsonMode = program.opts().json;
49
286
  const startTime = Date.now();
50
287
  let reconnectCount = 0;
51
288
  let eventCount = 0;
52
289
  const enabledEvents = new Set(opts.events.split(",").map((e) => e.trim()));
53
290
 
291
+ // Delivered receipts (deliveredv2): what every Zalo client sends when a
292
+ // message arrives -- Zalo Web included, for our own echoes too. Built
293
+ // once and shared with `mcp start` through src/core/receipts.js, so the
294
+ // two listeners cannot drift apart (AGENTS.md §13). `getApi`, not an
295
+ // api: a re-login replaces it. Seen receipts are never sent from here.
296
+ const deliveredReceipts = createDeliveredReceipts({
297
+ getApi,
298
+ enabled: opts.deliveredReceipts !== false,
299
+ log: (line) => console.error(`[listen] ${line}`),
300
+ });
301
+
54
302
  function uptime() {
55
303
  const s = Math.floor((Date.now() - startTime) / 1000);
56
304
  const h = Math.floor(s / 3600);
@@ -104,51 +352,189 @@ export function registerListenCommand(program) {
104
352
  postWebhook(data);
105
353
  }
106
354
 
355
+ /** Whether --events, --filter or --no-self keep a message off stdout, the webhook and the JSONL. */
356
+ function isMuted(msg) {
357
+ const filteredOut =
358
+ (opts.filter === "user" && msg.type !== THREAD_USER) ||
359
+ (opts.filter === "group" && msg.type !== THREAD_GROUP);
360
+ // --no-self hides our own messages from stdout, the
361
+ // webhook and the JSONL -- it does not delete them from
362
+ // the cache. They are half of every conversation.
363
+ return !enabledEvents.has("message") || filteredOut || (!opts.self && msg.isSelf);
364
+ }
365
+
366
+ /**
367
+ * A message as `listen` reports it: the event object, and its one-line human form.
368
+ *
369
+ * @param {object} msg - the zca-js message event
370
+ * @param {object} [extra] - fields to add, e.g. `{catchUp: true}`
371
+ * @returns {{data: object, human: string}}
372
+ */
373
+ function messageEvent(msg, extra = {}) {
374
+ const rawContent = msg.data.content;
375
+ const isText = typeof rawContent === "string";
376
+ const msgType = msg.data.msgType || null;
377
+ // Build readable display: show type + title/href for non-text
378
+ let displayContent;
379
+ if (isText) {
380
+ displayContent = rawContent;
381
+ } else if (rawContent && typeof rawContent === "object") {
382
+ const parts = [msgType || "attachment"];
383
+ if (rawContent.title) parts.push(`"${rawContent.title}"`);
384
+ if (rawContent.href) parts.push(rawContent.href);
385
+ displayContent = `[${parts.join(" | ")}]`;
386
+ } else {
387
+ displayContent = `[${msgType || "non-text"}]`;
388
+ }
389
+ const data = {
390
+ event: "message",
391
+ msgId: msg.data.msgId,
392
+ cliMsgId: msg.data.cliMsgId,
393
+ threadId: msg.threadId,
394
+ type: msg.type,
395
+ isSelf: msg.isSelf,
396
+ uidFrom: msg.data.uidFrom || null,
397
+ dName: msg.data.dName || null,
398
+ msgType,
399
+ content: rawContent,
400
+ ...extra,
401
+ };
402
+ const dir = msg.isSelf ? "→" : "←";
403
+ const typeLabel = msg.type === THREAD_USER ? "DM" : "GR";
404
+ const tag = extra.catchUp ? " [catch-up]" : "";
405
+ return {
406
+ data,
407
+ human: `${dir} [${typeLabel}]${tag} [${msg.threadId}] ${displayContent} (msgId: ${msg.data.msgId})`,
408
+ };
409
+ }
410
+
411
+ // One stage at a time on this socket -- the lock the daemon
412
+ // channel's routes hold, shared with this daemon's own catch-up --
413
+ // and one raw reader on the socket for the fields zca-js drops.
414
+ // Built once, like the receipter: they outlive every re-login.
415
+ const stageLock = createStageLock();
416
+ const socketTap = createSocketTap({ log: (line) => console.error(`[listen] ${line}`) });
417
+ // Read state other devices report -- a conversation read on the
418
+ // phone, an unread mark set or cleared there -- which zca-js
419
+ // drops. Stored always, like reactions; printed only with
420
+ // `--events read`. It rides the tap, which re-arms on every socket.
421
+ createReadStateSync({
422
+ tap: socketTap,
423
+ log: (line) => console.error(`[listen] ${line}`),
424
+ onChange: (change) => {
425
+ if (!enabledEvents.has("read")) return;
426
+ const { data, human } = readStateEvent(change);
427
+ emitEvent(data, human);
428
+ },
429
+ });
430
+ const selfHeal = createSelfHeal({
431
+ getApi,
432
+ tap: socketTap,
433
+ lock: stageLock,
434
+ enabled: opts.selfHeal !== false,
435
+ log: (line) => console.error(`[listen] ${line}`),
436
+ // A message recovered after a drop reaches stdout, the JSONL and
437
+ // the webhook as a live one would, marked so a consumer can tell.
438
+ onRecovered: (items) => {
439
+ for (const { msg } of items) {
440
+ if (isMuted(msg)) continue;
441
+ const { data, human } = messageEvent(msg, { catchUp: true });
442
+ emitEvent(data, human);
443
+ }
444
+ },
445
+ });
446
+
107
447
  /** Attach ALL handlers (data + lifecycle) to current API listener */
108
448
  function attachAllHandlers(api) {
109
449
  // --- Message events ---
110
- if (enabledEvents.has("message")) {
450
+ // Registered unconditionally. --events, --filter and --no-self
451
+ // decide what is PRINTED, forwarded and saved as JSONL -- never
452
+ // what is stored. They used to gate the handler itself, so
453
+ // `listen --filter group` silently kept every DM out of the
454
+ // cache and `listen --events group` stored no messages at all,
455
+ // while the docs promised the flags only shaped the output.
456
+ // A message missed live has no reliable way back: the phone
457
+ // hands a transfer sync only what a web session was NOT
458
+ // connected for.
459
+ {
111
460
  api.listener.on("message", async (msg) => {
112
- if (opts.filter === "user" && msg.type !== THREAD_USER) return;
113
- if (opts.filter === "group" && msg.type !== THREAD_GROUP) return;
114
- if (!opts.self && msg.isSelf) return;
115
-
116
- const rawContent = msg.data.content;
117
- const isText = typeof rawContent === "string";
118
- const msgType = msg.data.msgType || null;
119
- // Build readable display: show type + title/href for non-text
120
- let displayContent;
121
- if (isText) {
122
- displayContent = rawContent;
123
- } else if (rawContent && typeof rawContent === "object") {
124
- const parts = [msgType || "attachment"];
125
- if (rawContent.title) parts.push(`"${rawContent.title}"`);
126
- if (rawContent.href) parts.push(rawContent.href);
127
- displayContent = `[${parts.join(" | ")}]`;
128
- } else {
129
- displayContent = `[${msgType || "non-text"}]`;
461
+ const mute = isMuted(msg);
462
+
463
+ // A "delete for me" frame rides the message channel but
464
+ // removes a message rather than adding one, so it is
465
+ // reported as the removal it is -- never as an incoming
466
+ // message, which would have a webhook receiver acting on
467
+ // a msgId that names only the notification.
468
+ if (isRemovalMessage(msg.data)) {
469
+ const r = storeLiveDelete(msg);
470
+ if (!mute) {
471
+ emitEvent(
472
+ {
473
+ event: "deleted_for_me",
474
+ threadId: msg.threadId,
475
+ msgId: r.msgId ?? null,
476
+ applied: r.stored,
477
+ },
478
+ r.stored
479
+ ? `Deleted for me: ${r.msgId} in ${msg.threadId}` +
480
+ (r.mediaRemoved ? " (media removed)" : "")
481
+ : `Delete for me could not be applied: ${r.reason}`,
482
+ );
483
+ }
484
+ if (!r.stored) console.error(`[listen] delete-for-me not applied: ${r.reason}`);
485
+ heartbeat();
486
+ return;
487
+ }
488
+
489
+ if (!mute) {
490
+ const { data, human } = messageEvent(msg);
491
+ emitEvent(data, human);
492
+ }
493
+ heartbeat();
494
+
495
+ // One writer for live traffic: storeLiveMessage is the
496
+ // same function a running mobile sync uses, so a row
497
+ // written here is indistinguishable from a restored one,
498
+ // and the type vocabulary (photo, not chat.photo) is
499
+ // shared with it.
500
+ const stored = storeLiveMessage(msg);
501
+ if (!stored.stored) {
502
+ console.error(`[listen] message not stored: ${stored.reason}`);
503
+ return;
504
+ }
505
+ // Fetch through the SAME downloader the mobile sync
506
+ // uses: it brings the request deadline, the
507
+ // expiry-vs-throttling classification and the shared
508
+ // per-conversation folders. The row is already stored
509
+ // with has_attachment, so the downloader finds it by
510
+ // query. Fire and forget -- a slow CDN must never stall
511
+ // event processing.
512
+ if (stored.info.hasAttachment) {
513
+ downloadSyncedMedia({
514
+ api,
515
+ accountDir,
516
+ threadId: String(msg.threadId),
517
+ limit: 5,
518
+ concurrency: 2,
519
+ }).catch((err) => console.error(`[listen] media download failed: ${err.message}`));
130
520
  }
131
- const data = {
132
- event: "message",
133
- msgId: msg.data.msgId,
134
- cliMsgId: msg.data.cliMsgId,
135
- threadId: msg.threadId,
136
- type: msg.type,
137
- isSelf: msg.isSelf,
138
- uidFrom: msg.data.uidFrom || null,
139
- dName: msg.data.dName || null,
140
- msgType,
141
- content: rawContent,
142
- };
143
- const dir = msg.isSelf ? "→" : "←";
144
- const typeLabel = msg.type === THREAD_USER ? "DM" : "GR";
145
- emitEvent(
146
- data,
147
- `${dir} [${typeLabel}] [${msg.threadId}] ${displayContent} (msgId: ${msg.data.msgId})`,
148
- );
149
521
  });
150
522
  }
151
523
 
524
+ // Subscribed AFTER the storing handler above, so the write has
525
+ // always happened first; the receipt handler only queues, and
526
+ // can neither throw into the socket loop nor hold the write up.
527
+ // Here rather than at start-up because re-login calls this
528
+ // function again with a new listener.
529
+ deliveredReceipts.attach(api.listener);
530
+
531
+ // Also after the storing handler, and here for the same reason:
532
+ // the tap reads the envelope fields zca-js drops, and the
533
+ // self-heal moves its cursor only past a row already written,
534
+ // then catches up on every handshake this listener makes.
535
+ socketTap.attach(api.listener);
536
+ selfHeal.attach(api.listener);
537
+
152
538
  // --- Friend events ---
153
539
  if (enabledEvents.has("friend")) {
154
540
  api.listener.on("friend_event", async (event) => {
@@ -178,62 +564,166 @@ export function registerListenCommand(program) {
178
564
  }
179
565
 
180
566
  // --- Group events ---
181
- if (enabledEvents.has("group")) {
182
- api.listener.on("group_event", (event) => {
567
+ // Also ungated for storage, for the same reason: with the
568
+ // default --events, being removed from a group was never
569
+ // recorded, so its local copy stayed invisible to `conv forget
570
+ // --orphans`, and a pin or note change never marked its board
571
+ // stale. Both are durable state; only the printing is optional.
572
+ api.listener.on("group_event", (event) => {
573
+ // Pin, unpin, note, poll and reminder changes: flag the
574
+ // board stale so the next sync-boards refetches it. The
575
+ // event carries a delta, not the item's full shape.
576
+ const board = noteBoardChange(event);
577
+ // Leaving or being removed means this conversation is no
578
+ // longer ours. Flag it so it surfaces as an orphan;
579
+ // deleting the local copy stays an explicit decision. Any
580
+ // later event about it (a rejoin) clears the flag. Our uid
581
+ // is what tells being removed from removing someone else
582
+ // -- mcp.js passes it too.
583
+ const gone = storeGroupEvent(event, { ownId: activeAcc.ownId });
584
+ // The system line itself, as the row a sync would restore.
585
+ // Stored whatever --events says: output flags never gate storage.
586
+ const row = storeGroupEventRow(event);
587
+ if (!row.stored && row.reason && row.reason !== "not a system-line event") {
588
+ console.error(`[listen] group event not stored: ${row.reason}`);
589
+ }
590
+ if (!enabledEvents.has("group")) return;
591
+ emitEvent(
592
+ {
593
+ event: `group_${event.type}`,
594
+ threadId: event.threadId,
595
+ isSelf: event.isSelf,
596
+ data: event.data,
597
+ },
598
+ `Group: ${event.type} — ${event.threadId}`,
599
+ );
600
+ if (board.stale) {
183
601
  emitEvent(
184
- {
185
- event: `group_${event.type}`,
186
- threadId: event.threadId,
187
- isSelf: event.isSelf,
188
- data: event.data,
189
- },
190
- `Group: ${event.type} — ${event.threadId}`,
602
+ { event: "board_changed", threadId: board.threadId, type: event.type },
603
+ `Board changed in ${board.threadId} (${event.type}) — run sync-boards to refresh`,
191
604
  );
192
- });
193
- }
194
-
195
- // --- Reaction events ---
196
- if (enabledEvents.has("reaction")) {
197
- api.listener.on("reaction", (reaction) => {
198
- if (!opts.self && reaction.isSelf) return;
605
+ }
606
+ if (gone.gone) {
199
607
  emitEvent(
200
- {
201
- event: "reaction",
202
- threadId: reaction.threadId,
203
- isSelf: reaction.isSelf,
204
- isGroup: reaction.isGroup,
205
- data: reaction.data,
206
- },
207
- `Reaction in ${reaction.threadId}`,
608
+ { event: "thread_gone", threadId: gone.threadId },
609
+ `No longer in ${gone.threadId} — its local history is now orphaned (see \`conv forget\`)`,
208
610
  );
209
- });
210
- }
611
+ }
612
+ });
613
+
614
+ // --- Reaction events ---
615
+ // Storage is NOT gated on --events. Reactions exist only on
616
+ // this socket -- the mobile sync payload has no reaction field
617
+ // -- and the default
618
+ // --events value does not include them, so gating the write
619
+ // meant a plain `zalo-agent listen` permanently lost every
620
+ // reaction it watched go past. --events decides what you SEE.
621
+ api.listener.on("reaction", (reaction) => {
622
+ const r = storeLiveReaction(reaction);
623
+ if (!r.stored && r.reason) console.error(`[listen] reaction not stored: ${r.reason}`);
624
+ if (!enabledEvents.has("reaction")) return;
625
+ if (!opts.self && reaction.isSelf) return;
626
+ // Name the icon and the message. "Reaction in <thread>" was
627
+ // true of a reaction stored against the wrong message, a
628
+ // removal that deleted nothing, and a working one alike.
629
+ const on = r.msgIds?.filter(Boolean).join(",") || "?";
630
+ const what = r.removing
631
+ ? `Reactions cleared on ${on} (${r.changed} removed)`
632
+ : `Reaction ${r.icon} on ${on}`;
633
+ emitEvent(
634
+ {
635
+ event: "reaction",
636
+ threadId: reaction.threadId,
637
+ isSelf: reaction.isSelf,
638
+ isGroup: reaction.isGroup,
639
+ removing: r.removing ?? null,
640
+ changed: r.changed ?? null,
641
+ data: reaction.data,
642
+ },
643
+ `${what} in ${reaction.threadId}`,
644
+ );
645
+ });
646
+
647
+ // --- Delivery receipts ---
648
+ // The sync establishes msgStatus per message; without these it
649
+ // goes stale the moment the restore finishes. Always on: this is
650
+ // durable state, not the typing/presence noise it resembles.
651
+ api.listener.on("delivered_messages", (m) => storeReceipts(m, 4));
652
+ api.listener.on("seen_messages", (m) => storeReceipts(m, 5));
653
+
654
+ // --- Undo / recall ---
655
+ // Always on, regardless of --events. A recall is the sender
656
+ // withdrawing a message; a cache that keeps the text readable
657
+ // afterwards is retaining something they took back. This is the
658
+ // one event that must never be opt-in.
659
+ api.listener.on("undo", (u) => {
660
+ const r = storeLiveUndo(u);
661
+ // The recalled id comes from content, not from the
662
+ // notification's own msgId -- printing the latter named a
663
+ // message nobody had ever seen.
664
+ const target = r.msgId ?? String(u?.data?.content?.globalMsgId ?? "");
665
+ emitEvent(
666
+ { event: "undo", threadId: u?.threadId, isSelf: u?.isSelf, msgId: target, applied: r.stored },
667
+ `Recalled message ${target} in ${u?.threadId}${r.mediaRemoved ? " (media removed)" : ""}`,
668
+ );
669
+ if (!r.stored && r.reason) console.error(`[listen] recall not applied: ${r.reason}`);
670
+ });
211
671
 
212
672
  // --- Lifecycle events (MUST be on same listener for reconnect to work) ---
213
673
  api.listener.on("connected", () => {
214
674
  if (reconnectCount > 0) {
215
675
  info(`Reconnected (#${reconnectCount}, uptime: ${uptime()}, events: ${eventCount})`);
216
676
  }
677
+ // Driven by observed socket state, NOT by reconnectCount.
678
+ // reconnectCount is incremented only in the `closed` handler,
679
+ // and `closed` never fires for a code on the server's
680
+ // close_and_retry_codes list -- zca-js emits `disconnected`,
681
+ // retries internally, then emits `connected`. Those codes ARE
682
+ // the recoverable ones, so on the common drop path the old
683
+ // guard was always false: no gap was filed, and markConnected()
684
+ // below then asserted coverage over the whole outage. Messages
685
+ // lost to an ordinary reconnect were lost silently and for
686
+ // good, because `sync` is driven off exactly this advice.
687
+ if (downSince !== null) {
688
+ reportGap(downSince, "reconnect-gap");
689
+ downSince = null;
690
+ }
691
+ syncManager.markConnected();
217
692
  });
218
693
 
219
694
  api.listener.on("disconnected", (code, _reason) => {
695
+ if (stopping) return;
220
696
  warning(`Disconnected (code: ${code}). Auto-retrying...`);
697
+ // First drop wins: a flapping socket that emits several
698
+ // `disconnected` before one `connected` is ONE outage, and the
699
+ // gap must span from the start of it.
700
+ if (downSince === null) downSince = Date.now();
701
+ syncManager.markDisconnected();
221
702
  });
222
703
 
223
704
  api.listener.on("closed", async (code, _reason) => {
705
+ // A deliberate stop closes with 1000 and must not be treated
706
+ // as a failure to recover from.
707
+ if (stopping) return;
224
708
  if (code === CLOSE_DUPLICATE) {
225
709
  error("Another Zalo Web session opened. Listener stopped.");
710
+ dropLock();
226
711
  process.exit(1);
227
712
  }
228
713
  reconnectCount++;
714
+ if (downSince === null) downSince = Date.now();
715
+ syncManager.markDisconnected();
229
716
  warning(`Connection closed (code: ${code}). Re-login in 5s... (uptime: ${uptime()})`);
230
717
  await new Promise((r) => setTimeout(r, 5000));
231
718
  try {
232
719
  clearSession();
233
- await autoLogin(jsonMode);
720
+ await loginDaemonAccount(activeAcc);
234
721
  info("Re-login successful. Restarting listener...");
235
- // Attach ALL handlers to the NEW api (including lifecycle)
722
+ // Attach ALL handlers to the NEW api (including lifecycle),
723
+ // and repoint the SyncManager at it so its bookkeeping
724
+ // runs against a live, authenticated client.
236
725
  const newApi = getApi();
726
+ syncManager.api = newApi;
237
727
  attachAllHandlers(newApi);
238
728
  newApi.listener.start({ retryOnClose: true });
239
729
  } catch (e) {
@@ -241,8 +731,9 @@ export function registerListenCommand(program) {
241
731
  await new Promise((r) => setTimeout(r, 30000));
242
732
  try {
243
733
  clearSession();
244
- await autoLogin(jsonMode);
734
+ await loginDaemonAccount(activeAcc);
245
735
  const retryApi = getApi();
736
+ syncManager.api = retryApi;
246
737
  attachAllHandlers(retryApi);
247
738
  retryApi.listener.start({ retryOnClose: true });
248
739
  info("Re-login successful on retry.");
@@ -271,22 +762,87 @@ export function registerListenCommand(program) {
271
762
  if (opts.webhook) info(`Webhook: ${opts.webhook}`);
272
763
  if (saveDir) info(`Save dir: ${saveDir} (JSONL per thread)`);
273
764
  if (opts.autoAccept) info("Auto-accept friend requests: ON");
765
+ info(
766
+ opts.deliveredReceipts !== false
767
+ ? "Delivered receipts: ON (opt out with --no-delivered-receipts). Seen receipts: never sent."
768
+ : "Delivered receipts: OFF. Seen receipts: never sent.",
769
+ );
770
+ info(
771
+ opts.selfHeal !== false
772
+ ? "Self-heal: ON — after a drop or restart, missed messages come back from Zalo's offline queue on this socket, no phone tap (opt out with --no-self-heal)."
773
+ : "Self-heal: OFF — a coverage gap stays pending until `zalo-agent sync` closes it.",
774
+ );
274
775
  } catch (e) {
275
776
  error(`Listen failed: ${e.message}`);
276
777
  process.exit(1);
277
778
  }
278
779
 
780
+ // This daemon owns the account's one permitted WebSocket, so it
781
+ // also does the work that needs one: a `msg send-file` in another
782
+ // terminal, or the socket stages of `zalo-agent sync`, would
783
+ // otherwise open a second session and Zalo would evict this one
784
+ // mid-conversation. The sync stages are the reason the gap advice
785
+ // above no longer says "stop this daemon first".
786
+ //
787
+ // Failing to open the channel is not fatal, but it is not free
788
+ // either: senders fall back to their own socket as before, and a
789
+ // sync goes back to refusing to run while this daemon is up.
790
+ //
791
+ // `createSyncRunners` is handed `getApi`, not an api: this daemon
792
+ // rebuilds one on a duplicate-session close, and a stage bound to
793
+ // the old object would tap a socket zca-js has already nulled.
794
+ let channel = null;
795
+ try {
796
+ channel = await startDaemonChannel({
797
+ getApi,
798
+ accountDir,
799
+ onLog: (m) => info(m),
800
+ runners: createSyncRunners({ getApi, accountName: activeAcc.ownId }),
801
+ // The self-heal's lock: a stage and a catch-up never share the socket.
802
+ lock: stageLock,
803
+ });
804
+ info(`Sync & upload channel ready on 127.0.0.1:${channel.port} — this socket is reused for both.`);
805
+ info("`zalo-agent sync` will run its socket stages here; it still needs your phone tap.");
806
+ } catch (e) {
807
+ warning(`Daemon channel unavailable (${e.message}).`);
808
+ warning("Attachment sends will open their own session, and `zalo-agent sync` will refuse to run.");
809
+ }
810
+
279
811
  // Keep alive until Ctrl+C
280
812
  await new Promise((resolve) => {
281
813
  process.on("SIGINT", () => {
814
+ // First, before anything can emit a close event.
815
+ stopping = true;
816
+ channel?.stop();
817
+ deliveredReceipts.stop();
282
818
  try {
283
819
  getApi().listener.stop();
284
820
  } catch (e) {
285
821
  console.error(`[listen] Stop failed: ${e.message}`);
286
822
  }
823
+ clearInterval(heartbeatTimer);
824
+ // Stamp "last known connected" at the moment we stop, so a
825
+ // deliberate close (or the process simply exiting) gives
826
+ // the NEXT launch an accurate window to backfill from,
827
+ // rather than treating this whole downtime as unknown.
828
+ try {
829
+ syncManager.markConnected();
830
+ } catch (e) {
831
+ console.error(`[listen] Failed to stamp shutdown state: ${e.message}`);
832
+ }
833
+ releaseLock(accountDir);
287
834
  info(`Stopped. Uptime: ${uptime()}, events: ${eventCount}, reconnects: ${reconnectCount}`);
835
+ const receipts = deliveredReceipts.stats();
836
+ if (receipts.calls) {
837
+ info(`Delivered receipts: ${receipts.sent} acknowledged, ${receipts.failed} failed`);
838
+ }
288
839
  if (saveDir) info(`Messages saved to: ${saveDir}`);
289
840
  resolve();
841
+ // Resolving the keep-alive promise is not enough: an async
842
+ // `closed` handler already in flight resumes after the action
843
+ // function has returned and keeps the process alive. mcp.js
844
+ // already exits explicitly here for the same reason.
845
+ process.exit(0);
290
846
  });
291
847
  });
292
848
  });