@amityco/ts-sdk 0.0.1-beta.16 → 0.0.1-beta.19

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 (626) hide show
  1. package/.eslintrc.json +51 -0
  2. package/dist/@types/core/cache.d.ts +11 -11
  3. package/dist/@types/core/cache.d.ts.map +1 -1
  4. package/dist/@types/core/errors.d.ts +1 -1
  5. package/dist/@types/core/errors.d.ts.map +1 -1
  6. package/dist/@types/core/events.d.ts.map +1 -1
  7. package/dist/@types/core/model.d.ts +31 -27
  8. package/dist/@types/core/model.d.ts.map +1 -1
  9. package/dist/@types/core/paging.d.ts +2 -2
  10. package/dist/@types/core/paging.d.ts.map +1 -1
  11. package/dist/@types/core/payload.d.ts +6 -0
  12. package/dist/@types/core/payload.d.ts.map +1 -1
  13. package/dist/@types/core/permissions.d.ts.map +1 -1
  14. package/dist/@types/core/query.d.ts +5 -5
  15. package/dist/@types/core/query.d.ts.map +1 -1
  16. package/dist/@types/core/transport.d.ts +1 -1
  17. package/dist/@types/core/transport.d.ts.map +1 -1
  18. package/dist/@types/domains/category.d.ts.map +1 -1
  19. package/dist/@types/domains/channel.d.ts +1 -1
  20. package/dist/@types/domains/channel.d.ts.map +1 -1
  21. package/dist/@types/domains/client.d.ts.map +1 -1
  22. package/dist/@types/domains/comment.d.ts +3 -2
  23. package/dist/@types/domains/comment.d.ts.map +1 -1
  24. package/dist/@types/domains/community.d.ts.map +1 -1
  25. package/dist/@types/domains/content.d.ts +4 -4
  26. package/dist/@types/domains/content.d.ts.map +1 -1
  27. package/dist/@types/domains/feed.d.ts +1 -1
  28. package/dist/@types/domains/feed.d.ts.map +1 -1
  29. package/dist/@types/domains/file.d.ts +5 -5
  30. package/dist/@types/domains/file.d.ts.map +1 -1
  31. package/dist/@types/domains/follow.d.ts.map +1 -1
  32. package/dist/@types/domains/group.d.ts +4 -4
  33. package/dist/@types/domains/group.d.ts.map +1 -1
  34. package/dist/@types/domains/mention.d.ts +6 -6
  35. package/dist/@types/domains/mention.d.ts.map +1 -1
  36. package/dist/@types/domains/message.d.ts +2 -2
  37. package/dist/@types/domains/message.d.ts.map +1 -1
  38. package/dist/@types/domains/partials.d.ts.map +1 -1
  39. package/dist/@types/domains/poll.d.ts +27 -0
  40. package/dist/@types/domains/poll.d.ts.map +1 -0
  41. package/dist/@types/domains/post.d.ts +5 -5
  42. package/dist/@types/domains/post.d.ts.map +1 -1
  43. package/dist/@types/domains/reaction.d.ts +2 -2
  44. package/dist/@types/domains/reaction.d.ts.map +1 -1
  45. package/dist/@types/domains/stream.d.ts +3 -3
  46. package/dist/@types/domains/stream.d.ts.map +1 -1
  47. package/dist/@types/domains/user.d.ts +1 -0
  48. package/dist/@types/domains/user.d.ts.map +1 -1
  49. package/dist/@types/global.d.ts +2 -2
  50. package/dist/@types/global.d.ts.map +1 -1
  51. package/dist/@types/index.d.ts +1 -0
  52. package/dist/@types/index.d.ts.map +1 -1
  53. package/dist/cache/api/backupCache.d.ts.map +1 -1
  54. package/dist/cache/api/disableCache.d.ts.map +1 -1
  55. package/dist/cache/api/dropFromCache.d.ts.map +1 -1
  56. package/dist/cache/api/enableCache.d.ts.map +1 -1
  57. package/dist/cache/api/index.d.ts.map +1 -1
  58. package/dist/cache/api/ingestInCache.d.ts.map +1 -1
  59. package/dist/cache/api/mergeInCache.d.ts +1 -1
  60. package/dist/cache/api/mergeInCache.d.ts.map +1 -1
  61. package/dist/cache/api/pullFromCache.d.ts.map +1 -1
  62. package/dist/cache/api/pushToCache.d.ts.map +1 -1
  63. package/dist/cache/api/queryCache.d.ts.map +1 -1
  64. package/dist/cache/api/restoreCache.d.ts.map +1 -1
  65. package/dist/cache/api/snipeIdFromCollection.d.ts.map +1 -1
  66. package/dist/cache/api/upsertInCache.d.ts +1 -1
  67. package/dist/cache/api/upsertInCache.d.ts.map +1 -1
  68. package/dist/cache/api/wipeCache.d.ts.map +1 -1
  69. package/dist/cache/utils/index.d.ts.map +1 -1
  70. package/dist/category/api/getCategory.d.ts +18 -2
  71. package/dist/category/api/getCategory.d.ts.map +1 -1
  72. package/dist/category/api/index.d.ts.map +1 -1
  73. package/dist/category/api/queryCategories.d.ts +24 -12
  74. package/dist/category/api/queryCategories.d.ts.map +1 -1
  75. package/dist/channel/api/addChannelMembers.d.ts.map +1 -1
  76. package/dist/channel/api/addChannelMembersRole.d.ts.map +1 -1
  77. package/dist/channel/api/createChannel.d.ts.map +1 -1
  78. package/dist/channel/api/deleteChannel.d.ts.map +1 -1
  79. package/dist/channel/api/getChannel.d.ts.map +1 -1
  80. package/dist/channel/api/getChannels.d.ts.map +1 -1
  81. package/dist/channel/api/index.d.ts.map +1 -1
  82. package/dist/channel/api/joinChannel.d.ts.map +1 -1
  83. package/dist/channel/api/leaveChannel.d.ts.map +1 -1
  84. package/dist/channel/api/queryChannelMembers.d.ts +2 -2
  85. package/dist/channel/api/queryChannelMembers.d.ts.map +1 -1
  86. package/dist/channel/api/queryChannels.d.ts +2 -0
  87. package/dist/channel/api/queryChannels.d.ts.map +1 -1
  88. package/dist/channel/api/removeChannelMembers.d.ts.map +1 -1
  89. package/dist/channel/api/removeChannelMembersRole.d.ts.map +1 -1
  90. package/dist/channel/api/updateChannel.d.ts.map +1 -1
  91. package/dist/channel/events/index.d.ts.map +1 -1
  92. package/dist/channel/events/onChannelCreated.d.ts.map +1 -1
  93. package/dist/channel/events/onChannelDeleted.d.ts.map +1 -1
  94. package/dist/channel/events/onChannelJoined.d.ts.map +1 -1
  95. package/dist/channel/events/onChannelLeft.d.ts.map +1 -1
  96. package/dist/channel/events/onChannelUpdated.d.ts.map +1 -1
  97. package/dist/channel/events/onMemberAdded.d.ts.map +1 -1
  98. package/dist/channel/events/onMemberRemoved.d.ts.map +1 -1
  99. package/dist/channel/observers/index.d.ts.map +1 -1
  100. package/dist/channel/observers/observeChannel.d.ts.map +1 -1
  101. package/dist/client/api/activeClient.d.ts.map +1 -1
  102. package/dist/client/api/activeUser.d.ts.map +1 -1
  103. package/dist/client/api/connectClient.d.ts.map +1 -1
  104. package/dist/client/api/createClient.d.ts +1 -1
  105. package/dist/client/api/createClient.d.ts.map +1 -1
  106. package/dist/client/api/disconnectClient.d.ts.map +1 -1
  107. package/dist/client/api/getToken.d.ts.map +1 -1
  108. package/dist/client/api/index.d.ts.map +1 -1
  109. package/dist/client/api/isConnected.d.ts.map +1 -1
  110. package/dist/client/events/index.d.ts.map +1 -1
  111. package/dist/client/events/onClientBanned.d.ts.map +1 -1
  112. package/dist/client/events/onClientDisconnected.d.ts.map +1 -1
  113. package/dist/client/events/onConnectionError.d.ts.map +1 -1
  114. package/dist/client/utils/endpoints.d.ts.map +1 -1
  115. package/dist/comment/api/createComment.d.ts.map +1 -1
  116. package/dist/comment/api/deleteComment.d.ts.map +1 -1
  117. package/dist/comment/api/getComment.d.ts.map +1 -1
  118. package/dist/comment/api/getComments.d.ts.map +1 -1
  119. package/dist/comment/api/index.d.ts.map +1 -1
  120. package/dist/comment/api/queryComments.d.ts.map +1 -1
  121. package/dist/comment/api/updateComment.d.ts.map +1 -1
  122. package/dist/comment/events/index.d.ts.map +1 -1
  123. package/dist/comment/events/onCommentCreated.d.ts.map +1 -1
  124. package/dist/comment/events/onCommentDeleted.d.ts.map +1 -1
  125. package/dist/comment/events/onCommentFlagged.d.ts.map +1 -1
  126. package/dist/comment/events/onCommentReactionAdded.d.ts.map +1 -1
  127. package/dist/comment/events/onCommentReactionRemoved.d.ts.map +1 -1
  128. package/dist/comment/events/onCommentUnflagged.d.ts.map +1 -1
  129. package/dist/comment/events/onCommentUpdated.d.ts.map +1 -1
  130. package/dist/comment/events/utils.d.ts.map +1 -1
  131. package/dist/comment/observers/index.d.ts.map +1 -1
  132. package/dist/comment/observers/observeComment.d.ts.map +1 -1
  133. package/dist/comment/observers/observeComments.d.ts.map +1 -1
  134. package/dist/community/api/addCommunityMembers.d.ts.map +1 -1
  135. package/dist/community/api/addCommunityMembersRoles.d.ts +18 -0
  136. package/dist/community/api/addCommunityMembersRoles.d.ts.map +1 -0
  137. package/dist/community/api/createCommunity.d.ts.map +1 -1
  138. package/dist/community/api/deleteCommunity.d.ts.map +1 -1
  139. package/dist/community/api/getCommunities.d.ts.map +1 -1
  140. package/dist/community/api/getCommunity.d.ts.map +1 -1
  141. package/dist/community/api/getRecommendedCommunities.d.ts.map +1 -1
  142. package/dist/community/api/getTopTrendingCommunities.d.ts.map +1 -1
  143. package/dist/community/api/index.d.ts +2 -2
  144. package/dist/community/api/index.d.ts.map +1 -1
  145. package/dist/community/api/joinCommunity.d.ts.map +1 -1
  146. package/dist/community/api/leaveCommunity.d.ts.map +1 -1
  147. package/dist/community/api/queryCommunities.d.ts.map +1 -1
  148. package/dist/community/api/queryCommunityMembers.d.ts +2 -2
  149. package/dist/community/api/queryCommunityMembers.d.ts.map +1 -1
  150. package/dist/community/api/removeCommunityMembers.d.ts.map +1 -1
  151. package/dist/community/api/removeCommunityMembersRoles.d.ts +18 -0
  152. package/dist/community/api/removeCommunityMembersRoles.d.ts.map +1 -0
  153. package/dist/community/api/updateCommunity.d.ts.map +1 -1
  154. package/dist/community/events/index.d.ts.map +1 -1
  155. package/dist/community/events/onCommunityCreated.d.ts.map +1 -1
  156. package/dist/community/events/onCommunityDeleted.d.ts.map +1 -1
  157. package/dist/community/events/onCommunityJoined.d.ts.map +1 -1
  158. package/dist/community/events/onCommunityLeft.d.ts.map +1 -1
  159. package/dist/community/events/onCommunityUpdated.d.ts.map +1 -1
  160. package/dist/community/events/onCommunityUserAdded.d.ts.map +1 -1
  161. package/dist/community/events/onCommunityUserBanned.d.ts.map +1 -1
  162. package/dist/community/events/onCommunityUserRemoved.d.ts.map +1 -1
  163. package/dist/community/events/onCommunityUserUnbanned.d.ts.map +1 -1
  164. package/dist/community/events/utils.d.ts.map +1 -1
  165. package/dist/community/observers/index.d.ts.map +1 -1
  166. package/dist/community/observers/observeCommunity.d.ts.map +1 -1
  167. package/dist/core/debug.d.ts.map +1 -1
  168. package/dist/core/device.d.ts.map +1 -1
  169. package/dist/core/errors.d.ts.map +1 -1
  170. package/dist/core/events.d.ts +1 -1
  171. package/dist/core/events.d.ts.map +1 -1
  172. package/dist/core/microtasks.d.ts.map +1 -1
  173. package/dist/core/model/idResolvers.d.ts.map +1 -1
  174. package/dist/core/model/identifyModel.d.ts.map +1 -1
  175. package/dist/core/model/index.d.ts.map +1 -1
  176. package/dist/core/query/filtering.d.ts +1 -1
  177. package/dist/core/query/filtering.d.ts.map +1 -1
  178. package/dist/core/query/index.d.ts.map +1 -1
  179. package/dist/core/query/paging.d.ts +3 -3
  180. package/dist/core/query/paging.d.ts.map +1 -1
  181. package/dist/core/query/query.d.ts.map +1 -1
  182. package/dist/core/query/sorting.d.ts +1 -1
  183. package/dist/core/query/sorting.d.ts.map +1 -1
  184. package/dist/core/subscription.d.ts.map +1 -1
  185. package/dist/core/transports/http.d.ts.map +1 -1
  186. package/dist/core/transports/mqtt.d.ts.map +1 -1
  187. package/dist/core/transports/utils.d.ts.map +1 -1
  188. package/dist/core/transports/ws.d.ts +1 -1
  189. package/dist/core/transports/ws.d.ts.map +1 -1
  190. package/dist/core/uuid.d.ts.map +1 -1
  191. package/dist/external/api/createUserToken.d.ts +23 -0
  192. package/dist/external/api/createUserToken.d.ts.map +1 -0
  193. package/dist/external/api/index.d.ts +2 -0
  194. package/dist/external/api/index.d.ts.map +1 -0
  195. package/dist/feed/api/index.d.ts.map +1 -1
  196. package/dist/feed/api/queryGlobalFeed.d.ts +2 -2
  197. package/dist/feed/api/queryGlobalFeed.d.ts.map +1 -1
  198. package/dist/file/api/createFile.d.ts +2 -1
  199. package/dist/file/api/createFile.d.ts.map +1 -1
  200. package/dist/file/api/createImage.d.ts +17 -0
  201. package/dist/file/api/createImage.d.ts.map +1 -0
  202. package/dist/file/api/createVideo.d.ts +17 -0
  203. package/dist/file/api/createVideo.d.ts.map +1 -0
  204. package/dist/file/api/deleteFile.d.ts.map +1 -1
  205. package/dist/file/api/fileUrlWithSize.d.ts.map +1 -1
  206. package/dist/file/api/getFile.d.ts +1 -1
  207. package/dist/file/api/getFile.d.ts.map +1 -1
  208. package/dist/file/api/index.d.ts +2 -0
  209. package/dist/file/api/index.d.ts.map +1 -1
  210. package/dist/file/observers/index.d.ts.map +1 -1
  211. package/dist/file/observers/observeFile.d.ts.map +1 -1
  212. package/dist/follow/api/acceptFollower.d.ts.map +1 -1
  213. package/dist/follow/api/declineFollower.d.ts.map +1 -1
  214. package/dist/follow/api/follow.d.ts.map +1 -1
  215. package/dist/follow/api/getFollowInfo.d.ts.map +1 -1
  216. package/dist/follow/api/index.d.ts.map +1 -1
  217. package/dist/follow/api/queryFollowers.d.ts.map +1 -1
  218. package/dist/follow/api/queryFollowings.d.ts.map +1 -1
  219. package/dist/follow/api/unfollow.d.ts.map +1 -1
  220. package/dist/follow/api/utils.d.ts.map +1 -1
  221. package/dist/follow/events/index.d.ts.map +1 -1
  222. package/dist/follow/events/onFollowInfoUpdated.d.ts.map +1 -1
  223. package/dist/follow/events/onFollowRequestAccepted.d.ts.map +1 -1
  224. package/dist/follow/events/onFollowRequestCanceled.d.ts.map +1 -1
  225. package/dist/follow/events/onFollowRequestDeclined.d.ts.map +1 -1
  226. package/dist/follow/events/onFollowerDeleted.d.ts.map +1 -1
  227. package/dist/follow/events/onFollowerRequested.d.ts.map +1 -1
  228. package/dist/follow/events/onUserFollowed.d.ts.map +1 -1
  229. package/dist/follow/events/onUserUnfollowed.d.ts.map +1 -1
  230. package/dist/follow/events/utils.d.ts.map +1 -1
  231. package/dist/follow/observers/index.d.ts.map +1 -1
  232. package/dist/follow/observers/observeFollowInfo.d.ts.map +1 -1
  233. package/dist/follow/observers/observeFollowers.d.ts.map +1 -1
  234. package/dist/follow/observers/observeFollowings.d.ts.map +1 -1
  235. package/dist/index.cjs.js +736 -219
  236. package/dist/index.d.ts +3 -0
  237. package/dist/index.d.ts.map +1 -1
  238. package/dist/index.esm.js +725 -218
  239. package/dist/index.umd.js +5 -5
  240. package/dist/message/api/createMessage.d.ts +2 -2
  241. package/dist/message/api/createMessage.d.ts.map +1 -1
  242. package/dist/message/api/deleteMessage.d.ts.map +1 -1
  243. package/dist/message/api/getMessage.d.ts.map +1 -1
  244. package/dist/message/api/getMessages.d.ts.map +1 -1
  245. package/dist/message/api/index.d.ts.map +1 -1
  246. package/dist/message/api/queryMessages.d.ts.map +1 -1
  247. package/dist/message/api/updateMessage.d.ts.map +1 -1
  248. package/dist/message/events/index.d.ts.map +1 -1
  249. package/dist/message/events/onMessageCreated.d.ts.map +1 -1
  250. package/dist/message/events/onMessageDeleted.d.ts.map +1 -1
  251. package/dist/message/events/onMessageUpdated.d.ts.map +1 -1
  252. package/dist/message/observers/index.d.ts.map +1 -1
  253. package/dist/message/observers/observeMessage.d.ts.map +1 -1
  254. package/dist/message/observers/observeMessages.d.ts +5 -1
  255. package/dist/message/observers/observeMessages.d.ts.map +1 -1
  256. package/dist/poll/api/closePoll.d.ts +16 -0
  257. package/dist/poll/api/closePoll.d.ts.map +1 -0
  258. package/dist/poll/api/createPoll.d.ts +25 -0
  259. package/dist/poll/api/createPoll.d.ts.map +1 -0
  260. package/dist/poll/api/deletePoll.d.ts +16 -0
  261. package/dist/poll/api/deletePoll.d.ts.map +1 -0
  262. package/dist/poll/api/getPoll.d.ts +32 -0
  263. package/dist/poll/api/getPoll.d.ts.map +1 -0
  264. package/dist/poll/api/index.d.ts +6 -0
  265. package/dist/poll/api/index.d.ts.map +1 -0
  266. package/dist/poll/api/votePoll.d.ts +17 -0
  267. package/dist/poll/api/votePoll.d.ts.map +1 -0
  268. package/dist/post/api/createPost.d.ts +1 -1
  269. package/dist/post/api/createPost.d.ts.map +1 -1
  270. package/dist/post/api/deletePost.d.ts.map +1 -1
  271. package/dist/post/api/getPost.d.ts +1 -1
  272. package/dist/post/api/getPost.d.ts.map +1 -1
  273. package/dist/post/api/getPosts.d.ts.map +1 -1
  274. package/dist/post/api/index.d.ts.map +1 -1
  275. package/dist/post/api/queryPosts.d.ts.map +1 -1
  276. package/dist/post/api/updatePost.d.ts +1 -1
  277. package/dist/post/api/updatePost.d.ts.map +1 -1
  278. package/dist/post/events/index.d.ts.map +1 -1
  279. package/dist/post/events/onPostApproved.d.ts.map +1 -1
  280. package/dist/post/events/onPostCreated.d.ts.map +1 -1
  281. package/dist/post/events/onPostDeclined.d.ts.map +1 -1
  282. package/dist/post/events/onPostDeleted.d.ts.map +1 -1
  283. package/dist/post/events/onPostFlagged.d.ts.map +1 -1
  284. package/dist/post/events/onPostReactionAdded.d.ts.map +1 -1
  285. package/dist/post/events/onPostReactionRemoved.d.ts.map +1 -1
  286. package/dist/post/events/onPostUnflagged.d.ts.map +1 -1
  287. package/dist/post/events/onPostUpdated.d.ts.map +1 -1
  288. package/dist/post/events/utils.d.ts.map +1 -1
  289. package/dist/post/observers/index.d.ts.map +1 -1
  290. package/dist/post/observers/observePost.d.ts.map +1 -1
  291. package/dist/post/observers/observePosts.d.ts +11 -1
  292. package/dist/post/observers/observePosts.d.ts.map +1 -1
  293. package/dist/reaction/api/addReaction.d.ts +2 -2
  294. package/dist/reaction/api/addReaction.d.ts.map +1 -1
  295. package/dist/reaction/api/index.d.ts.map +1 -1
  296. package/dist/reaction/api/removeReaction.d.ts +2 -2
  297. package/dist/reaction/api/removeReaction.d.ts.map +1 -1
  298. package/dist/reaction/events/index.d.ts.map +1 -1
  299. package/dist/reaction/events/onReactionAdded.d.ts +1 -1
  300. package/dist/reaction/events/onReactionAdded.d.ts.map +1 -1
  301. package/dist/reaction/events/onReactionRemoved.d.ts +1 -1
  302. package/dist/reaction/events/onReactionRemoved.d.ts.map +1 -1
  303. package/dist/reaction/utils/dispatchReactable.d.ts.map +1 -1
  304. package/dist/reaction/utils/fetchReference.d.ts.map +1 -1
  305. package/dist/reaction/utils/index.d.ts.map +1 -1
  306. package/dist/reaction/utils/preparePayloadForCache.d.ts.map +1 -1
  307. package/dist/report/api/createReport.d.ts +1 -1
  308. package/dist/report/api/createReport.d.ts.map +1 -1
  309. package/dist/report/api/deleteReport.d.ts +1 -1
  310. package/dist/report/api/deleteReport.d.ts.map +1 -1
  311. package/dist/report/api/index.d.ts.map +1 -1
  312. package/dist/report/api/isReportedByMe.d.ts +1 -1
  313. package/dist/report/api/isReportedByMe.d.ts.map +1 -1
  314. package/dist/report/constants/referenceTypes.d.ts.map +1 -1
  315. package/dist/role/api/getRole.d.ts.map +1 -1
  316. package/dist/role/api/index.d.ts.map +1 -1
  317. package/dist/role/api/queryRoles.d.ts.map +1 -1
  318. package/dist/stream/api/createStream.d.ts.map +1 -1
  319. package/dist/stream/api/deleteStream.d.ts.map +1 -1
  320. package/dist/stream/api/disposeStream.d.ts.map +1 -1
  321. package/dist/stream/api/getStream.d.ts.map +1 -1
  322. package/dist/stream/api/index.d.ts.map +1 -1
  323. package/dist/stream/api/queryStreams.d.ts.map +1 -1
  324. package/dist/stream/api/updateStream.d.ts.map +1 -1
  325. package/dist/stream/events/index.d.ts.map +1 -1
  326. package/dist/stream/events/onStreamRecorded.d.ts.map +1 -1
  327. package/dist/stream/events/onStreamStarted.d.ts.map +1 -1
  328. package/dist/stream/events/onStreamStopped.d.ts.map +1 -1
  329. package/dist/user/api/getUser.d.ts.map +1 -1
  330. package/dist/user/api/getUsers.d.ts.map +1 -1
  331. package/dist/user/api/index.d.ts.map +1 -1
  332. package/dist/user/api/queryUsers.d.ts.map +1 -1
  333. package/dist/user/api/updateUser.d.ts +1 -1
  334. package/dist/user/api/updateUser.d.ts.map +1 -1
  335. package/dist/user/events/index.d.ts.map +1 -1
  336. package/dist/user/events/onUserFlagCleared.d.ts.map +1 -1
  337. package/dist/user/events/onUserFlagged.d.ts.map +1 -1
  338. package/dist/user/events/onUserUnflagged.d.ts.map +1 -1
  339. package/dist/user/events/onUserUpdated.d.ts.map +1 -1
  340. package/dist/user/events/utils.d.ts.map +1 -1
  341. package/dist/user/observers/index.d.ts.map +1 -1
  342. package/dist/user/observers/observeUser.d.ts.map +1 -1
  343. package/dist/utils/env.d.ts +1 -1
  344. package/dist/utils/env.d.ts.map +1 -1
  345. package/dist/version.d.ts.map +1 -1
  346. package/package.json +1 -1
  347. package/rollup.config.js +11 -11
  348. package/src/@types/core/cache.ts +29 -28
  349. package/src/@types/core/errors.ts +3 -3
  350. package/src/@types/core/events.ts +95 -92
  351. package/src/@types/core/model.ts +39 -38
  352. package/src/@types/core/paging.ts +27 -27
  353. package/src/@types/core/payload.ts +85 -79
  354. package/src/@types/core/permissions.ts +6 -7
  355. package/src/@types/core/query.ts +38 -37
  356. package/src/@types/core/transport.ts +37 -28
  357. package/src/@types/domains/category.ts +7 -8
  358. package/src/@types/domains/channel.ts +29 -30
  359. package/src/@types/domains/client.ts +24 -24
  360. package/src/@types/domains/comment.ts +20 -20
  361. package/src/@types/domains/community.ts +22 -23
  362. package/src/@types/domains/content.ts +26 -22
  363. package/src/@types/domains/feed.ts +8 -9
  364. package/src/@types/domains/file.ts +28 -28
  365. package/src/@types/domains/follow.ts +13 -15
  366. package/src/@types/domains/group.ts +24 -26
  367. package/src/@types/domains/mention.ts +13 -12
  368. package/src/@types/domains/message.ts +15 -16
  369. package/src/@types/domains/partials.ts +29 -29
  370. package/src/@types/domains/poll.ts +32 -0
  371. package/src/@types/domains/post.ts +24 -24
  372. package/src/@types/domains/reaction.ts +17 -18
  373. package/src/@types/domains/stream.ts +37 -38
  374. package/src/@types/domains/user.ts +13 -13
  375. package/src/@types/global.ts +20 -17
  376. package/src/@types/index.ts +26 -24
  377. package/src/cache/api/backupCache.ts +14 -18
  378. package/src/cache/api/disableCache.ts +6 -6
  379. package/src/cache/api/dropFromCache.ts +13 -16
  380. package/src/cache/api/enableCache.ts +6 -6
  381. package/src/cache/api/index.ts +11 -11
  382. package/src/cache/api/ingestInCache.ts +15 -16
  383. package/src/cache/api/mergeInCache.ts +10 -12
  384. package/src/cache/api/pullFromCache.ts +9 -11
  385. package/src/cache/api/pushToCache.ts +14 -12
  386. package/src/cache/api/queryCache.ts +11 -12
  387. package/src/cache/api/restoreCache.ts +16 -15
  388. package/src/cache/api/snipeIdFromCollection.ts +19 -24
  389. package/src/cache/api/upsertInCache.ts +11 -13
  390. package/src/cache/api/wipeCache.ts +10 -12
  391. package/src/cache/utils/index.ts +15 -25
  392. package/src/category/api/getCategory.ts +50 -14
  393. package/src/category/api/index.ts +2 -2
  394. package/src/category/api/queryCategories.ts +88 -27
  395. package/src/channel/api/addChannelMembers.ts +14 -15
  396. package/src/channel/api/addChannelMembersRole.ts +12 -13
  397. package/src/channel/api/createChannel.ts +18 -13
  398. package/src/channel/api/deleteChannel.ts +9 -10
  399. package/src/channel/api/getChannel.ts +18 -19
  400. package/src/channel/api/getChannels.ts +22 -24
  401. package/src/channel/api/index.ts +13 -13
  402. package/src/channel/api/joinChannel.ts +12 -15
  403. package/src/channel/api/leaveChannel.ts +12 -15
  404. package/src/channel/api/queryChannelMembers.ts +35 -36
  405. package/src/channel/api/queryChannels.ts +46 -47
  406. package/src/channel/api/removeChannelMembers.ts +14 -15
  407. package/src/channel/api/removeChannelMembersRole.ts +12 -13
  408. package/src/channel/api/updateChannel.ts +12 -11
  409. package/src/channel/events/index.ts +6 -6
  410. package/src/channel/events/onChannelCreated.ts +9 -14
  411. package/src/channel/events/onChannelDeleted.ts +9 -14
  412. package/src/channel/events/onChannelJoined.ts +9 -14
  413. package/src/channel/events/onChannelLeft.ts +9 -14
  414. package/src/channel/events/onChannelUpdated.ts +9 -14
  415. package/src/channel/events/onMemberAdded.ts +9 -14
  416. package/src/channel/events/onMemberRemoved.ts +9 -14
  417. package/src/channel/observers/index.ts +1 -1
  418. package/src/channel/observers/observeChannel.ts +24 -30
  419. package/src/client/api/activeClient.ts +7 -7
  420. package/src/client/api/activeUser.ts +7 -7
  421. package/src/client/api/connectClient.ts +32 -30
  422. package/src/client/api/createClient.ts +22 -18
  423. package/src/client/api/disconnectClient.ts +14 -14
  424. package/src/client/api/getToken.ts +22 -17
  425. package/src/client/api/index.ts +5 -5
  426. package/src/client/api/isConnected.ts +8 -8
  427. package/src/client/events/index.ts +3 -3
  428. package/src/client/events/onClientBanned.ts +5 -7
  429. package/src/client/events/onClientDisconnected.ts +5 -7
  430. package/src/client/events/onConnectionError.ts +17 -24
  431. package/src/client/utils/endpoints.ts +3 -3
  432. package/src/comment/api/createComment.ts +19 -18
  433. package/src/comment/api/deleteComment.ts +21 -22
  434. package/src/comment/api/getComment.ts +22 -23
  435. package/src/comment/api/getComments.ts +24 -26
  436. package/src/comment/api/index.ts +6 -6
  437. package/src/comment/api/queryComments.ts +53 -50
  438. package/src/comment/api/updateComment.ts +14 -13
  439. package/src/comment/events/index.ts +7 -7
  440. package/src/comment/events/onCommentCreated.ts +3 -5
  441. package/src/comment/events/onCommentDeleted.ts +3 -5
  442. package/src/comment/events/onCommentFlagged.ts +3 -5
  443. package/src/comment/events/onCommentReactionAdded.ts +20 -20
  444. package/src/comment/events/onCommentReactionRemoved.ts +20 -20
  445. package/src/comment/events/onCommentUnflagged.ts +3 -5
  446. package/src/comment/events/onCommentUpdated.ts +3 -5
  447. package/src/comment/events/utils.ts +19 -20
  448. package/src/comment/observers/index.ts +2 -2
  449. package/src/comment/observers/observeComment.ts +48 -37
  450. package/src/comment/observers/observeComments.ts +34 -19
  451. package/src/community/api/addCommunityMembers.ts +14 -15
  452. package/src/community/api/addCommunityMembersRoles.ts +42 -0
  453. package/src/community/api/createCommunity.ts +26 -19
  454. package/src/community/api/deleteCommunity.ts +10 -12
  455. package/src/community/api/getCommunities.ts +24 -26
  456. package/src/community/api/getCommunity.ts +20 -21
  457. package/src/community/api/getRecommendedCommunities.ts +29 -28
  458. package/src/community/api/getTopTrendingCommunities.ts +29 -28
  459. package/src/community/api/index.ts +15 -16
  460. package/src/community/api/joinCommunity.ts +16 -16
  461. package/src/community/api/leaveCommunity.ts +16 -16
  462. package/src/community/api/queryCommunities.ts +48 -50
  463. package/src/community/api/queryCommunityMembers.ts +34 -35
  464. package/src/community/api/removeCommunityMembers.ts +14 -15
  465. package/src/community/api/removeCommunityMembersRoles.ts +42 -0
  466. package/src/community/api/updateCommunity.ts +18 -14
  467. package/src/community/events/index.ts +9 -9
  468. package/src/community/events/onCommunityCreated.ts +2 -2
  469. package/src/community/events/onCommunityDeleted.ts +2 -2
  470. package/src/community/events/onCommunityJoined.ts +4 -3
  471. package/src/community/events/onCommunityLeft.ts +4 -3
  472. package/src/community/events/onCommunityUpdated.ts +2 -2
  473. package/src/community/events/onCommunityUserAdded.ts +4 -3
  474. package/src/community/events/onCommunityUserBanned.ts +4 -3
  475. package/src/community/events/onCommunityUserRemoved.ts +4 -3
  476. package/src/community/events/onCommunityUserUnbanned.ts +4 -3
  477. package/src/community/events/utils.ts +46 -44
  478. package/src/community/observers/index.ts +1 -1
  479. package/src/community/observers/observeCommunity.ts +57 -39
  480. package/src/core/debug.ts +10 -12
  481. package/src/core/device.ts +11 -12
  482. package/src/core/errors.ts +16 -19
  483. package/src/core/events.ts +47 -47
  484. package/src/core/microtasks.ts +12 -11
  485. package/src/core/model/idResolvers.ts +7 -7
  486. package/src/core/model/identifyModel.ts +15 -12
  487. package/src/core/model/index.ts +7 -5
  488. package/src/core/query/filtering.ts +5 -3
  489. package/src/core/query/index.ts +4 -4
  490. package/src/core/query/paging.ts +44 -49
  491. package/src/core/query/query.ts +58 -64
  492. package/src/core/query/sorting.ts +21 -15
  493. package/src/core/subscription.ts +22 -20
  494. package/src/core/transports/http.ts +27 -25
  495. package/src/core/transports/mqtt.ts +70 -51
  496. package/src/core/transports/utils.ts +8 -7
  497. package/src/core/transports/ws.ts +16 -17
  498. package/src/core/uuid.ts +3 -2
  499. package/src/external/api/createUserToken.ts +43 -0
  500. package/src/external/api/index.ts +1 -0
  501. package/src/feed/api/index.ts +1 -1
  502. package/src/feed/api/queryGlobalFeed.ts +53 -43
  503. package/src/file/api/createFile.ts +23 -22
  504. package/src/file/api/createImage.ts +58 -0
  505. package/src/file/api/createVideo.ts +58 -0
  506. package/src/file/api/deleteFile.ts +9 -11
  507. package/src/file/api/fileUrlWithSize.ts +2 -2
  508. package/src/file/api/getFile.ts +19 -24
  509. package/src/file/api/index.ts +6 -4
  510. package/src/file/observers/index.ts +1 -1
  511. package/src/file/observers/observeFile.ts +17 -23
  512. package/src/follow/api/acceptFollower.ts +12 -10
  513. package/src/follow/api/declineFollower.ts +12 -10
  514. package/src/follow/api/follow.ts +16 -12
  515. package/src/follow/api/getFollowInfo.ts +28 -20
  516. package/src/follow/api/index.ts +7 -7
  517. package/src/follow/api/queryFollowers.ts +7 -10
  518. package/src/follow/api/queryFollowings.ts +7 -10
  519. package/src/follow/api/unfollow.ts +12 -10
  520. package/src/follow/api/utils.ts +40 -35
  521. package/src/follow/events/index.ts +8 -8
  522. package/src/follow/events/onFollowInfoUpdated.ts +15 -13
  523. package/src/follow/events/onFollowRequestAccepted.ts +4 -3
  524. package/src/follow/events/onFollowRequestCanceled.ts +4 -3
  525. package/src/follow/events/onFollowRequestDeclined.ts +4 -3
  526. package/src/follow/events/onFollowerDeleted.ts +4 -3
  527. package/src/follow/events/onFollowerRequested.ts +4 -3
  528. package/src/follow/events/onUserFollowed.ts +2 -2
  529. package/src/follow/events/onUserUnfollowed.ts +4 -3
  530. package/src/follow/events/utils.ts +15 -20
  531. package/src/follow/observers/index.ts +3 -3
  532. package/src/follow/observers/observeFollowInfo.ts +27 -31
  533. package/src/follow/observers/observeFollowers.ts +29 -30
  534. package/src/follow/observers/observeFollowings.ts +29 -30
  535. package/src/index.ts +45 -38
  536. package/src/message/api/createMessage.ts +31 -29
  537. package/src/message/api/deleteMessage.ts +22 -22
  538. package/src/message/api/getMessage.ts +18 -19
  539. package/src/message/api/getMessages.ts +22 -24
  540. package/src/message/api/index.ts +6 -6
  541. package/src/message/api/queryMessages.ts +55 -47
  542. package/src/message/api/updateMessage.ts +26 -25
  543. package/src/message/events/index.ts +3 -3
  544. package/src/message/events/onMessageCreated.ts +10 -17
  545. package/src/message/events/onMessageDeleted.ts +10 -17
  546. package/src/message/events/onMessageUpdated.ts +10 -17
  547. package/src/message/observers/index.ts +2 -2
  548. package/src/message/observers/observeMessage.ts +23 -29
  549. package/src/message/observers/observeMessages.ts +20 -22
  550. package/src/poll/api/closePoll.ts +39 -0
  551. package/src/poll/api/createPoll.ts +45 -0
  552. package/src/poll/api/deletePoll.ts +36 -0
  553. package/src/poll/api/getPoll.ts +64 -0
  554. package/src/poll/api/index.ts +7 -0
  555. package/src/poll/api/votePoll.ts +41 -0
  556. package/src/post/api/createPost.ts +20 -20
  557. package/src/post/api/deletePost.ts +22 -25
  558. package/src/post/api/getPost.ts +23 -28
  559. package/src/post/api/getPosts.ts +24 -28
  560. package/src/post/api/index.ts +6 -6
  561. package/src/post/api/queryPosts.ts +48 -50
  562. package/src/post/api/updatePost.ts +15 -15
  563. package/src/post/events/index.ts +9 -9
  564. package/src/post/events/onPostApproved.ts +2 -2
  565. package/src/post/events/onPostCreated.ts +2 -2
  566. package/src/post/events/onPostDeclined.ts +2 -2
  567. package/src/post/events/onPostDeleted.ts +2 -2
  568. package/src/post/events/onPostFlagged.ts +2 -2
  569. package/src/post/events/onPostReactionAdded.ts +15 -19
  570. package/src/post/events/onPostReactionRemoved.ts +15 -19
  571. package/src/post/events/onPostUnflagged.ts +2 -2
  572. package/src/post/events/onPostUpdated.ts +2 -2
  573. package/src/post/events/utils.ts +19 -24
  574. package/src/post/observers/index.ts +2 -2
  575. package/src/post/observers/observePost.ts +46 -34
  576. package/src/post/observers/observePosts.ts +47 -24
  577. package/src/reaction/api/addReaction.ts +32 -27
  578. package/src/reaction/api/index.ts +2 -2
  579. package/src/reaction/api/removeReaction.ts +30 -27
  580. package/src/reaction/events/index.ts +1 -1
  581. package/src/reaction/events/onReactionAdded.ts +26 -22
  582. package/src/reaction/events/onReactionRemoved.ts +26 -22
  583. package/src/reaction/utils/dispatchReactable.ts +5 -7
  584. package/src/reaction/utils/fetchReference.ts +8 -11
  585. package/src/reaction/utils/index.ts +3 -3
  586. package/src/reaction/utils/preparePayloadForCache.ts +27 -19
  587. package/src/report/api/createReport.ts +20 -19
  588. package/src/report/api/deleteReport.ts +20 -19
  589. package/src/report/api/index.ts +3 -3
  590. package/src/report/api/isReportedByMe.ts +13 -13
  591. package/src/report/constants/referenceTypes.ts +1 -1
  592. package/src/role/api/getRole.ts +19 -26
  593. package/src/role/api/index.ts +2 -2
  594. package/src/role/api/queryRoles.ts +29 -32
  595. package/src/stream/api/createStream.ts +11 -13
  596. package/src/stream/api/deleteStream.ts +14 -16
  597. package/src/stream/api/disposeStream.ts +11 -11
  598. package/src/stream/api/getStream.ts +21 -21
  599. package/src/stream/api/index.ts +6 -6
  600. package/src/stream/api/queryStreams.ts +36 -37
  601. package/src/stream/api/updateStream.ts +12 -12
  602. package/src/stream/events/index.ts +3 -3
  603. package/src/stream/events/onStreamRecorded.ts +10 -12
  604. package/src/stream/events/onStreamStarted.ts +10 -12
  605. package/src/stream/events/onStreamStopped.ts +10 -17
  606. package/src/user/api/getUser.ts +18 -22
  607. package/src/user/api/getUsers.ts +23 -27
  608. package/src/user/api/index.ts +4 -4
  609. package/src/user/api/queryUsers.ts +42 -46
  610. package/src/user/api/updateUser.ts +18 -13
  611. package/src/user/events/index.ts +4 -4
  612. package/src/user/events/onUserFlagCleared.ts +2 -2
  613. package/src/user/events/onUserFlagged.ts +2 -2
  614. package/src/user/events/onUserUnflagged.ts +2 -2
  615. package/src/user/events/onUserUpdated.ts +2 -2
  616. package/src/user/events/utils.ts +10 -15
  617. package/src/user/observers/index.ts +1 -1
  618. package/src/user/observers/observeUser.ts +25 -34
  619. package/src/utils/env.ts +9 -4
  620. package/src/version.ts +2 -2
  621. package/dist/community/api/addCommunityMembersRole.d.ts +0 -18
  622. package/dist/community/api/addCommunityMembersRole.d.ts.map +0 -1
  623. package/dist/community/api/removeCommunityMembersRole.d.ts +0 -18
  624. package/dist/community/api/removeCommunityMembersRole.d.ts.map +0 -1
  625. package/src/community/api/addCommunityMembersRole.ts +0 -41
  626. package/src/community/api/removeCommunityMembersRole.ts +0 -41
