@amityco/ts-sdk 0.0.1-beta.16 → 0.0.1-beta.17
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.
- package/.eslintrc.json +51 -0
- package/dist/@types/core/cache.d.ts +11 -11
- package/dist/@types/core/cache.d.ts.map +1 -1
- package/dist/@types/core/errors.d.ts +1 -1
- package/dist/@types/core/errors.d.ts.map +1 -1
- package/dist/@types/core/events.d.ts.map +1 -1
- package/dist/@types/core/model.d.ts +29 -27
- package/dist/@types/core/model.d.ts.map +1 -1
- package/dist/@types/core/paging.d.ts +2 -2
- package/dist/@types/core/paging.d.ts.map +1 -1
- package/dist/@types/core/payload.d.ts +1 -0
- package/dist/@types/core/payload.d.ts.map +1 -1
- package/dist/@types/core/permissions.d.ts.map +1 -1
- package/dist/@types/core/query.d.ts +5 -5
- package/dist/@types/core/query.d.ts.map +1 -1
- package/dist/@types/core/transport.d.ts +1 -1
- package/dist/@types/core/transport.d.ts.map +1 -1
- package/dist/@types/domains/category.d.ts.map +1 -1
- package/dist/@types/domains/channel.d.ts +1 -1
- package/dist/@types/domains/channel.d.ts.map +1 -1
- package/dist/@types/domains/client.d.ts.map +1 -1
- package/dist/@types/domains/comment.d.ts +2 -2
- package/dist/@types/domains/comment.d.ts.map +1 -1
- package/dist/@types/domains/community.d.ts.map +1 -1
- package/dist/@types/domains/content.d.ts +4 -4
- package/dist/@types/domains/content.d.ts.map +1 -1
- package/dist/@types/domains/feed.d.ts +1 -1
- package/dist/@types/domains/feed.d.ts.map +1 -1
- package/dist/@types/domains/file.d.ts +5 -5
- package/dist/@types/domains/file.d.ts.map +1 -1
- package/dist/@types/domains/follow.d.ts.map +1 -1
- package/dist/@types/domains/group.d.ts +4 -4
- package/dist/@types/domains/group.d.ts.map +1 -1
- package/dist/@types/domains/mention.d.ts +6 -6
- package/dist/@types/domains/mention.d.ts.map +1 -1
- package/dist/@types/domains/message.d.ts +2 -2
- package/dist/@types/domains/message.d.ts.map +1 -1
- package/dist/@types/domains/partials.d.ts.map +1 -1
- package/dist/@types/domains/post.d.ts +5 -5
- package/dist/@types/domains/post.d.ts.map +1 -1
- package/dist/@types/domains/reaction.d.ts +2 -2
- package/dist/@types/domains/reaction.d.ts.map +1 -1
- package/dist/@types/domains/stream.d.ts +3 -3
- package/dist/@types/domains/stream.d.ts.map +1 -1
- package/dist/@types/domains/user.d.ts +1 -0
- package/dist/@types/domains/user.d.ts.map +1 -1
- package/dist/@types/global.d.ts +2 -2
- package/dist/@types/global.d.ts.map +1 -1
- package/dist/@types/index.d.ts.map +1 -1
- package/dist/cache/api/backupCache.d.ts.map +1 -1
- package/dist/cache/api/disableCache.d.ts.map +1 -1
- package/dist/cache/api/dropFromCache.d.ts.map +1 -1
- package/dist/cache/api/enableCache.d.ts.map +1 -1
- package/dist/cache/api/index.d.ts.map +1 -1
- package/dist/cache/api/ingestInCache.d.ts.map +1 -1
- package/dist/cache/api/mergeInCache.d.ts +1 -1
- package/dist/cache/api/mergeInCache.d.ts.map +1 -1
- package/dist/cache/api/pullFromCache.d.ts.map +1 -1
- package/dist/cache/api/pushToCache.d.ts.map +1 -1
- package/dist/cache/api/queryCache.d.ts.map +1 -1
- package/dist/cache/api/restoreCache.d.ts.map +1 -1
- package/dist/cache/api/snipeIdFromCollection.d.ts.map +1 -1
- package/dist/cache/api/upsertInCache.d.ts +1 -1
- package/dist/cache/api/upsertInCache.d.ts.map +1 -1
- package/dist/cache/api/wipeCache.d.ts.map +1 -1
- package/dist/cache/utils/index.d.ts.map +1 -1
- package/dist/category/api/getCategory.d.ts +18 -2
- package/dist/category/api/getCategory.d.ts.map +1 -1
- package/dist/category/api/index.d.ts.map +1 -1
- package/dist/category/api/queryCategories.d.ts +24 -12
- package/dist/category/api/queryCategories.d.ts.map +1 -1
- package/dist/channel/api/addChannelMembers.d.ts.map +1 -1
- package/dist/channel/api/addChannelMembersRole.d.ts.map +1 -1
- package/dist/channel/api/createChannel.d.ts.map +1 -1
- package/dist/channel/api/deleteChannel.d.ts.map +1 -1
- package/dist/channel/api/getChannel.d.ts.map +1 -1
- package/dist/channel/api/getChannels.d.ts.map +1 -1
- package/dist/channel/api/index.d.ts.map +1 -1
- package/dist/channel/api/joinChannel.d.ts.map +1 -1
- package/dist/channel/api/leaveChannel.d.ts.map +1 -1
- package/dist/channel/api/queryChannelMembers.d.ts +2 -2
- package/dist/channel/api/queryChannelMembers.d.ts.map +1 -1
- package/dist/channel/api/queryChannels.d.ts.map +1 -1
- package/dist/channel/api/removeChannelMembers.d.ts.map +1 -1
- package/dist/channel/api/removeChannelMembersRole.d.ts.map +1 -1
- package/dist/channel/api/updateChannel.d.ts.map +1 -1
- package/dist/channel/events/index.d.ts.map +1 -1
- package/dist/channel/events/onChannelCreated.d.ts.map +1 -1
- package/dist/channel/events/onChannelDeleted.d.ts.map +1 -1
- package/dist/channel/events/onChannelJoined.d.ts.map +1 -1
- package/dist/channel/events/onChannelLeft.d.ts.map +1 -1
- package/dist/channel/events/onChannelUpdated.d.ts.map +1 -1
- package/dist/channel/events/onMemberAdded.d.ts.map +1 -1
- package/dist/channel/events/onMemberRemoved.d.ts.map +1 -1
- package/dist/channel/observers/index.d.ts.map +1 -1
- package/dist/channel/observers/observeChannel.d.ts.map +1 -1
- package/dist/client/api/activeClient.d.ts.map +1 -1
- package/dist/client/api/activeUser.d.ts.map +1 -1
- package/dist/client/api/connectClient.d.ts.map +1 -1
- package/dist/client/api/createClient.d.ts +1 -1
- package/dist/client/api/createClient.d.ts.map +1 -1
- package/dist/client/api/disconnectClient.d.ts.map +1 -1
- package/dist/client/api/getToken.d.ts.map +1 -1
- package/dist/client/api/index.d.ts.map +1 -1
- package/dist/client/api/isConnected.d.ts.map +1 -1
- package/dist/client/events/index.d.ts.map +1 -1
- package/dist/client/events/onClientBanned.d.ts.map +1 -1
- package/dist/client/events/onClientDisconnected.d.ts.map +1 -1
- package/dist/client/events/onConnectionError.d.ts.map +1 -1
- package/dist/client/utils/endpoints.d.ts.map +1 -1
- package/dist/comment/api/createComment.d.ts.map +1 -1
- package/dist/comment/api/deleteComment.d.ts.map +1 -1
- package/dist/comment/api/getComment.d.ts.map +1 -1
- package/dist/comment/api/getComments.d.ts.map +1 -1
- package/dist/comment/api/index.d.ts.map +1 -1
- package/dist/comment/api/queryComments.d.ts.map +1 -1
- package/dist/comment/api/updateComment.d.ts.map +1 -1
- package/dist/comment/events/index.d.ts.map +1 -1
- package/dist/comment/events/onCommentCreated.d.ts.map +1 -1
- package/dist/comment/events/onCommentDeleted.d.ts.map +1 -1
- package/dist/comment/events/onCommentFlagged.d.ts.map +1 -1
- package/dist/comment/events/onCommentReactionAdded.d.ts.map +1 -1
- package/dist/comment/events/onCommentReactionRemoved.d.ts.map +1 -1
- package/dist/comment/events/onCommentUnflagged.d.ts.map +1 -1
- package/dist/comment/events/onCommentUpdated.d.ts.map +1 -1
- package/dist/comment/events/utils.d.ts.map +1 -1
- package/dist/comment/observers/index.d.ts.map +1 -1
- package/dist/comment/observers/observeComment.d.ts.map +1 -1
- package/dist/comment/observers/observeComments.d.ts.map +1 -1
- package/dist/community/api/addCommunityMembers.d.ts.map +1 -1
- package/dist/community/api/addCommunityMembersRoles.d.ts +18 -0
- package/dist/community/api/addCommunityMembersRoles.d.ts.map +1 -0
- package/dist/community/api/createCommunity.d.ts.map +1 -1
- package/dist/community/api/deleteCommunity.d.ts.map +1 -1
- package/dist/community/api/getCommunities.d.ts.map +1 -1
- package/dist/community/api/getCommunity.d.ts.map +1 -1
- package/dist/community/api/getRecommendedCommunities.d.ts.map +1 -1
- package/dist/community/api/getTopTrendingCommunities.d.ts.map +1 -1
- package/dist/community/api/index.d.ts +2 -2
- package/dist/community/api/index.d.ts.map +1 -1
- package/dist/community/api/joinCommunity.d.ts.map +1 -1
- package/dist/community/api/leaveCommunity.d.ts.map +1 -1
- package/dist/community/api/queryCommunities.d.ts.map +1 -1
- package/dist/community/api/queryCommunityMembers.d.ts +2 -2
- package/dist/community/api/queryCommunityMembers.d.ts.map +1 -1
- package/dist/community/api/removeCommunityMembers.d.ts.map +1 -1
- package/dist/community/api/removeCommunityMembersRoles.d.ts +18 -0
- package/dist/community/api/removeCommunityMembersRoles.d.ts.map +1 -0
- package/dist/community/api/updateCommunity.d.ts.map +1 -1
- package/dist/community/events/index.d.ts.map +1 -1
- package/dist/community/events/onCommunityCreated.d.ts.map +1 -1
- package/dist/community/events/onCommunityDeleted.d.ts.map +1 -1
- package/dist/community/events/onCommunityJoined.d.ts.map +1 -1
- package/dist/community/events/onCommunityLeft.d.ts.map +1 -1
- package/dist/community/events/onCommunityUpdated.d.ts.map +1 -1
- package/dist/community/events/onCommunityUserAdded.d.ts.map +1 -1
- package/dist/community/events/onCommunityUserBanned.d.ts.map +1 -1
- package/dist/community/events/onCommunityUserRemoved.d.ts.map +1 -1
- package/dist/community/events/onCommunityUserUnbanned.d.ts.map +1 -1
- package/dist/community/events/utils.d.ts.map +1 -1
- package/dist/community/observers/index.d.ts.map +1 -1
- package/dist/community/observers/observeCommunity.d.ts.map +1 -1
- package/dist/core/debug.d.ts.map +1 -1
- package/dist/core/device.d.ts.map +1 -1
- package/dist/core/errors.d.ts.map +1 -1
- package/dist/core/events.d.ts +1 -1
- package/dist/core/events.d.ts.map +1 -1
- package/dist/core/microtasks.d.ts.map +1 -1
- package/dist/core/model/idResolvers.d.ts.map +1 -1
- package/dist/core/model/identifyModel.d.ts.map +1 -1
- package/dist/core/model/index.d.ts.map +1 -1
- package/dist/core/query/filtering.d.ts +1 -1
- package/dist/core/query/filtering.d.ts.map +1 -1
- package/dist/core/query/index.d.ts.map +1 -1
- package/dist/core/query/paging.d.ts +3 -3
- package/dist/core/query/paging.d.ts.map +1 -1
- package/dist/core/query/query.d.ts.map +1 -1
- package/dist/core/query/sorting.d.ts +1 -1
- package/dist/core/query/sorting.d.ts.map +1 -1
- package/dist/core/subscription.d.ts.map +1 -1
- package/dist/core/transports/http.d.ts.map +1 -1
- package/dist/core/transports/mqtt.d.ts.map +1 -1
- package/dist/core/transports/utils.d.ts.map +1 -1
- package/dist/core/transports/ws.d.ts +1 -1
- package/dist/core/transports/ws.d.ts.map +1 -1
- package/dist/core/uuid.d.ts.map +1 -1
- package/dist/feed/api/index.d.ts.map +1 -1
- package/dist/feed/api/queryGlobalFeed.d.ts +2 -2
- package/dist/feed/api/queryGlobalFeed.d.ts.map +1 -1
- package/dist/file/api/createFile.d.ts +1 -0
- package/dist/file/api/createFile.d.ts.map +1 -1
- package/dist/file/api/createVideo.d.ts +17 -0
- package/dist/file/api/createVideo.d.ts.map +1 -0
- package/dist/file/api/deleteFile.d.ts.map +1 -1
- package/dist/file/api/fileUrlWithSize.d.ts.map +1 -1
- package/dist/file/api/getFile.d.ts +1 -1
- package/dist/file/api/getFile.d.ts.map +1 -1
- package/dist/file/api/index.d.ts +1 -0
- package/dist/file/api/index.d.ts.map +1 -1
- package/dist/file/observers/index.d.ts.map +1 -1
- package/dist/file/observers/observeFile.d.ts.map +1 -1
- package/dist/follow/api/acceptFollower.d.ts.map +1 -1
- package/dist/follow/api/declineFollower.d.ts.map +1 -1
- package/dist/follow/api/follow.d.ts.map +1 -1
- package/dist/follow/api/getFollowInfo.d.ts.map +1 -1
- package/dist/follow/api/index.d.ts.map +1 -1
- package/dist/follow/api/queryFollowers.d.ts.map +1 -1
- package/dist/follow/api/queryFollowings.d.ts.map +1 -1
- package/dist/follow/api/unfollow.d.ts.map +1 -1
- package/dist/follow/api/utils.d.ts.map +1 -1
- package/dist/follow/events/index.d.ts.map +1 -1
- package/dist/follow/events/onFollowInfoUpdated.d.ts.map +1 -1
- package/dist/follow/events/onFollowRequestAccepted.d.ts.map +1 -1
- package/dist/follow/events/onFollowRequestCanceled.d.ts.map +1 -1
- package/dist/follow/events/onFollowRequestDeclined.d.ts.map +1 -1
- package/dist/follow/events/onFollowerDeleted.d.ts.map +1 -1
- package/dist/follow/events/onFollowerRequested.d.ts.map +1 -1
- package/dist/follow/events/onUserFollowed.d.ts.map +1 -1
- package/dist/follow/events/onUserUnfollowed.d.ts.map +1 -1
- package/dist/follow/events/utils.d.ts.map +1 -1
- package/dist/follow/observers/index.d.ts.map +1 -1
- package/dist/follow/observers/observeFollowInfo.d.ts.map +1 -1
- package/dist/follow/observers/observeFollowers.d.ts.map +1 -1
- package/dist/follow/observers/observeFollowings.d.ts.map +1 -1
- package/dist/index.cjs.js +487 -213
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.esm.js +483 -212
- package/dist/index.umd.js +5 -5
- package/dist/message/api/createMessage.d.ts +2 -2
- package/dist/message/api/createMessage.d.ts.map +1 -1
- package/dist/message/api/deleteMessage.d.ts.map +1 -1
- package/dist/message/api/getMessage.d.ts.map +1 -1
- package/dist/message/api/getMessages.d.ts.map +1 -1
- package/dist/message/api/index.d.ts.map +1 -1
- package/dist/message/api/queryMessages.d.ts.map +1 -1
- package/dist/message/api/updateMessage.d.ts.map +1 -1
- package/dist/message/events/index.d.ts.map +1 -1
- package/dist/message/events/onMessageCreated.d.ts.map +1 -1
- package/dist/message/events/onMessageDeleted.d.ts.map +1 -1
- package/dist/message/events/onMessageUpdated.d.ts.map +1 -1
- package/dist/message/observers/index.d.ts.map +1 -1
- package/dist/message/observers/observeMessage.d.ts.map +1 -1
- package/dist/message/observers/observeMessages.d.ts +5 -1
- package/dist/message/observers/observeMessages.d.ts.map +1 -1
- package/dist/post/api/createPost.d.ts +1 -1
- package/dist/post/api/createPost.d.ts.map +1 -1
- package/dist/post/api/deletePost.d.ts.map +1 -1
- package/dist/post/api/getPost.d.ts +1 -1
- package/dist/post/api/getPost.d.ts.map +1 -1
- package/dist/post/api/getPosts.d.ts.map +1 -1
- package/dist/post/api/index.d.ts.map +1 -1
- package/dist/post/api/queryPosts.d.ts.map +1 -1
- package/dist/post/api/updatePost.d.ts +1 -1
- package/dist/post/api/updatePost.d.ts.map +1 -1
- package/dist/post/events/index.d.ts.map +1 -1
- package/dist/post/events/onPostApproved.d.ts.map +1 -1
- package/dist/post/events/onPostCreated.d.ts.map +1 -1
- package/dist/post/events/onPostDeclined.d.ts.map +1 -1
- package/dist/post/events/onPostDeleted.d.ts.map +1 -1
- package/dist/post/events/onPostFlagged.d.ts.map +1 -1
- package/dist/post/events/onPostReactionAdded.d.ts.map +1 -1
- package/dist/post/events/onPostReactionRemoved.d.ts.map +1 -1
- package/dist/post/events/onPostUnflagged.d.ts.map +1 -1
- package/dist/post/events/onPostUpdated.d.ts.map +1 -1
- package/dist/post/events/utils.d.ts.map +1 -1
- package/dist/post/observers/index.d.ts.map +1 -1
- package/dist/post/observers/observePost.d.ts.map +1 -1
- package/dist/post/observers/observePosts.d.ts +11 -1
- package/dist/post/observers/observePosts.d.ts.map +1 -1
- package/dist/reaction/api/addReaction.d.ts +2 -2
- package/dist/reaction/api/addReaction.d.ts.map +1 -1
- package/dist/reaction/api/index.d.ts.map +1 -1
- package/dist/reaction/api/removeReaction.d.ts +2 -2
- package/dist/reaction/api/removeReaction.d.ts.map +1 -1
- package/dist/reaction/events/index.d.ts.map +1 -1
- package/dist/reaction/events/onReactionAdded.d.ts +1 -1
- package/dist/reaction/events/onReactionAdded.d.ts.map +1 -1
- package/dist/reaction/events/onReactionRemoved.d.ts +1 -1
- package/dist/reaction/events/onReactionRemoved.d.ts.map +1 -1
- package/dist/reaction/utils/dispatchReactable.d.ts.map +1 -1
- package/dist/reaction/utils/fetchReference.d.ts.map +1 -1
- package/dist/reaction/utils/index.d.ts.map +1 -1
- package/dist/reaction/utils/preparePayloadForCache.d.ts.map +1 -1
- package/dist/report/api/createReport.d.ts +1 -1
- package/dist/report/api/createReport.d.ts.map +1 -1
- package/dist/report/api/deleteReport.d.ts +1 -1
- package/dist/report/api/deleteReport.d.ts.map +1 -1
- package/dist/report/api/index.d.ts.map +1 -1
- package/dist/report/api/isReportedByMe.d.ts +1 -1
- package/dist/report/api/isReportedByMe.d.ts.map +1 -1
- package/dist/report/constants/referenceTypes.d.ts.map +1 -1
- package/dist/role/api/getRole.d.ts.map +1 -1
- package/dist/role/api/index.d.ts.map +1 -1
- package/dist/role/api/queryRoles.d.ts.map +1 -1
- package/dist/stream/api/createStream.d.ts.map +1 -1
- package/dist/stream/api/deleteStream.d.ts.map +1 -1
- package/dist/stream/api/disposeStream.d.ts.map +1 -1
- package/dist/stream/api/getStream.d.ts.map +1 -1
- package/dist/stream/api/index.d.ts.map +1 -1
- package/dist/stream/api/queryStreams.d.ts.map +1 -1
- package/dist/stream/api/updateStream.d.ts.map +1 -1
- package/dist/stream/events/index.d.ts.map +1 -1
- package/dist/stream/events/onStreamRecorded.d.ts.map +1 -1
- package/dist/stream/events/onStreamStarted.d.ts.map +1 -1
- package/dist/stream/events/onStreamStopped.d.ts.map +1 -1
- package/dist/user/api/getUser.d.ts.map +1 -1
- package/dist/user/api/getUsers.d.ts.map +1 -1
- package/dist/user/api/index.d.ts.map +1 -1
- package/dist/user/api/queryUsers.d.ts.map +1 -1
- package/dist/user/api/updateUser.d.ts +1 -1
- package/dist/user/api/updateUser.d.ts.map +1 -1
- package/dist/user/events/index.d.ts.map +1 -1
- package/dist/user/events/onUserFlagCleared.d.ts.map +1 -1
- package/dist/user/events/onUserFlagged.d.ts.map +1 -1
- package/dist/user/events/onUserUnflagged.d.ts.map +1 -1
- package/dist/user/events/onUserUpdated.d.ts.map +1 -1
- package/dist/user/events/utils.d.ts.map +1 -1
- package/dist/user/observers/index.d.ts.map +1 -1
- package/dist/user/observers/observeUser.d.ts.map +1 -1
- package/dist/utils/env.d.ts +1 -1
- package/dist/utils/env.d.ts.map +1 -1
- package/dist/version.d.ts.map +1 -1
- package/package.json +1 -1
- package/rollup.config.js +11 -11
- package/src/@types/core/cache.ts +29 -28
- package/src/@types/core/errors.ts +3 -3
- package/src/@types/core/events.ts +95 -92
- package/src/@types/core/model.ts +37 -38
- package/src/@types/core/paging.ts +27 -27
- package/src/@types/core/payload.ts +79 -79
- package/src/@types/core/permissions.ts +6 -7
- package/src/@types/core/query.ts +38 -37
- package/src/@types/core/transport.ts +37 -28
- package/src/@types/domains/category.ts +7 -8
- package/src/@types/domains/channel.ts +29 -30
- package/src/@types/domains/client.ts +24 -24
- package/src/@types/domains/comment.ts +19 -20
- package/src/@types/domains/community.ts +22 -23
- package/src/@types/domains/content.ts +26 -22
- package/src/@types/domains/feed.ts +8 -9
- package/src/@types/domains/file.ts +28 -28
- package/src/@types/domains/follow.ts +13 -15
- package/src/@types/domains/group.ts +24 -26
- package/src/@types/domains/mention.ts +13 -12
- package/src/@types/domains/message.ts +15 -16
- package/src/@types/domains/partials.ts +29 -29
- package/src/@types/domains/post.ts +24 -24
- package/src/@types/domains/reaction.ts +17 -18
- package/src/@types/domains/stream.ts +37 -38
- package/src/@types/domains/user.ts +13 -13
- package/src/@types/global.ts +20 -17
- package/src/@types/index.ts +24 -24
- package/src/cache/api/backupCache.ts +14 -18
- package/src/cache/api/disableCache.ts +6 -6
- package/src/cache/api/dropFromCache.ts +13 -16
- package/src/cache/api/enableCache.ts +6 -6
- package/src/cache/api/index.ts +11 -11
- package/src/cache/api/ingestInCache.ts +15 -16
- package/src/cache/api/mergeInCache.ts +10 -12
- package/src/cache/api/pullFromCache.ts +9 -11
- package/src/cache/api/pushToCache.ts +14 -12
- package/src/cache/api/queryCache.ts +11 -12
- package/src/cache/api/restoreCache.ts +16 -15
- package/src/cache/api/snipeIdFromCollection.ts +19 -24
- package/src/cache/api/upsertInCache.ts +11 -13
- package/src/cache/api/wipeCache.ts +10 -12
- package/src/cache/utils/index.ts +15 -25
- package/src/category/api/getCategory.ts +50 -14
- package/src/category/api/index.ts +2 -2
- package/src/category/api/queryCategories.ts +88 -27
- package/src/channel/api/addChannelMembers.ts +14 -15
- package/src/channel/api/addChannelMembersRole.ts +12 -13
- package/src/channel/api/createChannel.ts +18 -13
- package/src/channel/api/deleteChannel.ts +9 -9
- package/src/channel/api/getChannel.ts +18 -19
- package/src/channel/api/getChannels.ts +22 -24
- package/src/channel/api/index.ts +13 -13
- package/src/channel/api/joinChannel.ts +12 -15
- package/src/channel/api/leaveChannel.ts +12 -15
- package/src/channel/api/queryChannelMembers.ts +35 -36
- package/src/channel/api/queryChannels.ts +44 -47
- package/src/channel/api/removeChannelMembers.ts +14 -15
- package/src/channel/api/removeChannelMembersRole.ts +12 -13
- package/src/channel/api/updateChannel.ts +12 -11
- package/src/channel/events/index.ts +6 -6
- package/src/channel/events/onChannelCreated.ts +9 -14
- package/src/channel/events/onChannelDeleted.ts +9 -14
- package/src/channel/events/onChannelJoined.ts +9 -14
- package/src/channel/events/onChannelLeft.ts +9 -14
- package/src/channel/events/onChannelUpdated.ts +9 -14
- package/src/channel/events/onMemberAdded.ts +9 -14
- package/src/channel/events/onMemberRemoved.ts +9 -14
- package/src/channel/observers/index.ts +1 -1
- package/src/channel/observers/observeChannel.ts +24 -30
- package/src/client/api/activeClient.ts +7 -7
- package/src/client/api/activeUser.ts +7 -7
- package/src/client/api/connectClient.ts +32 -30
- package/src/client/api/createClient.ts +22 -18
- package/src/client/api/disconnectClient.ts +14 -14
- package/src/client/api/getToken.ts +22 -17
- package/src/client/api/index.ts +5 -5
- package/src/client/api/isConnected.ts +8 -8
- package/src/client/events/index.ts +3 -3
- package/src/client/events/onClientBanned.ts +5 -7
- package/src/client/events/onClientDisconnected.ts +5 -7
- package/src/client/events/onConnectionError.ts +17 -24
- package/src/client/utils/endpoints.ts +3 -3
- package/src/comment/api/createComment.ts +19 -18
- package/src/comment/api/deleteComment.ts +21 -22
- package/src/comment/api/getComment.ts +22 -23
- package/src/comment/api/getComments.ts +24 -26
- package/src/comment/api/index.ts +6 -6
- package/src/comment/api/queryComments.ts +53 -50
- package/src/comment/api/updateComment.ts +14 -13
- package/src/comment/events/index.ts +7 -7
- package/src/comment/events/onCommentCreated.ts +3 -5
- package/src/comment/events/onCommentDeleted.ts +3 -5
- package/src/comment/events/onCommentFlagged.ts +3 -5
- package/src/comment/events/onCommentReactionAdded.ts +20 -20
- package/src/comment/events/onCommentReactionRemoved.ts +20 -20
- package/src/comment/events/onCommentUnflagged.ts +3 -5
- package/src/comment/events/onCommentUpdated.ts +3 -5
- package/src/comment/events/utils.ts +19 -20
- package/src/comment/observers/index.ts +2 -2
- package/src/comment/observers/observeComment.ts +48 -37
- package/src/comment/observers/observeComments.ts +34 -19
- package/src/community/api/addCommunityMembers.ts +14 -15
- package/src/community/api/addCommunityMembersRoles.ts +42 -0
- package/src/community/api/createCommunity.ts +26 -19
- package/src/community/api/deleteCommunity.ts +10 -12
- package/src/community/api/getCommunities.ts +24 -26
- package/src/community/api/getCommunity.ts +20 -21
- package/src/community/api/getRecommendedCommunities.ts +29 -28
- package/src/community/api/getTopTrendingCommunities.ts +29 -28
- package/src/community/api/index.ts +15 -16
- package/src/community/api/joinCommunity.ts +16 -16
- package/src/community/api/leaveCommunity.ts +16 -16
- package/src/community/api/queryCommunities.ts +48 -50
- package/src/community/api/queryCommunityMembers.ts +34 -35
- package/src/community/api/removeCommunityMembers.ts +14 -15
- package/src/community/api/removeCommunityMembersRoles.ts +42 -0
- package/src/community/api/updateCommunity.ts +18 -14
- package/src/community/events/index.ts +9 -9
- package/src/community/events/onCommunityCreated.ts +2 -2
- package/src/community/events/onCommunityDeleted.ts +2 -2
- package/src/community/events/onCommunityJoined.ts +4 -3
- package/src/community/events/onCommunityLeft.ts +4 -3
- package/src/community/events/onCommunityUpdated.ts +2 -2
- package/src/community/events/onCommunityUserAdded.ts +4 -3
- package/src/community/events/onCommunityUserBanned.ts +4 -3
- package/src/community/events/onCommunityUserRemoved.ts +4 -3
- package/src/community/events/onCommunityUserUnbanned.ts +4 -3
- package/src/community/events/utils.ts +46 -44
- package/src/community/observers/index.ts +1 -1
- package/src/community/observers/observeCommunity.ts +57 -39
- package/src/core/debug.ts +10 -12
- package/src/core/device.ts +11 -12
- package/src/core/errors.ts +16 -19
- package/src/core/events.ts +47 -47
- package/src/core/microtasks.ts +12 -11
- package/src/core/model/idResolvers.ts +6 -7
- package/src/core/model/identifyModel.ts +14 -12
- package/src/core/model/index.ts +6 -5
- package/src/core/query/filtering.ts +5 -3
- package/src/core/query/index.ts +4 -4
- package/src/core/query/paging.ts +44 -49
- package/src/core/query/query.ts +58 -64
- package/src/core/query/sorting.ts +21 -15
- package/src/core/subscription.ts +24 -20
- package/src/core/transports/http.ts +27 -25
- package/src/core/transports/mqtt.ts +70 -51
- package/src/core/transports/utils.ts +8 -7
- package/src/core/transports/ws.ts +16 -17
- package/src/core/uuid.ts +3 -2
- package/src/feed/api/index.ts +1 -1
- package/src/feed/api/queryGlobalFeed.ts +53 -43
- package/src/file/api/createFile.ts +20 -19
- package/src/file/api/createVideo.ts +58 -0
- package/src/file/api/deleteFile.ts +9 -11
- package/src/file/api/fileUrlWithSize.ts +2 -2
- package/src/file/api/getFile.ts +19 -24
- package/src/file/api/index.ts +5 -4
- package/src/file/observers/index.ts +1 -1
- package/src/file/observers/observeFile.ts +17 -23
- package/src/follow/api/acceptFollower.ts +12 -10
- package/src/follow/api/declineFollower.ts +12 -10
- package/src/follow/api/follow.ts +16 -12
- package/src/follow/api/getFollowInfo.ts +28 -20
- package/src/follow/api/index.ts +7 -7
- package/src/follow/api/queryFollowers.ts +7 -10
- package/src/follow/api/queryFollowings.ts +7 -10
- package/src/follow/api/unfollow.ts +12 -10
- package/src/follow/api/utils.ts +40 -35
- package/src/follow/events/index.ts +8 -8
- package/src/follow/events/onFollowInfoUpdated.ts +15 -13
- package/src/follow/events/onFollowRequestAccepted.ts +4 -3
- package/src/follow/events/onFollowRequestCanceled.ts +4 -3
- package/src/follow/events/onFollowRequestDeclined.ts +4 -3
- package/src/follow/events/onFollowerDeleted.ts +4 -3
- package/src/follow/events/onFollowerRequested.ts +4 -3
- package/src/follow/events/onUserFollowed.ts +2 -2
- package/src/follow/events/onUserUnfollowed.ts +4 -3
- package/src/follow/events/utils.ts +15 -20
- package/src/follow/observers/index.ts +3 -3
- package/src/follow/observers/observeFollowInfo.ts +27 -31
- package/src/follow/observers/observeFollowers.ts +29 -30
- package/src/follow/observers/observeFollowings.ts +29 -30
- package/src/index.ts +40 -38
- package/src/message/api/createMessage.ts +31 -29
- package/src/message/api/deleteMessage.ts +22 -22
- package/src/message/api/getMessage.ts +18 -19
- package/src/message/api/getMessages.ts +22 -24
- package/src/message/api/index.ts +6 -6
- package/src/message/api/queryMessages.ts +55 -47
- package/src/message/api/updateMessage.ts +26 -25
- package/src/message/events/index.ts +3 -3
- package/src/message/events/onMessageCreated.ts +10 -17
- package/src/message/events/onMessageDeleted.ts +10 -17
- package/src/message/events/onMessageUpdated.ts +10 -17
- package/src/message/observers/index.ts +2 -2
- package/src/message/observers/observeMessage.ts +23 -29
- package/src/message/observers/observeMessages.ts +20 -22
- package/src/post/api/createPost.ts +20 -20
- package/src/post/api/deletePost.ts +22 -25
- package/src/post/api/getPost.ts +23 -28
- package/src/post/api/getPosts.ts +24 -28
- package/src/post/api/index.ts +6 -6
- package/src/post/api/queryPosts.ts +48 -50
- package/src/post/api/updatePost.ts +15 -15
- package/src/post/events/index.ts +9 -9
- package/src/post/events/onPostApproved.ts +2 -2
- package/src/post/events/onPostCreated.ts +2 -2
- package/src/post/events/onPostDeclined.ts +2 -2
- package/src/post/events/onPostDeleted.ts +2 -2
- package/src/post/events/onPostFlagged.ts +2 -2
- package/src/post/events/onPostReactionAdded.ts +15 -19
- package/src/post/events/onPostReactionRemoved.ts +15 -19
- package/src/post/events/onPostUnflagged.ts +2 -2
- package/src/post/events/onPostUpdated.ts +2 -2
- package/src/post/events/utils.ts +19 -24
- package/src/post/observers/index.ts +2 -2
- package/src/post/observers/observePost.ts +46 -34
- package/src/post/observers/observePosts.ts +47 -24
- package/src/reaction/api/addReaction.ts +32 -27
- package/src/reaction/api/index.ts +2 -2
- package/src/reaction/api/removeReaction.ts +30 -27
- package/src/reaction/events/index.ts +1 -1
- package/src/reaction/events/onReactionAdded.ts +26 -22
- package/src/reaction/events/onReactionRemoved.ts +26 -22
- package/src/reaction/utils/dispatchReactable.ts +5 -7
- package/src/reaction/utils/fetchReference.ts +8 -11
- package/src/reaction/utils/index.ts +3 -3
- package/src/reaction/utils/preparePayloadForCache.ts +27 -19
- package/src/report/api/createReport.ts +20 -19
- package/src/report/api/deleteReport.ts +20 -19
- package/src/report/api/index.ts +3 -3
- package/src/report/api/isReportedByMe.ts +13 -13
- package/src/report/constants/referenceTypes.ts +1 -1
- package/src/role/api/getRole.ts +19 -26
- package/src/role/api/index.ts +2 -2
- package/src/role/api/queryRoles.ts +29 -32
- package/src/stream/api/createStream.ts +11 -13
- package/src/stream/api/deleteStream.ts +14 -16
- package/src/stream/api/disposeStream.ts +11 -11
- package/src/stream/api/getStream.ts +21 -21
- package/src/stream/api/index.ts +6 -6
- package/src/stream/api/queryStreams.ts +36 -37
- package/src/stream/api/updateStream.ts +12 -12
- package/src/stream/events/index.ts +3 -3
- package/src/stream/events/onStreamRecorded.ts +10 -12
- package/src/stream/events/onStreamStarted.ts +10 -12
- package/src/stream/events/onStreamStopped.ts +10 -17
- package/src/user/api/getUser.ts +18 -22
- package/src/user/api/getUsers.ts +23 -27
- package/src/user/api/index.ts +4 -4
- package/src/user/api/queryUsers.ts +42 -46
- package/src/user/api/updateUser.ts +18 -13
- package/src/user/events/index.ts +4 -4
- package/src/user/events/onUserFlagCleared.ts +2 -2
- package/src/user/events/onUserFlagged.ts +2 -2
- package/src/user/events/onUserUnflagged.ts +2 -2
- package/src/user/events/onUserUpdated.ts +2 -2
- package/src/user/events/utils.ts +10 -15
- package/src/user/observers/index.ts +1 -1
- package/src/user/observers/observeUser.ts +25 -34
- package/src/utils/env.ts +6 -3
- package/src/version.ts +2 -2
- package/dist/community/api/addCommunityMembersRole.d.ts +0 -18
- package/dist/community/api/addCommunityMembersRole.d.ts.map +0 -1
- package/dist/community/api/removeCommunityMembersRole.d.ts +0 -18
- package/dist/community/api/removeCommunityMembersRole.d.ts.map +0 -1
- package/src/community/api/addCommunityMembersRole.ts +0 -41
- package/src/community/api/removeCommunityMembersRole.ts +0 -41
package/src/core/query/query.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
|
|
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
|
|
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,
|
|
112
|
+
policy: Amity.QueryPolicy,
|
|
113
|
+
lifeSpan: number = 2 * 60 * 1000, // 2mn
|
|
118
114
|
): Amity.QueryOptions => {
|
|
119
|
-
if (policy === 'cache_only')
|
|
120
|
-
|
|
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
|
-
|
|
144
|
-
|
|
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
|
-
|
|
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?.(
|
|
197
|
-
|
|
198
|
-
|
|
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?.(
|
|
205
|
-
|
|
206
|
-
|
|
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
|
-
//
|
|
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 =
|
|
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 },
|
|
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 },
|
|
22
|
-
|
|
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 },
|
|
29
|
-
|
|
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 },
|
|
36
|
-
|
|
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 },
|
|
43
|
-
|
|
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 },
|
|
50
|
-
|
|
54
|
+
{ lastActivity: a },
|
|
55
|
+
{ lastActivity: b },
|
|
56
|
+
) => new Date(b).valueOf() - new Date(a).valueOf();
|
package/src/core/subscription.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { getActiveClient } from '~/client/api'
|
|
2
|
-
import { ASCError } from '~/core/errors'
|
|
3
|
-
import { proxyMqttEvents } from '~/core/events'
|
|
4
|
-
import { getActiveUser } from '~/client/api/activeUser'
|
|
1
|
+
import { getActiveClient } from '~/client/api';
|
|
2
|
+
import { ASCError } from '~/core/errors';
|
|
3
|
+
import { proxyMqttEvents } from '~/core/events';
|
|
4
|
+
import { getActiveUser } from '~/client/api/activeUser';
|
|
5
5
|
|
|
6
6
|
export enum SubscriptionLevels {
|
|
7
7
|
COMMUNITY = 'community',
|
|
@@ -12,7 +12,7 @@ export enum SubscriptionLevels {
|
|
|
12
12
|
}
|
|
13
13
|
|
|
14
14
|
const getCommunityUserTopic = (
|
|
15
|
-
|
|
15
|
+
path: Amity.Subscribable['path'],
|
|
16
16
|
level?: SubscriptionLevels,
|
|
17
17
|
): string => {
|
|
18
18
|
switch (level) {
|
|
@@ -30,18 +30,22 @@ const getCommunityUserTopic = (
|
|
|
30
30
|
export const getCommunityTopic = (
|
|
31
31
|
{ path }: Amity.Subscribable,
|
|
32
32
|
level: Exclude<SubscriptionLevels, SubscriptionLevels.USER> = SubscriptionLevels.COMMUNITY,
|
|
33
|
-
): string =>
|
|
34
|
-
getCommunityUserTopic({ path }, level)
|
|
33
|
+
): string => getCommunityUserTopic(path, level);
|
|
35
34
|
|
|
36
35
|
export const getUserTopic = (
|
|
37
36
|
{ path }: Amity.Subscribable,
|
|
38
37
|
level: Exclude<SubscriptionLevels, SubscriptionLevels.COMMUNITY> = SubscriptionLevels.USER,
|
|
39
38
|
): string =>
|
|
40
|
-
getCommunityUserTopic(
|
|
39
|
+
getCommunityUserTopic(
|
|
40
|
+
level === SubscriptionLevels.USER
|
|
41
|
+
? path
|
|
42
|
+
: path.replace(/^(?<networkId>\w*)/, '$<networkId>/social'),
|
|
43
|
+
level,
|
|
44
|
+
);
|
|
41
45
|
|
|
42
46
|
export const getPostTopic = (
|
|
43
47
|
{ path }: Amity.Subscribable,
|
|
44
|
-
level: SubscriptionLevels.POST | SubscriptionLevels.COMMENT = SubscriptionLevels.POST
|
|
48
|
+
level: SubscriptionLevels.POST | SubscriptionLevels.COMMENT = SubscriptionLevels.POST,
|
|
45
49
|
): string => {
|
|
46
50
|
switch (level) {
|
|
47
51
|
case 'comment':
|
|
@@ -56,38 +60,38 @@ export const getCommentTopic = ({ path }: Amity.Subscribable): string => {
|
|
|
56
60
|
};
|
|
57
61
|
|
|
58
62
|
export const getMyFollowersTopic = (): string => {
|
|
59
|
-
const user = getActiveUser()
|
|
63
|
+
const user = getActiveUser();
|
|
60
64
|
|
|
61
65
|
const [networkId] = user.path.split('/user/');
|
|
62
66
|
|
|
63
67
|
return `${networkId}/membership/${user._id}/+/+`;
|
|
64
|
-
}
|
|
68
|
+
};
|
|
65
69
|
|
|
66
70
|
export const getMyFollowingsTopic = (): string => {
|
|
67
|
-
const user = getActiveUser()
|
|
71
|
+
const user = getActiveUser();
|
|
68
72
|
|
|
69
73
|
const [networkId] = user.path.split('/user/');
|
|
70
74
|
|
|
71
75
|
return `${networkId}/membership/+/${user._id}/+`;
|
|
72
|
-
}
|
|
76
|
+
};
|
|
73
77
|
|
|
74
78
|
let mqttAccessToken: string;
|
|
75
79
|
let mqttUserId: string;
|
|
76
80
|
|
|
77
81
|
export function subscribeTopic(
|
|
78
82
|
topic: string,
|
|
79
|
-
callback?: Amity.Listener<ASCError | void
|
|
83
|
+
callback?: Amity.Listener<ASCError | void>,
|
|
80
84
|
): Amity.Unsubscriber {
|
|
81
|
-
const { mqtt, emitter, accessToken } = getActiveClient()
|
|
85
|
+
const { mqtt, emitter, accessToken } = getActiveClient();
|
|
82
86
|
const user = getActiveUser();
|
|
83
87
|
|
|
84
88
|
if (mqttAccessToken !== accessToken || mqttUserId !== user._id) {
|
|
85
|
-
mqttAccessToken = accessToken
|
|
86
|
-
mqttUserId = user._id
|
|
89
|
+
mqttAccessToken = accessToken!;
|
|
90
|
+
mqttUserId = user._id!;
|
|
87
91
|
|
|
88
|
-
mqtt.connect({ accessToken: mqttAccessToken, userId: mqttUserId })
|
|
89
|
-
proxyMqttEvents(mqtt, emitter)
|
|
92
|
+
mqtt.connect({ accessToken: mqttAccessToken, userId: mqttUserId });
|
|
93
|
+
proxyMqttEvents(mqtt, emitter);
|
|
90
94
|
}
|
|
91
95
|
|
|
92
|
-
return mqtt.subscribe(topic, callback)
|
|
96
|
+
return mqtt.subscribe(topic, callback);
|
|
93
97
|
}
|
|
@@ -1,28 +1,30 @@
|
|
|
1
|
-
import axios from 'axios'
|
|
2
|
-
import HttpAgent, { HttpsAgent } from 'agentkeepalive'
|
|
1
|
+
import axios from 'axios';
|
|
2
|
+
import HttpAgent, { HttpsAgent } from 'agentkeepalive';
|
|
3
3
|
|
|
4
|
-
import { unwrapPayload } from './utils'
|
|
4
|
+
import { unwrapPayload } from './utils';
|
|
5
5
|
|
|
6
6
|
/**
|
|
7
7
|
* Axios param serializer (for querystring)
|
|
8
8
|
* @hidden
|
|
9
9
|
*/
|
|
10
|
-
const stringify = (params:
|
|
10
|
+
const stringify = (params: Record<string, unknown>, prefix?: string): string => {
|
|
11
11
|
return Object.entries(params)
|
|
12
12
|
.filter(([, value]) => value !== undefined)
|
|
13
13
|
.map(([name, value]) => {
|
|
14
|
-
const key = prefix ? `${prefix}[${name}]` : name
|
|
14
|
+
const key = prefix ? `${prefix}[${name}]` : name;
|
|
15
15
|
|
|
16
16
|
if (Array.isArray(value)) {
|
|
17
|
-
return value.map(item => `${key}[]=${item}`).join('&')
|
|
18
|
-
}
|
|
19
|
-
|
|
17
|
+
return value.map(item => `${key}[]=${item}`).join('&');
|
|
18
|
+
}
|
|
19
|
+
if (typeof value !== 'object') {
|
|
20
|
+
return `${key}=${value}`;
|
|
20
21
|
}
|
|
21
22
|
|
|
22
|
-
|
|
23
|
+
// @ts-ignore
|
|
24
|
+
return stringify(value, prefix ?? name);
|
|
23
25
|
})
|
|
24
|
-
.join('&')
|
|
25
|
-
}
|
|
26
|
+
.join('&');
|
|
27
|
+
};
|
|
26
28
|
|
|
27
29
|
/**
|
|
28
30
|
* Creates a pre-configured axios instance
|
|
@@ -39,25 +41,25 @@ export const createHttpTransport = (endpoint: string) => {
|
|
|
39
41
|
maxFreeSockets: 10,
|
|
40
42
|
timeout: 60000,
|
|
41
43
|
freeSocketTimeout: 30000,
|
|
42
|
-
}
|
|
44
|
+
};
|
|
43
45
|
|
|
44
46
|
const instance = axios.create({
|
|
45
47
|
baseURL: endpoint,
|
|
46
48
|
httpAgent: new HttpAgent(options),
|
|
47
49
|
httpsAgent: new HttpsAgent(options),
|
|
48
50
|
paramsSerializer: stringify,
|
|
49
|
-
})
|
|
51
|
+
});
|
|
50
52
|
|
|
51
53
|
instance.interceptors.response.use(
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
const { response } = error
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
}
|
|
60
|
-
)
|
|
61
|
-
|
|
62
|
-
return instance
|
|
63
|
-
}
|
|
54
|
+
response => response,
|
|
55
|
+
error => {
|
|
56
|
+
const { response } = error;
|
|
57
|
+
// eslint-disable-next-line no-console
|
|
58
|
+
console.error(response?.data ?? error);
|
|
59
|
+
|
|
60
|
+
if (response) unwrapPayload(response.data);
|
|
61
|
+
},
|
|
62
|
+
);
|
|
63
|
+
|
|
64
|
+
return instance;
|
|
65
|
+
};
|