@amityco/ts-sdk-react-native 6.36.1-938a6a9.0 → 7.0.1-91b5585.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 (338) hide show
  1. package/dist/@types/core/events.d.ts +6 -6
  2. package/dist/@types/core/events.d.ts.map +1 -1
  3. package/dist/@types/domains/analytics.d.ts +0 -3
  4. package/dist/@types/domains/analytics.d.ts.map +1 -1
  5. package/dist/@types/domains/channel.d.ts +9 -33
  6. package/dist/@types/domains/channel.d.ts.map +1 -1
  7. package/dist/@types/domains/client.d.ts +0 -4
  8. package/dist/@types/domains/client.d.ts.map +1 -1
  9. package/dist/@types/domains/community.d.ts +2 -10
  10. package/dist/@types/domains/community.d.ts.map +1 -1
  11. package/dist/@types/domains/feed.d.ts +0 -11
  12. package/dist/@types/domains/feed.d.ts.map +1 -1
  13. package/dist/@types/domains/message.d.ts +0 -12
  14. package/dist/@types/domains/message.d.ts.map +1 -1
  15. package/dist/@types/domains/subChannel.d.ts +0 -4
  16. package/dist/@types/domains/subChannel.d.ts.map +1 -1
  17. package/dist/@types/domains/user.d.ts +1 -5
  18. package/dist/@types/domains/user.d.ts.map +1 -1
  19. package/dist/channelRepository/api/deleteChannel.d.ts.map +1 -1
  20. package/dist/channelRepository/api/index.d.ts +0 -1
  21. package/dist/channelRepository/api/index.d.ts.map +1 -1
  22. package/dist/channelRepository/channelMembership/observers/getMembers/ChannelMemberLiveCollectionController.d.ts.map +1 -1
  23. package/dist/channelRepository/channelMembership/observers/getMembers/getMembers.d.ts.map +1 -1
  24. package/dist/channelRepository/channelMembership/observers/searchMembers/SearchChannelMemberLiveCollectionController.d.ts.map +1 -1
  25. package/dist/channelRepository/channelMembership/observers/searchMembers/searchMembers.d.ts.map +1 -1
  26. package/dist/channelRepository/{api → internalApi}/getChannel.d.ts +2 -2
  27. package/dist/channelRepository/internalApi/getChannel.d.ts.map +1 -0
  28. package/dist/channelRepository/internalApi/getChannelByIds.d.ts +32 -0
  29. package/dist/channelRepository/internalApi/getChannelByIds.d.ts.map +1 -0
  30. package/dist/channelRepository/{api → internalApi}/markAsRead.d.ts +0 -3
  31. package/dist/channelRepository/internalApi/markAsRead.d.ts.map +1 -0
  32. package/dist/channelRepository/observers/getChannel.d.ts.map +1 -1
  33. package/dist/channelRepository/observers/getChannels/ChannelLiveCollectionController.d.ts.map +1 -1
  34. package/dist/channelRepository/observers/index.d.ts +0 -2
  35. package/dist/channelRepository/observers/index.d.ts.map +1 -1
  36. package/dist/channelRepository/utils/constructChannelDynamicValue.d.ts.map +1 -1
  37. package/dist/channelRepository/utils/constructChannelObject.d.ts +2 -0
  38. package/dist/channelRepository/utils/constructChannelObject.d.ts.map +1 -0
  39. package/dist/channelRepository/utils/getChannelIsMentioned.d.ts +1 -1
  40. package/dist/channelRepository/utils/getChannelIsMentioned.d.ts.map +1 -1
  41. package/dist/channelRepository/utils/getSubChannelsUnreadCount.d.ts +1 -1
  42. package/dist/channelRepository/utils/getSubChannelsUnreadCount.d.ts.map +1 -1
  43. package/dist/channelRepository/utils/resolveChannels.d.ts.map +1 -1
  44. package/dist/channelRepository/utils/updateChannelCache.d.ts +1 -1
  45. package/dist/channelRepository/utils/updateChannelCache.d.ts.map +1 -1
  46. package/dist/client/observers/index.d.ts +0 -1
  47. package/dist/client/observers/index.d.ts.map +1 -1
  48. package/dist/client/utils/endpoints.d.ts +1 -1
  49. package/dist/client/utils/markerSyncEngine.d.ts +0 -4
  50. package/dist/client/utils/markerSyncEngine.d.ts.map +1 -1
  51. package/dist/client/utils/subscribeGlobalTopic.d.ts.map +1 -1
  52. package/dist/commentRepository/observers/index.d.ts +0 -2
  53. package/dist/commentRepository/observers/index.d.ts.map +1 -1
  54. package/dist/communityRepository/api/index.d.ts +0 -1
  55. package/dist/communityRepository/api/index.d.ts.map +1 -1
  56. package/dist/communityRepository/api/queryCommunities.d.ts.map +1 -1
  57. package/dist/communityRepository/communityMembership/observers/getMembers/CommunityMembersLiveCollectionController.d.ts.map +1 -1
  58. package/dist/communityRepository/communityMembership/observers/getMembers/CommunityMembersQueryStreamController.d.ts.map +1 -1
  59. package/dist/communityRepository/communityMembership/observers/getMembers.d.ts.map +1 -1
  60. package/dist/communityRepository/communityMembership/observers/searchMembers/SearchCommunityMembersPaginationController.d.ts +1 -1
  61. package/dist/communityRepository/communityMembership/observers/searchMembers/SearchCommunityMembersPaginationController.d.ts.map +1 -1
  62. package/dist/communityRepository/observers/getCommunities/CommunitiesLiveCollectionController.d.ts.map +1 -1
  63. package/dist/communityRepository/observers/getCommunities/CommunitiesPaginationController.d.ts.map +1 -1
  64. package/dist/communityRepository/observers/getCommunities/CommunitiesQueryStreamController.d.ts.map +1 -1
  65. package/dist/communityRepository/observers/index.d.ts +0 -1
  66. package/dist/communityRepository/observers/index.d.ts.map +1 -1
  67. package/dist/communityRepository/observers/searchCommunities.d.ts +1 -1
  68. package/dist/communityRepository/observers/searchCommunities.d.ts.map +1 -1
  69. package/dist/communityRepository/utils/communityQueryFilter.d.ts.map +1 -1
  70. package/dist/core/events.d.ts +3 -3
  71. package/dist/core/events.d.ts.map +1 -1
  72. package/dist/core/subscription.d.ts +1 -0
  73. package/dist/core/subscription.d.ts.map +1 -1
  74. package/dist/feedRepository/api/getCustomRankingGlobalFeed.d.ts +2 -35
  75. package/dist/feedRepository/api/getCustomRankingGlobalFeed.d.ts.map +1 -1
  76. package/dist/feedRepository/api/queryGlobalFeed.d.ts +2 -24
  77. package/dist/feedRepository/api/queryGlobalFeed.d.ts.map +1 -1
  78. package/dist/fileRepository/api/index.d.ts +0 -3
  79. package/dist/fileRepository/api/index.d.ts.map +1 -1
  80. package/dist/fileRepository/index.d.ts +0 -1
  81. package/dist/fileRepository/index.d.ts.map +1 -1
  82. package/dist/index.cjs.js +1261 -2688
  83. package/dist/index.esm.js +1225 -2653
  84. package/dist/index.umd.js +3 -3
  85. package/dist/messagePreview/utils/getChannelMessagePreviewWithUser.d.ts +1 -5
  86. package/dist/messagePreview/utils/getChannelMessagePreviewWithUser.d.ts.map +1 -1
  87. package/dist/messagePreview/utils/getSubChannelMessagePreviewWithUser.d.ts +0 -1
  88. package/dist/messagePreview/utils/getSubChannelMessagePreviewWithUser.d.ts.map +1 -1
  89. package/dist/messageRepository/api/createMessage.d.ts.map +1 -1
  90. package/dist/messageRepository/api/index.d.ts +0 -1
  91. package/dist/messageRepository/api/index.d.ts.map +1 -1
  92. package/dist/messageRepository/internalApi/getMessage.d.ts.map +1 -1
  93. package/dist/messageRepository/observers/getMessages/MessageLiveCollectionController.d.ts.map +1 -1
  94. package/dist/messageRepository/observers/getMessages/MessageQueryStreamController.d.ts.map +1 -1
  95. package/dist/messageRepository/observers/getMessages/getMessages.d.ts +0 -1
  96. package/dist/messageRepository/observers/getMessages/getMessages.d.ts.map +1 -1
  97. package/dist/messageRepository/observers/index.d.ts +0 -2
  98. package/dist/messageRepository/observers/index.d.ts.map +1 -1
  99. package/dist/messageRepository/utils/prepareMessagePayload.d.ts +1 -1
  100. package/dist/messageRepository/utils/prepareMessagePayload.d.ts.map +1 -1
  101. package/dist/pollRepository/observers/index.d.ts +0 -1
  102. package/dist/pollRepository/observers/index.d.ts.map +1 -1
  103. package/dist/postRepository/api/index.d.ts +0 -1
  104. package/dist/postRepository/api/index.d.ts.map +1 -1
  105. package/dist/postRepository/observers/index.d.ts +0 -2
  106. package/dist/postRepository/observers/index.d.ts.map +1 -1
  107. package/dist/role/api/queryRoles.d.ts +0 -7
  108. package/dist/role/api/queryRoles.d.ts.map +1 -1
  109. package/dist/streamRepository/api/index.d.ts +0 -2
  110. package/dist/streamRepository/api/index.d.ts.map +1 -1
  111. package/dist/streamRepository/events/onStreamFlagged.d.ts.map +1 -1
  112. package/dist/streamRepository/internalApi/getStream.d.ts.map +1 -0
  113. package/dist/subChannelRepository/utils/markReadEngine.d.ts +0 -34
  114. package/dist/subChannelRepository/utils/markReadEngine.d.ts.map +1 -1
  115. package/dist/userRepository/internalApi/queryUsers.d.ts.map +1 -1
  116. package/dist/userRepository/observers/getUsers/UserLiveCollectionController.d.ts.map +1 -1
  117. package/dist/userRepository/observers/getUsers/UserPaginationController.d.ts.map +1 -1
  118. package/dist/userRepository/observers/index.d.ts +0 -2
  119. package/dist/userRepository/observers/index.d.ts.map +1 -1
  120. package/dist/userRepository/relationship/block/index.d.ts +0 -1
  121. package/dist/userRepository/relationship/block/index.d.ts.map +1 -1
  122. package/dist/userRepository/relationship/follow/api/index.d.ts +0 -2
  123. package/dist/userRepository/relationship/follow/api/index.d.ts.map +1 -1
  124. package/dist/userRepository/relationship/follow/observers/index.d.ts +0 -3
  125. package/dist/userRepository/relationship/follow/observers/index.d.ts.map +1 -1
  126. package/dist/utils/liveObject.d.ts +1 -1
  127. package/package.json +1 -1
  128. package/src/@types/core/events.ts +8 -9
  129. package/src/@types/domains/analytics.ts +0 -7
  130. package/src/@types/domains/channel.ts +15 -46
  131. package/src/@types/domains/client.ts +0 -4
  132. package/src/@types/domains/community.ts +0 -8
  133. package/src/@types/domains/feed.ts +0 -11
  134. package/src/@types/domains/message.ts +0 -12
  135. package/src/@types/domains/subChannel.ts +0 -4
  136. package/src/@types/domains/user.ts +0 -4
  137. package/src/channelRepository/api/deleteChannel.ts +3 -2
  138. package/src/channelRepository/api/getChannelByIds.ts +5 -5
  139. package/src/channelRepository/api/index.ts +0 -2
  140. package/src/channelRepository/channelMembership/observers/getMembers/ChannelMemberLiveCollectionController.ts +0 -8
  141. package/src/channelRepository/channelMembership/observers/getMembers/getMembers.ts +0 -8
  142. package/src/channelRepository/channelMembership/observers/searchMembers/SearchChannelMemberLiveCollectionController.ts +0 -8
  143. package/src/channelRepository/channelMembership/observers/searchMembers/searchMembers.ts +0 -8
  144. package/src/channelRepository/{api → internalApi}/getChannel.ts +4 -4
  145. package/src/channelRepository/internalApi/getChannelByIds.ts +105 -0
  146. package/src/channelRepository/{api → internalApi}/markAsRead.ts +0 -3
  147. package/src/channelRepository/observers/getChannel.ts +36 -15
  148. package/src/channelRepository/observers/getChannels/ChannelLiveCollectionController.ts +11 -12
  149. package/src/channelRepository/observers/index.ts +0 -2
  150. package/src/channelRepository/utils/constructChannelDynamicValue.ts +4 -9
  151. package/src/channelRepository/utils/constructChannelObject.ts +16 -0
  152. package/src/channelRepository/utils/getChannelIsMentioned.ts +4 -1
  153. package/src/channelRepository/utils/getSubChannelsUnreadCount.ts +1 -1
  154. package/src/channelRepository/utils/resolveChannels.ts +7 -2
  155. package/src/channelRepository/utils/updateChannelCache.ts +4 -1
  156. package/src/client/observers/getUserUnread.ts +1 -1
  157. package/src/client/observers/index.ts +0 -1
  158. package/src/client/utils/endpoints.ts +1 -1
  159. package/src/client/utils/markerSyncEngine.ts +0 -9
  160. package/src/client/utils/subscribeGlobalTopic.ts +3 -0
  161. package/src/commentRepository/observers/index.ts +0 -2
  162. package/src/communityRepository/api/index.ts +0 -3
  163. package/src/communityRepository/api/queryCommunities.ts +1 -2
  164. package/src/communityRepository/communityMembership/observers/getMembers/CommunityMembersLiveCollectionController.ts +0 -12
  165. package/src/communityRepository/communityMembership/observers/getMembers/CommunityMembersQueryStreamController.ts +0 -7
  166. package/src/communityRepository/communityMembership/observers/getMembers.ts +0 -4
  167. package/src/communityRepository/communityMembership/observers/searchMembers/SearchCommunityMembersPaginationController.ts +1 -1
  168. package/src/communityRepository/communityMembership/observers/tests/getMembers.test.ts +0 -1
  169. package/src/communityRepository/observers/getCommunities/CommunitiesLiveCollectionController.ts +12 -16
  170. package/src/communityRepository/observers/getCommunities/CommunitiesPaginationController.ts +0 -1
  171. package/src/communityRepository/observers/getCommunities/CommunitiesQueryStreamController.ts +0 -4
  172. package/src/communityRepository/observers/index.ts +0 -2
  173. package/src/communityRepository/observers/searchCommunities.ts +1 -1
  174. package/src/communityRepository/observers/tests/getCommunities.test.ts +0 -1
  175. package/src/communityRepository/utils/communityQueryFilter.ts +1 -8
  176. package/src/core/events.ts +7 -5
  177. package/src/core/subscription.ts +6 -0
  178. package/src/feedRepository/api/getCustomRankingGlobalFeed.ts +8 -55
  179. package/src/feedRepository/api/queryGlobalFeed.ts +6 -58
  180. package/src/feedRepository/api/test/getCustomRankingGlobalFeed.test.ts +1 -1
  181. package/src/feedRepository/api/test/queryGlobalFeed.test.ts +1 -1
  182. package/src/fileRepository/api/index.ts +0 -5
  183. package/src/fileRepository/index.ts +0 -1
  184. package/src/liveStreamPlayer/api/getPlayer.ts +1 -1
  185. package/src/messagePreview/utils/getChannelMessagePreviewWithUser.ts +2 -2
  186. package/src/messageRepository/api/createMessage.ts +5 -1
  187. package/src/messageRepository/api/index.ts +0 -2
  188. package/src/messageRepository/api/tests/createMessage.test.ts +6 -1
  189. package/src/messageRepository/api/tests/deleteMessage.test.ts +5 -1
  190. package/src/messageRepository/internalApi/getMessage.ts +0 -6
  191. package/src/messageRepository/observers/getMessages/MessageLiveCollectionController.ts +0 -20
  192. package/src/messageRepository/observers/getMessages/MessageQueryStreamController.ts +0 -10
  193. package/src/messageRepository/observers/getMessages/getMessages.ts +0 -54
  194. package/src/messageRepository/observers/index.ts +0 -3
  195. package/src/messageRepository/utils/prepareMessagePayload.ts +1 -7
  196. package/src/pollRepository/observers/index.ts +0 -1
  197. package/src/postRepository/api/index.ts +0 -1
  198. package/src/postRepository/observers/index.ts +0 -2
  199. package/src/role/api/queryRoles.ts +1 -13
  200. package/src/streamRepository/api/deleteStream.ts +1 -1
  201. package/src/streamRepository/api/index.ts +0 -4
  202. package/src/streamRepository/api/tests/getStream.test.ts +1 -1
  203. package/src/streamRepository/events/onStreamFlagged.ts +1 -6
  204. package/src/streamRepository/events/onStreamRecorded.ts +1 -1
  205. package/src/streamRepository/events/onStreamStarted.ts +1 -1
  206. package/src/streamRepository/events/onStreamStopped.ts +1 -1
  207. package/src/streamRepository/events/onStreamTerminated.ts +1 -1
  208. package/src/streamRepository/observers/getStreamById.ts +1 -1
  209. package/src/subChannelRepository/utils/markReadEngine.ts +0 -106
  210. package/src/userRepository/internalApi/queryUsers.ts +1 -9
  211. package/src/userRepository/observers/getUsers/UserLiveCollectionController.ts +12 -16
  212. package/src/userRepository/observers/getUsers/UserPaginationController.ts +1 -2
  213. package/src/userRepository/observers/index.ts +0 -2
  214. package/src/userRepository/observers/tests/getUsers.test.ts +1 -43
  215. package/src/userRepository/relationship/block/index.ts +0 -1
  216. package/src/userRepository/relationship/follow/api/index.ts +0 -4
  217. package/src/userRepository/relationship/follow/observers/index.ts +0 -4
  218. package/src/utils/linkedObject/channelLinkedObject.ts +1 -1
  219. package/src/utils/liveObject.ts +2 -2
  220. package/dist/channelRepository/api/getChannel.d.ts.map +0 -1
  221. package/dist/channelRepository/api/markAsRead.d.ts.map +0 -1
  222. package/dist/channelRepository/observers/observeChannel.d.ts +0 -18
  223. package/dist/channelRepository/observers/observeChannel.d.ts.map +0 -1
  224. package/dist/channelRepository/observers/observeChannels.d.ts +0 -17
  225. package/dist/channelRepository/observers/observeChannels.d.ts.map +0 -1
  226. package/dist/client/observers/getTotalUnreadCount.d.ts +0 -20
  227. package/dist/client/observers/getTotalUnreadCount.d.ts.map +0 -1
  228. package/dist/client/observers/tests/getTotalUnreadCount.test.d.ts +0 -2
  229. package/dist/client/observers/tests/getTotalUnreadCount.test.d.ts.map +0 -1
  230. package/dist/commentRepository/observers/observeComment.d.ts +0 -18
  231. package/dist/commentRepository/observers/observeComment.d.ts.map +0 -1
  232. package/dist/commentRepository/observers/observeComments.d.ts +0 -26
  233. package/dist/commentRepository/observers/observeComments.d.ts.map +0 -1
  234. package/dist/communityRepository/api/getTopTrendingCommunities.d.ts +0 -35
  235. package/dist/communityRepository/api/getTopTrendingCommunities.d.ts.map +0 -1
  236. package/dist/communityRepository/api/test/getTopTrendingCommunities.test.d.ts +0 -2
  237. package/dist/communityRepository/api/test/getTopTrendingCommunities.test.d.ts.map +0 -1
  238. package/dist/communityRepository/observers/observeCommunity.d.ts +0 -18
  239. package/dist/communityRepository/observers/observeCommunity.d.ts.map +0 -1
  240. package/dist/feedRepository/internalApi/getCustomRankingGlobalFeed.d.ts +0 -8
  241. package/dist/feedRepository/internalApi/getCustomRankingGlobalFeed.d.ts.map +0 -1
  242. package/dist/feedRepository/internalApi/index.d.ts +0 -3
  243. package/dist/feedRepository/internalApi/index.d.ts.map +0 -1
  244. package/dist/feedRepository/internalApi/queryGlobalFeed.d.ts +0 -9
  245. package/dist/feedRepository/internalApi/queryGlobalFeed.d.ts.map +0 -1
  246. package/dist/feedRepository/internalApi/test/getCustomRankingGlobalFeed.test.d.ts +0 -2
  247. package/dist/feedRepository/internalApi/test/getCustomRankingGlobalFeed.test.d.ts.map +0 -1
  248. package/dist/feedRepository/internalApi/test/queryGlobalFeed.test.d.ts +0 -2
  249. package/dist/feedRepository/internalApi/test/queryGlobalFeed.test.d.ts.map +0 -1
  250. package/dist/fileRepository/api/createFile.d.ts +0 -17
  251. package/dist/fileRepository/api/createFile.d.ts.map +0 -1
  252. package/dist/fileRepository/api/createImage.d.ts +0 -17
  253. package/dist/fileRepository/api/createImage.d.ts.map +0 -1
  254. package/dist/fileRepository/api/createVideo.d.ts +0 -18
  255. package/dist/fileRepository/api/createVideo.d.ts.map +0 -1
  256. package/dist/fileRepository/observers/index.d.ts +0 -2
  257. package/dist/fileRepository/observers/index.d.ts.map +0 -1
  258. package/dist/fileRepository/observers/observeFile.d.ts +0 -18
  259. package/dist/fileRepository/observers/observeFile.d.ts.map +0 -1
  260. package/dist/messageRepository/api/getMessage.d.ts +0 -32
  261. package/dist/messageRepository/api/getMessage.d.ts.map +0 -1
  262. package/dist/messageRepository/api/getMessages.d.ts +0 -32
  263. package/dist/messageRepository/api/getMessages.d.ts.map +0 -1
  264. package/dist/messageRepository/observers/observeMessage.d.ts +0 -21
  265. package/dist/messageRepository/observers/observeMessage.d.ts.map +0 -1
  266. package/dist/messageRepository/observers/observeMessages.d.ts +0 -23
  267. package/dist/messageRepository/observers/observeMessages.d.ts.map +0 -1
  268. package/dist/pollRepository/observers/observePoll.d.ts +0 -18
  269. package/dist/pollRepository/observers/observePoll.d.ts.map +0 -1
  270. package/dist/postRepository/api/updatePost.d.ts +0 -24
  271. package/dist/postRepository/api/updatePost.d.ts.map +0 -1
  272. package/dist/postRepository/observers/observePost.d.ts +0 -18
  273. package/dist/postRepository/observers/observePost.d.ts.map +0 -1
  274. package/dist/postRepository/observers/observePosts.d.ts +0 -34
  275. package/dist/postRepository/observers/observePosts.d.ts.map +0 -1
  276. package/dist/streamRepository/api/getStream.d.ts.map +0 -1
  277. package/dist/streamRepository/api/queryStreams.d.ts +0 -25
  278. package/dist/streamRepository/api/queryStreams.d.ts.map +0 -1
  279. package/dist/userRepository/observers/getViewedUsers.d.ts +0 -7
  280. package/dist/userRepository/observers/getViewedUsers.d.ts.map +0 -1
  281. package/dist/userRepository/observers/observeUser.d.ts +0 -17
  282. package/dist/userRepository/observers/observeUser.d.ts.map +0 -1
  283. package/dist/userRepository/observers/tests/getViewedUsers.test.d.ts +0 -2
  284. package/dist/userRepository/observers/tests/getViewedUsers.test.d.ts.map +0 -1
  285. package/dist/userRepository/relationship/block/observers/getBlockedUsers.d.ts +0 -2
  286. package/dist/userRepository/relationship/block/observers/getBlockedUsers.d.ts.map +0 -1
  287. package/dist/userRepository/relationship/block/observers/index.d.ts +0 -2
  288. package/dist/userRepository/relationship/block/observers/index.d.ts.map +0 -1
  289. package/dist/userRepository/relationship/follow/api/acceptFollower.d.ts +0 -19
  290. package/dist/userRepository/relationship/follow/api/acceptFollower.d.ts.map +0 -1
  291. package/dist/userRepository/relationship/follow/api/declineFollower.d.ts +0 -19
  292. package/dist/userRepository/relationship/follow/api/declineFollower.d.ts.map +0 -1
  293. package/dist/userRepository/relationship/follow/observers/observeFollowInfo.d.ts +0 -18
  294. package/dist/userRepository/relationship/follow/observers/observeFollowInfo.d.ts.map +0 -1
  295. package/dist/userRepository/relationship/follow/observers/observeFollowers.d.ts +0 -18
  296. package/dist/userRepository/relationship/follow/observers/observeFollowers.d.ts.map +0 -1
  297. package/dist/userRepository/relationship/follow/observers/observeFollowings.d.ts +0 -18
  298. package/dist/userRepository/relationship/follow/observers/observeFollowings.d.ts.map +0 -1
  299. package/src/channelRepository/observers/observeChannel.ts +0 -109
  300. package/src/channelRepository/observers/observeChannels.ts +0 -74
  301. package/src/client/observers/getTotalUnreadCount.ts +0 -53
  302. package/src/client/observers/tests/getTotalUnreadCount.test.ts +0 -101
  303. package/src/commentRepository/observers/observeComment.ts +0 -102
  304. package/src/commentRepository/observers/observeComments.ts +0 -77
  305. package/src/communityRepository/api/getTopTrendingCommunities.ts +0 -97
  306. package/src/communityRepository/api/test/getTopTrendingCommunities.test.ts +0 -102
  307. package/src/communityRepository/observers/observeCommunity.ts +0 -103
  308. package/src/feedRepository/internalApi/getCustomRankingGlobalFeed.ts +0 -87
  309. package/src/feedRepository/internalApi/index.ts +0 -2
  310. package/src/feedRepository/internalApi/queryGlobalFeed.ts +0 -95
  311. package/src/feedRepository/internalApi/test/getCustomRankingGlobalFeed.test.ts +0 -138
  312. package/src/feedRepository/internalApi/test/queryGlobalFeed.test.ts +0 -130
  313. package/src/fileRepository/api/createFile.ts +0 -59
  314. package/src/fileRepository/api/createImage.ts +0 -59
  315. package/src/fileRepository/api/createVideo.ts +0 -69
  316. package/src/fileRepository/observers/index.ts +0 -1
  317. package/src/fileRepository/observers/observeFile.ts +0 -49
  318. package/src/messageRepository/api/getMessage.ts +0 -102
  319. package/src/messageRepository/api/getMessages.ts +0 -83
  320. package/src/messageRepository/observers/observeMessage.ts +0 -94
  321. package/src/messageRepository/observers/observeMessages.ts +0 -89
  322. package/src/pollRepository/observers/observePoll.ts +0 -67
  323. package/src/postRepository/api/updatePost.ts +0 -63
  324. package/src/postRepository/observers/observePost.ts +0 -115
  325. package/src/postRepository/observers/observePosts.ts +0 -86
  326. package/src/streamRepository/api/queryStreams.ts +0 -63
  327. package/src/userRepository/observers/getViewedUsers.ts +0 -99
  328. package/src/userRepository/observers/observeUser.ts +0 -71
  329. package/src/userRepository/observers/tests/getViewedUsers.test.ts +0 -39
  330. package/src/userRepository/relationship/block/observers/getBlockedUsers.ts +0 -13
  331. package/src/userRepository/relationship/block/observers/index.ts +0 -1
  332. package/src/userRepository/relationship/follow/api/acceptFollower.ts +0 -40
  333. package/src/userRepository/relationship/follow/api/declineFollower.ts +0 -40
  334. package/src/userRepository/relationship/follow/observers/observeFollowInfo.ts +0 -64
  335. package/src/userRepository/relationship/follow/observers/observeFollowers.ts +0 -74
  336. package/src/userRepository/relationship/follow/observers/observeFollowings.ts +0 -74
  337. /package/dist/streamRepository/{api → internalApi}/getStream.d.ts +0 -0
  338. /package/src/streamRepository/{api → internalApi}/getStream.ts +0 -0
