@amityco/ts-sdk 7.9.2-a04968ba.0 → 7.9.2-e5e334a7.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 (210) hide show
  1. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/core/errors.d.ts +3 -1
  2. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/core/errors.d.ts.map +1 -1
  3. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/core/errors.js.map +1 -1
  4. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/client.d.ts +11 -0
  5. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/client.d.ts.map +1 -1
  6. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/client.js.map +1 -1
  7. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/content.d.ts +2 -11
  8. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/content.d.ts.map +1 -1
  9. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/content.js.map +1 -1
  10. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/file.d.ts +1 -3
  11. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/file.d.ts.map +1 -1
  12. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/file.js +0 -1
  13. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/file.js.map +1 -1
  14. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/post.d.ts +0 -1
  15. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/post.d.ts.map +1 -1
  16. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/post.js.map +1 -1
  17. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/user.d.ts +6 -0
  18. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/user.d.ts.map +1 -1
  19. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/user.js +6 -1
  20. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/user.js.map +1 -1
  21. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/index.d.ts +1 -0
  22. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/index.d.ts.map +1 -1
  23. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/index.js +1 -0
  24. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/index.js.map +1 -1
  25. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/categoryRepository/api/getCategory.d.ts.map +1 -1
  26. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/categoryRepository/api/getCategory.js +1 -1
  27. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/categoryRepository/api/getCategory.js.map +1 -1
  28. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/activeUser.d.ts +1 -0
  29. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/activeUser.d.ts.map +1 -1
  30. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/activeUser.js +1 -0
  31. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/activeUser.js.map +1 -1
  32. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/createClient.d.ts.map +1 -1
  33. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/createClient.js +3 -1
  34. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/createClient.js.map +1 -1
  35. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/getBotToken.d.ts +21 -0
  36. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/getBotToken.d.ts.map +1 -0
  37. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/getBotToken.js +27 -0
  38. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/getBotToken.js.map +1 -0
  39. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/getCurrentUser.d.ts +2 -0
  40. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/getCurrentUser.d.ts.map +1 -0
  41. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/getCurrentUser.js +21 -0
  42. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/getCurrentUser.js.map +1 -0
  43. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/getCurrentUserType.d.ts +3 -0
  44. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/getCurrentUserType.d.ts.map +1 -0
  45. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/getCurrentUserType.js +16 -0
  46. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/getCurrentUserType.js.map +1 -0
  47. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/getToken.d.ts +1 -3
  48. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/getToken.d.ts.map +1 -1
  49. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/getToken.js.map +1 -1
  50. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/getVisitorToken.d.ts +24 -0
  51. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/getVisitorToken.d.ts.map +1 -0
  52. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/getVisitorToken.js +30 -0
  53. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/getVisitorToken.js.map +1 -0
  54. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/index.d.ts +4 -0
  55. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/index.d.ts.map +1 -1
  56. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/index.js +4 -0
  57. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/index.js.map +1 -1
  58. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/login.d.ts.map +1 -1
  59. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/login.js +4 -4
  60. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/login.js.map +1 -1
  61. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/loginAsBot.d.ts +24 -0
  62. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/loginAsBot.d.ts.map +1 -0
  63. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/loginAsBot.js +95 -0
  64. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/loginAsBot.js.map +1 -0
  65. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/loginAsVisitor.d.ts +26 -0
  66. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/loginAsVisitor.d.ts.map +1 -0
  67. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/loginAsVisitor.js +92 -0
  68. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/loginAsVisitor.js.map +1 -0
  69. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/renewal.d.ts.map +1 -1
  70. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/renewal.js +35 -2
  71. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/renewal.js.map +1 -1
  72. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/utils/setBotClientToken.d.ts +16 -0
  73. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/utils/setBotClientToken.d.ts.map +1 -0
  74. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/utils/setBotClientToken.js +29 -0
  75. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/utils/setBotClientToken.js.map +1 -0
  76. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/utils/setClientToken.d.ts +2 -1
  77. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/utils/setClientToken.d.ts.map +1 -1
  78. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/utils/setClientToken.js +2 -2
  79. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/utils/setClientToken.js.map +1 -1
  80. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/utils/setCurrentUser.d.ts +5 -0
  81. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/utils/setCurrentUser.d.ts.map +1 -0
  82. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/utils/setCurrentUser.js +9 -0
  83. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/utils/setCurrentUser.js.map +1 -0
  84. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/utils/setVisitorClientToken.d.ts +21 -0
  85. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/utils/setVisitorClientToken.d.ts.map +1 -0
  86. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/utils/setVisitorClientToken.js +34 -0
  87. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/utils/setVisitorClientToken.js.map +1 -0
  88. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/core/transports/http.d.ts.map +1 -1
  89. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/core/transports/http.js +4 -4
  90. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/core/transports/http.js.map +1 -1
  91. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/fileRepository/api/index.d.ts +0 -1
  92. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/fileRepository/api/index.d.ts.map +1 -1
  93. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/fileRepository/api/index.js +0 -1
  94. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/fileRepository/api/index.js.map +1 -1
  95. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/messagePreview/utils/getSubChannelMessagePreviewWithUser.d.ts +1 -1
  96. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/api/index.d.ts +0 -1
  97. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/api/index.d.ts.map +1 -1
  98. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/api/index.js +0 -1
  99. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/api/index.js.map +1 -1
  100. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/utils/linkedObject/postLinkedObject.d.ts.map +1 -1
  101. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/utils/linkedObject/postLinkedObject.js +1 -7
  102. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/utils/linkedObject/postLinkedObject.js.map +1 -1
  103. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/utils/postTypePredicate.d.ts +0 -1
  104. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/utils/postTypePredicate.d.ts.map +1 -1
  105. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/utils/postTypePredicate.js +0 -6
  106. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/utils/postTypePredicate.js.map +1 -1
  107. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/utils/tests/dummy/comment.d.ts +1 -1
  108. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/tsconfig.tsbuildinfo +1 -1
  109. package/dist/@types/core/errors.d.ts +3 -1
  110. package/dist/@types/core/errors.d.ts.map +1 -1
  111. package/dist/@types/domains/client.d.ts +11 -0
  112. package/dist/@types/domains/client.d.ts.map +1 -1
  113. package/dist/@types/domains/content.d.ts +2 -11
  114. package/dist/@types/domains/content.d.ts.map +1 -1
  115. package/dist/@types/domains/file.d.ts +1 -3
  116. package/dist/@types/domains/file.d.ts.map +1 -1
  117. package/dist/@types/domains/post.d.ts +0 -1
  118. package/dist/@types/domains/post.d.ts.map +1 -1
  119. package/dist/@types/domains/user.d.ts +6 -0
  120. package/dist/@types/domains/user.d.ts.map +1 -1
  121. package/dist/@types/index.d.ts +1 -0
  122. package/dist/@types/index.d.ts.map +1 -1
  123. package/dist/categoryRepository/api/getCategory.d.ts.map +1 -1
  124. package/dist/client/api/activeUser.d.ts +1 -0
  125. package/dist/client/api/activeUser.d.ts.map +1 -1
  126. package/dist/client/api/createClient.d.ts.map +1 -1
  127. package/dist/client/api/getBotToken.d.ts +21 -0
  128. package/dist/client/api/getBotToken.d.ts.map +1 -0
  129. package/dist/client/api/getCurrentUser.d.ts +2 -0
  130. package/dist/client/api/getCurrentUser.d.ts.map +1 -0
  131. package/dist/client/api/getCurrentUserType.d.ts +3 -0
  132. package/dist/client/api/getCurrentUserType.d.ts.map +1 -0
  133. package/dist/client/api/getToken.d.ts +1 -3
  134. package/dist/client/api/getToken.d.ts.map +1 -1
  135. package/dist/client/api/getVisitorToken.d.ts +24 -0
  136. package/dist/client/api/getVisitorToken.d.ts.map +1 -0
  137. package/dist/client/api/index.d.ts +4 -0
  138. package/dist/client/api/index.d.ts.map +1 -1
  139. package/dist/client/api/login.d.ts.map +1 -1
  140. package/dist/client/api/loginAsBot.d.ts +24 -0
  141. package/dist/client/api/loginAsBot.d.ts.map +1 -0
  142. package/dist/client/api/loginAsVisitor.d.ts +26 -0
  143. package/dist/client/api/loginAsVisitor.d.ts.map +1 -0
  144. package/dist/client/api/renewal.d.ts.map +1 -1
  145. package/dist/client/utils/setBotClientToken.d.ts +16 -0
  146. package/dist/client/utils/setBotClientToken.d.ts.map +1 -0
  147. package/dist/client/utils/setClientToken.d.ts +2 -1
  148. package/dist/client/utils/setClientToken.d.ts.map +1 -1
  149. package/dist/client/utils/setCurrentUser.d.ts +5 -0
  150. package/dist/client/utils/setCurrentUser.d.ts.map +1 -0
  151. package/dist/client/utils/setVisitorClientToken.d.ts +21 -0
  152. package/dist/client/utils/setVisitorClientToken.d.ts.map +1 -0
  153. package/dist/core/transports/http.d.ts.map +1 -1
  154. package/dist/fileRepository/api/index.d.ts +0 -1
  155. package/dist/fileRepository/api/index.d.ts.map +1 -1
  156. package/dist/index.cjs.js +392 -136
  157. package/dist/index.esm.js +393 -137
  158. package/dist/index.umd.js +3 -3
  159. package/dist/messagePreview/utils/getSubChannelMessagePreviewWithUser.d.ts +1 -1
  160. package/dist/postRepository/api/index.d.ts +0 -1
  161. package/dist/postRepository/api/index.d.ts.map +1 -1
  162. package/dist/utils/linkedObject/postLinkedObject.d.ts.map +1 -1
  163. package/dist/utils/postTypePredicate.d.ts +0 -1
  164. package/dist/utils/postTypePredicate.d.ts.map +1 -1
  165. package/dist/utils/tests/dummy/comment.d.ts +1 -1
  166. package/package.json +1 -1
  167. package/src/@types/core/errors.ts +2 -0
  168. package/src/@types/domains/client.ts +17 -0
  169. package/src/@types/domains/content.ts +0 -11
  170. package/src/@types/domains/file.ts +0 -5
  171. package/src/@types/domains/post.ts +0 -1
  172. package/src/@types/domains/user.ts +8 -0
  173. package/src/@types/index.ts +1 -0
  174. package/src/categoryRepository/api/getCategory.ts +3 -1
  175. package/src/client/api/activeUser.ts +1 -0
  176. package/src/client/api/createClient.ts +3 -5
  177. package/src/client/api/getBotToken.ts +44 -0
  178. package/src/client/api/getCurrentUser.ts +32 -0
  179. package/src/client/api/getCurrentUserType.ts +23 -0
  180. package/src/client/api/getToken.ts +1 -1
  181. package/src/client/api/getVisitorToken.ts +47 -0
  182. package/src/client/api/index.ts +6 -0
  183. package/src/client/api/login.ts +5 -4
  184. package/src/client/api/loginAsBot.ts +126 -0
  185. package/src/client/api/loginAsVisitor.ts +131 -0
  186. package/src/client/api/renewal.ts +42 -2
  187. package/src/client/utils/setBotClientToken.ts +35 -0
  188. package/src/client/utils/setClientToken.ts +2 -2
  189. package/src/client/utils/setCurrentUser.ts +15 -0
  190. package/src/client/utils/setVisitorClientToken.ts +41 -0
  191. package/src/core/transports/http.ts +5 -4
  192. package/src/fileRepository/api/index.ts +0 -1
  193. package/src/postRepository/api/index.ts +0 -1
  194. package/src/utils/linkedObject/postLinkedObject.ts +0 -7
  195. package/src/utils/postTypePredicate.ts +0 -9
  196. package/tsconfig.tsbuildinfo +1 -1
  197. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/fileRepository/api/uploadAudio.d.ts +0 -17
  198. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/fileRepository/api/uploadAudio.d.ts.map +0 -1
  199. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/fileRepository/api/uploadAudio.js +0 -47
  200. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/fileRepository/api/uploadAudio.js.map +0 -1
  201. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/api/createAudioPost.d.ts +0 -30
  202. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/api/createAudioPost.d.ts.map +0 -1
  203. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/api/createAudioPost.js +0 -44
  204. package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/api/createAudioPost.js.map +0 -1
  205. package/dist/fileRepository/api/uploadAudio.d.ts +0 -17
  206. package/dist/fileRepository/api/uploadAudio.d.ts.map +0 -1
  207. package/dist/postRepository/api/createAudioPost.d.ts +0 -30
  208. package/dist/postRepository/api/createAudioPost.d.ts.map +0 -1
  209. package/src/fileRepository/api/uploadAudio.ts +0 -61
  210. package/src/postRepository/api/createAudioPost.ts +0 -58