@@ -4,9 +4,9 @@
4
4
  * to avoid using any and give some typing security at the
5
5
  * resolver's level.
6
6
  */
7
- type Resolvers<T extends Amity.Domain[] = Amity.Domain[]> = {
8
- [K in T[number]]: (model: Amity.Minimal[K]) => string
9
- }
7
+ type Resolvers<T extends Amity.Domain[] = Amity.Domain[]> = {
8
+ [K in T[number]]: (model: Amity.Minimal[K]) => string;
9
+ };
10
10
 
11
11
  /** @hidden */
12
12
  const idResolvers: Resolvers = {
@@ -19,15 +19,17 @@ const idResolvers: Resolvers = {
19
19
  message: ({ messageId }) => messageId,
20
20
 
21
21
  community: ({ communityId }) => communityId,
22
+ category: ({ categoryId }) => categoryId,
22
23
  communityUsers: ({ communityId, userId }) => `${communityId}#${userId}`,
23
24
  post: ({ postId }) => postId,
24
25
  comment: ({ commentId }) => commentId,
26
+ poll: ({ pollId }) => pollId,
25
27
 
26
28
  stream: ({ streamId }) => streamId,
27
29
 
28
30
  follow: ({ from, to }) => `${from}#${to}`,
29
31
  followCount: ({ userId }) => userId,
30
- }
32
+ };
31
33
 
