@amityco/ts-sdk 6.35.2 → 6.35.3-024c022.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 (325) hide show
  1. package/.env +26 -26
  2. package/dist/@types/core/events.d.ts +6 -6
  3. package/dist/@types/core/events.d.ts.map +1 -1
  4. package/dist/@types/domains/analytics.d.ts +0 -3
  5. package/dist/@types/domains/analytics.d.ts.map +1 -1
  6. package/dist/@types/domains/channel.d.ts +9 -33
  7. package/dist/@types/domains/channel.d.ts.map +1 -1
  8. package/dist/@types/domains/client.d.ts +0 -4
  9. package/dist/@types/domains/client.d.ts.map +1 -1
  10. package/dist/@types/domains/community.d.ts +2 -10
  11. package/dist/@types/domains/community.d.ts.map +1 -1
  12. package/dist/@types/domains/feed.d.ts +0 -11
  13. package/dist/@types/domains/feed.d.ts.map +1 -1
  14. package/dist/@types/domains/message.d.ts +0 -12
  15. package/dist/@types/domains/message.d.ts.map +1 -1
  16. package/dist/@types/domains/subChannel.d.ts +0 -4
  17. package/dist/@types/domains/subChannel.d.ts.map +1 -1
  18. package/dist/@types/domains/user.d.ts +1 -5
  19. package/dist/@types/domains/user.d.ts.map +1 -1
  20. package/dist/channelRepository/api/deleteChannel.d.ts.map +1 -1
  21. package/dist/channelRepository/api/index.d.ts +0 -1
  22. package/dist/channelRepository/api/index.d.ts.map +1 -1
  23. package/dist/channelRepository/channelMembership/observers/getMembers/ChannelMemberLiveCollectionController.d.ts.map +1 -1
  24. package/dist/channelRepository/channelMembership/observers/getMembers/getMembers.d.ts.map +1 -1
  25. package/dist/channelRepository/channelMembership/observers/searchMembers/SearchChannelMemberLiveCollectionController.d.ts.map +1 -1
  26. package/dist/channelRepository/channelMembership/observers/searchMembers/searchMembers.d.ts.map +1 -1
  27. package/dist/channelRepository/{api → internalApi}/getChannel.d.ts +2 -2
  28. package/dist/channelRepository/internalApi/getChannel.d.ts.map +1 -0
  29. package/dist/channelRepository/internalApi/getChannelByIds.d.ts +32 -0
  30. package/dist/channelRepository/internalApi/getChannelByIds.d.ts.map +1 -0
  31. package/dist/channelRepository/{api → internalApi}/markAsRead.d.ts +0 -3
  32. package/dist/channelRepository/internalApi/markAsRead.d.ts.map +1 -0
  33. package/dist/channelRepository/observers/getChannel.d.ts.map +1 -1
  34. package/dist/channelRepository/observers/getChannels/ChannelLiveCollectionController.d.ts.map +1 -1
  35. package/dist/channelRepository/observers/index.d.ts +0 -2
  36. package/dist/channelRepository/observers/index.d.ts.map +1 -1
  37. package/dist/channelRepository/utils/constructChannelDynamicValue.d.ts.map +1 -1
  38. package/dist/channelRepository/utils/constructChannelObject.d.ts +2 -0
  39. package/dist/channelRepository/utils/constructChannelObject.d.ts.map +1 -0
  40. package/dist/channelRepository/utils/getChannelIsMentioned.d.ts +1 -1
  41. package/dist/channelRepository/utils/getChannelIsMentioned.d.ts.map +1 -1
  42. package/dist/channelRepository/utils/getSubChannelsUnreadCount.d.ts +1 -1
  43. package/dist/channelRepository/utils/getSubChannelsUnreadCount.d.ts.map +1 -1
  44. package/dist/channelRepository/utils/resolveChannels.d.ts.map +1 -1
  45. package/dist/client/observers/index.d.ts +0 -1
  46. package/dist/client/observers/index.d.ts.map +1 -1
  47. package/dist/client/utils/endpoints.d.ts +1 -1
  48. package/dist/client/utils/markerSyncEngine.d.ts +0 -4
  49. package/dist/client/utils/markerSyncEngine.d.ts.map +1 -1
  50. package/dist/client/utils/subscribeGlobalTopic.d.ts.map +1 -1
  51. package/dist/commentRepository/observers/index.d.ts +0 -2
  52. package/dist/commentRepository/observers/index.d.ts.map +1 -1
  53. package/dist/communityRepository/api/index.d.ts +0 -1
  54. package/dist/communityRepository/api/index.d.ts.map +1 -1
  55. package/dist/communityRepository/api/queryCommunities.d.ts.map +1 -1
  56. package/dist/communityRepository/communityMembership/observers/getMembers/CommunityMembersLiveCollectionController.d.ts.map +1 -1
  57. package/dist/communityRepository/communityMembership/observers/getMembers/CommunityMembersQueryStreamController.d.ts.map +1 -1
  58. package/dist/communityRepository/communityMembership/observers/getMembers.d.ts.map +1 -1
  59. package/dist/communityRepository/communityMembership/observers/searchMembers/SearchCommunityMembersPaginationController.d.ts +1 -1
  60. package/dist/communityRepository/communityMembership/observers/searchMembers/SearchCommunityMembersPaginationController.d.ts.map +1 -1
  61. package/dist/communityRepository/observers/getCommunities/CommunitiesLiveCollectionController.d.ts.map +1 -1
  62. package/dist/communityRepository/observers/getCommunities/CommunitiesPaginationController.d.ts.map +1 -1
  63. package/dist/communityRepository/observers/getCommunities/CommunitiesQueryStreamController.d.ts.map +1 -1
  64. package/dist/communityRepository/observers/index.d.ts +0 -1
  65. package/dist/communityRepository/observers/index.d.ts.map +1 -1
  66. package/dist/core/events.d.ts +3 -3
  67. package/dist/core/events.d.ts.map +1 -1
  68. package/dist/core/subscription.d.ts +1 -0
  69. package/dist/core/subscription.d.ts.map +1 -1
  70. package/dist/feedRepository/api/getCustomRankingGlobalFeed.d.ts +2 -35
  71. package/dist/feedRepository/api/getCustomRankingGlobalFeed.d.ts.map +1 -1
  72. package/dist/feedRepository/api/queryGlobalFeed.d.ts +2 -24
  73. package/dist/feedRepository/api/queryGlobalFeed.d.ts.map +1 -1
  74. package/dist/fileRepository/api/index.d.ts +0 -3
  75. package/dist/fileRepository/api/index.d.ts.map +1 -1
  76. package/dist/fileRepository/index.d.ts +0 -1
  77. package/dist/fileRepository/index.d.ts.map +1 -1
  78. package/dist/index.cjs.js +1362 -2899
  79. package/dist/index.esm.js +1082 -2620
  80. package/dist/index.umd.js +4 -4
  81. package/dist/messagePreview/utils/getChannelMessagePreviewWithUser.d.ts +1 -5
  82. package/dist/messagePreview/utils/getChannelMessagePreviewWithUser.d.ts.map +1 -1
  83. package/dist/messagePreview/utils/getSubChannelMessagePreviewWithUser.d.ts +0 -1
  84. package/dist/messagePreview/utils/getSubChannelMessagePreviewWithUser.d.ts.map +1 -1
  85. package/dist/messageRepository/api/index.d.ts +0 -1
  86. package/dist/messageRepository/api/index.d.ts.map +1 -1
  87. package/dist/messageRepository/internalApi/getMessage.d.ts.map +1 -1
  88. package/dist/messageRepository/observers/getMessages/MessageLiveCollectionController.d.ts.map +1 -1
  89. package/dist/messageRepository/observers/getMessages/MessageQueryStreamController.d.ts.map +1 -1
  90. package/dist/messageRepository/observers/getMessages/getMessages.d.ts.map +1 -1
  91. package/dist/messageRepository/observers/index.d.ts +0 -2
  92. package/dist/messageRepository/observers/index.d.ts.map +1 -1
  93. package/dist/messageRepository/utils/prepareMessagePayload.d.ts +1 -1
  94. package/dist/messageRepository/utils/prepareMessagePayload.d.ts.map +1 -1
  95. package/dist/pollRepository/observers/index.d.ts +0 -1
  96. package/dist/pollRepository/observers/index.d.ts.map +1 -1
  97. package/dist/postRepository/api/index.d.ts +0 -1
  98. package/dist/postRepository/api/index.d.ts.map +1 -1
  99. package/dist/postRepository/observers/index.d.ts +0 -2
  100. package/dist/postRepository/observers/index.d.ts.map +1 -1
  101. package/dist/role/api/queryRoles.d.ts +0 -7
  102. package/dist/role/api/queryRoles.d.ts.map +1 -1
  103. package/dist/streamRepository/api/index.d.ts +0 -2
  104. package/dist/streamRepository/api/index.d.ts.map +1 -1
  105. package/dist/streamRepository/events/onStreamFlagged.d.ts.map +1 -1
  106. package/dist/streamRepository/internalApi/getStream.d.ts.map +1 -0
  107. package/dist/subChannelRepository/utils/markReadEngine.d.ts +0 -34
  108. package/dist/subChannelRepository/utils/markReadEngine.d.ts.map +1 -1
  109. package/dist/userRepository/internalApi/queryUsers.d.ts.map +1 -1
  110. package/dist/userRepository/observers/getUsers/UserLiveCollectionController.d.ts.map +1 -1
  111. package/dist/userRepository/observers/getUsers/UserPaginationController.d.ts.map +1 -1
  112. package/dist/userRepository/observers/index.d.ts +0 -2
  113. package/dist/userRepository/observers/index.d.ts.map +1 -1
  114. package/dist/userRepository/relationship/block/index.d.ts +0 -1
  115. package/dist/userRepository/relationship/block/index.d.ts.map +1 -1
  116. package/dist/userRepository/relationship/follow/api/index.d.ts +0 -2
  117. package/dist/userRepository/relationship/follow/api/index.d.ts.map +1 -1
  118. package/dist/userRepository/relationship/follow/observers/index.d.ts +0 -3
  119. package/dist/userRepository/relationship/follow/observers/index.d.ts.map +1 -1
  120. package/dist/utils/liveObject.d.ts +1 -1
  121. package/package.json +1 -1
  122. package/src/@types/core/events.ts +8 -9
  123. package/src/@types/domains/analytics.ts +0 -7
  124. package/src/@types/domains/channel.ts +15 -46
  125. package/src/@types/domains/client.ts +0 -4
  126. package/src/@types/domains/community.ts +0 -8
  127. package/src/@types/domains/feed.ts +0 -11
  128. package/src/@types/domains/message.ts +0 -12
  129. package/src/@types/domains/subChannel.ts +0 -4
  130. package/src/@types/domains/user.ts +0 -4
  131. package/src/analytic/api/queryReachUser.ts +1 -1
  132. package/src/channelRepository/api/deleteChannel.ts +3 -2
  133. package/src/channelRepository/api/index.ts +0 -2
  134. package/src/channelRepository/channelMembership/observers/getMembers/ChannelMemberLiveCollectionController.ts +0 -8
  135. package/src/channelRepository/channelMembership/observers/getMembers/getMembers.ts +0 -8
  136. package/src/channelRepository/channelMembership/observers/searchMembers/SearchChannelMemberLiveCollectionController.ts +0 -8
  137. package/src/channelRepository/channelMembership/observers/searchMembers/searchMembers.ts +0 -8
  138. package/src/channelRepository/{api → internalApi}/getChannel.ts +4 -4
  139. package/src/channelRepository/internalApi/getChannelByIds.ts +107 -0
  140. package/src/channelRepository/{api → internalApi}/markAsRead.ts +0 -3
  141. package/src/channelRepository/observers/getChannel.ts +4 -3
  142. package/src/channelRepository/observers/getChannels/ChannelLiveCollectionController.ts +8 -3
  143. package/src/channelRepository/observers/index.ts +0 -2
  144. package/src/channelRepository/utils/constructChannelDynamicValue.ts +4 -9
  145. package/src/channelRepository/utils/constructChannelObject.ts +9 -0
  146. package/src/channelRepository/utils/getChannelIsMentioned.ts +4 -1
  147. package/src/channelRepository/utils/getSubChannelsUnreadCount.ts +1 -1
  148. package/src/channelRepository/utils/resolveChannels.ts +6 -1
  149. package/src/client/observers/getUserUnread.ts +1 -1
  150. package/src/client/observers/index.ts +0 -1
  151. package/src/client/utils/endpoints.ts +1 -1
  152. package/src/client/utils/markerSyncEngine.ts +0 -9
  153. package/src/client/utils/subscribeGlobalTopic.ts +3 -0
  154. package/src/commentRepository/observers/index.ts +0 -2
  155. package/src/communityRepository/api/index.ts +0 -3
  156. package/src/communityRepository/api/queryCommunities.ts +1 -2
  157. package/src/communityRepository/communityMembership/observers/getMembers/CommunityMembersLiveCollectionController.ts +0 -12
  158. package/src/communityRepository/communityMembership/observers/getMembers/CommunityMembersQueryStreamController.ts +0 -7
  159. package/src/communityRepository/communityMembership/observers/getMembers.ts +0 -4
  160. package/src/communityRepository/communityMembership/observers/searchMembers/SearchCommunityMembersPaginationController.ts +1 -1
  161. package/src/communityRepository/observers/getCommunities/CommunitiesLiveCollectionController.ts +12 -16
  162. package/src/communityRepository/observers/getCommunities/CommunitiesPaginationController.ts +0 -1
  163. package/src/communityRepository/observers/getCommunities/CommunitiesQueryStreamController.ts +0 -4
  164. package/src/communityRepository/observers/index.ts +0 -2
  165. package/src/core/events.ts +6 -4
  166. package/src/core/subscription.ts +6 -0
  167. package/src/feedRepository/api/getCustomRankingGlobalFeed.ts +8 -55
  168. package/src/feedRepository/api/queryGlobalFeed.ts +6 -58
  169. package/src/feedRepository/api/test/getCustomRankingGlobalFeed.test.ts +1 -1
  170. package/src/feedRepository/api/test/queryGlobalFeed.test.ts +1 -1
  171. package/src/fileRepository/api/index.ts +0 -5
  172. package/src/fileRepository/index.ts +0 -1
  173. package/src/liveStreamPlayer/api/getPlayer.ts +1 -1
  174. package/src/messagePreview/utils/getChannelMessagePreviewWithUser.ts +2 -2
  175. package/src/messageRepository/api/createMessage.ts +1 -1
  176. package/src/messageRepository/api/index.ts +0 -2
  177. package/src/messageRepository/api/tests/createMessage.test.ts +5 -1
  178. package/src/messageRepository/internalApi/getMessage.ts +0 -6
  179. package/src/messageRepository/observers/getMessages/MessageLiveCollectionController.ts +0 -20
  180. package/src/messageRepository/observers/getMessages/MessageQueryStreamController.ts +0 -10
  181. package/src/messageRepository/observers/getMessages/getMessages.ts +0 -20
  182. package/src/messageRepository/observers/index.ts +0 -3
  183. package/src/messageRepository/utils/prepareMessagePayload.ts +1 -7
  184. package/src/pollRepository/observers/index.ts +0 -1
  185. package/src/postRepository/api/index.ts +0 -1
  186. package/src/postRepository/observers/index.ts +0 -2
  187. package/src/role/api/queryRoles.ts +1 -13
  188. package/src/streamRepository/api/deleteStream.ts +1 -1
  189. package/src/streamRepository/api/index.ts +0 -4
  190. package/src/streamRepository/api/tests/getStream.test.ts +1 -1
  191. package/src/streamRepository/events/onStreamFlagged.ts +1 -6
  192. package/src/streamRepository/events/onStreamRecorded.ts +1 -1
  193. package/src/streamRepository/events/onStreamStarted.ts +1 -1
  194. package/src/streamRepository/events/onStreamStopped.ts +1 -1
  195. package/src/streamRepository/events/onStreamTerminated.ts +1 -1
  196. package/src/streamRepository/observers/getStreamById.ts +1 -1
  197. package/src/subChannelRepository/utils/markReadEngine.ts +0 -106
  198. package/src/userRepository/internalApi/queryUsers.ts +1 -9
  199. package/src/userRepository/observers/getUsers/UserLiveCollectionController.ts +12 -16
  200. package/src/userRepository/observers/getUsers/UserPaginationController.ts +1 -2
  201. package/src/userRepository/observers/index.ts +0 -2
  202. package/src/userRepository/relationship/block/index.ts +0 -1
  203. package/src/userRepository/relationship/follow/api/index.ts +0 -4
  204. package/src/userRepository/relationship/follow/observers/index.ts +0 -4
  205. package/src/utils/linkedObject/channelLinkedObject.ts +1 -1
  206. package/src/utils/liveObject.ts +2 -2
  207. package/dist/channelRepository/api/getChannel.d.ts.map +0 -1
  208. package/dist/channelRepository/api/markAsRead.d.ts.map +0 -1
  209. package/dist/channelRepository/observers/observeChannel.d.ts +0 -18
  210. package/dist/channelRepository/observers/observeChannel.d.ts.map +0 -1
  211. package/dist/channelRepository/observers/observeChannels.d.ts +0 -17
  212. package/dist/channelRepository/observers/observeChannels.d.ts.map +0 -1
  213. package/dist/client/observers/getTotalUnreadCount.d.ts +0 -20
  214. package/dist/client/observers/getTotalUnreadCount.d.ts.map +0 -1
  215. package/dist/client/observers/tests/getTotalUnreadCount.test.d.ts +0 -2
  216. package/dist/client/observers/tests/getTotalUnreadCount.test.d.ts.map +0 -1
  217. package/dist/commentRepository/observers/observeComment.d.ts +0 -18
  218. package/dist/commentRepository/observers/observeComment.d.ts.map +0 -1
  219. package/dist/commentRepository/observers/observeComments.d.ts +0 -26
  220. package/dist/commentRepository/observers/observeComments.d.ts.map +0 -1
  221. package/dist/communityRepository/api/getTopTrendingCommunities.d.ts +0 -35
  222. package/dist/communityRepository/api/getTopTrendingCommunities.d.ts.map +0 -1
  223. package/dist/communityRepository/api/test/getTopTrendingCommunities.test.d.ts +0 -2
  224. package/dist/communityRepository/api/test/getTopTrendingCommunities.test.d.ts.map +0 -1
  225. package/dist/communityRepository/observers/observeCommunity.d.ts +0 -18
  226. package/dist/communityRepository/observers/observeCommunity.d.ts.map +0 -1
  227. package/dist/feedRepository/internalApi/getCustomRankingGlobalFeed.d.ts +0 -8
  228. package/dist/feedRepository/internalApi/getCustomRankingGlobalFeed.d.ts.map +0 -1
  229. package/dist/feedRepository/internalApi/index.d.ts +0 -3
  230. package/dist/feedRepository/internalApi/index.d.ts.map +0 -1
  231. package/dist/feedRepository/internalApi/queryGlobalFeed.d.ts +0 -9
  232. package/dist/feedRepository/internalApi/queryGlobalFeed.d.ts.map +0 -1
  233. package/dist/feedRepository/internalApi/test/getCustomRankingGlobalFeed.test.d.ts +0 -2
  234. package/dist/feedRepository/internalApi/test/getCustomRankingGlobalFeed.test.d.ts.map +0 -1
  235. package/dist/feedRepository/internalApi/test/queryGlobalFeed.test.d.ts +0 -2
  236. package/dist/feedRepository/internalApi/test/queryGlobalFeed.test.d.ts.map +0 -1
  237. package/dist/fileRepository/api/createFile.d.ts +0 -17
  238. package/dist/fileRepository/api/createFile.d.ts.map +0 -1
  239. package/dist/fileRepository/api/createImage.d.ts +0 -17
  240. package/dist/fileRepository/api/createImage.d.ts.map +0 -1
  241. package/dist/fileRepository/api/createVideo.d.ts +0 -18
  242. package/dist/fileRepository/api/createVideo.d.ts.map +0 -1
  243. package/dist/fileRepository/observers/index.d.ts +0 -2
  244. package/dist/fileRepository/observers/index.d.ts.map +0 -1
  245. package/dist/fileRepository/observers/observeFile.d.ts +0 -18
  246. package/dist/fileRepository/observers/observeFile.d.ts.map +0 -1
  247. package/dist/messageRepository/api/getMessage.d.ts +0 -32
  248. package/dist/messageRepository/api/getMessage.d.ts.map +0 -1
  249. package/dist/messageRepository/api/getMessages.d.ts +0 -32
  250. package/dist/messageRepository/api/getMessages.d.ts.map +0 -1
  251. package/dist/messageRepository/observers/observeMessage.d.ts +0 -21
  252. package/dist/messageRepository/observers/observeMessage.d.ts.map +0 -1
  253. package/dist/messageRepository/observers/observeMessages.d.ts +0 -23
  254. package/dist/messageRepository/observers/observeMessages.d.ts.map +0 -1
  255. package/dist/pollRepository/observers/observePoll.d.ts +0 -18
  256. package/dist/pollRepository/observers/observePoll.d.ts.map +0 -1
  257. package/dist/postRepository/api/updatePost.d.ts +0 -24
  258. package/dist/postRepository/api/updatePost.d.ts.map +0 -1
  259. package/dist/postRepository/observers/observePost.d.ts +0 -18
  260. package/dist/postRepository/observers/observePost.d.ts.map +0 -1
  261. package/dist/postRepository/observers/observePosts.d.ts +0 -34
  262. package/dist/postRepository/observers/observePosts.d.ts.map +0 -1
  263. package/dist/streamRepository/api/getStream.d.ts.map +0 -1
  264. package/dist/streamRepository/api/queryStreams.d.ts +0 -25
  265. package/dist/streamRepository/api/queryStreams.d.ts.map +0 -1
  266. package/dist/userRepository/observers/getViewedUsers.d.ts +0 -7
  267. package/dist/userRepository/observers/getViewedUsers.d.ts.map +0 -1
  268. package/dist/userRepository/observers/observeUser.d.ts +0 -17
  269. package/dist/userRepository/observers/observeUser.d.ts.map +0 -1
  270. package/dist/userRepository/observers/tests/getViewedUsers.test.d.ts +0 -2
  271. package/dist/userRepository/observers/tests/getViewedUsers.test.d.ts.map +0 -1
  272. package/dist/userRepository/relationship/block/observers/getBlockedUsers.d.ts +0 -2
  273. package/dist/userRepository/relationship/block/observers/getBlockedUsers.d.ts.map +0 -1
  274. package/dist/userRepository/relationship/block/observers/index.d.ts +0 -2
  275. package/dist/userRepository/relationship/block/observers/index.d.ts.map +0 -1
  276. package/dist/userRepository/relationship/follow/api/acceptFollower.d.ts +0 -19
  277. package/dist/userRepository/relationship/follow/api/acceptFollower.d.ts.map +0 -1
  278. package/dist/userRepository/relationship/follow/api/declineFollower.d.ts +0 -19
  279. package/dist/userRepository/relationship/follow/api/declineFollower.d.ts.map +0 -1
  280. package/dist/userRepository/relationship/follow/observers/observeFollowInfo.d.ts +0 -18
  281. package/dist/userRepository/relationship/follow/observers/observeFollowInfo.d.ts.map +0 -1
  282. package/dist/userRepository/relationship/follow/observers/observeFollowers.d.ts +0 -18
  283. package/dist/userRepository/relationship/follow/observers/observeFollowers.d.ts.map +0 -1
  284. package/dist/userRepository/relationship/follow/observers/observeFollowings.d.ts +0 -18
  285. package/dist/userRepository/relationship/follow/observers/observeFollowings.d.ts.map +0 -1
  286. package/src/channelRepository/observers/observeChannel.ts +0 -109
  287. package/src/channelRepository/observers/observeChannels.ts +0 -74
  288. package/src/client/observers/getTotalUnreadCount.ts +0 -53
  289. package/src/client/observers/tests/getTotalUnreadCount.test.ts +0 -101
  290. package/src/commentRepository/observers/observeComment.ts +0 -102
  291. package/src/commentRepository/observers/observeComments.ts +0 -77
  292. package/src/communityRepository/api/getTopTrendingCommunities.ts +0 -97
  293. package/src/communityRepository/api/test/getTopTrendingCommunities.test.ts +0 -102
  294. package/src/communityRepository/observers/observeCommunity.ts +0 -103
  295. package/src/feedRepository/internalApi/getCustomRankingGlobalFeed.ts +0 -87
  296. package/src/feedRepository/internalApi/index.ts +0 -2
  297. package/src/feedRepository/internalApi/queryGlobalFeed.ts +0 -95
  298. package/src/feedRepository/internalApi/test/getCustomRankingGlobalFeed.test.ts +0 -138
  299. package/src/feedRepository/internalApi/test/queryGlobalFeed.test.ts +0 -130
  300. package/src/fileRepository/api/createFile.ts +0 -59
  301. package/src/fileRepository/api/createImage.ts +0 -59
  302. package/src/fileRepository/api/createVideo.ts +0 -69
  303. package/src/fileRepository/observers/index.ts +0 -1
  304. package/src/fileRepository/observers/observeFile.ts +0 -49
  305. package/src/messageRepository/api/getMessage.ts +0 -102
  306. package/src/messageRepository/api/getMessages.ts +0 -83
  307. package/src/messageRepository/observers/observeMessage.ts +0 -94
  308. package/src/messageRepository/observers/observeMessages.ts +0 -89
  309. package/src/pollRepository/observers/observePoll.ts +0 -67
  310. package/src/postRepository/api/updatePost.ts +0 -63
  311. package/src/postRepository/observers/observePost.ts +0 -115
  312. package/src/postRepository/observers/observePosts.ts +0 -86
  313. package/src/streamRepository/api/queryStreams.ts +0 -63
  314. package/src/userRepository/observers/getViewedUsers.ts +0 -99
  315. package/src/userRepository/observers/observeUser.ts +0 -71
  316. package/src/userRepository/observers/tests/getViewedUsers.test.ts +0 -39
  317. package/src/userRepository/relationship/block/observers/getBlockedUsers.ts +0 -13
  318. package/src/userRepository/relationship/block/observers/index.ts +0 -1
  319. package/src/userRepository/relationship/follow/api/acceptFollower.ts +0 -40
  320. package/src/userRepository/relationship/follow/api/declineFollower.ts +0 -40
  321. package/src/userRepository/relationship/follow/observers/observeFollowInfo.ts +0 -64
  322. package/src/userRepository/relationship/follow/observers/observeFollowers.ts +0 -74
  323. package/src/userRepository/relationship/follow/observers/observeFollowings.ts +0 -74
  324. /package/dist/streamRepository/{api → internalApi}/getStream.d.ts +0 -0
  325. /package/src/streamRepository/{api → internalApi}/getStream.ts +0 -0
