@amityco/ts-sdk 6.29.3-e60fd01.0 → 6.30.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.env +26 -26
- package/dist/@types/core/events.d.ts +41 -11
- package/dist/@types/core/events.d.ts.map +1 -1
- package/dist/@types/core/model.d.ts +1 -1
- package/dist/@types/core/model.d.ts.map +1 -1
- package/dist/@types/core/payload.d.ts +18 -4
- package/dist/@types/core/payload.d.ts.map +1 -1
- package/dist/@types/core/permissions.d.ts +4 -4
- package/dist/@types/core/permissions.d.ts.map +1 -1
- package/dist/@types/domains/follow.d.ts +21 -3
- package/dist/@types/domains/follow.d.ts.map +1 -1
- package/dist/@types/domains/post.d.ts +3 -1
- package/dist/@types/domains/post.d.ts.map +1 -1
- package/dist/@types/domains/user.d.ts +2 -2
- package/dist/@types/domains/user.d.ts.map +1 -1
- package/dist/channelRepository/channelMembership/observers/getMembers/ChannelMemberLiveCollectionController.d.ts.map +1 -1
- package/dist/channelRepository/channelMembership/observers/getMembers/ChannelMemberPaginationController.d.ts.map +1 -1
- package/dist/channelRepository/channelMembership/observers/searchMembers/SearchChannelMemberLiveCollectionController.d.ts.map +1 -1
- package/dist/channelRepository/channelMembership/observers/searchMembers/SearchChannelMemberPaginationController.d.ts.map +1 -1
- package/dist/channelRepository/events/onUserDeleted.d.ts +2 -0
- package/dist/channelRepository/events/onUserDeleted.d.ts.map +1 -0
- package/dist/commentRepository/api/createComment.d.ts.map +1 -1
- package/dist/commentRepository/api/deleteComment.d.ts.map +1 -1
- package/dist/commentRepository/events/onCommentCreatedLocal.d.ts +17 -0
- package/dist/commentRepository/events/onCommentCreatedLocal.d.ts.map +1 -0
- package/dist/commentRepository/events/onCommentDeletedLocal.d.ts +17 -0
- package/dist/commentRepository/events/onCommentDeletedLocal.d.ts.map +1 -0
- package/dist/commentRepository/events/onLocalCommentReactionAdded.d.ts +17 -0
- package/dist/commentRepository/events/onLocalCommentReactionAdded.d.ts.map +1 -0
- package/dist/commentRepository/events/onLocalCommentReactionRemoved.d.ts +17 -0
- package/dist/commentRepository/events/onLocalCommentReactionRemoved.d.ts.map +1 -0
- package/dist/commentRepository/events/utils.d.ts +1 -0
- package/dist/commentRepository/events/utils.d.ts.map +1 -1
- package/dist/commentRepository/observers/getComment.d.ts.map +1 -1
- package/dist/commentRepository/observers/getComments/CommentLiveCollectionController.d.ts.map +1 -1
- package/dist/communityRepository/communityMembership/events/index.d.ts +2 -0
- package/dist/communityRepository/communityMembership/events/index.d.ts.map +1 -1
- package/dist/communityRepository/communityMembership/events/onLocalCommunityUserAdded.d.ts +17 -0
- package/dist/communityRepository/communityMembership/events/onLocalCommunityUserAdded.d.ts.map +1 -0
- package/dist/communityRepository/communityMembership/events/onLocalCommunityUserRemoved.d.ts +17 -0
- package/dist/communityRepository/communityMembership/events/onLocalCommunityUserRemoved.d.ts.map +1 -0
- package/dist/communityRepository/communityMembership/events/onUserDeleted.d.ts +17 -0
- package/dist/communityRepository/communityMembership/events/onUserDeleted.d.ts.map +1 -0
- package/dist/communityRepository/communityMembership/events/utils.d.ts +1 -0
- package/dist/communityRepository/communityMembership/events/utils.d.ts.map +1 -1
- package/dist/communityRepository/communityMembership/observers/getMembers/CommunityMembersLiveCollectionController.d.ts.map +1 -1
- package/dist/communityRepository/communityMembership/observers/getMembers/CommunityMembersPaginationController.d.ts.map +1 -1
- package/dist/communityRepository/communityMembership/observers/getMembers/enums.d.ts +4 -1
- package/dist/communityRepository/communityMembership/observers/getMembers/enums.d.ts.map +1 -1
- package/dist/communityRepository/communityMembership/observers/searchMembers/SearchCommunityMembersLiveCollectionController.d.ts.map +1 -1
- package/dist/communityRepository/communityMembership/observers/searchMembers/SearchCommunityMembersPaginationController.d.ts.map +1 -1
- package/dist/communityRepository/communityModeration/api/addRoles.d.ts.map +1 -1
- package/dist/communityRepository/communityModeration/api/removeRoles.d.ts.map +1 -1
- package/dist/communityRepository/communityModeration/events/onLocalCommunityRoleAdded.d.ts +17 -0
- package/dist/communityRepository/communityModeration/events/onLocalCommunityRoleAdded.d.ts.map +1 -0
- package/dist/communityRepository/communityModeration/events/onLocalCommunityRoleRemoved.d.ts +17 -0
- package/dist/communityRepository/communityModeration/events/onLocalCommunityRoleRemoved.d.ts.map +1 -0
- package/dist/communityRepository/utils/payload.d.ts +1 -0
- package/dist/communityRepository/utils/payload.d.ts.map +1 -1
- package/dist/core/events.d.ts +3 -3
- package/dist/core/events.d.ts.map +1 -1
- package/dist/index.cjs.js +1624 -901
- package/dist/index.esm.js +1538 -815
- package/dist/index.umd.js +4 -4
- package/dist/postRepository/events/onLocalPostDeleted.d.ts +17 -0
- package/dist/postRepository/events/onLocalPostDeleted.d.ts.map +1 -0
- package/dist/postRepository/events/onLocalPostReactionAdded.d.ts +17 -0
- package/dist/postRepository/events/onLocalPostReactionAdded.d.ts.map +1 -0
- package/dist/postRepository/events/onLocalPostReactionRemoved.d.ts +17 -0
- package/dist/postRepository/events/onLocalPostReactionRemoved.d.ts.map +1 -0
- package/dist/postRepository/events/onPostUpdatedLocal.d.ts +17 -0
- package/dist/postRepository/events/onPostUpdatedLocal.d.ts.map +1 -0
- package/dist/postRepository/events/utils.d.ts +1 -0
- package/dist/postRepository/events/utils.d.ts.map +1 -1
- package/dist/postRepository/observers/getPost.d.ts.map +1 -1
- package/dist/postRepository/observers/getPosts/PostLiveCollectionController.d.ts.map +1 -1
- package/dist/postRepository/utils/payload.d.ts.map +1 -1
- package/dist/reactionRepository/api/addReaction.d.ts.map +1 -1
- package/dist/reactionRepository/api/removeReaction.d.ts.map +1 -1
- package/dist/userRepository/observers/getBlockedUsers/BlockedUserLiveCollectionController.d.ts +14 -0
- package/dist/userRepository/observers/getBlockedUsers/BlockedUserLiveCollectionController.d.ts.map +1 -0
- package/dist/userRepository/observers/getBlockedUsers/BlockedUserPaginationController.d.ts +5 -0
- package/dist/userRepository/observers/getBlockedUsers/BlockedUserPaginationController.d.ts.map +1 -0
- package/dist/userRepository/observers/getBlockedUsers/BlockedUserQueryStreamController.d.ts +15 -0
- package/dist/userRepository/observers/getBlockedUsers/BlockedUserQueryStreamController.d.ts.map +1 -0
- package/dist/userRepository/observers/getBlockedUsers.d.ts.map +1 -1
- package/dist/userRepository/relationship/block/api/blockUser.d.ts.map +1 -1
- package/dist/userRepository/relationship/block/api/unBlockUser.d.ts.map +1 -1
- package/dist/userRepository/relationship/follow/api/acceptFollower.d.ts.map +1 -1
- package/dist/userRepository/relationship/follow/api/acceptMyFollower.d.ts.map +1 -1
- package/dist/userRepository/relationship/follow/api/declineFollower.d.ts.map +1 -1
- package/dist/userRepository/relationship/follow/api/declineMyFollower.d.ts.map +1 -1
- package/dist/userRepository/relationship/follow/api/follow.d.ts.map +1 -1
- package/dist/userRepository/relationship/follow/api/unfollow.d.ts.map +1 -1
- package/dist/userRepository/relationship/follow/api/utils.d.ts.map +1 -1
- package/dist/userRepository/relationship/follow/enums.d.ts +11 -0
- package/dist/userRepository/relationship/follow/enums.d.ts.map +1 -0
- package/dist/userRepository/relationship/follow/events/index.d.ts +5 -0
- package/dist/userRepository/relationship/follow/events/index.d.ts.map +1 -1
- package/dist/userRepository/relationship/follow/events/onFollowInfoUpdated.d.ts.map +1 -1
- package/dist/userRepository/relationship/follow/events/onFollowerUserDeleted.d.ts +4 -0
- package/dist/userRepository/relationship/follow/events/onFollowerUserDeleted.d.ts.map +1 -0
- package/dist/userRepository/relationship/follow/events/onFollowingUserDeleted.d.ts +4 -0
- package/dist/userRepository/relationship/follow/events/onFollowingUserDeleted.d.ts.map +1 -0
- package/dist/userRepository/relationship/follow/events/onLocalFollowRequestAccepted.d.ts +2 -0
- package/dist/userRepository/relationship/follow/events/onLocalFollowRequestAccepted.d.ts.map +1 -0
- package/dist/userRepository/relationship/follow/events/onLocalFollowRequestDeclined.d.ts +2 -0
- package/dist/userRepository/relationship/follow/events/onLocalFollowRequestDeclined.d.ts.map +1 -0
- package/dist/userRepository/relationship/follow/events/onLocalFollowerRequested.d.ts +2 -0
- package/dist/userRepository/relationship/follow/events/onLocalFollowerRequested.d.ts.map +1 -0
- package/dist/userRepository/relationship/follow/events/onLocalUserFollowed.d.ts +2 -0
- package/dist/userRepository/relationship/follow/events/onLocalUserFollowed.d.ts.map +1 -0
- package/dist/userRepository/relationship/follow/events/onLocalUserUnfollowed.d.ts +2 -0
- package/dist/userRepository/relationship/follow/events/onLocalUserUnfollowed.d.ts.map +1 -0
- package/dist/userRepository/relationship/follow/events/utils.d.ts +2 -1
- package/dist/userRepository/relationship/follow/events/utils.d.ts.map +1 -1
- package/dist/userRepository/relationship/follow/observers/getFollowers/FollowerLiveCollectionController.d.ts +14 -0
- package/dist/userRepository/relationship/follow/observers/getFollowers/FollowerLiveCollectionController.d.ts.map +1 -0
- package/dist/userRepository/relationship/follow/observers/getFollowers/FollowerPaginationController.d.ts +5 -0
- package/dist/userRepository/relationship/follow/observers/getFollowers/FollowerPaginationController.d.ts.map +1 -0
- package/dist/userRepository/relationship/follow/observers/getFollowers/FollowerQueryStreamController.d.ts +15 -0
- package/dist/userRepository/relationship/follow/observers/getFollowers/FollowerQueryStreamController.d.ts.map +1 -0
- package/dist/userRepository/relationship/follow/observers/getFollowers.d.ts.map +1 -1
- package/dist/userRepository/relationship/follow/observers/getFollowings/FollowingLiveCollectionController.d.ts +14 -0
- package/dist/userRepository/relationship/follow/observers/getFollowings/FollowingLiveCollectionController.d.ts.map +1 -0
- package/dist/userRepository/relationship/follow/observers/getFollowings/FollowingPaginationController.d.ts +5 -0
- package/dist/userRepository/relationship/follow/observers/getFollowings/FollowingPaginationController.d.ts.map +1 -0
- package/dist/userRepository/relationship/follow/observers/getFollowings/FollowingQueryStreamController.d.ts +15 -0
- package/dist/userRepository/relationship/follow/observers/getFollowings/FollowingQueryStreamController.d.ts.map +1 -0
- package/dist/userRepository/relationship/follow/observers/getFollowings.d.ts.map +1 -1
- package/dist/userRepository/relationship/follow/observers/observeFollowers.d.ts +1 -1
- package/dist/userRepository/relationship/follow/observers/observeFollowers.d.ts.map +1 -1
- package/dist/userRepository/relationship/follow/observers/observeFollowings.d.ts +1 -1
- package/dist/userRepository/relationship/follow/observers/observeFollowings.d.ts.map +1 -1
- package/dist/userRepository/relationship/follow/utils.d.ts +4 -0
- package/dist/userRepository/relationship/follow/utils.d.ts.map +1 -0
- package/dist/userRepository/utils/convertRawUserToInternalUser.d.ts +2 -0
- package/dist/userRepository/utils/convertRawUserToInternalUser.d.ts.map +1 -0
- package/dist/userRepository/utils/prepareBlockedUserPayload.d.ts +2 -0
- package/dist/userRepository/utils/prepareBlockedUserPayload.d.ts.map +1 -0
- package/dist/userRepository/utils/prepareUserPayload.d.ts +2 -0
- package/dist/userRepository/utils/prepareUserPayload.d.ts.map +1 -0
- package/dist/utils/linkedObject/commentLinkedObject.d.ts.map +1 -1
- package/dist/utils/tests/dummy/block.d.ts +2 -2
- package/dist/utils/tests/dummy/follow.d.ts +2 -2
- package/package.json +1 -1
- package/src/@types/core/events.ts +40 -13
- package/src/@types/core/model.ts +1 -1
- package/src/@types/core/payload.ts +27 -7
- package/src/@types/core/permissions.ts +4 -4
- package/src/@types/domains/follow.ts +26 -12
- package/src/@types/domains/post.ts +3 -1
- package/src/@types/domains/user.ts +2 -2
- package/src/channelRepository/channelMembership/observers/getMembers/ChannelMemberLiveCollectionController.ts +4 -4
- package/src/channelRepository/channelMembership/observers/getMembers/ChannelMemberPaginationController.ts +4 -1
- package/src/channelRepository/channelMembership/observers/searchMembers/SearchChannelMemberLiveCollectionController.ts +6 -0
- package/src/channelRepository/channelMembership/observers/searchMembers/SearchChannelMemberPaginationController.ts +4 -1
- package/src/channelRepository/events/onUserDeleted.ts +46 -0
- package/src/channelRepository/utils/prepareChannelPayload.ts +1 -1
- package/src/commentRepository/api/createComment.ts +16 -12
- package/src/commentRepository/api/deleteComment.ts +23 -13
- package/src/commentRepository/events/onCommentCreatedLocal.ts +22 -0
- package/src/commentRepository/events/onCommentDeletedLocal.ts +20 -0
- package/src/commentRepository/events/onLocalCommentReactionAdded.ts +42 -0
- package/src/commentRepository/events/onLocalCommentReactionRemoved.ts +42 -0
- package/src/commentRepository/events/utils.ts +78 -1
- package/src/commentRepository/observers/getComment.ts +6 -19
- package/src/commentRepository/observers/getComments/CommentLiveCollectionController.ts +8 -0
- package/src/communityRepository/communityMembership/api/addMembers.ts +1 -1
- package/src/communityRepository/communityMembership/api/removeMembers.ts +1 -1
- package/src/communityRepository/communityMembership/events/index.ts +2 -0
- package/src/communityRepository/communityMembership/events/onLocalCommunityUserAdded.ts +20 -0
- package/src/communityRepository/communityMembership/events/onLocalCommunityUserRemoved.ts +20 -0
- package/src/communityRepository/communityMembership/events/onUserDeleted.ts +64 -0
- package/src/communityRepository/communityMembership/events/utils.ts +50 -2
- package/src/communityRepository/communityMembership/observers/getMembers/CommunityMembersLiveCollectionController.ts +24 -5
- package/src/communityRepository/communityMembership/observers/getMembers/CommunityMembersPaginationController.ts +4 -1
- package/src/communityRepository/communityMembership/observers/getMembers/enums.ts +3 -0
- package/src/communityRepository/communityMembership/observers/searchMembers/SearchCommunityMembersLiveCollectionController.ts +12 -4
- package/src/communityRepository/communityMembership/observers/searchMembers/SearchCommunityMembersPaginationController.ts +4 -1
- package/src/communityRepository/communityModeration/api/addRoles.ts +5 -2
- package/src/communityRepository/communityModeration/api/removeRoles.ts +5 -2
- package/src/communityRepository/communityModeration/events/onLocalCommunityRoleAdded.ts +38 -0
- package/src/communityRepository/communityModeration/events/onLocalCommunityRoleRemoved.ts +38 -0
- package/src/communityRepository/observers/getCommunities/CommunitiesLiveCollectionController.ts +3 -3
- package/src/communityRepository/utils/payload.ts +29 -0
- package/src/core/model/idResolvers.ts +1 -1
- package/src/postRepository/api/deletePost.ts +9 -9
- package/src/postRepository/api/updatePost.ts +1 -1
- package/src/postRepository/events/onLocalPostDeleted.ts +20 -0
- package/src/postRepository/events/onLocalPostReactionAdded.ts +38 -0
- package/src/postRepository/events/onLocalPostReactionRemoved.ts +41 -0
- package/src/postRepository/events/onPostUpdatedLocal.ts +20 -0
- package/src/postRepository/events/utils.ts +41 -6
- package/src/postRepository/observers/getPost.ts +8 -0
- package/src/postRepository/observers/getPosts/PostLiveCollectionController.ts +8 -0
- package/src/postRepository/utils/payload.ts +10 -2
- package/src/reactionRepository/api/addReaction.ts +27 -2
- package/src/reactionRepository/api/removeReaction.ts +27 -2
- package/src/report/api/createReport.ts +1 -1
- package/src/report/api/deleteReport.ts +1 -1
- package/src/userRepository/api/flagUser.ts +1 -1
- package/src/userRepository/api/getUserByIds.ts +1 -1
- package/src/userRepository/api/queryBlockedUsers.ts +1 -1
- package/src/userRepository/api/unflagUser.ts +1 -1
- package/src/userRepository/api/updateUser.ts +1 -1
- package/src/userRepository/events/utils.ts +1 -1
- package/src/userRepository/internalApi/getUser.ts +1 -1
- package/src/userRepository/internalApi/queryUsers.ts +1 -1
- package/src/userRepository/observers/getBlockedUsers/BlockedUserLiveCollectionController.ts +106 -0
- package/src/userRepository/observers/getBlockedUsers/BlockedUserPaginationController.ts +24 -0
- package/src/userRepository/observers/getBlockedUsers/BlockedUserQueryStreamController.ts +76 -0
- package/src/userRepository/observers/getBlockedUsers.ts +8 -81
- package/src/userRepository/observers/getUsers/UserLiveCollectionController.ts +4 -4
- package/src/userRepository/observers/searchUserByDisplayName/SearchUserLiveCollectionController.ts +1 -1
- package/src/userRepository/relationship/block/api/blockUser.ts +4 -1
- package/src/userRepository/relationship/block/api/unBlockUser.ts +4 -1
- package/src/userRepository/relationship/follow/api/acceptFollower.ts +4 -1
- package/src/userRepository/relationship/follow/api/acceptMyFollower.ts +4 -1
- package/src/userRepository/relationship/follow/api/declineFollower.ts +5 -2
- package/src/userRepository/relationship/follow/api/declineMyFollower.ts +5 -2
- package/src/userRepository/relationship/follow/api/follow.ts +8 -1
- package/src/userRepository/relationship/follow/api/unfollow.ts +4 -1
- package/src/userRepository/relationship/follow/api/utils.ts +6 -2
- package/src/userRepository/relationship/follow/enums.ts +10 -0
- package/src/userRepository/relationship/follow/events/index.ts +6 -0
- package/src/userRepository/relationship/follow/events/onFollowInfoUpdated.ts +6 -1
- package/src/userRepository/relationship/follow/events/onFollowerUserDeleted.ts +33 -0
- package/src/userRepository/relationship/follow/events/onFollowingUserDeleted.ts +33 -0
- package/src/userRepository/relationship/follow/events/onLocalFollowRequestAccepted.ts +5 -0
- package/src/userRepository/relationship/follow/events/onLocalFollowRequestDeclined.ts +5 -0
- package/src/userRepository/relationship/follow/events/onLocalFollowerRequested.ts +5 -0
- package/src/userRepository/relationship/follow/events/onLocalUserFollowed.ts +5 -0
- package/src/userRepository/relationship/follow/events/onLocalUserUnfollowed.ts +5 -0
- package/src/userRepository/relationship/follow/events/utils.ts +25 -14
- package/src/userRepository/relationship/follow/observers/getFollowers/FollowerLiveCollectionController.ts +132 -0
- package/src/userRepository/relationship/follow/observers/getFollowers/FollowerPaginationController.ts +29 -0
- package/src/userRepository/relationship/follow/observers/getFollowers/FollowerQueryStreamController.ts +95 -0
- package/src/userRepository/relationship/follow/observers/getFollowers.ts +8 -106
- package/src/userRepository/relationship/follow/observers/getFollowings/FollowingLiveCollectionController.ts +136 -0
- package/src/userRepository/relationship/follow/observers/getFollowings/FollowingPaginationController.ts +29 -0
- package/src/userRepository/relationship/follow/observers/getFollowings/FollowingQueryStreamController.ts +95 -0
- package/src/userRepository/relationship/follow/observers/getFollowings.ts +6 -106
- package/src/userRepository/relationship/follow/observers/observeFollowers.ts +11 -0
- package/src/userRepository/relationship/follow/observers/observeFollowings.ts +11 -0
- package/src/userRepository/relationship/follow/utils.ts +36 -0
- package/src/userRepository/utils/convertRawUserToInternalUser.ts +6 -0
- package/src/userRepository/utils/prepareBlockedUserPayload.ts +19 -0
- package/src/userRepository/utils/{index.ts → prepareUserPayload.ts} +1 -6
- package/src/utils/linkedObject/commentLinkedObject.ts +13 -16
- package/dist/userRepository/utils/index.d.ts +0 -3
- package/dist/userRepository/utils/index.d.ts.map +0 -1
|
@@ -7,8 +7,8 @@ export declare const follow22: Amity.FollowStatus;
|
|
|
7
7
|
export declare const follow23: Amity.FollowStatus;
|
|
8
8
|
export declare const follows: {
|
|
9
9
|
userId: string;
|
|
10
|
-
page1: Amity.
|
|
11
|
-
page2: Amity.
|
|
10
|
+
page1: Amity.RawFollowStatus[];
|
|
11
|
+
page2: Amity.RawFollowStatus[];
|
|
12
12
|
};
|
|
13
13
|
export declare const followPayload: Amity.FollowersPayload;
|
|
14
14
|
//# sourceMappingURL=follow.d.ts.map
|
package/package.json
CHANGED
|
@@ -139,13 +139,13 @@ declare global {
|
|
|
139
139
|
};
|
|
140
140
|
|
|
141
141
|
type MqttFollowEvents = {
|
|
142
|
-
'follow.created': Amity.FollowersPayload
|
|
143
|
-
'follow.requested': Amity.FollowersPayload
|
|
144
|
-
'follow.accepted': Amity.FollowersPayload
|
|
145
|
-
'follow.unfollowed': Amity.FollowersPayload
|
|
146
|
-
'follow.requestCanceled': Amity.FollowersPayload
|
|
147
|
-
'follow.requestDeclined': Amity.FollowersPayload
|
|
148
|
-
'follow.followerDeleted': Amity.FollowersPayload
|
|
142
|
+
'follow.created': Amity.FollowersPayload;
|
|
143
|
+
'follow.requested': Amity.FollowersPayload;
|
|
144
|
+
'follow.accepted': Amity.FollowersPayload;
|
|
145
|
+
'follow.unfollowed': Amity.FollowersPayload;
|
|
146
|
+
'follow.requestCanceled': Amity.FollowersPayload;
|
|
147
|
+
'follow.requestDeclined': Amity.FollowersPayload;
|
|
148
|
+
'follow.followerDeleted': Amity.FollowersPayload;
|
|
149
149
|
};
|
|
150
150
|
|
|
151
151
|
type MqttMarkerEvents = {
|
|
@@ -166,6 +166,35 @@ declare global {
|
|
|
166
166
|
MqttMarkerEvents &
|
|
167
167
|
MqttStoryEvents;
|
|
168
168
|
|
|
169
|
+
type LocalPostEvents = {
|
|
170
|
+
'local.post.updated': Amity.PostPayload;
|
|
171
|
+
'local.post.deleted': Amity.PostPayload;
|
|
172
|
+
'local.post.addReaction': { post: Amity.InternalPost };
|
|
173
|
+
'local.post.removeReaction': { post: Amity.InternalPost };
|
|
174
|
+
};
|
|
175
|
+
|
|
176
|
+
type LocalCommentEvents = {
|
|
177
|
+
'local.comment.created': Amity.CommentPayload;
|
|
178
|
+
'local.comment.deleted': Amity.CommentPayload;
|
|
179
|
+
'local.comment.addReaction': { comment: Amity.InternalComment };
|
|
180
|
+
'local.comment.removeReaction': { comment: Amity.InternalComment };
|
|
181
|
+
};
|
|
182
|
+
|
|
183
|
+
type LocalCommunityEvents = {
|
|
184
|
+
'local.community.roleAdded': Amity.ProcessedCommunityPayload;
|
|
185
|
+
'local.community.roleRemoved': Amity.ProcessedCommunityPayload;
|
|
186
|
+
'local.community.userAdded': Amity.CommunityMembershipPayload;
|
|
187
|
+
'local.community.userRemoved': Amity.CommunityMembershipPayload;
|
|
188
|
+
};
|
|
189
|
+
|
|
190
|
+
type LocalFollowEvents = {
|
|
191
|
+
'local.follow.created': Amity.FollowStatusPayload;
|
|
192
|
+
'local.follow.requested': Amity.FollowStatusPayload;
|
|
193
|
+
'local.follow.accepted': Amity.FollowStatusPayload;
|
|
194
|
+
'local.follow.unfollowed': Amity.FollowStatusPayload;
|
|
195
|
+
'local.follow.requestDeclined': Amity.FollowStatusPayload;
|
|
196
|
+
};
|
|
197
|
+
|
|
169
198
|
type LocalEvents = {
|
|
170
199
|
'local.channel.updated': MakeRequired<Amity.ProcessedChannelPayload, 'channels'>;
|
|
171
200
|
'local.channel.fetched': Amity.InternalChannel[];
|
|
@@ -213,17 +242,15 @@ declare global {
|
|
|
213
242
|
'local.story.error': Amity.StoryPayload;
|
|
214
243
|
'local.story.reload': { referenceIds: Amity.Story['referenceId'][] };
|
|
215
244
|
|
|
216
|
-
'local.post.updated': Amity.PostPayload;
|
|
217
|
-
|
|
218
|
-
'local.comment.created': Amity.CommentPayload;
|
|
219
|
-
'local.comment.deleted': Amity.CommentPayload;
|
|
220
|
-
|
|
221
245
|
sessionStateChange: Amity.SessionStates;
|
|
222
246
|
// used by accessTokenExpiryWatcher
|
|
223
247
|
tokenExpired: Amity.SessionStates.TOKEN_EXPIRED;
|
|
224
248
|
tokenTerminated: Amity.SessionStates.TERMINATED;
|
|
225
249
|
unreadCountEnabled: boolean;
|
|
226
|
-
}
|
|
250
|
+
} & LocalPostEvents &
|
|
251
|
+
LocalCommentEvents &
|
|
252
|
+
LocalCommunityEvents &
|
|
253
|
+
LocalFollowEvents;
|
|
227
254
|
|
|
228
255
|
type Events = WsEvents & MqttEvents & MqttRTE & LocalEvents;
|
|
229
256
|
}
|
package/src/@types/core/model.ts
CHANGED
|
@@ -113,7 +113,7 @@ declare global {
|
|
|
113
113
|
advertiser: Pick<Amity.Advertiser, 'advertiserId'>;
|
|
114
114
|
|
|
115
115
|
pinTarget: Pick<Amity.InternalPinTarget, 'targetId'>;
|
|
116
|
-
pin: Pick<Amity.InternalPin, 'referenceId'>;
|
|
116
|
+
pin: Pick<Amity.InternalPin, 'placement' | 'referenceId'>;
|
|
117
117
|
};
|
|
118
118
|
}
|
|
119
119
|
}
|
|
@@ -21,6 +21,9 @@ declare global {
|
|
|
21
21
|
globalStoryFeed: Amity.GlobalStoryFeedPayload;
|
|
22
22
|
reaction: Amity.ReactionPayload;
|
|
23
23
|
pinnedPost: Amity.PinnedPostPayload;
|
|
24
|
+
follower: Amity.FollowersPayload;
|
|
25
|
+
following: Amity.FollowingsPayload;
|
|
26
|
+
blockUser: Amity.BlockedUserPayload;
|
|
24
27
|
};
|
|
25
28
|
|
|
26
29
|
type UserPayload = {
|
|
@@ -387,16 +390,26 @@ declare global {
|
|
|
387
390
|
type GlobalFeedPayload = Amity.PostPayload;
|
|
388
391
|
|
|
389
392
|
type FollowStatusPayload = {
|
|
390
|
-
follows: Amity.
|
|
393
|
+
follows: Amity.RawFollowStatus[];
|
|
394
|
+
};
|
|
395
|
+
|
|
396
|
+
type ProcessedFollowStatusPayload = {
|
|
397
|
+
follows: Amity.InternalFollowStatus[];
|
|
391
398
|
};
|
|
392
399
|
|
|
393
400
|
type FollowInfoMePayload = {
|
|
394
401
|
followCounts: Amity.FollowCount[];
|
|
395
402
|
};
|
|
396
403
|
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
404
|
+
type FollowersPayload = Amity.FollowStatusPayload & Amity.UserPayload;
|
|
405
|
+
|
|
406
|
+
type ProcessedFollowersPayload = Amity.ProcessedFollowStatusPayload & {
|
|
407
|
+
users: Amity.InternalUser[];
|
|
408
|
+
};
|
|
409
|
+
|
|
410
|
+
type FollowingsPayload = Amity.FollowersPayload;
|
|
411
|
+
|
|
412
|
+
type ProcessedFollowingsPayload = Amity.ProcessedFollowersPayload;
|
|
400
413
|
|
|
401
414
|
type FollowInfoPayload = FollowInfoMePayload & Amity.FollowStatusPayload;
|
|
402
415
|
|
|
@@ -405,9 +418,16 @@ declare global {
|
|
|
405
418
|
followCounts: Amity.FollowCount[];
|
|
406
419
|
};
|
|
407
420
|
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
421
|
+
type ProcessedBlockedPayload = {
|
|
422
|
+
follows: Amity.ProcessedFollowStatusPayload['follows'];
|
|
423
|
+
followCounts: Amity.FollowCount[];
|
|
424
|
+
};
|
|
425
|
+
|
|
426
|
+
type BlockedUserPayload = Amity.FollowersPayload;
|
|
427
|
+
|
|
428
|
+
type ProcessedBlockedUserPayload = Amity.BlockedUserPayload & {
|
|
429
|
+
users: Amity.InternalUser[];
|
|
430
|
+
};
|
|
411
431
|
|
|
412
432
|
type MessagePreviewPayload<T extends Amity.MessageContentType = any> = {
|
|
413
433
|
messageId: string;
|
|
@@ -31,10 +31,10 @@ declare global {
|
|
|
31
31
|
DeleteUserFeedPostPermission = 'DELETE_USER_FEED_POST',
|
|
32
32
|
EditUserFeedCommentPermission = 'EDIT_USER_FEED_COMMENT',
|
|
33
33
|
DeleteUserFeedCommentPermission = 'DELETE_USER_FEED_COMMENT',
|
|
34
|
-
EditCommunityFeedPostPermission = '
|
|
35
|
-
DeleteCommunityFeedPostPermission = '
|
|
36
|
-
EditCommunityFeedCommentPermission = '
|
|
37
|
-
DeleteCommunityFeedCommentPermission = '
|
|
34
|
+
EditCommunityFeedPostPermission = 'EDIT_COMMUNITY_POST',
|
|
35
|
+
DeleteCommunityFeedPostPermission = 'DELETE_COMMUNITY_POST',
|
|
36
|
+
EditCommunityFeedCommentPermission = 'EDIT_COMMUNITY_COMMENT',
|
|
37
|
+
DeleteCommunityFeedCommentPermission = 'DELETE_COMMUNITY_COMMENT',
|
|
38
38
|
CreateCommunityCategoryPermission = 'CREATE_COMMUNITY_CATEGORY',
|
|
39
39
|
EditCommunityCategoryPermission = 'EDIT_COMMUNITY_CATEGORY',
|
|
40
40
|
DeleteCommunityCategoryPermission = 'DELETE_COMMUNITY_CATEGORY',
|
|
@@ -2,24 +2,38 @@ export {};
|
|
|
2
2
|
|
|
3
3
|
declare global {
|
|
4
4
|
namespace Amity {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
5
|
+
const enum FollowActionTypeEnum {
|
|
6
|
+
OnRequested = 'onRequested',
|
|
7
|
+
OnAccepted = 'onAccepted',
|
|
8
|
+
OnDeclined = 'onDeclined',
|
|
9
|
+
OnCanceled = 'onCanceled',
|
|
10
|
+
OnFollowed = 'onFollowed',
|
|
11
|
+
OnUnfollowed = 'onUnfollowed',
|
|
12
|
+
OnDeleted = 'onDeleted',
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
type FollowActionType = `${FollowActionTypeEnum}`;
|
|
16
|
+
|
|
17
|
+
const enum FollowStatusTypeEnum {
|
|
18
|
+
All = 'all',
|
|
19
|
+
Pending = 'pending',
|
|
20
|
+
Accepted = 'accepted',
|
|
21
|
+
Blocked = 'blocked',
|
|
22
|
+
None = 'none',
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
type FollowStatusType = `${FollowStatusTypeEnum}`;
|
|
26
|
+
|
|
27
|
+
type RawFollowStatus = {
|
|
17
28
|
from: Amity.InternalUser['userId'];
|
|
18
29
|
to: Amity.InternalUser['userId'];
|
|
19
30
|
status: Exclude<FollowStatusType, 'all'>;
|
|
20
31
|
} & Amity.CreatedAt &
|
|
21
32
|
Amity.UpdatedAt;
|
|
22
33
|
|
|
34
|
+
type InternalFollowStatus = Amity.RawFollowStatus;
|
|
35
|
+
type FollowStatus = InternalFollowStatus;
|
|
36
|
+
|
|
23
37
|
type FollowCount = {
|
|
24
38
|
userId: Amity.InternalUser['userId'];
|
|
25
39
|
followerCount: number;
|
|
@@ -51,7 +51,9 @@ declare global {
|
|
|
51
51
|
Amity.AnalyticPostData &
|
|
52
52
|
Amity.Mentionable<'user'>;
|
|
53
53
|
|
|
54
|
-
type InternalPost<T extends PostContentType = any> = RawPost<T
|
|
54
|
+
type InternalPost<T extends PostContentType = any> = RawPost<T> & {
|
|
55
|
+
feedType?: 'reviewing' | 'published';
|
|
56
|
+
};
|
|
55
57
|
|
|
56
58
|
type PostLinkObject = {
|
|
57
59
|
latestComments: (Amity.Comment | null)[];
|
|
@@ -2,7 +2,7 @@ export {};
|
|
|
2
2
|
|
|
3
3
|
declare global {
|
|
4
4
|
namespace Amity {
|
|
5
|
-
enum UserSortByEnum {
|
|
5
|
+
const enum UserSortByEnum {
|
|
6
6
|
FirstCreated = 'firstCreated',
|
|
7
7
|
LastCreated = 'lastCreated',
|
|
8
8
|
/** @deprecated sortBy displayName is not available */
|
|
@@ -11,7 +11,7 @@ declare global {
|
|
|
11
11
|
|
|
12
12
|
type UserSortBy = `${Amity.UserSortByEnum}`;
|
|
13
13
|
|
|
14
|
-
enum SearchUserSortByEnum {
|
|
14
|
+
const enum SearchUserSortByEnum {
|
|
15
15
|
FirstCreated = 'firstCreated',
|
|
16
16
|
LastCreated = 'lastCreated',
|
|
17
17
|
DisplayName = 'displayName',
|
|
@@ -22,6 +22,7 @@ import {
|
|
|
22
22
|
sortByLastCreated,
|
|
23
23
|
} from '~/core/query';
|
|
24
24
|
import { prepareChannelPayload } from '~/channelRepository/utils';
|
|
25
|
+
import { onUserDeleted } from '~/channelRepository/events/onUserDeleted';
|
|
25
26
|
|
|
26
27
|
export class ChannelMemberLiveCollectionController extends LiveCollectionController<
|
|
27
28
|
'channelUser',
|
|
@@ -87,6 +88,7 @@ export class ChannelMemberLiveCollectionController extends LiveCollectionControl
|
|
|
87
88
|
{ fn: onChannelMemberUnbanned, action: 'onChannelMemberUnbanned' },
|
|
88
89
|
{ fn: onChannelMemberRoleAdded, action: 'onChannelMemberRoleAdded' },
|
|
89
90
|
{ fn: onChannelMemberRoleRemoved, action: 'onChannelMemberRoleRemoved' },
|
|
91
|
+
{ fn: onUserDeleted(this.query.channelId), action: 'onChannelMemberChanged' },
|
|
90
92
|
]);
|
|
91
93
|
}
|
|
92
94
|
|
|
@@ -143,10 +145,8 @@ export class ChannelMemberLiveCollectionController extends LiveCollectionControl
|
|
|
143
145
|
channelMembers = filterBySearchTerm(channelMembers, this.query.search);
|
|
144
146
|
}
|
|
145
147
|
|
|
146
|
-
if (
|
|
147
|
-
channelMembers = channelMembers.filter(
|
|
148
|
-
member => member.user?.isDeleted === this.query.includeDeleted,
|
|
149
|
-
);
|
|
148
|
+
if (this.query.includeDeleted === false) {
|
|
149
|
+
channelMembers = channelMembers.filter(member => member.user?.isDeleted !== true);
|
|
150
150
|
}
|
|
151
151
|
|
|
152
152
|
// sort, 'lastCreated' is the default sort order
|
|
@@ -12,15 +12,18 @@ export class ChannelMemberPaginationController extends PaginationController<
|
|
|
12
12
|
Amity.ChannelMembersLiveCollection
|
|
13
13
|
> {
|
|
14
14
|
async getRequest(queryParams: Amity.ChannelMembersLiveCollection, token: string | undefined) {
|
|
15
|
-
const { limit = COLLECTION_DEFAULT_PAGINATION_LIMIT, ...params } = queryParams;
|
|
15
|
+
const { limit = COLLECTION_DEFAULT_PAGINATION_LIMIT, includeDeleted, ...params } = queryParams;
|
|
16
16
|
const options = token ? { token } : { limit };
|
|
17
17
|
|
|
18
|
+
const isDeleted = includeDeleted === false ? false : undefined;
|
|
19
|
+
|
|
18
20
|
const { data: queryResponse } = await this.http.get<
|
|
19
21
|
Amity.ChannelMembershipPayload & Amity.Pagination
|
|
20
22
|
>(`/api/v4/channels/${encodeURIComponent(params.channelId)}/users`, {
|
|
21
23
|
params: {
|
|
22
24
|
...params,
|
|
23
25
|
options,
|
|
26
|
+
isDeleted,
|
|
24
27
|
},
|
|
25
28
|
});
|
|
26
29
|
return queryResponse;
|
|
@@ -16,6 +16,7 @@ import {
|
|
|
16
16
|
} from '~/channelRepository/events';
|
|
17
17
|
import { filterByPropIntersection, filterBySearchTerm } from '~/core/query';
|
|
18
18
|
import { prepareChannelPayload } from '~/channelRepository/utils';
|
|
19
|
+
import { onUserDeleted } from '~/channelRepository/events/onUserDeleted';
|
|
19
20
|
|
|
20
21
|
export class SearchChannelMemberLiveCollectionController extends LiveCollectionController<
|
|
21
22
|
'channelUser',
|
|
@@ -81,6 +82,7 @@ export class SearchChannelMemberLiveCollectionController extends LiveCollectionC
|
|
|
81
82
|
{ fn: onChannelMemberUnbanned, action: 'onChannelMemberUnbanned' },
|
|
82
83
|
{ fn: onChannelMemberRoleAdded, action: 'onChannelMemberRoleAdded' },
|
|
83
84
|
{ fn: onChannelMemberRoleRemoved, action: 'onChannelMemberRoleRemoved' },
|
|
85
|
+
{ fn: onUserDeleted(this.query.channelId), action: 'onChannelMemberChanged' },
|
|
84
86
|
]);
|
|
85
87
|
}
|
|
86
88
|
|
|
@@ -129,6 +131,10 @@ export class SearchChannelMemberLiveCollectionController extends LiveCollectionC
|
|
|
129
131
|
});
|
|
130
132
|
}
|
|
131
133
|
|
|
134
|
+
if (this.query.includeDeleted === false) {
|
|
135
|
+
channelMembers = channelMembers.filter(member => member.user?.isDeleted !== true);
|
|
136
|
+
}
|
|
137
|
+
|
|
132
138
|
if (this.query.search) {
|
|
133
139
|
// eslint-disable-next-line no-console
|
|
134
140
|
console.warn(
|
|
@@ -12,15 +12,18 @@ export class SearchChannelMemberPaginationController extends PaginationControlle
|
|
|
12
12
|
Amity.ChannelMembersLiveCollection
|
|
13
13
|
> {
|
|
14
14
|
async getRequest(queryParams: Amity.ChannelMembersLiveCollection, token: string | undefined) {
|
|
15
|
-
const { limit = COLLECTION_DEFAULT_PAGINATION_LIMIT, ...params } = queryParams;
|
|
15
|
+
const { limit = COLLECTION_DEFAULT_PAGINATION_LIMIT, includeDeleted, ...params } = queryParams;
|
|
16
16
|
const options = token ? { token } : { limit };
|
|
17
17
|
|
|
18
|
+
const isDeleted = includeDeleted === false ? false : undefined;
|
|
19
|
+
|
|
18
20
|
const { data: queryResponse } = await this.http.get<
|
|
19
21
|
Amity.ChannelMembershipPayload & Amity.Pagination
|
|
20
22
|
>(`/api/v4/channels/${encodeURIComponent(params.channelId)}/users`, {
|
|
21
23
|
params: {
|
|
22
24
|
...params,
|
|
23
25
|
options,
|
|
26
|
+
isDeleted,
|
|
24
27
|
},
|
|
25
28
|
});
|
|
26
29
|
return queryResponse;
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { prepareUserPayload } from '~/userRepository/utils/prepareUserPayload';
|
|
2
|
+
import { pullFromCache, upsertInCache } from '~/cache/api';
|
|
3
|
+
import { createEventSubscriber } from '~/core/events';
|
|
4
|
+
import { getActiveClient } from '~/client';
|
|
5
|
+
import { ingestInCache } from '~/cache/api/ingestInCache';
|
|
6
|
+
import { getResolver } from '~/core/model';
|
|
7
|
+
|
|
8
|
+
export const onUserDeleted =
|
|
9
|
+
(channelId: string) =>
|
|
10
|
+
(callback: (channel: Amity.InternalChannel, member: Amity.Membership<'channel'>) => void) => {
|
|
11
|
+
const client = getActiveClient();
|
|
12
|
+
|
|
13
|
+
const filter = (payload: Amity.UserPayload) => {
|
|
14
|
+
const userPayload = prepareUserPayload(payload);
|
|
15
|
+
|
|
16
|
+
if (userPayload.users.length === 0) return;
|
|
17
|
+
|
|
18
|
+
const user = userPayload.users[0];
|
|
19
|
+
|
|
20
|
+
ingestInCache(userPayload);
|
|
21
|
+
|
|
22
|
+
const channelUserCacheKey = getResolver('channelUsers')({
|
|
23
|
+
channelId,
|
|
24
|
+
userId: user.userId,
|
|
25
|
+
});
|
|
26
|
+
|
|
27
|
+
const cacheData = pullFromCache<Amity.Membership<'channel'>>([
|
|
28
|
+
'channelUsers',
|
|
29
|
+
'get',
|
|
30
|
+
channelUserCacheKey,
|
|
31
|
+
])?.data!;
|
|
32
|
+
|
|
33
|
+
upsertInCache(['channelUsers', 'get', channelUserCacheKey], {
|
|
34
|
+
...cacheData,
|
|
35
|
+
user,
|
|
36
|
+
});
|
|
37
|
+
|
|
38
|
+
const channel = pullFromCache<Amity.InternalChannel>(['channel', 'get', channelId])?.data;
|
|
39
|
+
|
|
40
|
+
if (!channel) return;
|
|
41
|
+
|
|
42
|
+
callback(channel, cacheData);
|
|
43
|
+
};
|
|
44
|
+
|
|
45
|
+
return createEventSubscriber(client, 'user.deleted', 'user.deleted', filter);
|
|
46
|
+
};
|
|
@@ -7,7 +7,7 @@ import { getActiveClient } from '~/client/api/activeClient';
|
|
|
7
7
|
import { pullFromCache } from '~/cache/api/pullFromCache';
|
|
8
8
|
import { getSubChannelsUnreadCount } from './getSubChannelsUnreadCount';
|
|
9
9
|
import { getChannelIsMentioned } from './getChannelIsMentioned';
|
|
10
|
-
import { convertRawUserToInternalUser } from '~/userRepository/utils';
|
|
10
|
+
import { convertRawUserToInternalUser } from '~/userRepository/utils/convertRawUserToInternalUser';
|
|
11
11
|
|
|
12
12
|
export const MARKER_INCLUDED_CHANNEL_TYPE = ['broadcast', 'conversation', 'community'];
|
|
13
13
|
export const isUnreadCountSupport = ({ type }: Pick<Amity.RawChannel, 'type'>) =>
|
|
@@ -51,19 +51,23 @@ export const createComment = async (
|
|
|
51
51
|
if (client.cache) ingestInCache(data, { cachedAt });
|
|
52
52
|
|
|
53
53
|
if (['post', 'content'].includes(bundle.referenceType)) {
|
|
54
|
-
const post =
|
|
54
|
+
const post = pullFromCache<Amity.Post>(['post', 'get', bundle.referenceId])?.data;
|
|
55
55
|
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
56
|
+
if (post) {
|
|
57
|
+
post.commentsCount += 1;
|
|
58
|
+
|
|
59
|
+
fireEvent('local.post.updated', {
|
|
60
|
+
posts: [post],
|
|
61
|
+
categories: [],
|
|
62
|
+
comments: [],
|
|
63
|
+
communities: [],
|
|
64
|
+
communityUsers: data.communityUsers,
|
|
65
|
+
feeds: [],
|
|
66
|
+
files: data.files,
|
|
67
|
+
postChildren: [],
|
|
68
|
+
users: data.users,
|
|
69
|
+
});
|
|
70
|
+
}
|
|
67
71
|
} else if (bundle.referenceType === 'story') {
|
|
68
72
|
const storyIndex = pullFromCache<Amity.Story['referenceId']>([
|
|
69
73
|
STORY_KEY_CACHE.STORY_ID_TO_REFERENCE_ID,
|
|
@@ -3,12 +3,12 @@ import { getActiveClient } from '~/client/api';
|
|
|
3
3
|
import { upsertInCache } from '~/cache/api';
|
|
4
4
|
import { fireEvent } from '~/core/events';
|
|
5
5
|
|
|
6
|
-
import { getPost } from '~/postRepository/api/getPost';
|
|
7
6
|
import { pushToTombstone } from '~/cache/api/pushToTombstone';
|
|
8
7
|
import { scheduleTask } from '~/core/microtasks';
|
|
9
8
|
|
|
10
9
|
import { getStoryByStoryId } from '~/storyRepository/internalApi/getStoryByStoryId';
|
|
11
10
|
import { getComment } from './getComment';
|
|
11
|
+
import { pullFromCache } from '~/cache/api/pullFromCache';
|
|
12
12
|
|
|
13
13
|
/* begin_public_function
|
|
14
14
|
id: comment.soft_delete, comment.hard_delete
|
|
@@ -62,19 +62,29 @@ export const deleteComment = async (
|
|
|
62
62
|
users: [],
|
|
63
63
|
});
|
|
64
64
|
} else {
|
|
65
|
-
const post =
|
|
65
|
+
const post = pullFromCache<Amity.Post>(['post', 'get', comment.data.referenceId])?.data;
|
|
66
66
|
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
67
|
+
if (post) {
|
|
68
|
+
let removeCount: number;
|
|
69
|
+
if (!deleted.parentId) {
|
|
70
|
+
// NOTE: delete the parent comment will remove all children comments
|
|
71
|
+
removeCount = deleted.childrenNumber + 1;
|
|
72
|
+
} else removeCount = 1;
|
|
73
|
+
|
|
74
|
+
post.commentsCount -= removeCount;
|
|
75
|
+
|
|
76
|
+
fireEvent('local.post.updated', {
|
|
77
|
+
posts: [post],
|
|
78
|
+
categories: [],
|
|
79
|
+
comments: [],
|
|
80
|
+
communities: [],
|
|
81
|
+
communityUsers: [],
|
|
82
|
+
feeds: [],
|
|
83
|
+
files: [],
|
|
84
|
+
postChildren: [],
|
|
85
|
+
users: [],
|
|
86
|
+
});
|
|
87
|
+
}
|
|
78
88
|
}
|
|
79
89
|
|
|
80
90
|
fireEvent('local.comment.deleted', {
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { createCommentEventSubscriber, createLocalCommentEventSubscriber } from './utils';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* ```js
|
|
5
|
+
* import { onCommentCreated } from '@amityco/ts-sdk'
|
|
6
|
+
* const dispose = onCommentCreated(comment => {
|
|
7
|
+
* // ...
|
|
8
|
+
* })
|
|
9
|
+
* ```
|
|
10
|
+
*
|
|
11
|
+
* Fired when a {@link Amity.InternalComment} has been created
|
|
12
|
+
*
|
|
13
|
+
* @param callback The function to call when the event was fired
|
|
14
|
+
* @returns an {@link Amity.Unsubscriber} function to stop listening
|
|
15
|
+
*
|
|
16
|
+
* @category Comment Events
|
|
17
|
+
*/
|
|
18
|
+
export const onCommentCreatedLocal = (
|
|
19
|
+
callback: Amity.Listener<Amity.InternalComment>,
|
|
20
|
+
): Amity.Unsubscriber => {
|
|
21
|
+
return createLocalCommentEventSubscriber('local.comment.created', callback);
|
|
22
|
+
};
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { createLocalCommentEventSubscriber } from './utils';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* ```js
|
|
5
|
+
* import { onCommentDeleteLocal } from '@amityco/ts-sdk'
|
|
6
|
+
* const dispose = onCommentDeleteLocal(comment => {
|
|
7
|
+
* // ...
|
|
8
|
+
* })
|
|
9
|
+
* ```
|
|
10
|
+
*
|
|
11
|
+
* Fired when a {@link Amity.InternalComment} has been deleted
|
|
12
|
+
*
|
|
13
|
+
* @param callback The function to call when the event was fired
|
|
14
|
+
* @returns an {@link Amity.Unsubscriber} function to stop listening
|
|
15
|
+
*
|
|
16
|
+
* @category Comment Events
|
|
17
|
+
*/
|
|
18
|
+
export const onCommentDeleteLocal = (
|
|
19
|
+
callback: Amity.Listener<Amity.InternalComment>,
|
|
20
|
+
): Amity.Unsubscriber => createLocalCommentEventSubscriber('local.comment.deleted', callback);
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { getActiveClient } from '~/client/api';
|
|
2
|
+
import { pullFromCache, upsertInCache } from '~/cache/api';
|
|
3
|
+
import { createEventSubscriber } from '~/core/events';
|
|
4
|
+
import { commentLinkedObject } from '~/utils/linkedObject/commentLinkedObject';
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* ```js
|
|
8
|
+
* import { onLocalCommentReactionAdded } from '@amityco/ts-sdk'
|
|
9
|
+
* const dispose = onLocalCommentReactionAdded(comment => {
|
|
10
|
+
* // ...
|
|
11
|
+
* })
|
|
12
|
+
* ```
|
|
13
|
+
*
|
|
14
|
+
* Fired when a {@link Amity.InternalComment} has been reacted
|
|
15
|
+
*
|
|
16
|
+
* @param callback The function to call when the event was fired
|
|
17
|
+
* @returns an {@link Amity.Unsubscriber} function to stop listening
|
|
18
|
+
*
|
|
19
|
+
* @category Comment Events
|
|
20
|
+
*/
|
|
21
|
+
export const onLocalCommentReactionAdded = (
|
|
22
|
+
callback: Amity.Listener<Amity.InternalComment>,
|
|
23
|
+
): Amity.Unsubscriber => {
|
|
24
|
+
const client = getActiveClient();
|
|
25
|
+
|
|
26
|
+
const filter = ({ comment }: Amity.Events['local.comment.addReaction']) => {
|
|
27
|
+
if (!client.cache) {
|
|
28
|
+
callback(comment);
|
|
29
|
+
} else {
|
|
30
|
+
upsertInCache(['comment', 'get', comment.commentId], comment);
|
|
31
|
+
|
|
32
|
+
callback(commentLinkedObject(comment));
|
|
33
|
+
}
|
|
34
|
+
};
|
|
35
|
+
|
|
36
|
+
return createEventSubscriber(
|
|
37
|
+
client,
|
|
38
|
+
'local.comment.addReaction',
|
|
39
|
+
'local.comment.addReaction',
|
|
40
|
+
filter,
|
|
41
|
+
);
|
|
42
|
+
};
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { getActiveClient } from '~/client/api';
|
|
2
|
+
import { pullFromCache, upsertInCache } from '~/cache/api';
|
|
3
|
+
import { createEventSubscriber } from '~/core/events';
|
|
4
|
+
import { commentLinkedObject } from '~/utils/linkedObject/commentLinkedObject';
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* ```js
|
|
8
|
+
* import { onLocalCommentReactionRemoved } from '@amityco/ts-sdk'
|
|
9
|
+
* const dispose = onLocalCommentReactionRemoved(comment => {
|
|
10
|
+
* // ...
|
|
11
|
+
* })
|
|
12
|
+
* ```
|
|
13
|
+
*
|
|
14
|
+
* Fired when a {@link Amity.InternalComment} has been reacted
|
|
15
|
+
*
|
|
16
|
+
* @param callback The function to call when the event was fired
|
|
17
|
+
* @returns an {@link Amity.Unsubscriber} function to stop listening
|
|
18
|
+
*
|
|
19
|
+
* @category Comment Events
|
|
20
|
+
*/
|
|
21
|
+
export const onLocalCommentReactionRemoved = (
|
|
22
|
+
callback: Amity.Listener<Amity.InternalComment>,
|
|
23
|
+
): Amity.Unsubscriber => {
|
|
24
|
+
const client = getActiveClient();
|
|
25
|
+
|
|
26
|
+
const filter = ({ comment }: Amity.Events['local.comment.removeReaction']) => {
|
|
27
|
+
if (!client.cache) {
|
|
28
|
+
callback(comment);
|
|
29
|
+
} else {
|
|
30
|
+
upsertInCache(['comment', 'get', comment.commentId], comment);
|
|
31
|
+
|
|
32
|
+
callback(commentLinkedObject(comment));
|
|
33
|
+
}
|
|
34
|
+
};
|
|
35
|
+
|
|
36
|
+
return createEventSubscriber(
|
|
37
|
+
client,
|
|
38
|
+
'local.comment.removeReaction',
|
|
39
|
+
'local.comment.removeReaction',
|
|
40
|
+
filter,
|
|
41
|
+
);
|
|
42
|
+
};
|