32
34
  /**
33
35
  * Retrieve the id resolver matching a domain name
@@ -35,6 +37,4 @@ const idResolvers: Resolvers = {
35
37
  * @param name the domain name for the resolve
36
38
  * @returns an idResolver function for the given domain name
37
39
  */
38
- export const getResolver = <T extends Amity.Domain>(name: T) => (
39
- idResolvers[name]
40
- )
40
+ export const getResolver = <T extends Amity.Domain>(name: T) => idResolvers[name];
@@ -5,9 +5,9 @@
5
5
  * adding new models.
6
6
  * @hidden
7
7
  */
8
- type Criterias<T extends Amity.Domain[] = Amity.Domain[]> = {
9
- [K in T[number]]: (keyof Amity.Model[K])[]
10
- }
8
+ type Criterias<T extends Amity.Domain[] = Amity.Domain[]> = {
9
+ [K in T[number]]: (keyof Amity.Model[K])[];
10
+ };
11
11
 
12
12
  /**
13
13
  * Identification criterias
@@ -19,7 +19,7 @@
19
19
  *
20
20
  * @hidden
21
21
  */
22
- const CRITERIAS: Criterias = {
22
+ const CRITERIAS: Criterias = {
23
23
  file: ['fileId', 'attributes'],
24
24
  user: ['userId', 'avatarFileId'],
25
25
  role: ['roleId'],
@@ -27,19 +27,21 @@ const CRITERIAS: Criterias = {
27
27
  channelUsers: ['channelId', 'userId', 'membership'],
28
28
  message: ['messageId'],
29
29
  community: ['communityId', 'onlyAdminCanPost'],
30
+ category: ['categoryId'],
30
31
  communityUsers: ['userId', 'communityId', 'communityMembership'],
31
32
  post: ['postId', 'feedId'],
32
33
  comment: ['commentId', 'referenceId'],
34
+ poll: ['pollId'],
33
35
  stream: ['streamId'],
34
36
  follow: ['from', 'to'],
35
- followCount: ['userId', 'followerCount']
36
- }
37
+ followCount: ['userId', 'followerCount'],
38
+ };
37
39
 
38
40
  /** @hidden */
39
41
  const hasKeys = (object: Record<string, unknown>, needles: string[]) => {
40
- const haystack = Object.keys(object)
41
- return needles.every(needle => haystack.includes(needle))
42
- }
42
+ const haystack = Object.keys(object);
43
+ return needles.every(needle => haystack.includes(needle));
44
+ };
43
45
 