@@ -1,87 +0,0 @@
1
- import { getActiveClient } from '~/client/api/activeClient';
2
-
3
- import { toPage, toToken } from '~/core/query';
4
- import { ingestInCache } from '~/cache/api/ingestInCache';
5
- import { pullFromCache, pushToCache } from '~/cache/api';
6
- import { getResolver } from '~/core/model';
7
- import { prepareMembershipPayload } from '~/group/utils';
8
-
9
- export const getCustomRankingGlobalFeed = async (query?: {
10
- dataTypes?: ('video' | 'image' | 'file' | 'liveStream')[];
11
- page?: Amity.Page;
12
- }): Promise<Amity.Cached<Amity.Paged<Amity.InternalPost>>> => {
13
- const client = getActiveClient();
14
- client.log('feed/getCustomRankingGlobalFeed', query);
15
-
16
- const { page, ...params } = query ?? {};
17
-
18
- const { data: queryPayload } = await client.http.get<Amity.PostPayload & Amity.Pagination>(
19
- `/api/v5/me/global-feeds`,
20
- {
21
- params: {
22
- ...params,
23
- options: {
24
- token: toToken(page, 'skiplimit'),
25
- },
26
- },
27
- },
28
- );
29
-
30
- const { paging, ...payload } = queryPayload;
31
-
32
- const data = prepareMembershipPayload(payload, 'communityUsers');
33
-
34
- const { posts } = data;
35
-
36
- const cachedAt = client.cache && Date.now();
37
-
38
- if (client.cache) {
39
- ingestInCache(data);
40
-
41
- const cacheKey = [
42
- 'customGlobalFeed',
43
- 'query',
44
- { ...params, options: { ...page } } as Amity.Serializable,
45
- ];
46
- pushToCache(cacheKey, { posts: posts.map(getResolver('post')), paging });
47
- }
48
-
49
- const nextPage = toPage(paging.next);
50
- const prevPage = toPage(paging.previous);
51
-
52
- return { data: posts, cachedAt, prevPage, nextPage };
53
- };
54
-
55
- getCustomRankingGlobalFeed.locally = (
56
- query?: Parameters<typeof getCustomRankingGlobalFeed>[0],
57
- ): Amity.Cached<Amity.Paged<Amity.InternalPost>> | undefined => {
58
- const client = getActiveClient();
59
- client.log('post/getCustomRankingGlobalFeed.locally', query);
60
-
61
- if (!client.cache) return;
62
-
63
- const { page, ...params } = query ?? {};
64
-
65
- const queryKey = [
66
- 'customGlobalFeed',
67
- 'query',
68
- { ...params, options: { ...page } } as Amity.Serializable,
69
- ];
70
-
71
- const { data, cachedAt } =
72
- pullFromCache<{ posts: Amity.InternalPost['postId'][] } & Amity.Pagination>(queryKey) ?? {};
73
-
74
- if (!data?.posts.length) return;
75
-
76
- const posts: Amity.InternalPost[] = data.posts
77
- .map(postId => pullFromCache<Amity.InternalPost>(['post', 'get', postId])!)
78
- .filter(Boolean)
79
- .map(({ data }) => data);
80
-
81
- const prevPage = toPage(data?.paging.previous);
82
- const nextPage = toPage(data?.paging.next);
83
-
84
- return posts.length === data?.posts?.length
85
- ? { data: posts, cachedAt, prevPage, nextPage }
86
- : undefined;
87
- };
@@ -1,2 +0,0 @@
1
- export * from './queryGlobalFeed';
2
- export * from './getCustomRankingGlobalFeed';
@@ -1,95 +0,0 @@
1
- import { getActiveClient } from '~/client/api/activeClient';
2
-
3
- import { toPage, toToken } from '~/core/query';
4
- import { ingestInCache } from '~/cache/api/ingestInCache';
5
- import { pullFromCache, pushToCache } from '~/cache/api';
6
- import { getResolver } from '~/core/model';
7
- import { prepareMembershipPayload } from '~/group/utils';
8
-
9
- export const queryGlobalFeed = async (query?: {
10
- dataTypes?: ('video' | 'image' | 'file' | 'liveStream')[];
11
- useCustomRanking?: boolean;
12
- page?: Amity.Page;
13
- }): Promise<Amity.Cached<Amity.Paged<Amity.InternalPost>>> => {
14
- const client = getActiveClient();
15
- client.log('feed/queryGlobalFeed', query);
16
-
17
- const { useCustomRanking, page, ...params } = query ?? {};
18
-
19
- /*
20
- * TODO: Remove useCustomRanking key from query
21
- */
22
- if (useCustomRanking)
23
- console.warn(
24
- 'The param "useCustomRanking" has been deprecated. To get custom ranking feed use FeedRepository.getCustomRankingGlobalFeed instead',
25
- );
26
-
27
- const { data: queryPayload } = await client.http.get<Amity.PostPayload & Amity.Pagination>(
28
- `/api/v4/me/global-feeds`,
29
- {
30
- params: {
31
- ...params,
32
- options: {
33
- token: toToken(page, 'skiplimit'),
34
- },
35
- },
36
- },
37
- );
38
-
39
- const { paging, ...payload } = queryPayload;
40
-
41
- const data = prepareMembershipPayload(payload, 'communityUsers');
42
-
43
- const { posts } = data;
44
-
45
- const cachedAt = client.cache && Date.now();
46
-
47
- if (client.cache) {
48
- ingestInCache(data);
49
-
50
- const cacheKey = [
51
- 'globalFeed',
52
- 'query',
53
- { ...params, options: { ...page } } as Amity.Serializable,
54
- ];
55
- pushToCache(cacheKey, { posts: posts.map(getResolver('post')), paging });
56
- }
57
-
58
- const nextPage = toPage(paging.next);
59
- const prevPage = toPage(paging.previous);
60
-
61
- return { data: posts, cachedAt, prevPage, nextPage };
62
- };
63
-
64
- queryGlobalFeed.locally = (
65
- query?: Parameters<typeof queryGlobalFeed>[0],
66
- ): Amity.Cached<Amity.Paged<Amity.InternalPost>> | undefined => {
67
- const client = getActiveClient();
68
- client.log('post/queryGlobalFeed.locally', query);
69
-
70
- if (!client.cache) return;
71
-
72
- const { page, ...params } = query ?? {};
73
-
74
- const queryKey = [
75
- 'globalFeed',
76
- 'query',
77
- { ...params, options: { ...page } } as Amity.Serializable,
78
- ];
79
- const { data, cachedAt } =
80
- pullFromCache<{ posts: Amity.InternalPost['postId'][] } & Amity.Pagination>(queryKey) ?? {};
81
-
82
- if (!data?.posts.length) return;
83
-
84
- const posts: Amity.InternalPost[] = data.posts
85
- .map(postId => pullFromCache<Amity.InternalPost>(['post', 'get', postId])!)
86
- .filter(Boolean)
87
- .map(({ data }) => data);
88
-
89
- const prevPage = toPage(data?.paging.previous);
90
- const nextPage = toPage(data?.paging.next);
91
-
92
- return posts.length === data?.posts?.length
93
- ? { data: posts, cachedAt, prevPage, nextPage }
94
- : undefined;
95
- };
@@ -1,138 +0,0 @@
1
- import { disableCache, enableCache, pullFromCache, pushToCache } from '~/cache/api';
2
-
3
- import { client, deepCopy, post11, post12, user11 } from '~/utils/tests';
4
-
5
- import { getCustomRankingGlobalFeed } from '../getCustomRankingGlobalFeed';
6
-
7
- const pagingToken = {
8
- previous: 'eyJiZWZvcmUiOjU1LCJsYXN0IjoxMH0=',
9
- next: 'eyJiZWZvcmUiOjU1LCJsYXN0IjoxMH0=',
10
- };
11
-
12
- const postsToQuery = [post11, post12];
13
- const postIdsToQuery = postsToQuery.map(post => post.postId);
14
- const pagingCriteria = { limit: 10 };
15
- const queryCriteriaWithoutPage = {};
16
- const queryCriteria = { ...queryCriteriaWithoutPage, page: pagingCriteria };
17
-
18
- const resolvedQueryFeedValue = {
19
- data: {
20
- posts: postsToQuery,
21
- postChildren: [],
22
- categories: [],
23
- comments: [],
24
- communityUsers: [],
25
- feeds: [],
26
- files: [],
27
- polls: [],
28
- users: [user11],
29
- paging: pagingToken,
30
- },
31
- };
32
-
33
- describe('getCustomRankingGlobalFeed', () => {
34
- test('it should return fetched feed with correct paging', async () => {
35
- client.http.get = jest.fn().mockResolvedValueOnce(resolvedQueryFeedValue);
36
-
37
- const result = await getCustomRankingGlobalFeed(queryCriteria);
38
-
39
- expect(deepCopy(result)).toEqual(
40
- expect.objectContaining(
41
- deepCopy({
42
- data: postsToQuery,
43
- prevPage: { before: 55, limit: 10 },
44
- nextPage: { before: 55, limit: 10 },
45
- }),
46
- ),
47
- );
48
- });
49
-
50
- test('it should update cache after fetching feed', async () => {
51
- enableCache();
52
- client.http.get = jest.fn().mockResolvedValue(resolvedQueryFeedValue);
53
-
54
- await getCustomRankingGlobalFeed(queryCriteria);
55
-
56
- const recieved = pullFromCache([
57
- 'customGlobalFeed',
58
- 'query',
59
- { ...queryCriteriaWithoutPage, options: pagingCriteria },
60
- ])?.data;
61
-
62
- expect(recieved).toEqual({
63
- posts: postIdsToQuery,
64
- paging: pagingToken,
65
- });
66
-
67
- disableCache();
68
- });
69
-
70
- test('it should call the correct api', async () => {
71
- const resolver = jest.fn().mockResolvedValue(resolvedQueryFeedValue);
72
- client.http.get = resolver;
73
-
74
- await getCustomRankingGlobalFeed(queryCriteria);
75
-
76
- expect(resolver).toHaveBeenCalledWith(`/api/v5/me/global-feeds`, expect.any(Object));
77
- });
78
-
79
- test('it should throw an error if request fails', async () => {
80
- client.http.get = jest.fn().mockRejectedValueOnce(new Error('error'));
81
-
82
- await expect(getCustomRankingGlobalFeed(queryCriteria)).rejects.toThrow('error');
83
- });
84
- });
85
-
86
- describe('getCustomRankingGlobalFeed.locally', () => {
87
- beforeEach(enableCache);
88
- afterEach(disableCache);
89
-
90
- test('it should return cached feed', () => {
91
- postsToQuery.forEach(post => pushToCache(['post', 'get', post.postId], post));
92
-
93
- pushToCache(
94
- ['customGlobalFeed', 'query', { ...queryCriteriaWithoutPage, options: pagingCriteria }],
95
- {
96
- posts: postIdsToQuery,
97
- paging: pagingToken,
98
- },
99
- );
100
-
101
- pushToCache(['user', 'get', user11.userId], user11);
102
-
103
- expect(deepCopy(getCustomRankingGlobalFeed.locally(queryCriteria))).toEqual(
104
- expect.objectContaining(
105
- deepCopy({
106
- data: postsToQuery,
107
- prevPage: { before: 55, limit: 10 },
108
- nextPage: { before: 55, limit: 10 },
109
- }),
110
- ),
111
- );
112
- });
113
-
114
- test('it should accept undefined query param', async () => {
115
- client.http.get = jest.fn().mockResolvedValueOnce(resolvedQueryFeedValue);
116
-
117
- expect(() => getCustomRankingGlobalFeed.locally()).not.toThrow();
118
- });
119
-
120
- test(`it shouldn't return if individual feed cache not exist`, () => {
121
- pushToCache(['globalFeed', 'query', { ...queryCriteriaWithoutPage, options: pagingCriteria }], {
122
- posts: postIdsToQuery,
123
- paging: pagingToken,
124
- });
125
-
126
- expect(getCustomRankingGlobalFeed.locally(queryCriteria)).toBeUndefined();
127
- });
128
-
129
- test('it should return undefined if feed not in cache', () => {
130
- expect(getCustomRankingGlobalFeed.locally({})).toBeUndefined();
131
- });
132
-
133
- test('it should return undefined if cache disabled', () => {
134
- disableCache();
135
-
136
- expect(getCustomRankingGlobalFeed.locally({})).toBeUndefined();
137
- });
138
- });
@@ -1,130 +0,0 @@
1
- import { disableCache, enableCache, pullFromCache, pushToCache } from '~/cache/api';
2
-
3
- import { client, deepCopy, post11, post12, user11 } from '~/utils/tests';
4
-
5
- import { queryGlobalFeed } from '../queryGlobalFeed';
6
-
7
- const pagingToken = {
8
- previous: 'eyJiZWZvcmUiOjU1LCJsYXN0IjoxMH0=',
9
- next: 'eyJiZWZvcmUiOjU1LCJsYXN0IjoxMH0=',
10
- };
11
-
12
- const postsToQuery = [post11, post12];
13
- const postIdsToQuery = postsToQuery.map(post => post.postId);
14
- const pagingCriteria = { limit: 10 };
15
- const queryCriteriaWithoutPage = {};
16
- const queryCriteria = { ...queryCriteriaWithoutPage, page: pagingCriteria };
17
-
18
- const resolvedQueryFeedValue = {
19
- data: {
20
- posts: postsToQuery,
21
- postChildren: [],
22
- categories: [],
23
- comments: [],
24
- communityUsers: [],
25
- feeds: [],
26
- files: [],
27
- polls: [],
28
- users: [user11],
29
- paging: pagingToken,
30
- },
31
- };
32
-
33
- describe('queryGlobalFeed', () => {
34
- test('should return fetched feed with correct paging', async () => {
35
- client.http.get = jest.fn().mockResolvedValueOnce(resolvedQueryFeedValue);
36
-
37
- const result = await queryGlobalFeed(queryCriteria);
38
- expect(deepCopy(result)).toEqual(
39
- expect.objectContaining(
40
- deepCopy({
41
- data: postsToQuery,
42
- prevPage: { before: 55, limit: 10 },
43
- nextPage: { before: 55, limit: 10 },
44
- }),
45
- ),
46
- );
47
- });
48
-
49
- test('should accept undefined query param', async () => {
50
- client.http.get = jest.fn().mockResolvedValueOnce(resolvedQueryFeedValue);
51
-
52
- await expect(queryGlobalFeed()).resolves.not.toThrow();
53
- });
54
-
55
- test('should update cache after fetching feed', async () => {
56
- enableCache();
57
- client.http.get = jest.fn().mockResolvedValue(resolvedQueryFeedValue);
58
-
59
- await queryGlobalFeed(queryCriteria);
60
-
61
- const recieved = pullFromCache([
62
- 'globalFeed',
63
- 'query',
64
- { ...queryCriteriaWithoutPage, options: pagingCriteria },
65
- ])?.data;
66
-
67
- expect(recieved).toEqual({
68
- posts: postIdsToQuery,
69
- paging: pagingToken,
70
- });
71
-
72
- disableCache();
73
- });
74
-
75
- test('should throw an error if request fails', async () => {
76
- client.http.get = jest.fn().mockRejectedValueOnce(new Error('error'));
77
-
78
- await expect(queryGlobalFeed(queryCriteria)).rejects.toThrow('error');
79
- });
80
- });
81
-
82
- describe('queryGlobalFeed.locally', () => {
83
- beforeEach(enableCache);
84
- afterEach(disableCache);
85
-
86
- test('should return cached feed', () => {
87
- postsToQuery.forEach(post => pushToCache(['post', 'get', post.postId], post));
88
-
89
- pushToCache(['globalFeed', 'query', { ...queryCriteriaWithoutPage, options: pagingCriteria }], {
90
- posts: postIdsToQuery,
91
- paging: pagingToken,
92
- });
93
- pushToCache(['user', 'get', user11.userId], user11);
94
-
95
- expect(deepCopy(queryGlobalFeed.locally(queryCriteria))).toEqual(
96
- expect.objectContaining(
97
- deepCopy({
98
- data: postsToQuery,
99
- prevPage: { before: 55, limit: 10 },
100
- nextPage: { before: 55, limit: 10 },
101
- }),
102
- ),
103
- );
104
- });
105
-
106
- test('should accept undefined query param', async () => {
107
- client.http.get = jest.fn().mockResolvedValueOnce(resolvedQueryFeedValue);
108
-
109
- expect(() => queryGlobalFeed.locally()).not.toThrow();
110
- });
111
-
112
- test(`shouldn't return if individual feed cache not exist`, () => {
113
- pushToCache(['globalFeed', 'query', { ...queryCriteriaWithoutPage, options: pagingCriteria }], {
114
- posts: postIdsToQuery,
115
- paging: pagingToken,
116
- });
117
-
118
- expect(queryGlobalFeed.locally(queryCriteria)).toBeUndefined();
119
- });
120
-
121
- test('it should return undefined if feed not in cache', () => {
122
- expect(queryGlobalFeed.locally({})).toBeUndefined();
123
- });
124
-
125
- test('it should return undefined if cache disabled', () => {
126
- disableCache();
127
-
128
- expect(queryGlobalFeed.locally({})).toBeUndefined();
129
- });
130
- });
@@ -1,59 +0,0 @@
1
- import { getActiveClient } from '~/client/api';
2
-
3
- import { ingestInCache } from '~/cache/api/ingestInCache';
4
- import GlobalFileAccessType from '~/client/utils/GlobalFileAccessType';
5
-
6
- /**
7
- * ```js
8
- * import { FileRepository } from '@amityco/ts-sdk'
9
- * const created = await FileRepository.createFile(formData)
10
- * ```
11
- *
12
- * Creates an {@link Amity.File}
13
- *
14
- * @param formData The data necessary to create a new {@link Amity.File}
15
- * @param onProgress The callback to track the upload progress
16
- * @returns The newly created {@link Amity.File}
17
- *
18
- * @category File API
19
- * @async
20
- */
21
- export const createFile = async <T extends Amity.FileType = any>(
22
- formData: FormData,
23
- onProgress?: (percent: number) => void,
24
- ): Promise<Amity.Cached<Amity.File[]>> => {
25
- const client = getActiveClient();
26
- client.log('file/createFile', formData);
27
-
28
- const files = formData.getAll('files');
29
-
30
- if (!files.length) throw new Error('The formData object must have a `files` key.');
31
-
32
- const accessType = GlobalFileAccessType.getInstance().getFileAccessType();
33
- formData.append('accessType', accessType);
34
-
35
- formData.append('preferredFilename', (files[0] as File).name);
36
-
37
- const headers =
38
- 'getHeaders' in formData
39
- ? (formData as any).getHeaders()
40
- : { 'content-type': 'multipart/form-data' };
41
-
42
- const { data } = await client.http.post<Amity.CreateFilePayload<T>>('/api/v4/files', formData, {
43
- headers,
44
- onUploadProgress({ loaded, total = 100 }) {
45
- onProgress && onProgress(Math.round((loaded * 100) / total));
46
- },
47
- });
48
-
49
- // API-FIX: payload should be serialized properly
50
- // const { files } = data
51
-
52
- const cachedAt = client.cache && Date.now();
53
- if (client.cache) ingestInCache({ files: data }, { cachedAt });
54
-
55
- return {
56
- data,
57
- cachedAt,
58
- };
59
- };
@@ -1,59 +0,0 @@
1
- import { getActiveClient } from '~/client/api';
2
- import { ingestInCache } from '~/cache/api/ingestInCache';
3
- import GlobalFileAccessType from '~/client/utils/GlobalFileAccessType';
4
-
5
- /**
6
- * ```js
7
- * import { createImage } from '@amityco/ts-sdk'
8
- * const created = await createImage(formData)
9
- * ```
10
- *
11
- * Creates an {@link Amity.File<'image'>}
12
- *
13
- * @param formData The data necessary to create a new {@link Amity.File<'image'>}
14
- * @param onProgress The callback to track the upload progress
15
- * @returns The newly created {@link Amity.File<'image'>}
16
- *
17
- * @category File API
18
- * @async
19
- */
20
- export const createImage = async (
21
- formData: FormData,
22
- onProgress?: (percent: number) => void,
23
- ): Promise<Amity.Cached<Amity.File<'image'>[]>> => {
24
- const client = getActiveClient();
25
- client.log('file/createImage', formData);
26
-
27
- const files = formData.getAll('files');
28
-
29
- if (!files.length) throw new Error('The formData object must have a `files` key.');
30
-
31
- const accessType = GlobalFileAccessType.getInstance().getFileAccessType();
32
- formData.append('accessType', accessType);
33
-
34
- formData.append('preferredFilename', (files[0] as File).name);
35
-
36
- const headers =
37
- 'getHeaders' in formData
38
- ? (formData as any).getHeaders()
39
- : { 'content-type': 'multipart/form-data' };
40
- const { data } = await client.http.post<Amity.CreateFilePayload<'image'>>(
41
- '/api/v4/images',
42
- formData,
43
- {
44
- headers,
45
- onUploadProgress({ loaded, total = 100 }) {
46
- onProgress && onProgress(Math.round((loaded * 100) / total));
47
- },
48
- },
49
- );
50
- // API-FIX: payload should be serialized properly
51
- // const { files } = data
52
- const cachedAt = client.cache && Date.now();
53
- if (client.cache) ingestInCache({ files: data }, { cachedAt });
54
- return {
55
- data,
56
- cachedAt,
57
- };
58
- };
59
- /* end_public_function */
@@ -1,69 +0,0 @@
1
- import { getActiveClient } from '~/client/api';
2
-
3
- import { ingestInCache } from '~/cache/api/ingestInCache';
4
- import GlobalFileAccessType from '~/client/utils/GlobalFileAccessType';
5
-
6
- /**
7
- * ```js
8
- * import { FileRepository } from '@amityco/ts-sdk'
9
- * const created = await FileRepository.createVideo(formData)
10
- * ```
11
- *
12
- * Creates an {@link Amity.File<'video'>}
13
- *
14
- * @param formData The data necessary to create a new {@link Amity.File<'video'>}
15
- * @param feedType The {@link Amity.File<'video'>} feed type
16
- * @param onProgress The callback to track the upload progress
17
- * @returns The newly uploaded {@link Amity.File<'video'>}
18
- *
19
- * @category File API
20
- * @async
21
- */
22
- export const createVideo = async (
23
- formData: FormData,
24
- feedType?: Amity.ContentFeedType,
25
- onProgress?: (percent: number) => void,
26
- ): Promise<Amity.Cached<Amity.File<'video'>[]>> => {
27
- const client = getActiveClient();
28
- client.log('file/createVideo', formData);
29
-
30
- const files = formData.getAll('files');
31
-
32
- if (!files.length) throw new Error('The formData object must have a `files` key.');
33
-
34
- const accessType = GlobalFileAccessType.getInstance().getFileAccessType();
35
- formData.append('accessType', accessType);
36
-
37
- formData.append('preferredFilename', (files[0] as File).name);
38
-
39
- if (feedType) {
40
- formData.append('feedType', feedType);
41
- }
42
-
43
- const headers =
44
- 'getHeaders' in formData
45
- ? (formData as any).getHeaders()
46
- : { 'content-type': 'multipart/form-data' };
47
-
48
- const { data } = await client.http.post<Amity.CreateFilePayload<'video'>>(
49
- '/api/v4/videos',
50
- formData,
51
- {
52
- headers,
53
- onUploadProgress({ loaded, total = 100 }) {
54
- onProgress && onProgress(Math.round((loaded * 100) / total));
55
- },
56
- },
57
- );
58
-
59
- // API-FIX: payload should be serialized properly
60
- // const { files } = data
61
-
62
- const cachedAt = client.cache && Date.now();
63
- if (client.cache) ingestInCache({ files: data }, { cachedAt });
64
-
65
- return {
66
- data,
67
- cachedAt,
68
- };
69
- };
@@ -1 +0,0 @@
1
- export * from './observeFile';
@@ -1,49 +0,0 @@
1
- import { createQuery, runQuery } from '~/core/query/query';
2
-
3
- import { getActiveClient } from '~/client/api';
4
-
5
- import { getFile } from '../api';
6
-
7
- /**
8
- * ```js
9
- * import { observeFile } from '@amityco/ts-sdk'
10
- *
11
- * let file = {}
12
- * const dispose = observeFile(fileId, updated => file = updated)
13
- * ```
14
- *
15
- * Observe all mutation on a given {@link Amity.File}
16
- *
17
- * @param fileId the ID of the file to observe
18
- * @param callback the function to call when new data are available
19
- * @returns An {@link Amity.Unsubscriber} function to run when willing to stop observing the file
20
- *
21
- * @category File Observer
22
- */
23
- export const observeFile = <Events extends ['onFetch']>(
24
- fileId: string,
25
- callback: Amity.ObjectListener<Amity.Snapshot<Amity.File>, Events>,
26
- ): Amity.Unsubscriber => {
27
- const { log } = getActiveClient();
28
-
29
- const timestamp = Date.now();
30
- log(`observeFile(tmpid: ${timestamp}) > listen`);
31
-
32
- // wrapper function to make sure
33
- const router = (result: Amity.Snapshot<Amity.File>, action: Events[number]) => {
34
- // filter function
35
- if (result.data?.fileId !== fileId) return;
36
-
37
- if (callback instanceof Function) return callback(result);
38
-
39
- if (action !== 'onFetch') callback.onEvent?.(action, result);
40
-
41
- callback[action]?.(result);
42
- };
43
-
44
- runQuery(createQuery(getFile, fileId), result => result.data && router(result, 'onFetch'));
45
-
46
- return () => {
47
- log(`observeFile(tmpid: ${timestamp}) > dispose`);
48
- };
49
- };