@@ -1,19 +0,0 @@
1
- /**
2
- * @deprecated This API renamed to `acceptMyFollower`.
3
- * Please use acceptMyFollower() instead.
4
- *
5
- * ```js
6
- * import { acceptFollower } from '@amityco/ts-sdk-react-native'
7
- * await acceptFollower('foobar')
8
- * ```
9
- *
10
- * Accept the follow request
11
- *
12
- * @param userId the ID of the {@link Amity.InternalUser} follower
13
- * @returns A success boolean if the follow request was accepted
14
- *
15
- * @category Follow API
16
- * @async
17
- */
18
- export declare const acceptFollower: (userId: Amity.InternalUser['userId']) => Promise<boolean>;
19
- //# sourceMappingURL=acceptFollower.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"acceptFollower.d.ts","sourceRoot":"","sources":["../../../../../src/userRepository/relationship/follow/api/acceptFollower.ts"],"names":[],"mappings":"AAKA;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,cAAc,WAAkB,MAAM,YAAY,CAAC,QAAQ,CAAC,KAAG,QAAQ,OAAO,CAiB1F,CAAC"}
@@ -1,19 +0,0 @@
1
- /**
2
- * @deprecated This API renamed to `declineMyFollower`.
3
- * Please use declineMyFollower() instead.
4
- *
5
- * ```js
6
- * import { declineFollower } from '@amityco/ts-sdk-react-native'
7
- * await declineFollower('foobar')
8
- * ```
9
- *
10
- * Decline the follow request or delete the follower
11
- *
12
- * @param userId the ID of the {@link Amity.InternalUser} follower
13
- * @returns A success boolean if the follow request was decline
14
- *
15
- * @category Follow API
16
- * @async
17
- */
18
- export declare const declineFollower: (userId: Amity.InternalUser['userId']) => Promise<boolean>;
19
- //# sourceMappingURL=declineFollower.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"declineFollower.d.ts","sourceRoot":"","sources":["../../../../../src/userRepository/relationship/follow/api/declineFollower.ts"],"names":[],"mappings":"AAKA;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,eAAe,WAAkB,MAAM,YAAY,CAAC,QAAQ,CAAC,KAAG,QAAQ,OAAO,CAiB3F,CAAC"}
@@ -1,18 +0,0 @@
1
- /**
2
- * ```js
3
- * import { observeFollowInfo } from '@amityco/ts-sdk-react-native'
4
- *
5
- * let followInfo = {}
6
- * const dispose = observeFollowInfo(userId, updated => followInfo = updated)
7
- * ```
8
- *
9
- * Observe all mutation on a given {@link Amity.FollowInfo}
10
- *
11
- * @param userId the ID of the user to observe
12
- * @param callback the function to call when new data are available
13
- * @returns An {@link Amity.Unsubscriber} function to run when willing to stop observing the post
14
- *
15
- * @category Follow Observer
16
- */
17
- export declare const observeFollowInfo: <Events extends ["onFetch", "onUpdate"]>(userId: Amity.InternalUser['userId'], callback: Amity.ObjectListener<Amity.Snapshot<Amity.FollowInfo>, Events>, policy?: Amity.QueryPolicy) => Amity.Unsubscriber;
18
- //# sourceMappingURL=observeFollowInfo.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"observeFollowInfo.d.ts","sourceRoot":"","sources":["../../../../../src/userRepository/relationship/follow/observers/observeFollowInfo.ts"],"names":[],"mappings":"AAKA;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,iBAAiB,mDACpB,MAAM,YAAY,CAAC,QAAQ,CAAC,qFAE5B,MAAM,WAAW,KACxB,MAAM,YAsCR,CAAC"}
@@ -1,18 +0,0 @@
1
- /**
2
- * ```js
3
- * import { observeFollowers } from '@amityco/ts-sdk-react-native'
4
- *
5
- * let followers = []
6
- * const unsub = observeFollowers('userId', follower => merge(followers, follower))
7
- * ```
8
- *
9
- * Observe all mutations on a list of followers {@link Amity.FollowStatus} for a given user
10
- *
11
- * @param userId the ID of the {@link Amity.InternalUser}
12
- * @param callback the function to call when new data are available
13
- * @returns An {@link Amity.Unsubscriber} function to run when willing to stop observing the messages
14
- *
15
- * @category Follow Observer
16
- */
17
- export declare const observeFollowers: <Events extends ("onRequested" | "onAccepted" | "onDeclined" | "onCanceled" | "onFollowed" | "onUnfollowed" | "onDeleted")[]>(userId: Amity.User['userId'], callback: Amity.ObjectListener<Amity.RawFollowStatus, Events>) => Amity.Unsubscriber;
18
- //# sourceMappingURL=observeFollowers.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"observeFollowers.d.ts","sourceRoot":"","sources":["../../../../../src/userRepository/relationship/follow/observers/observeFollowers.ts"],"names":[],"mappings":"AAiBA;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,gBAAgB,wIACnB,MAAM,IAAI,CAAC,QAAQ,CAAC,oEAE3B,MAAM,YAqCR,CAAC"}
@@ -1,18 +0,0 @@
1
- /**
2
- * ```js
3
- * import { observeFollowings } from '@amityco/ts-sdk-react-native'
4
- *
5
- * let followings = []
6
- * const unsub = observeFollowers('userId', follower => merge(followings, following))
7
- * ```
8
- *
9
- * Observe all mutations on a list of followings {@link Amity.FollowStatus} for a given user
10
- *
11
- * @param userId the ID of the {@link Amity.InternalUser}
12
- * @param callback the function to call when new data are available
13
- * @returns An {@link Amity.Unsubscriber} function to run when willing to stop observing the messages
14
- *
15
- * @category Follow Observer
16
- */
17
- export declare const observeFollowings: <Events extends ("onRequested" | "onAccepted" | "onDeclined" | "onCanceled" | "onFollowed" | "onUnfollowed" | "onDeleted")[]>(userId: Amity.User['userId'], callback: Amity.ObjectListener<Amity.RawFollowStatus, Events>) => Amity.Unsubscriber;
18
- //# sourceMappingURL=observeFollowings.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"observeFollowings.d.ts","sourceRoot":"","sources":["../../../../../src/userRepository/relationship/follow/observers/observeFollowings.ts"],"names":[],"mappings":"AAiBA;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,iBAAiB,wIACpB,MAAM,IAAI,CAAC,QAAQ,CAAC,oEAE3B,MAAM,YAqCR,CAAC"}
@@ -1,109 +0,0 @@
1
- import { createQuery, runQuery } from '~/core/query/query';
2
-
3
- import { getActiveClient } from '~/client/api';
4
- import { onChannelMarkerFetched } from '~/marker/events';
5
- import { convertEventPayload } from '~/utils/event';
6
-
7
- import { getChannel } from '../api/getChannel';
8
-
9
- import {
10
- onChannelUpdated,
11
- onChannelDeleted,
12
- onChannelJoined,
13
- onChannelLeft,
14
- onChannelMuted,
15
- onChannelMemberAdded,
16
- onChannelMemberRemoved,
17
- } from '../events';
18
- import { LinkedObject } from '~/utils/linkedObject';
19
- import { constructChannelDynamicValue } from '../utils/constructChannelDynamicValue';
20
-
21
- /**
22
- * ```js
23
- * import { observeChannel } from '@amityco/ts-sdk-react-native'
24
- *
25
- * let channel = {}
26
- * const dispose = observeChannel(channelId, ({ data }) => channel = data)
27
- * ```
28
- *
29
- * Observe all mutation on a given {@link Amity.Channel}
30
- *
31
- * @param channelId the ID of the channel to observe
32
- * @param callback the function to call when new data are available
33
- * @returns An {@link Amity.Unsubscriber} function to run when willing to stop observing the channel
34
- *
35
- * @category Channel Observer
36
- */
37
- export const observeChannel = <Events extends [Exclude<Amity.ChannelActionType, 'onCreate'>]>(
38
- channelId: string,
39
- callback: Amity.ObjectListener<Amity.Snapshot<Amity.Channel>, Events>,
40
- ): Amity.Unsubscriber => {
41
- const { log } = getActiveClient();
42
-
43
- const timestamp = Date.now();
44
- log(`observeChannel(tmpid: ${timestamp}) > listen`);
45
-
46
- // wrapper function to make sure
47
- const router = (result: Amity.Snapshot<Amity.StaticInternalChannel>, action: Events[number]) => {
48
- // filter function
49
- if (result.data?.channelId !== channelId) return;
50
-
51
- if (callback instanceof Function)
52
- return callback({
53
- ...result,
54
- data: LinkedObject.channel(constructChannelDynamicValue(result.data)),
55
- });
56
-
57
- if (action !== 'onFetch')
58
- callback.onEvent?.(action, {
59
- ...result,
60
- data: LinkedObject.channel(constructChannelDynamicValue(result.data)),
61
- });
62
-
63
- callback[action]?.({
64
- ...result,
65
- data: LinkedObject.channel(constructChannelDynamicValue(result.data)),
66
- });
67
- };
68
-
69
- const disposers: Amity.Unsubscriber[] = [];
70
-
71
- disposers.push(
72
- onChannelUpdated(data =>
73
- router({ data, loading: false, origin: 'event' }, Amity.ChannelActionType.OnUpdate),
74
- ),
75
- onChannelDeleted(data =>
76
- router({ data, loading: false, origin: 'event' }, Amity.ChannelActionType.OnDelete),
77
- ),
78
- onChannelJoined(data =>
79
- router({ data, loading: false, origin: 'event' }, Amity.ChannelActionType.OnJoin),
80
- ),
81
- onChannelLeft(data =>
82
- router({ data, loading: false, origin: 'event' }, Amity.ChannelActionType.OnLeft),
83
- ),
84
- onChannelMuted(data =>
85
- router({ data, loading: false, origin: 'event' }, Amity.ChannelActionType.OnMute),
86
- ),
87
- onChannelMemberAdded(data =>
88
- router({ data, loading: false, origin: 'event' }, Amity.ChannelActionType.OnMemberAdded),
89
- ),
90
- onChannelMemberRemoved(data =>
91
- router({ data, loading: false, origin: 'event' }, Amity.ChannelActionType.OnMemberRemoved),
92
- ),
93
- convertEventPayload(
94
- onChannelMarkerFetched,
95
- 'entityId',
96
- 'channel',
97
- )(data => router({ data, loading: false, origin: 'event' }, Amity.ChannelActionType.OnUpdate)),
98
- );
99
-
100
- runQuery(
101
- createQuery(getChannel, channelId),
102
- result => result.data && router(result, Amity.ChannelActionType.OnFetch),
103
- );
104
-
105
- return () => {
106
- log(`observeChannel(tmpid: ${timestamp}) > dispose`);
107
- disposers.forEach(fn => fn());
108
- };
109
- };
@@ -1,74 +0,0 @@
1
- import { getActiveClient } from '~/client/api';
2
- import { onChannelMarkerFetched } from '~/marker/events';
3
- import { convertEventPayload } from '~/utils/event';
4
-
5
- import {
6
- onChannelCreated,
7
- onChannelUpdated,
8
- onChannelDeleted,
9
- onChannelJoined,
10
- onChannelLeft,
11
- onChannelMuted,
12
- onChannelMemberAdded,
13
- onChannelMemberRemoved,
14
- } from '../events';
15
- import { LinkedObject } from '~/utils/linkedObject';
16
- import { constructChannelDynamicValue } from '../utils/constructChannelDynamicValue';
17
-
18
- /**
19
- * ```js
20
- * import { observeChannels } from '@amityco/ts-sdk-react-native'
21
- *
22
- * let channels = []
23
- * const unsub = observeChannels(channel => merge(channels, channel))
24
- * ```
25
- *
26
- * Observe all mutations on a list of {@link Amity.Channel} for a current user
27
- *
28
- * @param callback the function to call when new data are available
29
- * @returns An {@link Amity.Unsubscriber} function to run when willing to stop observing the channels
30
- *
31
- * @category Channel Observer
32
- */
33
- export const observeChannels = (
34
- callback: Amity.ObjectListener<Amity.Channel, [Exclude<Amity.ChannelActionType, 'onFetch'>]>,
35
- ): Amity.Unsubscriber => {
36
- const { log } = getActiveClient();
37
-
38
- const timestamp = Date.now();
39
- log(`observeChannels(tmpid: ${timestamp}) > listen`);
40
-
41
- const disposers: Amity.Unsubscriber[] = [];
42
-
43
- const router = (
44
- channel: Amity.StaticInternalChannel,
45
- action: Exclude<Amity.ChannelActionType, 'onFetch'>,
46
- ) => {
47
- if (callback instanceof Function)
48
- return callback(LinkedObject.channel(constructChannelDynamicValue(channel)));
49
-
50
- callback.onEvent?.(action, LinkedObject.channel(constructChannelDynamicValue(channel)));
51
- callback[action]?.(LinkedObject.channel(constructChannelDynamicValue(channel)));
52
- };
53
-
54
- disposers.push(
55
- onChannelCreated(data => router(data, Amity.ChannelActionType.OnCreate)),
56
- onChannelUpdated(data => router(data, Amity.ChannelActionType.OnUpdate)),
57
- onChannelDeleted(data => router(data, Amity.ChannelActionType.OnDelete)),
58
- onChannelJoined(data => router(data, Amity.ChannelActionType.OnJoin)),
59
- onChannelLeft(data => router(data, Amity.ChannelActionType.OnLeft)),
60
- onChannelMuted(data => router(data, Amity.ChannelActionType.OnMute)),
61
- onChannelMemberAdded(data => router(data, Amity.ChannelActionType.OnMemberAdded)),
62
- onChannelMemberRemoved(data => router(data, Amity.ChannelActionType.OnMemberRemoved)),
63
- convertEventPayload(
64
- onChannelMarkerFetched,
65
- 'entityId',
66
- 'channel',
67
- )(data => router(data, Amity.ChannelActionType.OnUpdate)),
68
- );
69
-
70
- return () => {
71
- log(`observeChannels(tmpid: ${timestamp}) > dispose`);
72
- disposers.forEach(fn => fn());
73
- };
74
- };
@@ -1,53 +0,0 @@
1
- import { ASCError } from '~/core/errors';
2
- import { getUserMarker } from '~/marker/api';
3
- import { onUserMarkerFetchedLegacy } from '~/marker/events';
4
- import { liveObject } from '~/utils/liveObject';
5
-
6
- import { getActiveUser } from '../api';
7
-
8
- /**
9
- * @deprecated Please use unreadCount from `getUserUnread` instead.
10
- *
11
- * ```js
12
- * import { getTotalUnreadCount } from '@amityco/ts-sdk-react-native';
13
- *
14
- * const unsubscribe = getTotalUnreadCount(response => {
15
- * totalUnreadCount = response.data;
16
- * });
17
- * ```
18
- *
19
- * Observe current user's unread count from {@link Amity.UserMarker}
20
- *
21
- * @param callback the function to call when new data are available
22
- * @returns An {@link Amity.Unsubscriber} function to run when willing to stop observing the events
23
- *
24
- * @category Message Live Object
25
- */
26
- export const getTotalUnreadCount = (
27
- callback: Amity.LiveObjectCallback<number>,
28
- ): Amity.Unsubscriber => {
29
- const { _id: userId } = getActiveUser();
30
-
31
- if (!userId)
32
- throw new ASCError(
33
- 'The _id has not been defined in ActiveUser',
34
- Amity.ClientError.UNKNOWN_ERROR,
35
- Amity.ErrorLevel.ERROR,
36
- );
37
-
38
- const callbackDataSelector = (data: Amity.UserMarker | undefined) => data?.unreadCount ?? 0;
39
-
40
- return liveObject(
41
- userId,
42
- callback,
43
- 'userId',
44
- async (): Promise<Amity.Cached<Amity.UserMarker>> => {
45
- const { data: userMarker, cachedAt } = await getUserMarker();
46
- return { data: userMarker as Amity.UserMarker, cachedAt };
47
- },
48
- [onUserMarkerFetchedLegacy],
49
- {
50
- callbackDataSelector,
51
- },
52
- );
53
- };
@@ -1,101 +0,0 @@
1
- import { getActiveUser, setActiveUser } from '~/client/api/activeUser';
2
- import { getTotalUnreadCount } from '~/client/observers';
3
- import { disableCache, enableCache } from '~/cache/api';
4
- import { pause, client, connectClient, disconnectClient, generateUserMarker } from '~/utils/tests';
5
-
6
- const refreshUpdateTime = <T extends ValueOf<Amity.Events>>(eventPayload: T): T => {
7
- if (!eventPayload) return eventPayload;
8
-
9
- // @ts-ignore
10
- return Object.fromEntries(
11
- Object.entries(eventPayload).map(([k, v]) => [
12
- k,
13
- v.map((model: Amity.Model) => ({
14
- ...model,
15
- updatedAt: Date.now(),
16
- })),
17
- ]),
18
- );
19
- };
20
-
21
- const userId = 'user1';
22
- const userMarkerResponse = {
23
- data: { userMarkers: [generateUserMarker({ userId, unreadCount: 0 })] },
24
- };
25
-
26
- describe('getTotalUnreadCount', () => {
27
- beforeAll(async () => {
28
- await connectClient();
29
-
30
- // overwrite active userId with test id
31
- setActiveUser({ ...getActiveUser(), _id: userId });
32
- });
33
-
34
- afterAll(disconnectClient);
35
-
36
- beforeEach(enableCache);
37
- afterEach(disableCache);
38
-
39
- const events: [string, keyof Amity.Events, ValueOf<Amity.Events>, any][] = [
40
- [
41
- 'it should return correct payload on `onUserMarkerFetched`',
42
- 'local.userMarker.fetched',
43
- {
44
- userMarkers: [generateUserMarker({ userId, unreadCount: 2 })],
45
- },
46
- {
47
- origin: 'event',
48
- loading: false,
49
- data: 2,
50
- },
51
- ],
52
- ];
53
-
54
- test.each(events)('%s', async (test, event, eventPayload, expected) => {
55
- const callback = jest.fn();
56
- client.http.get = jest.fn().mockResolvedValueOnce(userMarkerResponse);
57
-
58
- getTotalUnreadCount(callback);
59
-
60
- await pause();
61
-
62
- expect(callback).toHaveBeenCalledTimes(2);
63
- // on initial, expect 0 unread count
64
- expect(callback).toHaveBeenLastCalledWith({
65
- origin: 'server',
66
- loading: false,
67
- error: undefined,
68
- data: 0,
69
- });
70
-
71
- client.emitter.emit(event, refreshUpdateTime(eventPayload));
72
-
73
- await pause();
74
-
75
- expect(callback).toHaveBeenCalledTimes(3);
76
- expect(callback).toHaveBeenLastCalledWith(expected);
77
- });
78
-
79
- test('it should filter out duplicated callback', async () => {
80
- const callback = jest.fn();
81
- client.http.get = jest.fn().mockResolvedValueOnce(userMarkerResponse);
82
-
83
- const eventPayload = {
84
- userMarkers: [generateUserMarker({ userId, unreadCount: 2 })],
85
- };
86
-
87
- getTotalUnreadCount(callback);
88
-
89
- await pause();
90
-
91
- // initial callback
92
- expect(callback).toHaveBeenCalledTimes(2);
93
-
94
- // emit duplicated event
95
- client.emitter.emit('local.userMarker.fetched', refreshUpdateTime(eventPayload));
96
-
97
- await pause();
98
-
99
- expect(callback).toHaveBeenCalledTimes(3);
100
- });
101
- });
@@ -1,102 +0,0 @@
1
- import { getActiveClient } from '~/client/api';
2
-
3
- import { createQuery, queryOptions, runQuery } from '~/core/query';
4
-
5
- import { getComment } from '../internalApi/getComment';
6
-
7
- import {
8
- onCommentDeleted,
9
- onCommentFlagged,
10
- onCommentReactionAdded,
11
- onCommentReactionRemoved,
12
- onCommentUnflagged,
13
- onCommentUpdated,
14
- } from '../events';
15
-
16
- /**
17
- * ```js
18
- * import { observeComment } from '@amityco/ts-sdk-react-native'
19
- *
20
- * let comment = {}
21
- * const dispose = observeComment(commentId, ({ data }) => comment = data)
22
- * ```
23
- *
24
- * Observe all mutation on a given {@link Amity.InternalComment}
25
- *
26
- * @param commentId the ID of the comment to observe
27
- * @param callback the function to call when new data are available
28
- * @returns An {@link Amity.Unsubscriber} function to run when willing to stop observing the comment
29
- *
30
- * @category InternalComment Observer
31
- */
32
- export const observeComment = <
33
- Events extends [
34
- 'onFetch',
35
- 'onUpdate',
36
- 'onDelete',
37
- 'onFlagged',
38
- 'onUnflagged',
39
- 'onReactionAdded',
40
- 'onReactionRemoved',
41
- ],
42
- >(
43
- commentId: string,
44
- callback: Amity.ObjectListener<Amity.Snapshot<Amity.InternalComment | undefined>, Events>,
45
- policy: Amity.QueryPolicy = 'cache_then_server',
46
- ): Amity.Unsubscriber => {
47
- const { log } = getActiveClient();
48
-
49
- const timestamp = Date.now();
50
- log(`observeComment(tmpid: ${timestamp}) > listen`);
51
-
52
- // wrapper function to make sure
53
- const router = (
54
- result: Amity.Snapshot<Amity.InternalComment | undefined>,
55
- action: Events[number],
56
- ) => {
57
- if (callback instanceof Function) return callback(result);
58
-
59
- if (action !== 'onFetch') callback.onEvent?.(action, result);
60
-
61
- callback[action]?.(result);
62
- };
63
-
64
- const realtimeRouter = (
65
- result: Amity.Snapshot<Amity.InternalComment>,
66
- action: Events[number],
67
- ) => {
68
- if (result.data?.commentId !== commentId) return;
69
-
70
- router(result, action);
71
- };
72
-
73
- const disposers: Amity.Unsubscriber[] = [];
74
-
75
- disposers.push(
76
- onCommentUpdated(data => realtimeRouter({ data, loading: false, origin: 'event' }, 'onUpdate')),
77
- onCommentDeleted(data => realtimeRouter({ data, loading: false, origin: 'event' }, 'onDelete')),
78
- onCommentFlagged(data =>
79
- realtimeRouter({ data, loading: false, origin: 'event' }, 'onFlagged'),
80
- ),
81
- onCommentUnflagged(data =>
82
- realtimeRouter({ data, loading: false, origin: 'event' }, 'onUnflagged'),
83
- ),
84
- onCommentReactionAdded(data =>
85
- realtimeRouter({ data, loading: false, origin: 'event' }, 'onReactionAdded'),
86
- ),
87
- onCommentReactionRemoved(data =>
88
- realtimeRouter({ data, loading: false, origin: 'event' }, 'onReactionRemoved'),
89
- ),
90
- );
91
-
92
- runQuery(
93
- createQuery(getComment, commentId),
94
- result => (result.data || result.error) && router(result, 'onFetch'),
95
- queryOptions(policy),
96
- );
97
-
98
- return () => {
99
- log(`observeComment(tmpid: ${timestamp}) > dispose`);
100
- disposers.forEach(fn => fn());
101
- };
102
- };
@@ -1,77 +0,0 @@
1
- import { getActiveClient } from '~/client/api';
2
-
3
- import {
4
- onCommentCreated,
5
- onCommentDeleted,
6
- onCommentFlagged,
7
- onCommentReactionAdded,
8
- onCommentReactionRemoved,
9
- onCommentUnflagged,
10
- onCommentUpdated,
11
- } from '../events';
12
-
13
- /**
14
- * ```js
15
- * import { observeComments } from '@amityco/ts-sdk-react-native'
16
- *
17
- * let comments = []
18
- * const unsub = observeComments(postId, comment => merge(comments, comment))
19
- * ```
20
- *
21
- * Observe all mutations on a list of {@link Amity.InternalComment} for a given {@link Amity.Post} object
22
- *
23
- * @param postId the ID of the post where to observe the comments
24
- * @param callback the function to call when new data are available
25
- * @returns An {@link Amity.Unsubscriber} function to run when willing to stop observing the comments
26
- *
27
- * @category InternalComment Observer
28
- */
29
- export const observeComments = (
30
- postId: Amity.Post['postId'],
31
- callback: Amity.ObjectListener<
32
- Amity.InternalComment,
33
- [
34
- 'onCreate',
35
- 'onUpdate',
36
- 'onDelete',
37
- 'onFlagged',
38
- 'onUnflagged',
39
- 'onReactionAdded',
40
- 'onReactionRemoved',
41
- ]
42
- >,
43
- ): Amity.Unsubscriber => {
44
- const { log } = getActiveClient();
45
-
46
- const timestamp = Date.now();
47
- log(`observeComments(tmpid: ${timestamp}) > listen`);
48
-
49
- const disposers: Amity.Unsubscriber[] = [];
50
-
51
- const router = (
52
- comment: Amity.InternalComment,
53
- action: Exclude<Amity.CommentActionType, 'onFetch'>,
54
- ) => {
55
- if (comment.referenceId !== postId) return;
56
-
57
- if (callback instanceof Function) return callback(comment);
58
-
59
- callback.onEvent?.(action, comment);
60
- callback[action]?.(comment);
61
- };
62
-
63
- disposers.push(
64
- onCommentCreated(comment => router(comment, 'onCreate')),
65
- onCommentUpdated(comment => router(comment, 'onUpdate')),
66
- onCommentDeleted(comment => router(comment, 'onDelete')),
67
- onCommentFlagged(comment => router(comment, 'onFlagged')),
68
- onCommentUnflagged(comment => router(comment, 'onUnflagged')),
69
- onCommentReactionAdded(comment => router(comment, 'onReactionAdded')),
70
- onCommentReactionRemoved(comment => router(comment, 'onReactionRemoved')),
71
- );
72
-
73
- return () => {
74
- log(`observeComments(tmpid: ${timestamp}) > dispose`);
75
- disposers.forEach(fn => fn());
76
- };
77
- };