44
46
  /**
45
47
  * Finds the name of the store for a given unknown model
@@ -50,6 +52,7 @@ const hasKeys = (object: Record<string, unknown>, needles: string[]) => {
50
52
  export const identifyModel = (model: Record<string, unknown>) => {
51
53
  // we cannot avoid "as" in here because Object.entries does not
52
54
  // allow anything else than "string" as key in the iterator type
53
- const criterias = Object.entries(CRITERIAS) as [Amity.Domain, string[]][]
54
- return criterias.find(([_, keys]) => hasKeys(model, keys))?.[0]
55
- }
55
+ const criterias = Object.entries(CRITERIAS) as [Amity.Domain, string[]][];
56
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
57
+ return criterias.find(([_, keys]) => hasKeys(model, keys))?.[0];
58
+ };
@@ -1,11 +1,11 @@
1
- export * from './idResolvers'
2
- export * from './identifyModel'
1
+ export * from './idResolvers';
2
+ export * from './identifyModel';
3
3
 
4
4
  /**
5
5
  * A map of v3 response keys to a store name.
6
6
  * @hidden
7
7
  */
8
- export const PAYLOAD2MODEL: Record<string, Amity.Domain> = {
8
+ export const PAYLOAD2MODEL: Record<string, Amity.Domain> = {
9
9
  users: 'user',
10
10
  files: 'file',
11
11
  roles: 'role',
@@ -15,12 +15,14 @@ export * from './identifyModel'
15
15
  messages: 'message',
16
16
 
17
17
  communities: 'community',
18
+ categories: 'category',
18
19
  communityUsers: 'communityUsers',
19
20
  posts: 'post',
20
21
  postChildren: 'post',
21
22
  comments: 'comment',
23
+ polls: 'poll',
22
24
  videoStreamings: 'stream',
23
25
 
24
26
  follows: 'follow',
25
- followCounts: 'followCount'
26
- }
27
+ followCounts: 'followCount',
28
+ };
@@ -12,6 +12,8 @@
12
12
  *