package/dist/index.cjs.js CHANGED
@@ -29,12 +29,18 @@ exports.MembershipAcceptanceTypeEnum = void 0;
29
29
  MembershipAcceptanceTypeEnum["INVITATION"] = "invitation";
30
30
  })(exports.MembershipAcceptanceTypeEnum || (exports.MembershipAcceptanceTypeEnum = {}));
31
31
 
32
+ exports.UserTypeEnum = void 0;
33
+ (function (UserTypeEnum) {
34
+ UserTypeEnum["SIGNED_IN"] = "signed-in";
35
+ UserTypeEnum["VISITOR"] = "visitor";
36
+ UserTypeEnum["BOT"] = "bot";
37
+ })(exports.UserTypeEnum || (exports.UserTypeEnum = {}));
38
+
32
39
  const FileType = Object.freeze({
33
40
  FILE: 'file',
34
41
  IMAGE: 'image',
35
42
  VIDEO: 'video',
36
43
  CLIP: 'clip',
37
- AUDIO: 'audio',
38
44
  });
39
45
  const VideoResolution = Object.freeze({
40
46
  '1080P': '1080p',
@@ -1349,6 +1355,7 @@ let activeUser = null;
1349
1355
  */
1350
1356
  /**
1351
1357
  * for internal use
1358
+ * @deprecated please use getCurrentUser api instead.
1352
1359
  */
1353
1360
  const getActiveUser = () => {
1354
1361
  if (!activeUser) {
@@ -1782,12 +1789,6 @@ const createHttpTransport = (endpoint) => {
1782
1789
  controller.abort();
1783
1790
  handleRequestCancelation(RequestCancelation.UserDeleted);
1784
1791
  }
1785
- if (tokenExpiry) {
1786
- if (Date.now() >= Date.parse(tokenExpiry)) {
1787
- controller.abort(RequestCancelation.UserDeleted);
1788
- handleRequestCancelation(RequestCancelation.TokenExpired);
1789
- }
1790
- }
1791
1792
  }
1792
1793
  return config;
1793
1794
  });
@@ -7241,7 +7242,7 @@ const setClientToken = async (params) => {
7241
7242
  const client = getActiveClient();
7242
7243
  // begin establishing session
7243
7244
  setSessionState("establishing" /* Amity.SessionStates.ESTABLISHING */);
7244
- const { accessToken, users, expiresAt, issuedAt } = await getToken(params);
7245
+ const { accessToken, users, expiresAt, issuedAt, userType } = await getToken(params);
7245
7246
  // manually setup the token for http transport
7246
7247
  client.http.defaults.headers.common.Authorization = `Bearer ${accessToken}`;
7247
7248
  client.http.defaults.metadata = {
@@ -7257,7 +7258,66 @@ const setClientToken = async (params) => {
7257
7258
  };
7258
7259
  client.token = { accessToken, issuedAt, expiresAt };
7259
7260
  setSessionState("established" /* Amity.SessionStates.ESTABLISHED */);
7260
- return { accessToken, users };
7261
+ return { accessToken, users, userType };
7262
+ };
7263
+
7264
+ /**
7265
+ * Retrieves a pair of {@link Amity.Tokens} necessary for connection
7266
+ *
7267
+ * @param params get visitor token param
7268
+ * @param params.deviceId The user's device Id (can be manually set for native users)
7269
+ * @param params.authSignature The authenitcation signature - necessary when network option is set to secure
7270
+ * @param params.authSignatureExpiresAt Expire time of the authenitcation signature
7271
+ * @param options get bot token options
7272
+ * @param options.setAccessTokenCookie The authentication token - necessary when network option is set to secure
7273
+ * @return The accessToken for the given userId
7274
+ *
7275
+ *
7276
+ * @category Client API
7277
+ * @hidden
7278
+ */
7279
+ const getVisitorToken = async ({ params, options, }) => {
7280
+ const client = getActiveClient();
7281
+ client.log('client/api/getVisitorToken', params);
7282
+ const deviceInfo = getDeviceInfo();
7283
+ const { data } = await client.http.post('/api/v5/sessions/visitor', Object.assign(Object.assign({}, params), { deviceInfo }), {
7284
+ headers: {
7285
+ 'X-API-Key': client.apiKey,
7286
+ 'set-access-token-cookie': (options === null || options === void 0 ? void 0 : options.setAccessTokenCookie) || false,
7287
+ },
7288
+ });
7289
+ return data;
7290
+ };
7291
+
7292
+ /**
7293
+ * A util to set or refresh client token
7294
+ *
7295
+ * @param params.userId the user ID for the current session
7296
+ * @param params.displayName the user's displayName for the current session
7297
+ * @param params.deviceId Manual override of the user's device id (for device management)
7298
+ * @param params.authToken The authentication token - necessary when network option is set to secure
7299
+ * @param options get bot token options
7300
+ * @param options.setAccessTokenCookie The authentication token - necessary when network option is set to secure
7301
+ * @returns token & user info
7302
+ *
7303
+ * @category private
7304
+ * @async
7305
+ */
7306
+ const setVisitorClientToken = async (params) => {
7307
+ const client = getActiveClient();
7308
+ // begin establishing session
7309
+ setSessionState("establishing" /* Amity.SessionStates.ESTABLISHING */);
7310
+ const { accessToken, users, expiresAt, issuedAt, userType } = await getVisitorToken(params);
7311
+ // manually setup the token for http transport
7312
+ client.http.defaults.headers.common.Authorization = `Bearer ${accessToken}`;
7313
+ client.http.defaults.metadata = {
7314
+ tokenExpiry: expiresAt,
7315
+ isGlobalBanned: false,
7316
+ isUserDeleted: false,
7317
+ };
7318
+ client.token = { accessToken, issuedAt, expiresAt };
7319
+ setSessionState("established" /* Amity.SessionStates.ESTABLISHED */);
7320
+ return { accessToken, users, userType };
7261
7321
  };
7262
7322
 
7263
7323
  function prepareUserPayload(response) {
@@ -8717,13 +8777,34 @@ const removeChannelMarkerCache = (channel) => {
8717
8777
  dropFromCache(['channelMarker', 'get', id], true);
8718
8778
  };
8719
8779
 
8780
+ let currentUserType = null;
8781
+ /* begin_public_function
8782
+ id: client.get_current_user_type
8783
+ */
8784
+ const getCurrentUserType = () => {
8785
+ if (!currentUserType) {
8786
+ throw new ASCError('Connect client first', 800000 /* Amity.ClientError.UNKNOWN_ERROR */, "fatal" /* Amity.ErrorLevel.FATAL */);
8787
+ }
8788
+ return currentUserType;
8789
+ };
8790
+ /* end_public_function */
8791
+ const setCurrentUserType = (userType) => {
8792
+ currentUserType = userType;
8793
+ };
8794
+
8795
+ const setCurrentUser = ({ user, userType, }) => {
8796
+ setActiveUser(user);
8797
+ setCurrentUserType(userType);
8798
+ pushToCache(['user', 'get', user.userId], user);
8799
+ };
8800
+
8720
8801
  /* eslint-disable no-param-reassign */
8721
8802
  /*
8722
8803
  * declared earlier to accomodate case when logging in with a different user
8723
8804
  * than the one already connected, in which case the existing subscriptions need
8724
8805
  * to be cleared
8725
8806
  */
8726
- let subscriptions$1 = [];
8807
+ let subscriptions$3 = [];
8727
8808
  async function runMqtt$1() {
8728
8809
  await modifyMqttConnection();
8729
8810
  }
@@ -8758,13 +8839,13 @@ const login = async (params, sessionHandler, config) => {
8758
8839
  if (client.userId && client.userId !== params.userId) {
8759
8840
  await logout();
8760
8841
  // Remove subscription to ban and delete
8761
- subscriptions$1.forEach(fn => fn());
8762
- subscriptions$1 = [];
8842
+ subscriptions$3.forEach(fn => fn());
8843
+ subscriptions$3 = [];
8763
8844
  }
8764
8845
  // default values
8765
8846
  const defaultDeviceId = await getDeviceId();
8766
8847
  try {
8767
- const { users } = await setClientToken({
8848
+ const { users, userType } = await setClientToken({
8768
8849
  params: Object.assign(Object.assign({}, params), { displayName: params === null || params === void 0 ? void 0 : params.displayName, deviceId: (params === null || params === void 0 ? void 0 : params.deviceId) || defaultDeviceId }),
8769
8850
  options: {
8770
8851
  setAccessTokenCookie: true,
@@ -8778,7 +8859,7 @@ const login = async (params, sessionHandler, config) => {
8778
8859
  terminateClient("userDeleted" /* Amity.TokenTerminationReason.USER_DELETED */);
8779
8860
  return false;
8780
8861
  }
8781
- if (user.isGlobalBanned) {
8862
+ if (user.isGlobalBan) {
8782
8863
  terminateClient("globalBan" /* Amity.TokenTerminationReason.GLOBAL_BAN */);
8783
8864
  return false;
8784
8865
  }
@@ -8789,7 +8870,7 @@ const login = async (params, sessionHandler, config) => {
8789
8870
  * token expires
8790
8871
  */
8791
8872
  unsubWatcher = client.accessTokenExpiryWatcher(sessionHandler);
8792
- setActiveUser(user);
8873
+ setCurrentUser({ user, userType });
8793
8874
  }
8794
8875
  catch (error) {
8795
8876
  /*
@@ -8804,42 +8885,141 @@ const login = async (params, sessionHandler, config) => {
8804
8885
  runMqtt$1();
8805
8886
  }
8806
8887
  await initializeMessagePreviewSetting();
8807
- if (subscriptions$1.length === 0) {
8808
- subscriptions$1.push(
8888
+ if (subscriptions$3.length === 0) {
8889
+ subscriptions$3.push(
8809
8890
  // GLOBAL_BAN
8810
8891
  onClientBanned((_) => {
8811
8892
  terminateClient("globalBan" /* Amity.TokenTerminationReason.GLOBAL_BAN */);
8812
- subscriptions$1.forEach(fn => fn());
8893
+ subscriptions$3.forEach(fn => fn());
8813
8894
  unsubWatcher();
8814
8895
  }), onTokenTerminated(_ => {
8815
8896
  terminateClient();
8816
- subscriptions$1.forEach(fn => fn());
8897
+ subscriptions$3.forEach(fn => fn());
8817
8898
  unsubWatcher();
8818
8899
  }), onUserDeleted$2((user) => {
8819
8900
  if (user.userId === client.userId) {
8820
8901
  terminateClient("userDeleted" /* Amity.TokenTerminationReason.USER_DELETED */);
8821
- subscriptions$1.forEach(fn => fn());
8902
+ subscriptions$3.forEach(fn => fn());
8822
8903
  unsubWatcher();
8823
8904
  }
8824
8905
  }), onTokenExpired(state => {
8825
8906
  SessionWatcher$1.getInstance().setSessionState(state);
8826
8907
  logout();
8827
- subscriptions$1.forEach(fn => fn());
8908
+ subscriptions$3.forEach(fn => fn());
8828
8909
  }),
8829
8910
  // NOTE: This is a temporary solution to handle the channel marker when the user is forced to leave
8830
8911
  // the channel because currently backend can't handle this, so every time a user is banned from
8831
8912
  // a channel or the channel is deleted the channel's unread count will not be reset to zero
8832
8913
  onChannelDeleted(removeChannelMarkerCache), onChannelMemberBanned(removeChannelMarkerCache), markReadEngineOnLoginHandler(), analyticsEngineOnLoginHandler(), objectResolverEngineOnLoginHandler(), reactionSyncEngineOnLoginHandler());
8833
8914
  if (client.useLegacyUnreadCount) {
8834
- subscriptions$1.push(readReceiptSyncEngineOnLoginHandler());
8915
+ subscriptions$3.push(readReceiptSyncEngineOnLoginHandler());
8835
8916
  }
8836
8917
  else
8837
- subscriptions$1.push(legacyReadReceiptSyncEngineOnLoginHandler());
8918
+ subscriptions$3.push(legacyReadReceiptSyncEngineOnLoginHandler());
8919
+ }
8920
+ return true;
8921
+ };
8922
+ /* end_public_function */
8923
+
8924
+ /* eslint-disable require-atomic-updates */
8925
+ /*
8926
+ * declared earlier to accomodate case when logging in with a different user
8927
+ * than the one already connected, in which case the existing subscriptions need
8928
+ * to be cleared
8929
+ */
8930
+ const subscriptions$2 = [];
8931
+ /* begin_public_function
8932
+ id: client.loginAsVisitor
8933
+ */
8934
+ /**
8935
+ * ```js
8936
+ * import { loginAsVisitor } from '@amityco/ts-sdk/client/api'
8937
+ * const success = await loginAsVisitor({
8938
+ sessionHandler: {
8939
+ sessionWillRenewAccessToken(renewal: Amity.AccessTokenRenewal) {
8940
+ ...
8941
+ }
8942
+ * })
8943
+ * ```
8944
+ *
8945
+ * Connects an {@link Amity.Client} instance to ASC servers
8946
+ *
8947
+ * @param params. the connect parameters
8948
+ * @param params.authSignature The authenitcation signature - necessary when network option is set to secure
8949
+ * @param params.authSignatureExpiresAt Expire time of the authenitcation signature
8950
+ * @param params.sessionHandler
8951
+ * @returns a success boolean if connected
8952
+ *
8953
+ * @category Client API
8954
+ * @async
8955
+ */
8956
+ const loginAsVisitor = async (params) => {
8957
+ const client = getActiveClient();
8958
+ let unsubWatcher;
8959
+ client.log('client/api/connectClient', Object.assign({ apiKey: client.apiKey, sessionState: client.sessionState }, params));
8960
+ // generate deviceId
8961
+ const deviceId = await getDeviceId();
8962
+ let user;
8963
+ try {
8964
+ const { users, userType } = await setVisitorClientToken({
8965
+ params: Object.assign(Object.assign({}, params), { deviceId }),
8966
+ options: {
8967
+ setAccessTokenCookie: true,
8968
+ },
8969
+ });
8970
+ [user] = users;
8971
+ client.userId = user.userId;
8972
+ client.sessionHandler = params.sessionHandler;
8973
+ /*
8974
+ * Cannot push to subscriptions as watcher needs to continue working even if
8975
+ * token expires
8976
+ */
8977
+ unsubWatcher = client.accessTokenExpiryWatcher(params.sessionHandler);
8978
+ setCurrentUser({ user, userType });
8979
+ }
8980
+ catch (error) {
8981
+ /*
8982
+ * if getting token failed session state reverts to initial state when app
8983
+ * is first launched
8984
+ */
8985
+ SessionWatcher$1.getInstance().setSessionState("notLoggedIn" /* Amity.SessionStates.NOT_LOGGED_IN */);
8986
+ // pass error down tree so the calling function handle it
8987
+ throw error;
8988
+ }
8989
+ await initializeMessagePreviewSetting();
8990
+ if (subscriptions$2.length === 0) {
8991
+ // handling internal SDK events
8992
+ subscriptions$2.push(onTokenTerminated(_ => {
8993
+ terminateClient();
8994
+ subscriptions$2.forEach(fn => fn());
8995
+ unsubWatcher();
8996
+ }), onTokenExpired(state => {
8997
+ SessionWatcher$1.getInstance().setSessionState(state);
8998
+ logout();
8999
+ subscriptions$2.forEach(fn => fn());
9000
+ }));
8838
9001
  }
8839
9002
  return true;
8840
9003
  };
8841
9004
  /* end_public_function */
8842
9005
 
9006
+ /* begin_public_function
9007
+ id: client.get_current_user
9008
+ */
9009
+ const getCurrentUser = () => {
9010
+ var _a;
9011
+ const client = getActiveClient();
9012
+ if (!client) {
9013
+ throw new ASCError('Connect client first', 800000 /* Amity.ClientError.UNKNOWN_ERROR */, "fatal" /* Amity.ErrorLevel.FATAL */);
9014
+ }
9015
+ const cache = (_a = pullFromCache(['user', 'get', client.userId])) === null || _a === void 0 ? void 0 : _a.data;
9016
+ if (!cache) {
9017
+ throw new ASCError('Connect client first', 800000 /* Amity.ClientError.UNKNOWN_ERROR */, "fatal" /* Amity.ErrorLevel.FATAL */);
9018
+ }
9019
+ return userLinkedObject(cache);
9020
+ };
9021
+ /* end_public_function */
9022
+
8843
9023
  /* begin_public_function
8844
9024
  id: client.renew_access_token
8845
9025
  */
@@ -8862,7 +9042,7 @@ const renewal = () => {
8862
9042
  * Per instance of Renewal, only one renewal is allowed
8863
9043
  */
8864
9044
  const renewToken = async (authToken) => {
8865
- const { userId, displayName } = getActiveUser();
9045
+ const { userId, displayName } = getCurrentUser();
8866
9046
  const deviceId = await getDeviceId();
8867
9047
  const params = { userId, displayName, authToken, deviceId };
8868
9048
  if (client.sessionState === "tokenExpired" /* Amity.SessionStates.TOKEN_EXPIRED */ && client.sessionHandler) {
@@ -8881,6 +9061,24 @@ const renewal = () => {
8881
9061
  if (renewTimeoutId)
8882
9062
  clearTimeout(renewTimeoutId);
8883
9063
  };
9064
+ const renewVisitorToken = async ({ authSignature, authSignatureExpiresAt, }) => {
9065
+ const deviceId = await getDeviceId();
9066
+ if (client.sessionState === "tokenExpired" /* Amity.SessionStates.TOKEN_EXPIRED */ && client.sessionHandler) {
9067
+ await loginAsVisitor({ sessionHandler: client.sessionHandler });
9068
+ }
9069
+ else {
9070
+ // about to expire
9071
+ await setVisitorClientToken({
9072
+ params: { authSignature, authSignatureExpiresAt, deviceId },
9073
+ options: {
9074
+ setAccessTokenCookie: true,
9075
+ },
9076
+ });
9077
+ }
9078
+ tokenRenewed = true;
9079
+ if (renewTimeoutId)
9080
+ clearTimeout(renewTimeoutId);
9081
+ };
8884
9082
  return {
8885
9083
  renew: () => {
8886
9084
  if (tokenRenewed) {
@@ -8902,6 +9100,19 @@ const renewal = () => {
8902
9100
  (_a = client.sessionHandler) === null || _a === void 0 ? void 0 : _a.sessionWillRenewAccessToken(renewal());
8903
9101
  }, ACCESS_TOKEN_WATCHER_INTERVAL);
8904
9102
  },
9103
+ renewWithAuthSignature: (params) => {
9104
+ if (tokenRenewed) {
9105
+ console.log("'renew' method can be called only once per renewal instance");
9106
+ return;
9107
+ }
9108
+ renewVisitorToken(params);
9109
+ },
9110
+ unableToRetrieveAuthSignature: () => {
9111
+ renewTimeoutId = setTimeout(() => {
9112
+ var _a;
9113
+ (_a = client.sessionHandler) === null || _a === void 0 ? void 0 : _a.sessionWillRenewAccessToken(renewal());
9114
+ }, ACCESS_TOKEN_WATCHER_INTERVAL);
9115
+ },
8905
9116
  };
8906
9117
  };
8907
9118
  /* end_public_function */
@@ -9448,6 +9659,7 @@ const createClient = (apiKey, apiRegion = API_REGIONS.SG, { debugSession = DEFAU
9448
9659
  validateTexts,
9449
9660
  getFeedSettings,
9450
9661
  getSocialSettings,
9662
+ getDeviceId,
9451
9663
  getMessagePreviewSetting,
9452
9664
  use: () => setActiveClient(client),
9453
9665
  isUnreadCountEnabled,
@@ -9503,7 +9715,7 @@ const secureLogout = async () => {
9503
9715
  * than the one already connected, in which case the existing subscriptions need
9504
9716
  * to be cleared
9505
9717
  */
9506
- let subscriptions = [];
9718
+ let subscriptions$1 = [];
9507
9719
  async function runMqtt() {
9508
9720
  await modifyMqttConnection();
9509
9721
  }
@@ -9575,15 +9787,15 @@ const resumeSession = async (params, sessionHandler, config) => {
9575
9787
  client.mqtt.disconnect();
9576
9788
  }
9577
9789
  // Clear existing subscriptions
9578
- subscriptions.forEach(fn => fn());
9579
- subscriptions = [];
9790
+ subscriptions$1.forEach(fn => fn());
9791
+ subscriptions$1 = [];
9580
9792
  }
9581
9793
  else {
9582
9794
  // Different user - do full logout
9583
9795
  await logout();
9584
9796
  // Remove subscription to ban and delete
9585
- subscriptions.forEach(fn => fn());
9586
- subscriptions = [];
9797
+ subscriptions$1.forEach(fn => fn());
9798
+ subscriptions$1 = [];
9587
9799
  }
9588
9800
  }
9589
9801
  try {
@@ -9621,37 +9833,37 @@ const resumeSession = async (params, sessionHandler, config) => {
9621
9833
  runMqtt();
9622
9834
  }
9623
9835
  await initializeMessagePreviewSetting();
9624
- if (subscriptions.length === 0) {
9625
- subscriptions.push(
9836
+ if (subscriptions$1.length === 0) {
9837
+ subscriptions$1.push(
9626
9838
  // GLOBAL_BAN
9627
9839
  onClientBanned((_) => {
9628
9840
  terminateClient("globalBan" /* Amity.TokenTerminationReason.GLOBAL_BAN */);
9629
- subscriptions.forEach(fn => fn());
9841
+ subscriptions$1.forEach(fn => fn());
9630
9842
  unsubWatcher();
9631
9843
  }), onTokenTerminated(_ => {
9632
9844
  terminateClient();
9633
- subscriptions.forEach(fn => fn());
9845
+ subscriptions$1.forEach(fn => fn());
9634
9846
  unsubWatcher();
9635
9847
  }), onUserDeleted$2((user) => {
9636
9848
  if (user.userId === client.userId) {
9637
9849
  terminateClient("userDeleted" /* Amity.TokenTerminationReason.USER_DELETED */);
9638
- subscriptions.forEach(fn => fn());
9850
+ subscriptions$1.forEach(fn => fn());
9639
9851
  unsubWatcher();
9640
9852
  }
9641
9853
  }), onTokenExpired(state => {
9642
9854
  SessionWatcher$1.getInstance().setSessionState(state);
9643
9855
  logout();
9644
- subscriptions.forEach(fn => fn());
9856
+ subscriptions$1.forEach(fn => fn());
9645
9857
  }),
9646
9858
  // NOTE: This is a temporary solution to handle the channel marker when the user is forced to leave
9647
9859
  // the channel because currently backend can't handle this, so every time a user is banned from
9648
9860
  // a channel or the channel is deleted the channel's unread count will not be reset to zero
9649
9861
  onChannelDeleted(removeChannelMarkerCache), onChannelMemberBanned(removeChannelMarkerCache), markReadEngineOnLoginHandler(), analyticsEngineOnLoginHandler(), objectResolverEngineOnLoginHandler());
9650
9862
  if (client.useLegacyUnreadCount) {
9651
- subscriptions.push(readReceiptSyncEngineOnLoginHandler());
9863
+ subscriptions$1.push(readReceiptSyncEngineOnLoginHandler());
9652
9864
  }
9653
9865
  else
9654
- subscriptions.push(legacyReadReceiptSyncEngineOnLoginHandler());
9866
+ subscriptions$1.push(legacyReadReceiptSyncEngineOnLoginHandler());
9655
9867
  }
9656
9868
  return true;
9657
9869
  };
@@ -9749,6 +9961,142 @@ const getShareableLinkConfiguration = async () => {
9749
9961
  return data;
9750
9962
  };
9751
9963
 
9964
+ /**
9965
+ * Retrieves a pair of {@link Amity.Tokens} necessary for connection
9966
+ *
9967
+ * @param param get bot token param
9968
+ * @param params.deviceId The user's device Id (can be manually set for native users)
9969
+ * @param options get bot token options
9970
+ * @param options.setAccessTokenCookie The authentication token - necessary when network option is set to secure
9971
+ * @return The accessToken for the given userId
9972
+ *
9973
+ * @category Client API
9974
+ * @hidden
9975
+ */
9976
+ const getBotToken = async ({ params, options, }) => {
9977
+ const client = getActiveClient();
9978
+ client.log('client/api/getBotToken');
9979
+ const deviceInfo = getDeviceInfo();
9980
+ const { data } = await client.http.post('/api/v5/sessions/bot', Object.assign(Object.assign({}, params), { deviceInfo }), {
9981
+ headers: {
9982
+ 'X-API-Key': client.apiKey,
9983
+ 'set-access-token-cookie': (options === null || options === void 0 ? void 0 : options.setAccessTokenCookie) || false,
9984
+ },
9985
+ });
9986
+ return data;
9987
+ };
9988
+
9989
+ /**
9990
+ * A util to set or refresh client token
9991
+ * @param options get bot token options
9992
+ * @param options.setAccessTokenCookie The authentication token - necessary when network option is set to secure
9993
+ * @returns token & user info
9994
+ *
9995
+ * @category private
9996
+ * @async
9997
+ */
9998
+ const setBotClientToken = async (params) => {
9999
+ const client = getActiveClient();
10000
+ // begin establishing session
10001
+ setSessionState("establishing" /* Amity.SessionStates.ESTABLISHING */);
10002
+ const { accessToken, users, expiresAt, issuedAt, userType } = await getBotToken(params);
10003
+ // manually setup the token for http transport
10004
+ client.http.defaults.headers.common.Authorization = `Bearer ${accessToken}`;
10005
+ client.http.defaults.metadata = {
10006
+ tokenExpiry: expiresAt,
10007
+ isGlobalBanned: false,
10008
+ isUserDeleted: false,
10009
+ };
10010
+ client.token = { accessToken, issuedAt, expiresAt };
10011
+ setSessionState("established" /* Amity.SessionStates.ESTABLISHED */);
10012
+ return { accessToken, users, userType };
10013
+ };
10014
+
10015
+ /* eslint-disable require-atomic-updates */
10016
+ /*
10017
+ * declared earlier to accomodate case when logging in with a different user
10018
+ * than the one already connected, in which case the existing subscriptions need
10019
+ * to be cleared
10020
+ */
10021
+ const subscriptions = [];
10022
+ /* begin_public_function
10023
+ id: client.loginAsBot
10024
+ */
10025
+ /**
10026
+ * ```js
10027
+ * import { loginAsBot } from '@amityco/ts-sdk/client/api'
10028
+ * const success = await loginAsBot({
10029
+ sessionHandler: {
10030
+ sessionWillRenewAccessToken(renewal: Amity.AccessTokenRenewal) {
10031
+ ...
10032
+ }
10033
+ * })
10034
+ * ```
10035
+ *
10036
+ * Connects an {@link Amity.Client} instance to ASC servers
10037
+ *
10038
+ * @param params. the connect parameters
10039
+ * @param params.sessionHandler
10040
+ * @returns a success boolean if connected
10041
+ *
10042
+ * @category Client API
10043
+ * @async
10044
+ */
10045
+ const loginAsBot = async (params) => {
10046
+ const client = getActiveClient();
10047
+ let unsubWatcher;
10048
+ client.log('client/api/connectClient', {
10049
+ apiKey: client.apiKey,
10050
+ sessionState: client.sessionState,
10051
+ });
10052
+ // generate deviceId
10053
+ const deviceId = await getDeviceId();
10054
+ let user;
10055
+ try {
10056
+ const { users, userType } = await setBotClientToken({
10057
+ params: {
10058
+ deviceId,
10059
+ },
10060
+ options: {
10061
+ setAccessTokenCookie: true,
10062
+ },
10063
+ });
10064
+ [user] = users;
10065
+ client.userId = user.userId;
10066
+ client.sessionHandler = params.sessionHandler;
10067
+ /*
10068
+ * Cannot push to subscriptions as watcher needs to continue working even if
10069
+ * token expires
10070
+ */
10071
+ unsubWatcher = client.accessTokenExpiryWatcher(params.sessionHandler);
10072
+ setCurrentUser({ user, userType });
10073
+ }
10074
+ catch (error) {
10075
+ /*
10076
+ * if getting token failed session state reverts to initial state when app
10077
+ * is first launched
10078
+ */
10079
+ SessionWatcher$1.getInstance().setSessionState("notLoggedIn" /* Amity.SessionStates.NOT_LOGGED_IN */);
10080
+ // pass error down tree so the calling function handle it
10081
+ throw error;
10082
+ }
10083
+ await initializeMessagePreviewSetting();
10084
+ if (subscriptions.length === 0) {
10085
+ // handling internal SDK events
10086
+ subscriptions.push(onTokenTerminated(_ => {
10087
+ terminateClient();
10088
+ subscriptions.forEach(fn => fn());
10089
+ unsubWatcher();
10090
+ }), onTokenExpired(state => {
10091
+ SessionWatcher$1.getInstance().setSessionState(state);
10092
+ logout();
10093
+ subscriptions.forEach(fn => fn());
10094
+ }));
10095
+ }
10096
+ return true;
10097
+ };
10098
+ /* end_public_function */
10099
+
9752
10100
  /**
9753
10101
  * ```js
9754
10102
  * import { onChannelMarkerFetched } from '@amityco/ts-sdk'
@@ -10120,6 +10468,11 @@ var index$o = /*#__PURE__*/Object.freeze({
10120
10468
  fetchLinkPreview: fetchLinkPreview,
10121
10469
  getSocialSettings: getSocialSettings,
10122
10470
  getShareableLinkConfiguration: getShareableLinkConfiguration,
10471
+ loginAsVisitor: loginAsVisitor,
10472
+ loginAsBot: loginAsBot,
10473
+ getCurrentUser: getCurrentUser,
10474
+ getCurrentUserType: getCurrentUserType,
10475
+ setCurrentUserType: setCurrentUserType,
10123
10476
  onConnectionError: onConnectionError,
10124
10477
  onClientDisconnected: onClientDisconnected,
10125
10478
  onClientBanned: onClientBanned,
@@ -11834,12 +12187,6 @@ function isAmityClipPost(post) {
11834
12187
  'fileId' in post.data &&
11835
12188
  post.dataType === 'clip');
11836
12189
  }
11837
- function isAmityAudioPost(post) {
11838
- return !!(post.data &&
11839
- typeof post.data !== 'string' &&
11840
- 'fileId' in post.data &&
11841
- post.dataType === 'audio');
11842
- }
11843
12190
 
11844
12191
  const postLinkedObject = (post) => {
11845
12192
  return shallowClone(post, {
@@ -11928,12 +12275,6 @@ const postLinkedObject = (post) => {
11928
12275
  ? (_b = pullFromCache(['file', 'get', (_a = post === null || post === void 0 ? void 0 : post.data) === null || _a === void 0 ? void 0 : _a.fileId])) === null || _b === void 0 ? void 0 : _b.data
11929
12276
  : undefined;
11930
12277
  },
11931
- getAudioInfo() {
11932
- var _a, _b;
11933
- return isAmityAudioPost(post)
11934
- ? (_b = pullFromCache(['file', 'get', (_a = post === null || post === void 0 ? void 0 : post.data) === null || _a === void 0 ? void 0 : _a.fileId])) === null || _b === void 0 ? void 0 : _b.data
11935
- : undefined;
11936
- },
11937
12278
  });
11938
12279
  };
11939
12280
 
@@ -14660,50 +15001,6 @@ const uploadClip = async (formData, feedType, onProgress) => {
14660
15001
  };
14661
15002
  /* end_public_function */
14662
15003
 
14663
- /* begin_public_function
14664
- id: file.upload.audio
14665
- */
14666
- /**
14667
- * ```js
14668
- * import { FileRepository } from '@amityco/ts-sdk'
14669
- * const uploaded = await FileRepository.uploadAudio(formData, onProgress)
14670
- * ```
14671
- *
14672
- * Creates an {@link Amity.File<'audio'>}
14673
- *
14674
- * @param formData The data necessary to create a new {@link Amity.File<'audio'>}
14675
- * @param onProgress The callback to track the upload progress
14676
- * @returns The newly created {@link Amity.File<'audio'>}
14677
- *
14678
- * @category File API
14679
- * @async
14680
- */
14681
- const uploadAudio = async (formData, onProgress) => {
14682
- const client = getActiveClient();
14683
- client.log('file/uploadAudio', formData);
14684
- const file = formData.get('file');
14685
- if (!file)
14686
- throw new Error('The formData object must have a `file` key with audio file.');
14687
- const accessType = GlobalFileAccessType$1.getInstance().getFileAccessType();
14688
- formData.append('accessType', accessType);
14689
- formData.append('preferredFilename', file.name);
14690
- const headers = { 'content-type': 'multipart/form-data' };
14691
- const { data } = await client.http.post('/api/v4/audios', formData, {
14692
- headers,
14693
- onUploadProgress({ loaded, total = 100 }) {
14694
- onProgress === null || onProgress === void 0 ? void 0 : onProgress(Math.round((loaded * 100) / total));
14695
- },
14696
- });
14697
- const cachedAt = client.cache && Date.now();
14698
- if (client.cache)
14699
- ingestInCache({ files: data }, { cachedAt });
14700
- return {
14701
- data,
14702
- cachedAt,
14703
- };
14704
- };
14705
- /* end_public_function */
14706
-
14707
15004
  var index$l = /*#__PURE__*/Object.freeze({
14708
15005
  __proto__: null,
14709
15006
  getFile: getFile,
@@ -14713,8 +15010,7 @@ var index$l = /*#__PURE__*/Object.freeze({
14713
15010
  uploadVideo: uploadVideo,
14714
15011
  uploadImage: uploadImage,
14715
15012
  updateAltText: updateAltText,
14716
- uploadClip: uploadClip,
14717
- uploadAudio: uploadAudio
15013
+ uploadClip: uploadClip
14718
15014
  });
14719
15015
 
14720
15016
  /**
@@ -23068,7 +23364,7 @@ const getCategory = async (categoryId) => {
23068
23364
  ingestInCache(data, { cachedAt });
23069
23365
  const { categories } = data;
23070
23366
  return {
23071
- data: LinkedObject.category(categories.find(category => category.categoryId === categoryId)),
23367
+ data: LinkedObject.category((categories !== null && categories !== void 0 ? categories : []).find(category => category.categoryId === categoryId)),
23072
23368
  cachedAt,
23073
23369
  };
23074
23370
  };
@@ -25479,45 +25775,6 @@ const createClipPost = async (bundle) => {
25479
25775
  };
25480
25776
  /* end_public_function */
25481
25777
 
25482
- /* begin_public_function
25483
- id: post.create.audio_post
25484
- */
25485
- /**
25486
- * ```js
25487
- * import { PostRepository } from '@amityco/ts-sdk'
25488
- * const created = await PostRepository.createAudioPost({
25489
- * targetType: 'user',
25490
- * targetId: 'foobar',
25491
- * dataType: 'audio',
25492
- * data: { text: 'Audio Post' },
25493
- * attachments: [{ type: 'audio', fileId: 'fileId123'}]
25494
- * }))
25495
- * ```
25496
- *
25497
- * Creates an {@link Amity.Post}
25498
- *
25499
- * @param bundle The data necessary to create a new {@link Amity.Post}
25500
- * @returns The newly created {@link Amity.Post}
25501
- *
25502
- * @category Post API
25503
- * @async
25504
- */
25505
- const createAudioPost = async (bundle) => {
25506
- const client = getActiveClient();
25507
- client.log('post/createAudioPost', bundle);
25508
- const { data: payload } = await client.http.post('/api/v4/posts', bundle);
25509
- fireEvent('post.created', payload);
25510
- const data = preparePostPayload(payload);
25511
- const cachedAt = client.cache && Date.now();
25512
- if (client.cache)
25513
- ingestInCache(data, { cachedAt });
25514
- return {
25515
- data: postLinkedObject(data === null || data === void 0 ? void 0 : data.posts[0]),
25516
- cachedAt,
25517
- };
25518
- };
25519
- /* end_public_function */
25520
-
25521
25778
  /* begin_public_function
25522
25779
  id: post.get
25523
25780
  */
@@ -26634,7 +26891,6 @@ var index$8 = /*#__PURE__*/Object.freeze({
26634
26891
  unflagPost: unflagPost,
26635
26892
  isPostFlaggedByMe: isPostFlaggedByMe,
26636
26893
  createClipPost: createClipPost,
26637
- createAudioPost: createAudioPost,
26638
26894
  onPostCreated: onPostCreated,
26639
26895
  onPostUpdated: onPostUpdated,
26640
26896
  onPostDeleted: onPostDeleted,