13
13
  * @hidden
14
14
  */
15
- export const filterByPropEquality = <T = {}>(collection: T[], key: keyof T, value: any) => (
16
- value !== undefined ? collection.filter(item => item[key] === value) : collection
17
- )
15
+ export const filterByPropEquality = <T = Record<string, unknown>>(
16
+ collection: T[],
17
+ key: keyof T,
18
+ value: any,
19
+ ) => (value !== undefined ? collection.filter(item => item[key] === value) : collection);
@@ -1,4 +1,4 @@
1
- export * from './query'
2
- export * from './filtering'
3
- export * from './sorting'
4
- export * from './paging'
1
+ export * from './query';
2
+ export * from './filtering';
3
+ export * from './sorting';
4
+ export * from './paging';
@@ -1,4 +1,4 @@
1
- import { encode, decode } from 'js-base64'
1
+ import { encode, decode } from 'js-base64';
2
2
 
3
3
  /**
4
4
  * Type guard to find if the a given decoded backend token uses "skip/limit" pagination style
@@ -8,9 +8,8 @@ import { encode, decode } from 'js-base64'
8
8
  *
9
9
  * @hidden
10
10
  */
11
- export const isSkipLimit = (json: Object): json is Amity.SkipLimitPagination => (
12
- ['skip', 'limit'].some(prop => prop in json)
13
- )
11
+ export const isSkipLimit = (json: Record<string, unknown>): json is Amity.SkipLimitPagination =>
12
+ ['skip', 'limit'].some(prop => prop in json);
14
13
 
15
14
  /**
16
15
  * Type guard to find if the a given decoded backend token uses "after/before" pagination style
@@ -20,9 +19,8 @@ export const isSkipLimit = (json: Object): json is Amity.SkipLimitPagination =>
20
19
  *
21
20
  * @hidden
22
21
  */
23
- export const isAfterBefore = (json: Object): json is Amity.AfterBeforePagination => (
24
- ['after', 'before', 'first', 'last', 'limit'].some(prop => prop in json)
25
- )
22
+ export const isAfterBefore = (json: Record<string, unknown>): json is Amity.AfterBeforePagination =>
23
+ ['after', 'before', 'first', 'last', 'limit'].some(prop => prop in json);
26
24
 
27
25
  /**
28
26
  * Type guard to find if the a given decoded backend token uses v4 or newer "after/before" pagination style
@@ -32,9 +30,9 @@ export const isAfterBefore = (json: Object): json is Amity.AfterBeforePagination
32
30
  *
33
31
  * @hidden
34
32
  */
35
- export const isAfterBeforeRaw = (json: Object): json is Amity.AfterBeforeRawPagination => (
36
- 'limit' in json
37
- )
33
+ export const isAfterBeforeRaw = (
34
+ json: Record<string, unknown>,
35
+ ): json is Amity.AfterBeforeRawPagination => 'limit' in json;
38
36
 
39
37
  /**
40
38
  * Type guard to find if the a given object is wrapped around Amity.Paged<>
@@ -46,11 +44,11 @@ export const isAfterBeforeRaw = (json: Object): json is Amity.AfterBeforeRawPagi
46
44
  */
47
45
  export const isPaged = <T extends unknown>(payload: any): payload is Amity.Paged<T, any> => {
48
46
  return (
49
- payload?.hasOwnProperty('data')
50
- && payload?.hasOwnProperty('nextPage')
51
- && payload?.hasOwnProperty('prevPage')
52
- )
53
- }
47
+ payload?.hasOwnProperty('data') &&
48
+ payload?.hasOwnProperty('nextPage') &&
49
+ payload?.hasOwnProperty('prevPage')
50
+ );
51
+ };
54
52
 
55
53
  /**
56
54
  * Converts a paging object into a b64 string token
@@ -65,53 +63,48 @@ export const toToken = (
65
63
  paging: Amity.Page | Amity.PageRaw | undefined,
66
64
  style: Amity.PaginationStyles,
67
65
  ): Amity.Token | undefined => {
68
- if (!paging || !Object.keys(paging).length)
69
- return
66
+ if (!paging || !Object.keys(paging).length) return;
70
67
 
71
- let payload = {}
68
+ let payload = {};
72
69
 
73
70
  // TODO: refactor this clean
74
71
  if (style === 'skiplimit') {
75
72
  payload = {
76
73
  skip: paging.after ?? 0,
77
74
  limit: paging.limit,
78
- }
79
- }
80
- else if (style === 'afterbefore' && isAfterBefore(paging)) {
75
+ };
76
+ } else if (style === 'afterbefore' && isAfterBefore(paging)) {
81
77
  /*
82
78
  Caution: this testing style is only valid because
83
79
  our backend expects nothing else than a number as
84
80
  "before" or "after" value. if that would change,
85
81
  we'd need to move toward a more simple: `!paging.before`
86
82
  */
87
- if (!isNaN(paging?.before!)) {
83
+ if (!Number.isNaN(paging?.before!)) {
88
84
  payload = {
89
85
  before: paging.before,
90
86
  last: paging.limit,
91
- }
92
- } else if (!isNaN(paging?.after!)) {
87
+ };
88
+ } else if (!Number.isNaN(paging?.after!)) {
93
89
  payload = {
94
90
  after: paging.after,
95
91
  first: paging.limit,
96
- }
97
- } else if (!isNaN(paging?.limit!)) {
92
+ };
93
+ } else if (!Number.isNaN(paging?.limit!)) {
98
94
  payload = {
99
95
  last: paging.limit,
100
- }
96
+ };
101
97
  }
102
- }
103
- else if (style === 'afterbeforeraw') {
104
- payload = paging
98
+ } else if (style === 'afterbeforeraw') {
99
+ payload = paging;
105
100
  }
106
101
 
107
102
  // avoid sending {} as it seems backend flips when we do
108
- if (!Object.keys(payload).length)
109
- return
103
+ if (!Object.keys(payload).length) return;
110
104
 
111
105
  // don't try catch, let it throw
112
- return encode(JSON.stringify(payload))
113
- }
114
-
106
+ return encode(JSON.stringify(payload));
107
+ };
115
108
 
116
109
  /**
117
110
  * Converts a b64 string token into a paging object
@@ -122,32 +115,34 @@ export const toToken = (
122
115
  * @hidden
123
116
  */
124
117
  export const toPage = (token?: Amity.Token): Amity.Page | undefined => {
125
- if (!token) return undefined
118
+ if (!token) return undefined;
126
119
 
127
120
  // don't try catch, let it throw
128
- const json = JSON.parse(decode(token))
121
+ const json = JSON.parse(decode(token));
129
122
 
130
123
  if (isSkipLimit(json)) {
131
124
  return {
132
125
  after: json.skip,
133
126
  limit: json.limit!,
134
- } as Amity.NextPage<number>
135
- } else if (isAfterBefore(json)) {
127
+ } as Amity.NextPage<number>;
128
+ }
129
+ if (isAfterBefore(json)) {
136
130
  if ('before' in json) {
137
131
  return {
138
132
  before: json.before,
139
133
  limit: json.last,
140
- } as Amity.PrevPage<number>
141
- } else if ('after' in json) {
134
+ } as Amity.PrevPage<number>;
135
+ }
136
+ if ('after' in json) {
142
137
  return {
143
138
  after: json.after,
144
139
  limit: json.first,
145
- } as Amity.NextPage<number>
140
+ } as Amity.NextPage<number>;
146
141
  }
147
142
  }
148
143
 
149
- return undefined
150
- }
144
+ return undefined;
145
+ };
151
146
 
152
147
  /**
153
148
  * Converts a b64 string token into a paging object
@@ -158,14 +153,14 @@ export const toPage = (token?: Amity.Token): Amity.Page | undefined => {
158
153
  * @hidden
159
154
  */
160
155
  export const toPageRaw = (token?: Amity.Token): Amity.PageRaw | undefined => {
161
- if (!token) return undefined
156
+ if (!token) return undefined;
162
157
 
163
158
  // don't try catch, let it throw
164
- const json = JSON.parse(decode(token))
159
+ const json = JSON.parse(decode(token));
165
160
 
166
161
  if (isAfterBeforeRaw(json)) {
167
- return json as Amity.PageRaw
162
+ return json as Amity.PageRaw;
168
163
  }
169
164
 
170
- return undefined
171
- }
165
+ return undefined;
166
+ };
@@ -1,4 +1,5 @@
1
- import { isPaged } from './paging'
1
+ /* eslint-disable no-use-before-define */
2
+ import { isPaged } from './paging';
2
3
 
3
4
  /**
4
5
  * Type guard to check and cast that a given async function is has the ".locally" property
@@ -9,10 +10,8 @@ import { isPaged } from './paging'
9
10
  * @hidden
10
11
  */
11
12
  export const isFetcher = <Args extends any[], Returned extends any>(
12
- func: Amity.AsyncFunc<Args, Returned>
13
- ): func is Amity.FetcherFunc<Args, Returned> => (
14
- 'locally' in func
15
- )
13
+ func: Amity.AsyncFunc<Args, Returned>,
14
+ ): func is Amity.FetcherFunc<Args, Returned> => 'locally' in func;
16
15
 
17
16
  /**
18
17
  * Type guard to check and cast that a given async function is has the ".optimistically" property
@@ -23,10 +22,8 @@ export const isFetcher = <Args extends any[], Returned extends any>(
23
22
  * @hidden
24
23
  */
25
24
  export const isMutator = <Args extends any[], Returned extends any>(
26
- func: Amity.AsyncFunc<Args, Returned>
27
- ): func is Amity.MutatorFunc<Args, Returned> => (
28
- 'optimistically' in func
29
- )
25
+ func: Amity.AsyncFunc<Args, Returned>,
26
+ ): func is Amity.MutatorFunc<Args, Returned> => 'optimistically' in func;
30
27
 
31
28
  /**
32
29
  * Type guard to check and cast that a given async function is has
@@ -38,8 +35,8 @@ export const isMutator = <Args extends any[], Returned extends any>(
38
35
  * @hidden
39
36
  */
40
37
  export const isOffline = <Args extends any[], Returned extends any>(
41
- func: Amity.AsyncFunc<Args, Returned>
42
- ): func is Amity.OfflineFunc<Args, Returned> => isFetcher(func) || isMutator(func)
38
+ func: Amity.AsyncFunc<Args, Returned>,
39
+ ): func is Amity.OfflineFunc<Args, Returned> => isFetcher(func) || isMutator(func);
43
40
 
44
41
  /**
45
42
  * Type guard to check and cast that a given object has the "cachedAt" property
@@ -49,9 +46,8 @@ export const isOffline = <Args extends any[], Returned extends any>(
49
46
  *
50
47
  * @hidden
51
48
  */
52
- export const isCachable = (model: any): model is Amity.Cachable => (
53
- model?.hasOwnProperty('cachedAt')
54
- )
49
+ export const isCachable = (model: any): model is Amity.Cachable =>
50
+ model?.hasOwnProperty('cachedAt');
55
51
 
56
52
  /**
57
53
  * Checks if a model is considered local (cachedAt === -1)
@@ -62,8 +58,8 @@ export const isCachable = (model: any): model is Amity.Cachable => (
62
58
  * @hidden
63
59
  */
64
60
  export const isLocal = (model?: any): model is Amity.Local => {
65
- return isCachable(model) && model?.cachedAt === -1
66
- }
61
+ return isCachable(model) && model?.cachedAt === -1;
62
+ };
67
63
 
68
64
  /**
69
65
  * Checks if a model is considered fresh
@@ -74,9 +70,9 @@ export const isLocal = (model?: any): model is Amity.Local => {
74
70
  *
75
71
  * @hidden
76
72
  */
77
- export const isFresh = (model?: Amity.Cachable, lifeSpan: number = 0) => {
78
- return Date.now() - (model?.cachedAt ?? 0) <= lifeSpan
79
- }
73
+ export const isFresh = (model?: Amity.Cachable, lifeSpan = 0) => {
74
+ return Date.now() - (model?.cachedAt ?? 0) <= lifeSpan;
75
+ };
80
76
 
81
77
  /**
82
78
  * ```js
@@ -97,8 +93,7 @@ export const isFresh = (model?: Amity.Cachable, lifeSpan: number = 0) => {
97
93
  export const createQuery = <Args extends any[], Returned extends any>(
98
94
  func: Amity.AsyncFunc<Args, Returned> | Amity.OfflineFunc<Args, Returned>,
99
95
  ...args: Args
100
- ) => ({ func, args })
101
-
96
+ ) => ({ func, args });
102
97
 
103
98
  /**
104
99
  * ```js
@@ -114,15 +109,14 @@ export const createQuery = <Args extends any[], Returned extends any>(
114
109
  * @category Query
115
110
  */
116
111
  export const queryOptions = (
117
- policy: Amity.QueryPolicy, lifeSpan: number = 2 * 60 * 1000, // 2mn
112
+ policy: Amity.QueryPolicy,
113
+ lifeSpan: number = 2 * 60 * 1000, // 2mn
118
114
  ): Amity.QueryOptions => {
119
- if (policy === 'cache_only')
120
- return { lifeSpan: Infinity }
121
- else if (policy === 'server_only')
122
- return { lifeSpan: 0 }
115
+ if (policy === 'cache_only') return { lifeSpan: Infinity };
116
+ if (policy === 'server_only') return { lifeSpan: 0 };
123
117
 
124
- return { lifeSpan }
125
- }
118
+ return { lifeSpan };
119
+ };
126
120
 
127
121
  /**
128
122
  * Checks if an unknown shaped payload is considered empty or not.
@@ -136,20 +130,19 @@ export const queryOptions = (
136
130
  */
137
131
  const isEmpty = (local: any) => {
138
132
  // if it's supposed to be a single object, it'd be undefined
139
- if (!local)
140
- return true
133
+ if (!local) return true;
141
134
 
142
135
  // it's a paged query, the 1st cell of the array would be empty
143
- else if (isPaged(local) && isEmpty(local.data)) {
144
- return true
136
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
137
+ if (isPaged(local) && isEmpty(local.data)) {
138
+ return true;
145
139
  }
146
140
 
147
141
  // if it's a item collection, it'd have no keys
148
- else if (!Object.keys(local).length)
149
- return true
142
+ if (!Object.keys(local).length) return true;
150
143
 
151
- return false
152
- }
144
+ return false;
145
+ };
153
146
 
154
147
  /**
155
148
  * ```js
@@ -171,53 +164,54 @@ const isEmpty = (local: any) => {
171
164
  export const runQuery = <Args extends any[], Returned extends any>(
172
165
  { func, args }: Amity.Query<Args, Returned>,
173
166
  callback?: (args: Amity.Snapshot<Returned>) => void,
174
- options: Amity.QueryOptions = queryOptions('cache_then_server')
167
+ options: Amity.QueryOptions = queryOptions('cache_then_server'),
175
168
  ) => {
176
- let local: Returned | undefined
169
+ let local: Returned | undefined;
177
170
 
178
171
  // offline first
179
172
  if (isOffline(func) && options.lifeSpan !== 0) {
180
173
  try {
181
- local = isMutator(func)
182
- ? func.optimistically(...args)
183
- : func.locally(...args)
174
+ local = isMutator(func) ? func.optimistically(...args) : func.locally(...args);
184
175
  } catch (error) {
185
176
  callback?.(
186
177
  createSnapshot<Returned>(undefined, {
187
178
  origin: 'local',
188
179
  loading: false,
189
180
  error,
190
- })
191
- )
181
+ }),
182
+ );
192
183
  }
193
184
 
194
- const shouldAbort = isCachable(local) && isFresh(local, options.lifeSpan)
185
+ const shouldAbort = isCachable(local) && isFresh(local, options.lifeSpan);
195
186
 
196
- callback?.(createSnapshot<Returned>(local , {
197
- origin: 'local',
198
- loading: !(isFetcher(func) && shouldAbort)
199
- }))
187
+ callback?.(
188
+ createSnapshot<Returned>(local, {
189
+ origin: 'local',
190
+ loading: !(isFetcher(func) && shouldAbort),
191
+ }),
192
+ );
200
193
 
201
- if (shouldAbort)
202
- return
194
+ if (shouldAbort) return;
203
195
  } else {
204
- callback?.(createSnapshot<Returned>(undefined, {
205
- origin: 'local',
206
- loading: true
207
- }))
196
+ callback?.(
197
+ createSnapshot<Returned>(undefined, {
198
+ origin: 'local',
199
+ loading: true,
200
+ }),
201
+ );
208
202
  }
209
203
 
210
204
  func(...args)
211
205
  .then(fresh => {
212
206
  // @ts-ignore i know.
213
- // isLocal(local) && syncInCache(local, fresh)
207
+ // isLocal(local) && syncInCache(local, fresh)
214
208
 
215
209
  callback?.(
216
210
  createSnapshot<Returned>(fresh, {
217
211
  origin: 'server',
218
212
  loading: false,
219
- })
220
- )
213
+ }),
214
+ );
221
215
  })
222
216
  .catch(error => {
223
217
  callback?.(
@@ -225,10 +219,10 @@ export const runQuery = <Args extends any[], Returned extends any>(
225
219
  origin: 'server',
226
220
  loading: false,
227
221
  error,
228
- })
229
- )
230
- })
231
- }
222
+ }),
223
+ );
224
+ });
225
+ };
232
226
 
233
227
  /**
234
228
  * This is a TS hack around types
@@ -240,9 +234,9 @@ export const runQuery = <Args extends any[], Returned extends any>(
240
234
  * @hidden
241
235
  */
242
236
  function createSnapshot<T>(data: T | undefined, options?: Amity.SnapshotOptions): Amity.Snapshot<T>;
237
+ // eslint-disable-next-line no-redeclare
243
238
  function createSnapshot(data: unknown, options?: Amity.SnapshotOptions): unknown {
244
- if (isPaged(data) || isCachable(data))
245
- return { ...options, ...data }
239
+ if (isPaged(data) || isCachable(data)) return { ...options, ...data };
246
240
 
247
- return { ...options, data }
241
+ return { ...options, data };
248
242
  }
@@ -2,49 +2,55 @@
2
2
  // this file should contain a suite of sorting utilities to help the
3
3
  // local version of the query functions.
4
4
 
5
- type SortingFunc<T = Object> = (a: T, b: T) => number
5
+ type SortingFunc<T = Record<string, unknown>> = (a: T, b: T) => number;
6
6
 
7
7
  /**
8
8
  * Alphabetic sorting of objects having a displayName
9
9
  */
10
10
  export const sortByDisplayName: SortingFunc<{ displayName: string }> = (
11
- { displayName: a }, { displayName: b }
11
+ { displayName: a },
12
+ { displayName: b },
12
13
  ) => {
13
- if (a === b) return 0
14
- return a < b ? -1 : 1
15
- }
14
+ if (a === b) return 0;
15
+ return a < b ? -1 : 1;
16
+ };
16
17
 
17
18
  /**
18
19
  * Sorting a collection by their apparition order (oldest first)
19
20
  */
20
21
  export const sortByChannelSegment: SortingFunc<{ channelSegment: number }> = (
21
- { channelSegment: a }, { channelSegment: b }
22
- ) => a - b
22
+ { channelSegment: a },
23
+ { channelSegment: b },
24
+ ) => a - b;
23
25
 
24
26
  /**
25
27
  * Sorting a collection by their apparition order (oldest first)
26
28
  */
27
29
  export const sortBySegmentNumber: SortingFunc<{ segmentNumber: number }> = (
28
- { segmentNumber: a }, { segmentNumber: b }
29
- ) => a - b
30
+ { segmentNumber: a },
31
+ { segmentNumber: b },
32
+ ) => a - b;
30
33
 
31
34
  /**
32
35
  * Sorting a collection by its oldest items
33
36
  */
34
37
  export const sortByFirstCreated: SortingFunc<{ createdAt: Date | number | string }> = (
35
- { createdAt: a }, { createdAt: b }
36
- ) => new Date(a).valueOf() - new Date(b).valueOf()
38
+ { createdAt: a },
39
+ { createdAt: b },
40
+ ) => new Date(a).valueOf() - new Date(b).valueOf();
37
41
 
38
42
  /**
39
43
  * Sorting a collection by its newest items
40
44
  */
41
45
  export const sortByLastCreated: SortingFunc<{ createdAt: Date | number | string }> = (
42
- { createdAt: a }, { createdAt: b }
43
- ) => new Date(b).valueOf() - new Date(a).valueOf()
46
+ { createdAt: a },
47
+ { createdAt: b },
48
+ ) => new Date(b).valueOf() - new Date(a).valueOf();
44
49
 
45
50
  /**
46
51
  * Sorting a collection by the items with most recent activity
47
52
  */
48
53
  export const sortByLastActivity: SortingFunc<{ lastActivity: Date | number | string }> = (
49
- { lastActivity: a }, { lastActivity: b }
50
- ) => new Date(b).valueOf() - new Date(a).valueOf()
54
+ { lastActivity: a },
55
+ { lastActivity: b },
56
+ ) => new Date(b).valueOf() - new Date(a).valueOf();