@amityco/ts-sdk 7.8.1-5d16a58a.0 → 7.8.1-680d3cc.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/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/client.d.ts +4 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/client.d.ts.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/client.js.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/content.d.ts +1 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/content.d.ts.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/content.js.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/feed.d.ts +5 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/feed.d.ts.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/feed.js +1 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/feed.js.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/hashtag.d.ts +11 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/hashtag.d.ts.map +1 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/hashtag.js +2 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/hashtag.js.map +1 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/notification.d.ts +2 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/notification.d.ts.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/notification.js.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/pinnedPost.d.ts +1 -4
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/pinnedPost.d.ts.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/pinnedPost.js.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/poll.d.ts +3 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/poll.d.ts.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/poll.js.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/post.d.ts +14 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/post.d.ts.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/post.js.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/index.d.ts +2 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/index.d.ts.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/index.js +2 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/index.js.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/getShareableLinkConfiguration.d.ts +16 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/getShareableLinkConfiguration.d.ts.map +1 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/getShareableLinkConfiguration.js +21 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/getShareableLinkConfiguration.js.map +1 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/index.d.ts +2 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/index.d.ts.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/index.js +2 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/index.js.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/commentRepository/api/deleteComment.js +6 -6
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/commentRepository/api/deleteComment.js.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/core/model/index.d.ts.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/core/model/index.js +2 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/core/model/index.js.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/api/index.d.ts +0 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/api/index.d.ts.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/api/index.js +0 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/api/index.js.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/api/queryGlobalFeed.d.ts +3 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/api/queryGlobalFeed.d.ts.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/api/queryGlobalFeed.js +3 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/api/queryGlobalFeed.js.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/index.d.ts +2 -2
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/index.d.ts.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/index.js +2 -2
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/index.js.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getCustomRankingGlobalFeed/LiveCollectionController.d.ts +13 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getCustomRankingGlobalFeed/LiveCollectionController.d.ts.map +1 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getCustomRankingGlobalFeed/LiveCollectionController.js +60 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getCustomRankingGlobalFeed/LiveCollectionController.js.map +1 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getCustomRankingGlobalFeed/PaginationController.d.ts +5 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getCustomRankingGlobalFeed/PaginationController.d.ts.map +1 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getCustomRankingGlobalFeed/PaginationController.js +13 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getCustomRankingGlobalFeed/PaginationController.js.map +1 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getCustomRankingGlobalFeed/QueryStreamController.d.ts +15 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getCustomRankingGlobalFeed/QueryStreamController.d.ts.map +1 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getCustomRankingGlobalFeed/QueryStreamController.js +66 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getCustomRankingGlobalFeed/QueryStreamController.js.map +1 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getCustomRankingGlobalFeed.d.ts +22 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getCustomRankingGlobalFeed.d.ts.map +1 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getCustomRankingGlobalFeed.js +45 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getCustomRankingGlobalFeed.js.map +1 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getGlobalFeed/LiveCollectionController.d.ts +13 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getGlobalFeed/LiveCollectionController.d.ts.map +1 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getGlobalFeed/LiveCollectionController.js +60 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getGlobalFeed/LiveCollectionController.js.map +1 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getGlobalFeed/PaginationController.d.ts +5 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getGlobalFeed/PaginationController.d.ts.map +1 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getGlobalFeed/PaginationController.js +13 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getGlobalFeed/PaginationController.js.map +1 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getGlobalFeed/QueryStreamController.d.ts +15 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getGlobalFeed/QueryStreamController.d.ts.map +1 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getGlobalFeed/QueryStreamController.js +66 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getGlobalFeed/QueryStreamController.js.map +1 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getGlobalFeed.d.ts +22 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getGlobalFeed.d.ts.map +1 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getGlobalFeed.js +45 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getGlobalFeed.js.map +1 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getUserFeed/LiveCollectionController.d.ts +0 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getUserFeed/LiveCollectionController.d.ts.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getUserFeed/LiveCollectionController.js +1 -22
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getUserFeed/LiveCollectionController.js.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/index.d.ts +3 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/index.d.ts.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/index.js +3 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/index.js.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/utils.d.ts +6 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/utils.d.ts.map +1 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/utils.js +60 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/utils.js.map +1 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/liveReactionRepository/api/createReaction.d.ts.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/liveReactionRepository/api/createReaction.js.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/pollRepository/api/createPoll.d.ts +3 -3
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/pollRepository/api/createPoll.d.ts.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/pollRepository/api/createPoll.js +2 -2
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/pollRepository/api/createPoll.js.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/api/createPost.d.ts +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/api/createPost.js.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/api/editPost.d.ts +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/api/editPost.js.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/api/queryPosts.js +2 -2
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/api/queryPosts.js.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/events/utils.d.ts.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/events/utils.js +26 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/events/utils.js.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/getGlobalPinnedPosts/GlobalPinnedPostLiveCollectionController.d.ts.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/getGlobalPinnedPosts/GlobalPinnedPostLiveCollectionController.js +5 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/getGlobalPinnedPosts/GlobalPinnedPostLiveCollectionController.js.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/getPinnedPosts/PinnedPostLiveCollectionController.d.ts.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/getPinnedPosts/PinnedPostLiveCollectionController.js +5 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/getPinnedPosts/PinnedPostLiveCollectionController.js.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/getPinnedPosts/PinnedPostQueryStreamController.d.ts +6 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/getPinnedPosts/PinnedPostQueryStreamController.d.ts.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/getPinnedPosts/PinnedPostQueryStreamController.js +17 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/getPinnedPosts/PinnedPostQueryStreamController.js.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/getPosts/PostLiveCollectionController.d.ts.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/getPosts/PostLiveCollectionController.js +2 -50
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/getPosts/PostLiveCollectionController.js.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/getPostsByHashtag/SearchPostLiveCollectionController.d.ts +14 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/getPostsByHashtag/SearchPostLiveCollectionController.d.ts.map +1 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/getPostsByHashtag/SearchPostLiveCollectionController.js +126 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/getPostsByHashtag/SearchPostLiveCollectionController.js.map +1 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/getPostsByHashtag/SearchPostPaginationController.d.ts +5 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/getPostsByHashtag/SearchPostPaginationController.d.ts.map +1 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/getPostsByHashtag/SearchPostPaginationController.js +27 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/getPostsByHashtag/SearchPostPaginationController.js.map +1 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/getPostsByHashtag/SearchPostQueryStreamController.d.ts +15 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/getPostsByHashtag/SearchPostQueryStreamController.d.ts.map +1 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/getPostsByHashtag/SearchPostQueryStreamController.js +65 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/getPostsByHashtag/SearchPostQueryStreamController.js.map +1 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/index.d.ts +1 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/index.d.ts.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/index.js +1 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/index.js.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/searchPostsByHashtag.d.ts +22 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/searchPostsByHashtag.d.ts.map +1 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/searchPostsByHashtag.js +45 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/searchPostsByHashtag.js.map +1 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/utils.d.ts +13 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/utils.d.ts.map +1 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/utils.js +61 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/postRepository/observers/utils.js.map +1 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/reactionRepository/api/addReaction.d.ts.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/reactionRepository/api/addReaction.js +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/reactionRepository/api/addReaction.js.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/reactionRepository/api/removeReaction.d.ts.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/reactionRepository/api/removeReaction.js +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/reactionRepository/api/removeReaction.js.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/utils/linkedObject/postLinkedObject.d.ts.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/utils/linkedObject/postLinkedObject.js +9 -4
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/utils/linkedObject/postLinkedObject.js.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/tsconfig.tsbuildinfo +1 -1
- package/dist/@types/domains/client.d.ts +4 -0
- package/dist/@types/domains/client.d.ts.map +1 -1
- package/dist/@types/domains/content.d.ts +1 -0
- package/dist/@types/domains/content.d.ts.map +1 -1
- package/dist/@types/domains/feed.d.ts +5 -0
- package/dist/@types/domains/feed.d.ts.map +1 -1
- package/dist/@types/domains/hashtag.d.ts +11 -0
- package/dist/@types/domains/hashtag.d.ts.map +1 -0
- package/dist/@types/domains/notification.d.ts +2 -1
- package/dist/@types/domains/notification.d.ts.map +1 -1
- package/dist/@types/domains/pinnedPost.d.ts +1 -4
- package/dist/@types/domains/pinnedPost.d.ts.map +1 -1
- package/dist/@types/domains/poll.d.ts +3 -1
- package/dist/@types/domains/poll.d.ts.map +1 -1
- package/dist/@types/domains/post.d.ts +14 -1
- package/dist/@types/domains/post.d.ts.map +1 -1
- package/dist/@types/index.d.ts +2 -0
- package/dist/@types/index.d.ts.map +1 -1
- package/dist/client/api/getShareableLinkConfiguration.d.ts +16 -0
- package/dist/client/api/getShareableLinkConfiguration.d.ts.map +1 -0
- package/dist/client/api/index.d.ts +2 -0
- package/dist/client/api/index.d.ts.map +1 -1
- package/dist/core/model/index.d.ts.map +1 -1
- package/dist/feedRepository/api/index.d.ts +0 -1
- package/dist/feedRepository/api/index.d.ts.map +1 -1
- package/dist/feedRepository/api/queryGlobalFeed.d.ts +3 -0
- package/dist/feedRepository/api/queryGlobalFeed.d.ts.map +1 -1
- package/dist/feedRepository/index.d.ts +2 -2
- package/dist/feedRepository/index.d.ts.map +1 -1
- package/dist/feedRepository/observers/getCustomRankingGlobalFeed/LiveCollectionController.d.ts +13 -0
- package/dist/feedRepository/observers/getCustomRankingGlobalFeed/LiveCollectionController.d.ts.map +1 -0
- package/dist/feedRepository/observers/getCustomRankingGlobalFeed/PaginationController.d.ts +5 -0
- package/dist/feedRepository/observers/getCustomRankingGlobalFeed/PaginationController.d.ts.map +1 -0
- package/dist/feedRepository/observers/getCustomRankingGlobalFeed/QueryStreamController.d.ts +15 -0
- package/dist/feedRepository/observers/getCustomRankingGlobalFeed/QueryStreamController.d.ts.map +1 -0
- package/dist/feedRepository/observers/getCustomRankingGlobalFeed.d.ts +22 -0
- package/dist/feedRepository/observers/getCustomRankingGlobalFeed.d.ts.map +1 -0
- package/dist/feedRepository/observers/getGlobalFeed/LiveCollectionController.d.ts +13 -0
- package/dist/feedRepository/observers/getGlobalFeed/LiveCollectionController.d.ts.map +1 -0
- package/dist/feedRepository/observers/getGlobalFeed/PaginationController.d.ts +5 -0
- package/dist/feedRepository/observers/getGlobalFeed/PaginationController.d.ts.map +1 -0
- package/dist/feedRepository/observers/getGlobalFeed/QueryStreamController.d.ts +15 -0
- package/dist/feedRepository/observers/getGlobalFeed/QueryStreamController.d.ts.map +1 -0
- package/dist/feedRepository/observers/getGlobalFeed.d.ts +22 -0
- package/dist/feedRepository/observers/getGlobalFeed.d.ts.map +1 -0
- package/dist/feedRepository/observers/getUserFeed/LiveCollectionController.d.ts +0 -1
- package/dist/feedRepository/observers/getUserFeed/LiveCollectionController.d.ts.map +1 -1
- package/dist/feedRepository/observers/index.d.ts +3 -1
- package/dist/feedRepository/observers/index.d.ts.map +1 -1
- package/dist/feedRepository/observers/utils.d.ts +6 -0
- package/dist/feedRepository/observers/utils.d.ts.map +1 -0
- package/dist/index.cjs.js +891 -275
- package/dist/index.esm.js +808 -192
- package/dist/index.umd.js +4 -4
- package/dist/liveReactionRepository/api/createReaction.d.ts.map +1 -1
- package/dist/pollRepository/api/createPoll.d.ts +3 -3
- package/dist/pollRepository/api/createPoll.d.ts.map +1 -1
- package/dist/postRepository/api/createPost.d.ts +1 -1
- package/dist/postRepository/api/editPost.d.ts +1 -1
- package/dist/postRepository/events/utils.d.ts.map +1 -1
- package/dist/postRepository/observers/getGlobalPinnedPosts/GlobalPinnedPostLiveCollectionController.d.ts.map +1 -1
- package/dist/postRepository/observers/getPinnedPosts/PinnedPostLiveCollectionController.d.ts.map +1 -1
- package/dist/postRepository/observers/getPinnedPosts/PinnedPostQueryStreamController.d.ts +6 -0
- package/dist/postRepository/observers/getPinnedPosts/PinnedPostQueryStreamController.d.ts.map +1 -1
- package/dist/postRepository/observers/getPosts/PostLiveCollectionController.d.ts.map +1 -1
- package/dist/postRepository/observers/getPostsByHashtag/SearchPostLiveCollectionController.d.ts +14 -0
- package/dist/postRepository/observers/getPostsByHashtag/SearchPostLiveCollectionController.d.ts.map +1 -0
- package/dist/postRepository/observers/getPostsByHashtag/SearchPostPaginationController.d.ts +5 -0
- package/dist/postRepository/observers/getPostsByHashtag/SearchPostPaginationController.d.ts.map +1 -0
- package/dist/postRepository/observers/getPostsByHashtag/SearchPostQueryStreamController.d.ts +15 -0
- package/dist/postRepository/observers/getPostsByHashtag/SearchPostQueryStreamController.d.ts.map +1 -0
- package/dist/postRepository/observers/index.d.ts +1 -0
- package/dist/postRepository/observers/index.d.ts.map +1 -1
- package/dist/postRepository/observers/searchPostsByHashtag.d.ts +22 -0
- package/dist/postRepository/observers/searchPostsByHashtag.d.ts.map +1 -0
- package/dist/postRepository/observers/utils.d.ts +13 -0
- package/dist/postRepository/observers/utils.d.ts.map +1 -0
- package/dist/reactionRepository/api/addReaction.d.ts.map +1 -1
- package/dist/reactionRepository/api/removeReaction.d.ts.map +1 -1
- package/dist/utils/linkedObject/postLinkedObject.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/@types/domains/client.ts +5 -0
- package/src/@types/domains/content.ts +1 -0
- package/src/@types/domains/feed.ts +17 -0
- package/src/@types/domains/hashtag.ts +11 -0
- package/src/@types/domains/notification.ts +1 -0
- package/src/@types/domains/pinnedPost.ts +1 -4
- package/src/@types/domains/poll.ts +3 -1
- package/src/@types/domains/post.ts +18 -1
- package/src/@types/index.ts +2 -0
- package/src/client/api/getShareableLinkConfiguration.ts +26 -0
- package/src/client/api/index.ts +4 -0
- package/src/commentRepository/api/deleteComment.ts +6 -6
- package/src/core/model/index.ts +2 -1
- package/src/feedRepository/api/index.ts +0 -1
- package/src/feedRepository/api/queryGlobalFeed.ts +3 -0
- package/src/feedRepository/index.ts +2 -2
- package/src/feedRepository/observers/getCustomRankingGlobalFeed/LiveCollectionController.ts +95 -0
- package/src/feedRepository/observers/getCustomRankingGlobalFeed/PaginationController.ts +25 -0
- package/src/feedRepository/observers/getCustomRankingGlobalFeed/QueryStreamController.ts +101 -0
- package/src/feedRepository/observers/getCustomRankingGlobalFeed.ts +56 -0
- package/src/feedRepository/observers/getGlobalFeed/LiveCollectionController.ts +91 -0
- package/src/feedRepository/observers/getGlobalFeed/PaginationController.ts +23 -0
- package/src/feedRepository/observers/getGlobalFeed/QueryStreamController.ts +99 -0
- package/src/feedRepository/observers/getGlobalFeed.ts +56 -0
- package/src/feedRepository/observers/getUserFeed/LiveCollectionController.ts +2 -32
- package/src/feedRepository/observers/index.ts +3 -1
- package/src/feedRepository/observers/utils.ts +85 -0
- package/src/liveReactionRepository/api/createReaction.ts +0 -1
- package/src/pollRepository/api/createPoll.ts +3 -3
- package/src/postRepository/api/createPost.ts +1 -1
- package/src/postRepository/api/editPost.ts +1 -1
- package/src/postRepository/api/queryPosts.ts +2 -2
- package/src/postRepository/events/utils.ts +35 -1
- package/src/postRepository/observers/getGlobalPinnedPosts/GlobalPinnedPostLiveCollectionController.ts +5 -0
- package/src/postRepository/observers/getPinnedPosts/PinnedPostLiveCollectionController.ts +7 -1
- package/src/postRepository/observers/getPinnedPosts/PinnedPostQueryStreamController.ts +27 -0
- package/src/postRepository/observers/getPosts/PostLiveCollectionController.ts +2 -74
- package/src/postRepository/observers/getPostsByHashtag/SearchPostLiveCollectionController.ts +183 -0
- package/src/postRepository/observers/getPostsByHashtag/SearchPostPaginationController.ts +49 -0
- package/src/postRepository/observers/getPostsByHashtag/SearchPostQueryStreamController.ts +99 -0
- package/src/postRepository/observers/index.ts +1 -0
- package/src/postRepository/observers/searchPostsByHashtag.ts +56 -0
- package/src/postRepository/observers/utils.ts +97 -0
- package/src/reactionRepository/api/addReaction.ts +1 -0
- package/src/reactionRepository/api/removeReaction.ts +1 -0
- package/src/utils/linkedObject/postLinkedObject.ts +3 -3
- package/tsconfig.tsbuildinfo +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/api/getCustomRankingGlobalFeed.d.ts +0 -37
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/api/getCustomRankingGlobalFeed.d.ts.map +0 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/api/getCustomRankingGlobalFeed.js +0 -83
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/api/getCustomRankingGlobalFeed.js.map +0 -1
- package/dist/feedRepository/api/getCustomRankingGlobalFeed.d.ts +0 -37
- package/dist/feedRepository/api/getCustomRankingGlobalFeed.d.ts.map +0 -1
- package/src/feedRepository/api/getCustomRankingGlobalFeed.ts +0 -115
package/dist/index.cjs.js
CHANGED
|
@@ -153,6 +153,29 @@ exports.JoinResultStatusEnum = void 0;
|
|
|
153
153
|
JoinResultStatusEnum["Pending"] = "pending";
|
|
154
154
|
})(exports.JoinResultStatusEnum || (exports.JoinResultStatusEnum = {}));
|
|
155
155
|
|
|
156
|
+
exports.FeedDataTypeEnum = void 0;
|
|
157
|
+
(function (FeedDataTypeEnum) {
|
|
158
|
+
FeedDataTypeEnum["Text"] = "text";
|
|
159
|
+
FeedDataTypeEnum["Video"] = "video";
|
|
160
|
+
FeedDataTypeEnum["Image"] = "image";
|
|
161
|
+
FeedDataTypeEnum["File"] = "file";
|
|
162
|
+
FeedDataTypeEnum["LiveStream"] = "liveStream";
|
|
163
|
+
FeedDataTypeEnum["Clip"] = "clip";
|
|
164
|
+
FeedDataTypeEnum["Poll"] = "poll";
|
|
165
|
+
})(exports.FeedDataTypeEnum || (exports.FeedDataTypeEnum = {}));
|
|
166
|
+
exports.FeedSortByEnum = void 0;
|
|
167
|
+
(function (FeedSortByEnum) {
|
|
168
|
+
FeedSortByEnum["LastCreated"] = "lastCreated";
|
|
169
|
+
FeedSortByEnum["FirstCreated"] = "firstCreated";
|
|
170
|
+
FeedSortByEnum["LastUpdated"] = "lastUpdated";
|
|
171
|
+
FeedSortByEnum["FirstUpdated"] = "firstUpdated";
|
|
172
|
+
})(exports.FeedSortByEnum || (exports.FeedSortByEnum = {}));
|
|
173
|
+
exports.FeedSourceEnum = void 0;
|
|
174
|
+
(function (FeedSourceEnum) {
|
|
175
|
+
FeedSourceEnum["Community"] = "community";
|
|
176
|
+
FeedSourceEnum["User"] = "user";
|
|
177
|
+
})(exports.FeedSourceEnum || (exports.FeedSourceEnum = {}));
|
|
178
|
+
|
|
156
179
|
function getVersion() {
|
|
157
180
|
try {
|
|
158
181
|
// the string ''v7.8.0-cjs'' should be replaced by actual value by @rollup/plugin-replace
|
|
@@ -658,7 +681,8 @@ const PAYLOAD2MODEL = {
|
|
|
658
681
|
};
|
|
659
682
|
/** hidden */
|
|
660
683
|
const isOutdated = (prevData, nextData) => {
|
|
661
|
-
|
|
684
|
+
// Check if the new value is outdated.
|
|
685
|
+
if ('updatedAt' in nextData && 'updatedAt' in prevData) {
|
|
662
686
|
return new Date(nextData.updatedAt) < new Date(prevData.updatedAt);
|
|
663
687
|
}
|
|
664
688
|
return false;
|
|
@@ -9781,6 +9805,26 @@ const fetchLinkPreview = async (url) => {
|
|
|
9781
9805
|
return data;
|
|
9782
9806
|
};
|
|
9783
9807
|
|
|
9808
|
+
/**
|
|
9809
|
+
* ```js
|
|
9810
|
+
* import Client from '@amityco/ts-sdk'
|
|
9811
|
+
* const shareableLinkConfiguration = await Client.getShareableLinkConfiguration()
|
|
9812
|
+
* const postLinkPattern = shareableLinkConfiguration.post
|
|
9813
|
+
* ```
|
|
9814
|
+
*
|
|
9815
|
+
* Fetches a {@link Amity.ShareableLinkConfiguration} object
|
|
9816
|
+
*
|
|
9817
|
+
* @returns A Promise of {@link Amity.ShareableLinkConfiguration} object
|
|
9818
|
+
*
|
|
9819
|
+
* @category Client API
|
|
9820
|
+
* @async
|
|
9821
|
+
*/
|
|
9822
|
+
const getShareableLinkConfiguration = async () => {
|
|
9823
|
+
const client = getActiveClient();
|
|
9824
|
+
const { data } = await client.http.get(`/api/v3/network-settings/shareable-deep-links`);
|
|
9825
|
+
return data;
|
|
9826
|
+
};
|
|
9827
|
+
|
|
9784
9828
|
/**
|
|
9785
9829
|
* ```js
|
|
9786
9830
|
* import { onChannelMarkerFetched } from '@amityco/ts-sdk'
|
|
@@ -10150,6 +10194,8 @@ var index$o = /*#__PURE__*/Object.freeze({
|
|
|
10150
10194
|
enableUnreadCount: enableUnreadCount,
|
|
10151
10195
|
setUploadedFileAccessType: setUploadedFileAccessType,
|
|
10152
10196
|
fetchLinkPreview: fetchLinkPreview,
|
|
10197
|
+
getSocialSettings: getSocialSettings,
|
|
10198
|
+
getShareableLinkConfiguration: getShareableLinkConfiguration,
|
|
10153
10199
|
onConnectionError: onConnectionError,
|
|
10154
10200
|
onClientDisconnected: onClientDisconnected,
|
|
10155
10201
|
onClientBanned: onClientBanned,
|
|
@@ -11853,15 +11899,18 @@ function isAmityClipPost(post) {
|
|
|
11853
11899
|
}
|
|
11854
11900
|
|
|
11855
11901
|
const postLinkedObject = (post) => {
|
|
11856
|
-
return
|
|
11902
|
+
return shallowClone(post, {
|
|
11903
|
+
childrenPosts: post.children
|
|
11857
11904
|
.map(childPost => { var _a; return (_a = pullFromCache(['post', 'get', childPost])) === null || _a === void 0 ? void 0 : _a.data; })
|
|
11858
11905
|
.filter(isNonNullable)
|
|
11859
|
-
.map(postLinkedObject),
|
|
11906
|
+
.map(postLinkedObject),
|
|
11907
|
+
analytics: {
|
|
11860
11908
|
markAsViewed: () => {
|
|
11861
11909
|
const analyticsEngineInstance = AnalyticsEngine$1.getInstance();
|
|
11862
11910
|
analyticsEngineInstance.markPostAsViewed(post.postId);
|
|
11863
11911
|
},
|
|
11864
|
-
},
|
|
11912
|
+
},
|
|
11913
|
+
get latestComments() {
|
|
11865
11914
|
if (!post.comments)
|
|
11866
11915
|
return [];
|
|
11867
11916
|
return (post.comments
|
|
@@ -11935,7 +11984,8 @@ const postLinkedObject = (post) => {
|
|
|
11935
11984
|
return isAmityClipPost(post)
|
|
11936
11985
|
? (_b = pullFromCache(['file', 'get', (_a = post === null || post === void 0 ? void 0 : post.data) === null || _a === void 0 ? void 0 : _a.fileId])) === null || _b === void 0 ? void 0 : _b.data
|
|
11937
11986
|
: undefined;
|
|
11938
|
-
}
|
|
11987
|
+
},
|
|
11988
|
+
});
|
|
11939
11989
|
};
|
|
11940
11990
|
|
|
11941
11991
|
const getCachedMarker = (message) => {
|
|
@@ -14930,7 +14980,7 @@ const addReaction = async (referenceType, referenceId, reactionName) => {
|
|
|
14930
14980
|
]);
|
|
14931
14981
|
if (!model || ((_a = model.data.myReactions) === null || _a === void 0 ? void 0 : _a.includes(reactionName)))
|
|
14932
14982
|
return true;
|
|
14933
|
-
const updatedModel = Object.assign(Object.assign({}, model.data), { reactionsCount: model.data.reactionsCount + 1, myReactions: [...((_b = model.data.myReactions) !== null && _b !== void 0 ? _b : []), reactionName], reactions: Object.assign(Object.assign({}, model.data.reactions), { [reactionName]: ((_c = model.data.reactions[reactionName]) !== null && _c !== void 0 ? _c : 0) + 1 }) });
|
|
14983
|
+
const updatedModel = Object.assign(Object.assign({}, model.data), { reactionsCount: model.data.reactionsCount + 1, myReactions: [...((_b = model.data.myReactions) !== null && _b !== void 0 ? _b : []), reactionName], reactions: Object.assign(Object.assign({}, model.data.reactions), { [reactionName]: ((_c = model.data.reactions[reactionName]) !== null && _c !== void 0 ? _c : 0) + 1 }), updatedAt: new Date().toISOString() });
|
|
14934
14984
|
if (referenceType === 'comment') {
|
|
14935
14985
|
fireEvent('local.comment.addReaction', {
|
|
14936
14986
|
comment: updatedModel,
|
|
@@ -15053,7 +15103,7 @@ const removeReaction = async (referenceType, referenceId, reactionName) => {
|
|
|
15053
15103
|
]);
|
|
15054
15104
|
if (!model)
|
|
15055
15105
|
return true;
|
|
15056
|
-
const updatedModel = Object.assign(Object.assign({}, model.data), { reactionsCount: Math.max(0, model.data.reactionsCount - 1), myReactions: ((_a = model.data.myReactions) !== null && _a !== void 0 ? _a : []).filter(item => item !== reactionName), reactions: Object.assign(Object.assign({}, model.data.reactions), { [reactionName]: Math.max(0, ((_b = model.data.reactions[reactionName]) !== null && _b !== void 0 ? _b : 0) - 1) }) });
|
|
15106
|
+
const updatedModel = Object.assign(Object.assign({}, model.data), { reactionsCount: Math.max(0, model.data.reactionsCount - 1), myReactions: ((_a = model.data.myReactions) !== null && _a !== void 0 ? _a : []).filter(item => item !== reactionName), reactions: Object.assign(Object.assign({}, model.data.reactions), { [reactionName]: Math.max(0, ((_b = model.data.reactions[reactionName]) !== null && _b !== void 0 ? _b : 0) - 1) }), updatedAt: new Date().toISOString() });
|
|
15057
15107
|
if (referenceType === 'comment') {
|
|
15058
15108
|
fireEvent('local.comment.removeReaction', {
|
|
15059
15109
|
comment: updatedModel,
|
|
@@ -15167,6 +15217,26 @@ const prepareSemanticSearchPostPayload = (_a) => {
|
|
|
15167
15217
|
return Object.assign(Object.assign({}, processedPostPayload), { polls });
|
|
15168
15218
|
};
|
|
15169
15219
|
|
|
15220
|
+
const processDeleteChildPost = (payload) => {
|
|
15221
|
+
var _a;
|
|
15222
|
+
const post = payload.posts[0];
|
|
15223
|
+
if (!post.parentId)
|
|
15224
|
+
return;
|
|
15225
|
+
const parentPost = (_a = pullFromCache(['post', 'get', post.parentPostId])) === null || _a === void 0 ? void 0 : _a.data;
|
|
15226
|
+
if (!parentPost)
|
|
15227
|
+
return;
|
|
15228
|
+
pushToCache(['post', 'get', parentPost.postId], Object.assign(Object.assign({}, parentPost), { children: parentPost.children.filter(childId => childId !== post.postId) }));
|
|
15229
|
+
};
|
|
15230
|
+
const processCreateChildPost = (payload) => {
|
|
15231
|
+
var _a;
|
|
15232
|
+
const post = payload.posts[0];
|
|
15233
|
+
if (!post.parentId)
|
|
15234
|
+
return;
|
|
15235
|
+
const parentPost = (_a = pullFromCache(['post', 'get', post.parentPostId])) === null || _a === void 0 ? void 0 : _a.data;
|
|
15236
|
+
if (!parentPost)
|
|
15237
|
+
return;
|
|
15238
|
+
pushToCache(['post', 'get', parentPost.postId], Object.assign(Object.assign({}, parentPost), { children: [...new Set([post.postId, ...parentPost.children])] }));
|
|
15239
|
+
};
|
|
15170
15240
|
const createPostEventSubscriber = (event, callback) => {
|
|
15171
15241
|
const client = getActiveClient();
|
|
15172
15242
|
const filter = (payload) => {
|
|
@@ -15191,6 +15261,7 @@ const createPostEventSubscriber = (event, callback) => {
|
|
|
15191
15261
|
}
|
|
15192
15262
|
if (event === 'post.deleted') {
|
|
15193
15263
|
const { postId, postedUserId } = payload.posts[0];
|
|
15264
|
+
processDeleteChildPost(payload);
|
|
15194
15265
|
try {
|
|
15195
15266
|
isInTombstone('post', postId);
|
|
15196
15267
|
}
|
|
@@ -15217,6 +15288,8 @@ const createPostEventSubscriber = (event, callback) => {
|
|
|
15217
15288
|
}
|
|
15218
15289
|
queries === null || queries === void 0 ? void 0 : queries.map(({ key, data }) => upsertInCache(key, data, { cachedAt: -1 }));
|
|
15219
15290
|
}
|
|
15291
|
+
if (event === 'post.created')
|
|
15292
|
+
processCreateChildPost(payload);
|
|
15220
15293
|
callback(post.data);
|
|
15221
15294
|
}
|
|
15222
15295
|
};
|
|
@@ -15243,6 +15316,8 @@ const createLocalPostEventSubscriber = (event, callback) => {
|
|
|
15243
15316
|
});
|
|
15244
15317
|
}
|
|
15245
15318
|
const post = pullFromCache(['post', 'get', payload.posts[0].postId]);
|
|
15319
|
+
if (event === 'local.post.deleted')
|
|
15320
|
+
processDeleteChildPost(payload);
|
|
15246
15321
|
callback(post.data);
|
|
15247
15322
|
}
|
|
15248
15323
|
};
|
|
@@ -23018,6 +23093,9 @@ var index$b = /*#__PURE__*/Object.freeze({
|
|
|
23018
23093
|
id: feed.query.global_feed
|
|
23019
23094
|
*/
|
|
23020
23095
|
/**
|
|
23096
|
+
*
|
|
23097
|
+
* @deprecated This function will to be deprecated. Please use getGlobalFeed instead.
|
|
23098
|
+
*
|
|
23021
23099
|
* ```js
|
|
23022
23100
|
* import { queryGlobalFeed } from '@amityco/ts-sdk'
|
|
23023
23101
|
* const posts = await queryGlobalFeed()
|
|
@@ -23100,88 +23178,12 @@ queryGlobalFeed.locally = (query) => {
|
|
|
23100
23178
|
: undefined;
|
|
23101
23179
|
};
|
|
23102
23180
|
|
|
23103
|
-
|
|
23104
|
-
id: feed.query.custom_ranking_feed
|
|
23105
|
-
*/
|
|
23106
|
-
/**
|
|
23107
|
-
* ```js
|
|
23108
|
-
* import { FeedRepository } from '@amityco/ts-sdk'
|
|
23109
|
-
* const posts = await FeedRepository.getCustomRankingGlobalFeed()
|
|
23110
|
-
* ```
|
|
23111
|
-
*
|
|
23112
|
-
* Queries a paginable list of {@link Amity.Post} objects
|
|
23113
|
-
*
|
|
23114
|
-
* @param query The query parameters
|
|
23115
|
-
* @returns A page of {@link Amity.Post} objects
|
|
23116
|
-
*
|
|
23117
|
-
* @category Feed API
|
|
23118
|
-
* @async
|
|
23119
|
-
* */
|
|
23120
|
-
const getCustomRankingGlobalFeed = async (query) => {
|
|
23121
|
-
const client = getActiveClient();
|
|
23122
|
-
client.log('feed/getCustomRankingGlobalFeed', query);
|
|
23123
|
-
const _a = query !== null && query !== void 0 ? query : {}, { queryToken, limit } = _a, params = __rest(_a, ["queryToken", "limit"]);
|
|
23124
|
-
const options = (() => {
|
|
23125
|
-
if (queryToken)
|
|
23126
|
-
return { token: queryToken };
|
|
23127
|
-
return undefined;
|
|
23128
|
-
})();
|
|
23129
|
-
const { data: queryPayload } = await client.http.get(`/api/v5/me/global-feeds`, {
|
|
23130
|
-
params: Object.assign(Object.assign({}, params), { limit: !queryToken ? limit : undefined, options }),
|
|
23131
|
-
});
|
|
23132
|
-
const { paging } = queryPayload, payload = __rest(queryPayload, ["paging"]);
|
|
23133
|
-
const data = prepareMembershipPayload(payload, 'communityUsers');
|
|
23134
|
-
const { posts } = data;
|
|
23135
|
-
const cachedAt = client.cache && Date.now();
|
|
23136
|
-
if (client.cache) {
|
|
23137
|
-
ingestInCache(data);
|
|
23138
|
-
const cacheKey = ['customGlobalFeed', 'query', Object.assign(Object.assign({}, params), { options })];
|
|
23139
|
-
pushToCache(cacheKey, { posts: posts.map(getResolver('post')), paging });
|
|
23140
|
-
}
|
|
23141
|
-
return { data: posts.map(LinkedObject.post), cachedAt, paging };
|
|
23142
|
-
};
|
|
23143
|
-
/* end_public_function */
|
|
23144
|
-
/**
|
|
23145
|
-
* ```js
|
|
23146
|
-
* import { FeedRepository } from '@amityco/ts-sdk'
|
|
23147
|
-
* const posts = await FeedRepository.getCustomRankingGlobalFeed.locally()
|
|
23148
|
-
* ```
|
|
23149
|
-
*
|
|
23150
|
-
* Queries a paginable list of {@link Amity.Post} objects from cache
|
|
23151
|
-
*
|
|
23152
|
-
* @param query The query parameters
|
|
23153
|
-
* @returns A page of {@link Amity.Post} objects
|
|
23154
|
-
*
|
|
23155
|
-
* @category Feed API
|
|
23156
|
-
* @async
|
|
23157
|
-
* */
|
|
23158
|
-
getCustomRankingGlobalFeed.locally = (query) => {
|
|
23159
|
-
var _a, _b;
|
|
23160
|
-
const client = getActiveClient();
|
|
23161
|
-
client.log('post/getCustomRankingGlobalFeed.locally', query);
|
|
23162
|
-
if (!client.cache)
|
|
23163
|
-
return;
|
|
23164
|
-
const params = __rest(query !== null && query !== void 0 ? query : {}, []);
|
|
23165
|
-
const queryKey = ['customGlobalFeed', 'query', Object.assign({}, params)];
|
|
23166
|
-
const { data, cachedAt } = (_a = pullFromCache(queryKey)) !== null && _a !== void 0 ? _a : {};
|
|
23167
|
-
if (!(data === null || data === void 0 ? void 0 : data.posts.length))
|
|
23168
|
-
return;
|
|
23169
|
-
const posts = data.posts
|
|
23170
|
-
.map(postId => pullFromCache(['post', 'get', postId]))
|
|
23171
|
-
.filter(Boolean)
|
|
23172
|
-
.map(({ data }) => data);
|
|
23173
|
-
const { paging } = data;
|
|
23174
|
-
return posts.length === ((_b = data === null || data === void 0 ? void 0 : data.posts) === null || _b === void 0 ? void 0 : _b.length)
|
|
23175
|
-
? { data: posts.map(LinkedObject.post), cachedAt, paging }
|
|
23176
|
-
: undefined;
|
|
23177
|
-
};
|
|
23178
|
-
|
|
23179
|
-
class UserFeedPaginationController extends PaginationController {
|
|
23181
|
+
class CustomRankingGlobalFeedPaginationController extends PaginationController {
|
|
23180
23182
|
async getRequest(queryParams, token) {
|
|
23181
|
-
const {
|
|
23183
|
+
const { limit } = queryParams, params = __rest(queryParams, ["limit"]);
|
|
23182
23184
|
const options = token ? { token } : { limit };
|
|
23183
|
-
const { data: queryResponse } = await this.http.get(`/api/
|
|
23184
|
-
params: Object.assign(Object.assign({}, params), { options
|
|
23185
|
+
const { data: queryResponse } = await this.http.get(`/api/v5/me/global-feeds`, {
|
|
23186
|
+
params: Object.assign(Object.assign({}, params), { options }),
|
|
23185
23187
|
});
|
|
23186
23188
|
return queryResponse;
|
|
23187
23189
|
}
|
|
@@ -23200,7 +23202,7 @@ var EnumPostActions;
|
|
|
23200
23202
|
EnumPostActions["OnPostDeclined"] = "onPostDeclined";
|
|
23201
23203
|
})(EnumPostActions || (EnumPostActions = {}));
|
|
23202
23204
|
|
|
23203
|
-
class
|
|
23205
|
+
class CustomRankingGlobalFeedQueryStreamController extends QueryStreamController {
|
|
23204
23206
|
constructor(query, cacheKey, notifyChange, preparePayload) {
|
|
23205
23207
|
super(query, cacheKey);
|
|
23206
23208
|
this.notifyChange = notifyChange;
|
|
@@ -23229,40 +23231,28 @@ class UserFeedQueryStreamController extends QueryStreamController {
|
|
|
23229
23231
|
}
|
|
23230
23232
|
reactor(action) {
|
|
23231
23233
|
return (post) => {
|
|
23232
|
-
var _a
|
|
23234
|
+
var _a;
|
|
23233
23235
|
const collection = (_a = pullFromCache(this.cacheKey)) === null || _a === void 0 ? void 0 : _a.data;
|
|
23234
23236
|
if (!collection)
|
|
23235
23237
|
return;
|
|
23236
|
-
|
|
23237
|
-
// post is not included in the collection or post is child post
|
|
23238
|
-
if ((!this.query.dataTypes || this.query.dataTypes.length === 0) &&
|
|
23239
|
-
!collection.data.includes(post.parentPostId ? post.parentPostId : post.postId))
|
|
23238
|
+
if (post.parentPostId && !collection.data.includes(post.parentPostId))
|
|
23240
23239
|
return;
|
|
23240
|
+
// Delete Action
|
|
23241
23241
|
if (action === EnumPostActions.OnPostDeleted) {
|
|
23242
|
-
|
|
23243
|
-
}
|
|
23244
|
-
if (post.parentPostId && post.isDeleted) {
|
|
23245
|
-
const parentPost = (_b = pullFromCache([
|
|
23246
|
-
'post',
|
|
23247
|
-
'get',
|
|
23248
|
-
post.parentPostId,
|
|
23249
|
-
])) === null || _b === void 0 ? void 0 : _b.data;
|
|
23250
|
-
if (!parentPost)
|
|
23251
|
-
return;
|
|
23252
|
-
parentPost.children = parentPost.children.filter(childId => childId !== post.postId);
|
|
23253
|
-
pushToCache(['post', 'get', parentPost.postId], parentPost);
|
|
23254
|
-
}
|
|
23255
|
-
if (action === EnumPostActions.OnPostDeclined) {
|
|
23242
|
+
// Parent Post - Remove from collection
|
|
23256
23243
|
collection.data = collection.data.filter(postId => postId !== post.postId);
|
|
23257
23244
|
}
|
|
23258
23245
|
if (action === EnumPostActions.OnPostCreated || action === EnumPostActions.OnPostApproved) {
|
|
23259
|
-
|
|
23260
|
-
|
|
23261
|
-
!this.query.dataTypes.includes(post.dataType))
|
|
23262
|
-
|
|
23246
|
+
// If the query has dataTypes array with value, check if post.dataType is include in the array
|
|
23247
|
+
if (this.query.dataTypes && this.query.dataTypes.length > 0) {
|
|
23248
|
+
if (!this.query.dataTypes.includes(post.dataType))
|
|
23249
|
+
return;
|
|
23263
23250
|
}
|
|
23264
23251
|
collection.data = [...new Set([post.postId, ...collection.data])];
|
|
23265
23252
|
}
|
|
23253
|
+
if (action === EnumPostActions.OnPostDeclined) {
|
|
23254
|
+
collection.data = collection.data.filter(postId => postId !== post.postId);
|
|
23255
|
+
}
|
|
23266
23256
|
pushToCache(this.cacheKey, collection);
|
|
23267
23257
|
this.notifyChange({ origin: "event" /* Amity.LiveDataOrigin.EVENT */, loading: false });
|
|
23268
23258
|
};
|
|
@@ -23566,6 +23556,12 @@ const deleteComment = async (commentId, permanent = false) => {
|
|
|
23566
23556
|
});
|
|
23567
23557
|
// to support hard deletion
|
|
23568
23558
|
const deleted = Object.assign(Object.assign({}, comment.data), { isDeleted: true });
|
|
23559
|
+
if (permanent) {
|
|
23560
|
+
scheduleTask(() => pushToTombstone('comment', commentId));
|
|
23561
|
+
}
|
|
23562
|
+
else {
|
|
23563
|
+
upsertInCache(['comment', 'get', commentId], { isDeleted: true });
|
|
23564
|
+
}
|
|
23569
23565
|
if (comment.data.referenceType === 'story') {
|
|
23570
23566
|
const story = await getStoryByStoryId$1(comment.data.referenceId);
|
|
23571
23567
|
fireEvent('local.story.updated', {
|
|
@@ -23610,12 +23606,6 @@ const deleteComment = async (commentId, permanent = false) => {
|
|
|
23610
23606
|
users: [],
|
|
23611
23607
|
communityUsers: [],
|
|
23612
23608
|
});
|
|
23613
|
-
if (permanent) {
|
|
23614
|
-
scheduleTask(() => pushToTombstone('comment', commentId));
|
|
23615
|
-
}
|
|
23616
|
-
else {
|
|
23617
|
-
upsertInCache(['comment', 'get', commentId], { isDeleted: true });
|
|
23618
|
-
}
|
|
23619
23609
|
return deleted;
|
|
23620
23610
|
};
|
|
23621
23611
|
/* end_public_function */
|
|
@@ -24215,20 +24205,20 @@ getPost$1.locally = (postId) => {
|
|
|
24215
24205
|
|
|
24216
24206
|
/**
|
|
24217
24207
|
* ```js
|
|
24218
|
-
* import {
|
|
24219
|
-
* const dispose =
|
|
24208
|
+
* import { onLocalPostDeleted } from '@amityco/ts-sdk'
|
|
24209
|
+
* const dispose = onLocalPostDeleted(post => {
|
|
24220
24210
|
* // ...
|
|
24221
24211
|
* })
|
|
24222
24212
|
* ```
|
|
24223
24213
|
*
|
|
24224
|
-
* Fired when a {@link Amity.InternalPost} has been
|
|
24214
|
+
* Fired when a {@link Amity.InternalPost} has been deleted
|
|
24225
24215
|
*
|
|
24226
24216
|
* @param callback The function to call when the event was fired
|
|
24227
24217
|
* @returns an {@link Amity.Unsubscriber} function to stop listening
|
|
24228
24218
|
*
|
|
24229
24219
|
* @category Post Events
|
|
24230
24220
|
*/
|
|
24231
|
-
const
|
|
24221
|
+
const onLocalPostDeleted = (callback) => createLocalPostEventSubscriber('local.post.deleted', callback);
|
|
24232
24222
|
|
|
24233
24223
|
/**
|
|
24234
24224
|
* ```js
|
|
@@ -24290,29 +24280,74 @@ const onLocalPostReactionRemoved = (callback) => {
|
|
|
24290
24280
|
|
|
24291
24281
|
/**
|
|
24292
24282
|
* ```js
|
|
24293
|
-
* import {
|
|
24294
|
-
* const dispose =
|
|
24283
|
+
* import { onPostUpdatedLocal } from '@amityco/ts-sdk'
|
|
24284
|
+
* const dispose = onPostUpdatedLocal(post => {
|
|
24295
24285
|
* // ...
|
|
24296
24286
|
* })
|
|
24297
24287
|
* ```
|
|
24298
24288
|
*
|
|
24299
|
-
* Fired when a {@link Amity.InternalPost} has been
|
|
24289
|
+
* Fired when a {@link Amity.InternalPost} has been updated
|
|
24300
24290
|
*
|
|
24301
24291
|
* @param callback The function to call when the event was fired
|
|
24302
24292
|
* @returns an {@link Amity.Unsubscriber} function to stop listening
|
|
24303
24293
|
*
|
|
24304
24294
|
* @category Post Events
|
|
24305
24295
|
*/
|
|
24306
|
-
const
|
|
24296
|
+
const onPostUpdatedLocal = (callback) => createLocalPostEventSubscriber('local.post.updated', callback);
|
|
24307
24297
|
|
|
24308
|
-
|
|
24298
|
+
const commentEventHandler$1 = (callback, eventHandler, cacheKey) => {
|
|
24299
|
+
return eventHandler(async (comment) => {
|
|
24300
|
+
var _a;
|
|
24301
|
+
const currentCollection = (_a = pullFromCache(cacheKey)) === null || _a === void 0 ? void 0 : _a.data;
|
|
24302
|
+
if (!currentCollection || !currentCollection.data.includes(comment.referenceId))
|
|
24303
|
+
return;
|
|
24304
|
+
await getPost$1(comment.referenceId);
|
|
24305
|
+
callback(comment);
|
|
24306
|
+
});
|
|
24307
|
+
};
|
|
24308
|
+
const generateCommentSubscriptions$1 = (cacheKey) => {
|
|
24309
|
+
const eventHandlers = [
|
|
24310
|
+
onCommentCreated,
|
|
24311
|
+
onCommentDeleted,
|
|
24312
|
+
onCommentReactionAdded,
|
|
24313
|
+
onCommentReactionRemoved,
|
|
24314
|
+
onCommentCreatedLocal,
|
|
24315
|
+
onCommentDeleteLocal,
|
|
24316
|
+
onLocalCommentReactionAdded,
|
|
24317
|
+
onLocalCommentReactionRemoved,
|
|
24318
|
+
];
|
|
24319
|
+
return eventHandlers.map(handler => ({
|
|
24320
|
+
fn: convertEventPayload((callback) => commentEventHandler$1(callback, handler, cacheKey), 'referenceId', 'post'),
|
|
24321
|
+
action: EnumPostActions.OnPostUpdated,
|
|
24322
|
+
}));
|
|
24323
|
+
};
|
|
24324
|
+
const getGlobalFeedSubscriptions = (cacheKey) => {
|
|
24325
|
+
return [
|
|
24326
|
+
{ fn: onPostCreated, action: EnumPostActions.OnPostCreated },
|
|
24327
|
+
{ fn: onPostUpdated, action: EnumPostActions.OnPostUpdated },
|
|
24328
|
+
{ fn: onPostUpdatedLocal, action: EnumPostActions.OnPostUpdated },
|
|
24329
|
+
{ fn: onPostDeleted, action: EnumPostActions.OnPostDeleted },
|
|
24330
|
+
{ fn: onPostFlagged, action: EnumPostActions.OnPostFlagged },
|
|
24331
|
+
{ fn: onPostUnflagged, action: EnumPostActions.OnPostUnflagged },
|
|
24332
|
+
{ fn: onPostApproved, action: EnumPostActions.OnPostApproved },
|
|
24333
|
+
{ fn: onPostDeclined, action: EnumPostActions.OnPostDeclined },
|
|
24334
|
+
{ fn: onPostReactionAdded, action: EnumPostActions.OnPostReactionAdded },
|
|
24335
|
+
{ fn: onPostReactionRemoved, action: EnumPostActions.OnPostReactionRemoved },
|
|
24336
|
+
{ fn: onLocalPostReactionAdded, action: EnumPostActions.OnPostReactionAdded },
|
|
24337
|
+
{ fn: onLocalPostReactionRemoved, action: EnumPostActions.OnPostReactionRemoved },
|
|
24338
|
+
{ fn: onLocalPostDeleted, action: EnumPostActions.OnPostDeleted },
|
|
24339
|
+
...generateCommentSubscriptions$1(cacheKey),
|
|
24340
|
+
];
|
|
24341
|
+
};
|
|
24342
|
+
|
|
24343
|
+
class CustomRankingGlobalFeedLiveCollectionController extends LiveCollectionController {
|
|
24309
24344
|
constructor(query, callback) {
|
|
24310
24345
|
const queryStreamId = hash__default["default"](query);
|
|
24311
|
-
const cacheKey = ['
|
|
24312
|
-
const paginationController = new
|
|
24346
|
+
const cacheKey = ['customRankingGlobalFeed', 'collection', queryStreamId];
|
|
24347
|
+
const paginationController = new CustomRankingGlobalFeedPaginationController(query);
|
|
24313
24348
|
super(paginationController, queryStreamId, cacheKey, callback);
|
|
24314
24349
|
this.query = query;
|
|
24315
|
-
this.queryStreamController = new
|
|
24350
|
+
this.queryStreamController = new CustomRankingGlobalFeedQueryStreamController(this.query, this.cacheKey, this.notifyChange.bind(this), preparePostPayload);
|
|
24316
24351
|
this.callback = callback.bind(this);
|
|
24317
24352
|
this.loadPage({ initial: true });
|
|
24318
24353
|
}
|
|
@@ -24333,54 +24368,14 @@ class UserFeedLiveCollectionController extends LiveCollectionController {
|
|
|
24333
24368
|
this.queryStreamController.appendToQueryStream(response, direction, refresh);
|
|
24334
24369
|
}
|
|
24335
24370
|
startSubscription() {
|
|
24336
|
-
return this.queryStreamController.subscribeRTE(
|
|
24337
|
-
{ fn: onPostCreated, action: EnumPostActions.OnPostCreated },
|
|
24338
|
-
{ fn: onPostUpdated, action: EnumPostActions.OnPostUpdated },
|
|
24339
|
-
{ fn: onPostUpdatedLocal, action: EnumPostActions.OnPostUpdated },
|
|
24340
|
-
{ fn: onPostDeleted, action: EnumPostActions.OnPostDeleted },
|
|
24341
|
-
{ fn: onPostFlagged, action: EnumPostActions.OnPostFlagged },
|
|
24342
|
-
{ fn: onPostUnflagged, action: EnumPostActions.OnPostUnflagged },
|
|
24343
|
-
{ fn: onPostApproved, action: EnumPostActions.OnPostApproved },
|
|
24344
|
-
{ fn: onPostDeclined, action: EnumPostActions.OnPostDeclined },
|
|
24345
|
-
{ fn: onPostReactionAdded, action: EnumPostActions.OnPostReactionAdded },
|
|
24346
|
-
{ fn: onPostReactionRemoved, action: EnumPostActions.OnPostReactionRemoved },
|
|
24347
|
-
{ fn: onLocalPostReactionAdded, action: EnumPostActions.OnPostReactionAdded },
|
|
24348
|
-
{ fn: onLocalPostReactionRemoved, action: EnumPostActions.OnPostReactionRemoved },
|
|
24349
|
-
{ fn: onLocalPostDeleted, action: EnumPostActions.OnPostDeleted },
|
|
24350
|
-
{
|
|
24351
|
-
fn: convertEventPayload((callback) => {
|
|
24352
|
-
return onCommentCreated(async (comment) => {
|
|
24353
|
-
var _a;
|
|
24354
|
-
const currentCollection = (_a = pullFromCache(this.cacheKey)) === null || _a === void 0 ? void 0 : _a.data;
|
|
24355
|
-
if (!currentCollection || currentCollection.data.includes(comment.referenceId))
|
|
24356
|
-
return;
|
|
24357
|
-
await getPost$1(comment.referenceId);
|
|
24358
|
-
callback(comment);
|
|
24359
|
-
});
|
|
24360
|
-
}, 'referenceId', 'post'),
|
|
24361
|
-
action: EnumPostActions.OnPostUpdated,
|
|
24362
|
-
},
|
|
24363
|
-
{
|
|
24364
|
-
fn: convertEventPayload((callback) => {
|
|
24365
|
-
return onCommentDeleted(async (comment) => {
|
|
24366
|
-
var _a;
|
|
24367
|
-
const currentCollection = (_a = pullFromCache(this.cacheKey)) === null || _a === void 0 ? void 0 : _a.data;
|
|
24368
|
-
if (!currentCollection || currentCollection.data.includes(comment.referenceId))
|
|
24369
|
-
return;
|
|
24370
|
-
await getPost$1(comment.referenceId);
|
|
24371
|
-
callback(comment);
|
|
24372
|
-
});
|
|
24373
|
-
}, 'referenceId', 'post'),
|
|
24374
|
-
action: EnumPostActions.OnPostUpdated,
|
|
24375
|
-
},
|
|
24376
|
-
]);
|
|
24371
|
+
return this.queryStreamController.subscribeRTE(getGlobalFeedSubscriptions(this.cacheKey));
|
|
24377
24372
|
}
|
|
24378
24373
|
notifyChange({ origin, loading, error }) {
|
|
24379
24374
|
var _a, _b;
|
|
24380
24375
|
const collection = (_a = pullFromCache(this.cacheKey)) === null || _a === void 0 ? void 0 : _a.data;
|
|
24381
24376
|
if (!collection)
|
|
24382
24377
|
return;
|
|
24383
|
-
const data =
|
|
24378
|
+
const data = ((_b = collection.data
|
|
24384
24379
|
.map(id => pullFromCache(['post', 'get', id]))
|
|
24385
24380
|
.filter(isNonNullable)
|
|
24386
24381
|
.map(({ data }) => data)) !== null && _b !== void 0 ? _b : []).map(LinkedObject.post);
|
|
@@ -24394,74 +24389,433 @@ class UserFeedLiveCollectionController extends LiveCollectionController {
|
|
|
24394
24389
|
error,
|
|
24395
24390
|
});
|
|
24396
24391
|
}
|
|
24397
|
-
applyFilter(data) {
|
|
24398
|
-
var _a;
|
|
24399
|
-
let posts = data;
|
|
24400
|
-
if (!this.query.includeDeleted) {
|
|
24401
|
-
posts = filterByPropEquality(posts, 'isDeleted', false);
|
|
24402
|
-
}
|
|
24403
|
-
if ((_a = this.query.dataTypes) === null || _a === void 0 ? void 0 : _a.length) {
|
|
24404
|
-
posts = filterByPostDataTypes(posts, this.query.dataTypes);
|
|
24405
|
-
}
|
|
24406
|
-
switch (this.query.sortBy) {
|
|
24407
|
-
case 'firstCreated':
|
|
24408
|
-
posts = posts.sort(sortByFirstCreated);
|
|
24409
|
-
break;
|
|
24410
|
-
case 'lastCreated':
|
|
24411
|
-
default:
|
|
24412
|
-
posts = posts.sort(sortByLastCreated);
|
|
24413
|
-
break;
|
|
24414
|
-
}
|
|
24415
|
-
return posts;
|
|
24416
|
-
}
|
|
24417
24392
|
}
|
|
24418
24393
|
|
|
24419
24394
|
/* begin_public_function
|
|
24420
|
-
id: feed.query.
|
|
24395
|
+
id: feed.query.custom_ranking_feed
|
|
24421
24396
|
*/
|
|
24422
24397
|
/**
|
|
24423
24398
|
* ```js
|
|
24424
24399
|
* import { FeedRepository } from '@amityco/ts-sdk'
|
|
24425
24400
|
*
|
|
24426
24401
|
* let posts = []
|
|
24427
|
-
* const
|
|
24428
|
-
*
|
|
24429
|
-
*
|
|
24430
|
-
* }, response =>
|
|
24402
|
+
* const unsub = FeedRepository.getGlobalFeed({
|
|
24403
|
+
* dataTypes: ['video','image'],
|
|
24404
|
+
* resolveParent: true,
|
|
24405
|
+
* }, response => processResponse(response))
|
|
24431
24406
|
* ```
|
|
24432
24407
|
*
|
|
24433
|
-
* Observe all mutations on a list of {@link Amity.Post} for a given
|
|
24408
|
+
* Observe all mutations on a list of {@link Amity.Post} for a given target object
|
|
24434
24409
|
*
|
|
24435
|
-
* @param params.
|
|
24436
|
-
* @param params.feedSources the sources of the feed
|
|
24410
|
+
* @param params.dataTypes array of data types for the posts
|
|
24437
24411
|
* @param callback the function to call when new data are available
|
|
24438
24412
|
* @param config
|
|
24439
24413
|
* @returns An {@link Amity.Unsubscriber} function to run when willing to stop observing the messages
|
|
24440
24414
|
*
|
|
24441
24415
|
* @category Posts Live Collection
|
|
24442
24416
|
*/
|
|
24443
|
-
const
|
|
24417
|
+
const getCustomRankingGlobalFeed = (params, callback, config) => {
|
|
24444
24418
|
const { log, cache } = getActiveClient();
|
|
24445
24419
|
if (!cache) {
|
|
24446
24420
|
console.log(ENABLE_CACHE_MESSAGE);
|
|
24447
24421
|
}
|
|
24448
24422
|
const timestamp = Date.now();
|
|
24449
|
-
log(`
|
|
24450
|
-
const
|
|
24451
|
-
const disposers =
|
|
24452
|
-
const cacheKey =
|
|
24423
|
+
log(`getCustomRankingGlobalFeed(tmpid: ${timestamp}) > listen`);
|
|
24424
|
+
const liveCollection = new CustomRankingGlobalFeedLiveCollectionController(params, callback);
|
|
24425
|
+
const disposers = liveCollection.startSubscription();
|
|
24426
|
+
const cacheKey = liveCollection.getCacheKey();
|
|
24453
24427
|
disposers.push(() => dropFromCache(cacheKey));
|
|
24454
24428
|
return () => {
|
|
24455
|
-
log(`
|
|
24429
|
+
log(`getCustomRankingGlobalFeed(tmpid: ${timestamp}) > dispose`);
|
|
24456
24430
|
disposers.forEach(fn => fn());
|
|
24457
24431
|
};
|
|
24458
24432
|
};
|
|
24459
24433
|
/* end_public_function */
|
|
24460
24434
|
|
|
24461
|
-
|
|
24462
|
-
|
|
24435
|
+
class GlobalFeedPaginationController extends PaginationController {
|
|
24436
|
+
async getRequest(queryParams, token) {
|
|
24437
|
+
const { limit, resolveParent } = queryParams, params = __rest(queryParams, ["limit", "resolveParent"]);
|
|
24438
|
+
const options = token ? { token } : { limit };
|
|
24439
|
+
const { data: queryResponse } = await this.http.get(`/api/v4/me/global-feeds`, {
|
|
24440
|
+
params: Object.assign(Object.assign({}, params), { resolveParent: resolveParent !== null && resolveParent !== void 0 ? resolveParent : true, options }),
|
|
24441
|
+
});
|
|
24442
|
+
return queryResponse;
|
|
24443
|
+
}
|
|
24444
|
+
}
|
|
24445
|
+
|
|
24446
|
+
class GlobalFeedQueryStreamController extends QueryStreamController {
|
|
24447
|
+
constructor(query, cacheKey, notifyChange, preparePayload) {
|
|
24448
|
+
super(query, cacheKey);
|
|
24449
|
+
this.notifyChange = notifyChange;
|
|
24450
|
+
this.preparePayload = preparePayload;
|
|
24451
|
+
}
|
|
24452
|
+
async saveToMainDB(response) {
|
|
24453
|
+
const processedPayload = await this.preparePayload(response);
|
|
24454
|
+
const client = getActiveClient();
|
|
24455
|
+
const cachedAt = client.cache && Date.now();
|
|
24456
|
+
if (client.cache) {
|
|
24457
|
+
ingestInCache(processedPayload, { cachedAt });
|
|
24458
|
+
}
|
|
24459
|
+
}
|
|
24460
|
+
appendToQueryStream(response, direction, refresh = false) {
|
|
24461
|
+
var _a, _b;
|
|
24462
|
+
if (refresh) {
|
|
24463
|
+
pushToCache(this.cacheKey, {
|
|
24464
|
+
data: response.posts.map(getResolver('post')),
|
|
24465
|
+
});
|
|
24466
|
+
}
|
|
24467
|
+
else {
|
|
24468
|
+
const collection = (_a = pullFromCache(this.cacheKey)) === null || _a === void 0 ? void 0 : _a.data;
|
|
24469
|
+
const posts = (_b = collection === null || collection === void 0 ? void 0 : collection.data) !== null && _b !== void 0 ? _b : [];
|
|
24470
|
+
pushToCache(this.cacheKey, Object.assign(Object.assign({}, collection), { data: [...new Set([...posts, ...response.posts.map(getResolver('post'))])] }));
|
|
24471
|
+
}
|
|
24472
|
+
}
|
|
24473
|
+
reactor(action) {
|
|
24474
|
+
return (post) => {
|
|
24475
|
+
var _a;
|
|
24476
|
+
const collection = (_a = pullFromCache(this.cacheKey)) === null || _a === void 0 ? void 0 : _a.data;
|
|
24477
|
+
if (!collection)
|
|
24478
|
+
return;
|
|
24479
|
+
if (post.parentPostId && !collection.data.includes(post.parentPostId))
|
|
24480
|
+
return;
|
|
24481
|
+
// Delete Action
|
|
24482
|
+
if (action === EnumPostActions.OnPostDeleted) {
|
|
24483
|
+
// Parent Post - Remove from collection
|
|
24484
|
+
collection.data = collection.data.filter(postId => postId !== post.postId);
|
|
24485
|
+
}
|
|
24486
|
+
if (action === EnumPostActions.OnPostCreated || action === EnumPostActions.OnPostApproved) {
|
|
24487
|
+
// If the query has dataTypes array with value, check if post.dataType is include in the array
|
|
24488
|
+
if (this.query.dataTypes && this.query.dataTypes.length > 0) {
|
|
24489
|
+
if (!this.query.dataTypes.includes(post.dataType))
|
|
24490
|
+
return;
|
|
24491
|
+
}
|
|
24492
|
+
collection.data = [...new Set([post.postId, ...collection.data])];
|
|
24493
|
+
}
|
|
24494
|
+
if (action === EnumPostActions.OnPostDeclined) {
|
|
24495
|
+
collection.data = collection.data.filter(postId => postId !== post.postId);
|
|
24496
|
+
}
|
|
24497
|
+
pushToCache(this.cacheKey, collection);
|
|
24498
|
+
this.notifyChange({ origin: "event" /* Amity.LiveDataOrigin.EVENT */, loading: false });
|
|
24499
|
+
};
|
|
24500
|
+
}
|
|
24501
|
+
subscribeRTE(createSubscriber) {
|
|
24502
|
+
return createSubscriber.map(subscriber => subscriber.fn(this.reactor(subscriber.action)));
|
|
24503
|
+
}
|
|
24504
|
+
}
|
|
24505
|
+
|
|
24506
|
+
class GlobalFeedLiveCollectionController extends LiveCollectionController {
|
|
24507
|
+
constructor(query, callback) {
|
|
24508
|
+
const queryStreamId = hash__default["default"](query);
|
|
24509
|
+
const cacheKey = ['globalFeed', 'collection', queryStreamId];
|
|
24510
|
+
const paginationController = new GlobalFeedPaginationController(query);
|
|
24511
|
+
super(paginationController, queryStreamId, cacheKey, callback);
|
|
24512
|
+
this.query = query;
|
|
24513
|
+
this.queryStreamController = new GlobalFeedQueryStreamController(this.query, this.cacheKey, this.notifyChange.bind(this), preparePostPayload);
|
|
24514
|
+
this.callback = callback.bind(this);
|
|
24515
|
+
this.loadPage({ initial: true });
|
|
24516
|
+
}
|
|
24517
|
+
setup() {
|
|
24518
|
+
var _a;
|
|
24519
|
+
const collection = (_a = pullFromCache(this.cacheKey)) === null || _a === void 0 ? void 0 : _a.data;
|
|
24520
|
+
if (!collection) {
|
|
24521
|
+
pushToCache(this.cacheKey, {
|
|
24522
|
+
data: [],
|
|
24523
|
+
params: {},
|
|
24524
|
+
});
|
|
24525
|
+
}
|
|
24526
|
+
}
|
|
24527
|
+
async persistModel(queryPayload) {
|
|
24528
|
+
await this.queryStreamController.saveToMainDB(queryPayload);
|
|
24529
|
+
}
|
|
24530
|
+
persistQueryStream({ response, direction, refresh, }) {
|
|
24531
|
+
this.queryStreamController.appendToQueryStream(response, direction, refresh);
|
|
24532
|
+
}
|
|
24533
|
+
startSubscription() {
|
|
24534
|
+
return this.queryStreamController.subscribeRTE(getGlobalFeedSubscriptions(this.cacheKey));
|
|
24535
|
+
}
|
|
24536
|
+
notifyChange({ origin, loading, error }) {
|
|
24537
|
+
var _a, _b;
|
|
24538
|
+
const collection = (_a = pullFromCache(this.cacheKey)) === null || _a === void 0 ? void 0 : _a.data;
|
|
24539
|
+
if (!collection)
|
|
24540
|
+
return;
|
|
24541
|
+
const data = ((_b = collection.data
|
|
24542
|
+
.map(id => pullFromCache(['post', 'get', id]))
|
|
24543
|
+
.filter(isNonNullable)
|
|
24544
|
+
.map(({ data }) => data)) !== null && _b !== void 0 ? _b : []).map(LinkedObject.post);
|
|
24545
|
+
if (!this.shouldNotify(data) && origin === 'event')
|
|
24546
|
+
return;
|
|
24547
|
+
this.callback({
|
|
24548
|
+
onNextPage: () => this.loadPage({ direction: "next" /* Amity.LiveCollectionPageDirection.NEXT */ }),
|
|
24549
|
+
data,
|
|
24550
|
+
hasNextPage: !!this.paginationController.getNextToken(),
|
|
24551
|
+
loading,
|
|
24552
|
+
error,
|
|
24553
|
+
});
|
|
24554
|
+
}
|
|
24555
|
+
}
|
|
24556
|
+
|
|
24557
|
+
/* begin_public_function
|
|
24558
|
+
id: feed.query.global_feed
|
|
24559
|
+
*/
|
|
24560
|
+
/**
|
|
24561
|
+
* ```js
|
|
24562
|
+
* import { FeedRepository } from '@amityco/ts-sdk'
|
|
24563
|
+
*
|
|
24564
|
+
* let posts = []
|
|
24565
|
+
* const unsub = FeedRepository.getGlobalFeed({
|
|
24566
|
+
* dataTypes: ['video','image'],
|
|
24567
|
+
* resolveParent: true,
|
|
24568
|
+
* }, response => processResponse(response))
|
|
24569
|
+
* ```
|
|
24570
|
+
*
|
|
24571
|
+
* Observe all mutations on a list of {@link Amity.Post} for global feed
|
|
24572
|
+
* @param params.dataTypes array of data types for the posts
|
|
24573
|
+
* @param params.resolveParent
|
|
24574
|
+
* @param callback the function to call when new data are available
|
|
24575
|
+
* @param config
|
|
24576
|
+
* @returns An {@link Amity.Unsubscriber} function to run when willing to stop observing the messages
|
|
24577
|
+
*
|
|
24578
|
+
* @category Posts Live Collection
|
|
24579
|
+
*/
|
|
24580
|
+
const getGlobalFeed = (params, callback, config) => {
|
|
24581
|
+
const { log, cache } = getActiveClient();
|
|
24582
|
+
if (!cache) {
|
|
24583
|
+
console.log(ENABLE_CACHE_MESSAGE);
|
|
24584
|
+
}
|
|
24585
|
+
const timestamp = Date.now();
|
|
24586
|
+
log(`getGlobalFeed(tmpid: ${timestamp}) > listen`);
|
|
24587
|
+
const liveCollection = new GlobalFeedLiveCollectionController(params, callback);
|
|
24588
|
+
const disposers = liveCollection.startSubscription();
|
|
24589
|
+
const cacheKey = liveCollection.getCacheKey();
|
|
24590
|
+
disposers.push(() => dropFromCache(cacheKey));
|
|
24591
|
+
return () => {
|
|
24592
|
+
log(`getGlobalFeed(tmpid: ${timestamp}) > dispose`);
|
|
24593
|
+
disposers.forEach(fn => fn());
|
|
24594
|
+
};
|
|
24595
|
+
};
|
|
24596
|
+
/* end_public_function */
|
|
24597
|
+
|
|
24598
|
+
class UserFeedPaginationController extends PaginationController {
|
|
24599
|
+
async getRequest(queryParams, token) {
|
|
24600
|
+
const { userId, feedSources, dataTypes, includeDeleted, matchingOnlyParentPost, limit = COLLECTION_DEFAULT_PAGINATION_LIMIT } = queryParams, params = __rest(queryParams, ["userId", "feedSources", "dataTypes", "includeDeleted", "matchingOnlyParentPost", "limit"]);
|
|
24601
|
+
const options = token ? { token } : { limit };
|
|
24602
|
+
const { data: queryResponse } = await this.http.get(`/api/v4/user-feeds/${userId}`, {
|
|
24603
|
+
params: Object.assign(Object.assign({}, params), { options, dataTypes: (dataTypes === null || dataTypes === void 0 ? void 0 : dataTypes.length) ? dataTypes : undefined, includePostedFeed: feedSources, isDeleted: inferIsDeleted(includeDeleted), matchingOnlyParentPost: matchingOnlyParentPost !== null && matchingOnlyParentPost !== void 0 ? matchingOnlyParentPost : !(dataTypes === null || dataTypes === void 0 ? void 0 : dataTypes.length) }),
|
|
24604
|
+
});
|
|
24605
|
+
return queryResponse;
|
|
24606
|
+
}
|
|
24607
|
+
}
|
|
24608
|
+
|
|
24609
|
+
class UserFeedQueryStreamController extends QueryStreamController {
|
|
24610
|
+
constructor(query, cacheKey, notifyChange, preparePayload) {
|
|
24611
|
+
super(query, cacheKey);
|
|
24612
|
+
this.notifyChange = notifyChange;
|
|
24613
|
+
this.preparePayload = preparePayload;
|
|
24614
|
+
}
|
|
24615
|
+
async saveToMainDB(response) {
|
|
24616
|
+
const processedPayload = await this.preparePayload(response);
|
|
24617
|
+
const client = getActiveClient();
|
|
24618
|
+
const cachedAt = client.cache && Date.now();
|
|
24619
|
+
if (client.cache) {
|
|
24620
|
+
ingestInCache(processedPayload, { cachedAt });
|
|
24621
|
+
}
|
|
24622
|
+
}
|
|
24623
|
+
appendToQueryStream(response, direction, refresh = false) {
|
|
24624
|
+
var _a, _b;
|
|
24625
|
+
if (refresh) {
|
|
24626
|
+
pushToCache(this.cacheKey, {
|
|
24627
|
+
data: response.posts.map(getResolver('post')),
|
|
24628
|
+
});
|
|
24629
|
+
}
|
|
24630
|
+
else {
|
|
24631
|
+
const collection = (_a = pullFromCache(this.cacheKey)) === null || _a === void 0 ? void 0 : _a.data;
|
|
24632
|
+
const posts = (_b = collection === null || collection === void 0 ? void 0 : collection.data) !== null && _b !== void 0 ? _b : [];
|
|
24633
|
+
pushToCache(this.cacheKey, Object.assign(Object.assign({}, collection), { data: [...new Set([...posts, ...response.posts.map(getResolver('post'))])] }));
|
|
24634
|
+
}
|
|
24635
|
+
}
|
|
24636
|
+
reactor(action) {
|
|
24637
|
+
return (post) => {
|
|
24638
|
+
var _a, _b;
|
|
24639
|
+
const collection = (_a = pullFromCache(this.cacheKey)) === null || _a === void 0 ? void 0 : _a.data;
|
|
24640
|
+
if (!collection)
|
|
24641
|
+
return;
|
|
24642
|
+
// if the collection is parent post collection and
|
|
24643
|
+
// post is not included in the collection or post is child post
|
|
24644
|
+
if ((!this.query.dataTypes || this.query.dataTypes.length === 0) &&
|
|
24645
|
+
!collection.data.includes(post.parentPostId ? post.parentPostId : post.postId))
|
|
24646
|
+
return;
|
|
24647
|
+
if (action === EnumPostActions.OnPostDeleted) {
|
|
24648
|
+
collection.data = collection.data.filter(postId => postId !== post.postId);
|
|
24649
|
+
}
|
|
24650
|
+
if (post.parentPostId && post.isDeleted) {
|
|
24651
|
+
const parentPost = (_b = pullFromCache([
|
|
24652
|
+
'post',
|
|
24653
|
+
'get',
|
|
24654
|
+
post.parentPostId,
|
|
24655
|
+
])) === null || _b === void 0 ? void 0 : _b.data;
|
|
24656
|
+
if (!parentPost)
|
|
24657
|
+
return;
|
|
24658
|
+
parentPost.children = parentPost.children.filter(childId => childId !== post.postId);
|
|
24659
|
+
pushToCache(['post', 'get', parentPost.postId], parentPost);
|
|
24660
|
+
}
|
|
24661
|
+
if (action === EnumPostActions.OnPostDeclined) {
|
|
24662
|
+
collection.data = collection.data.filter(postId => postId !== post.postId);
|
|
24663
|
+
}
|
|
24664
|
+
if (action === EnumPostActions.OnPostCreated || action === EnumPostActions.OnPostApproved) {
|
|
24665
|
+
if (this.query.dataTypes &&
|
|
24666
|
+
this.query.dataTypes.length > 0 &&
|
|
24667
|
+
!this.query.dataTypes.includes(post.dataType)) {
|
|
24668
|
+
return;
|
|
24669
|
+
}
|
|
24670
|
+
collection.data = [...new Set([post.postId, ...collection.data])];
|
|
24671
|
+
}
|
|
24672
|
+
pushToCache(this.cacheKey, collection);
|
|
24673
|
+
this.notifyChange({ origin: "event" /* Amity.LiveDataOrigin.EVENT */, loading: false });
|
|
24674
|
+
};
|
|
24675
|
+
}
|
|
24676
|
+
subscribeRTE(createSubscriber) {
|
|
24677
|
+
return createSubscriber.map(subscriber => subscriber.fn(this.reactor(subscriber.action)));
|
|
24678
|
+
}
|
|
24679
|
+
}
|
|
24680
|
+
|
|
24681
|
+
class UserFeedLiveCollectionController extends LiveCollectionController {
|
|
24682
|
+
constructor(query, callback) {
|
|
24683
|
+
const queryStreamId = hash__default["default"](query);
|
|
24684
|
+
const cacheKey = ['userFeed', 'collection', queryStreamId];
|
|
24685
|
+
const paginationController = new UserFeedPaginationController(query);
|
|
24686
|
+
super(paginationController, queryStreamId, cacheKey, callback);
|
|
24687
|
+
this.query = query;
|
|
24688
|
+
this.queryStreamController = new UserFeedQueryStreamController(this.query, this.cacheKey, this.notifyChange.bind(this), preparePostPayload);
|
|
24689
|
+
this.callback = callback.bind(this);
|
|
24690
|
+
this.loadPage({ initial: true });
|
|
24691
|
+
}
|
|
24692
|
+
setup() {
|
|
24693
|
+
var _a;
|
|
24694
|
+
const collection = (_a = pullFromCache(this.cacheKey)) === null || _a === void 0 ? void 0 : _a.data;
|
|
24695
|
+
if (!collection) {
|
|
24696
|
+
pushToCache(this.cacheKey, {
|
|
24697
|
+
data: [],
|
|
24698
|
+
params: {},
|
|
24699
|
+
});
|
|
24700
|
+
}
|
|
24701
|
+
}
|
|
24702
|
+
async persistModel(queryPayload) {
|
|
24703
|
+
await this.queryStreamController.saveToMainDB(queryPayload);
|
|
24704
|
+
}
|
|
24705
|
+
persistQueryStream({ response, direction, refresh, }) {
|
|
24706
|
+
this.queryStreamController.appendToQueryStream(response, direction, refresh);
|
|
24707
|
+
}
|
|
24708
|
+
startSubscription() {
|
|
24709
|
+
return this.queryStreamController.subscribeRTE([
|
|
24710
|
+
{ fn: onPostCreated, action: EnumPostActions.OnPostCreated },
|
|
24711
|
+
{ fn: onPostUpdated, action: EnumPostActions.OnPostUpdated },
|
|
24712
|
+
{ fn: onPostUpdatedLocal, action: EnumPostActions.OnPostUpdated },
|
|
24713
|
+
{ fn: onPostDeleted, action: EnumPostActions.OnPostDeleted },
|
|
24714
|
+
{ fn: onPostFlagged, action: EnumPostActions.OnPostFlagged },
|
|
24715
|
+
{ fn: onPostUnflagged, action: EnumPostActions.OnPostUnflagged },
|
|
24716
|
+
{ fn: onPostApproved, action: EnumPostActions.OnPostApproved },
|
|
24717
|
+
{ fn: onPostDeclined, action: EnumPostActions.OnPostDeclined },
|
|
24718
|
+
{ fn: onPostReactionAdded, action: EnumPostActions.OnPostReactionAdded },
|
|
24719
|
+
{ fn: onPostReactionRemoved, action: EnumPostActions.OnPostReactionRemoved },
|
|
24720
|
+
{ fn: onLocalPostReactionAdded, action: EnumPostActions.OnPostReactionAdded },
|
|
24721
|
+
{ fn: onLocalPostReactionRemoved, action: EnumPostActions.OnPostReactionRemoved },
|
|
24722
|
+
{ fn: onLocalPostDeleted, action: EnumPostActions.OnPostDeleted },
|
|
24723
|
+
{
|
|
24724
|
+
fn: convertEventPayload((callback) => {
|
|
24725
|
+
return onCommentCreated(async (comment) => {
|
|
24726
|
+
var _a;
|
|
24727
|
+
const currentCollection = (_a = pullFromCache(this.cacheKey)) === null || _a === void 0 ? void 0 : _a.data;
|
|
24728
|
+
if (!currentCollection || currentCollection.data.includes(comment.referenceId))
|
|
24729
|
+
return;
|
|
24730
|
+
await getPost$1(comment.referenceId);
|
|
24731
|
+
callback(comment);
|
|
24732
|
+
});
|
|
24733
|
+
}, 'referenceId', 'post'),
|
|
24734
|
+
action: EnumPostActions.OnPostUpdated,
|
|
24735
|
+
},
|
|
24736
|
+
{
|
|
24737
|
+
fn: convertEventPayload((callback) => {
|
|
24738
|
+
return onCommentDeleted(async (comment) => {
|
|
24739
|
+
var _a;
|
|
24740
|
+
const currentCollection = (_a = pullFromCache(this.cacheKey)) === null || _a === void 0 ? void 0 : _a.data;
|
|
24741
|
+
if (!currentCollection || currentCollection.data.includes(comment.referenceId))
|
|
24742
|
+
return;
|
|
24743
|
+
await getPost$1(comment.referenceId);
|
|
24744
|
+
callback(comment);
|
|
24745
|
+
});
|
|
24746
|
+
}, 'referenceId', 'post'),
|
|
24747
|
+
action: EnumPostActions.OnPostUpdated,
|
|
24748
|
+
},
|
|
24749
|
+
]);
|
|
24750
|
+
}
|
|
24751
|
+
notifyChange({ origin, loading, error }) {
|
|
24752
|
+
var _a, _b;
|
|
24753
|
+
const collection = (_a = pullFromCache(this.cacheKey)) === null || _a === void 0 ? void 0 : _a.data;
|
|
24754
|
+
if (!collection)
|
|
24755
|
+
return;
|
|
24756
|
+
const data = ((_b = collection.data
|
|
24757
|
+
.map(id => pullFromCache(['post', 'get', id]))
|
|
24758
|
+
.filter(isNonNullable)
|
|
24759
|
+
.map(({ data }) => data)) !== null && _b !== void 0 ? _b : []).map(LinkedObject.post);
|
|
24760
|
+
if (!this.shouldNotify(data) && origin === 'event')
|
|
24761
|
+
return;
|
|
24762
|
+
this.callback({
|
|
24763
|
+
onNextPage: () => this.loadPage({ direction: "next" /* Amity.LiveCollectionPageDirection.NEXT */ }),
|
|
24764
|
+
data,
|
|
24765
|
+
hasNextPage: !!this.paginationController.getNextToken(),
|
|
24766
|
+
loading,
|
|
24767
|
+
error,
|
|
24768
|
+
});
|
|
24769
|
+
}
|
|
24770
|
+
}
|
|
24771
|
+
|
|
24772
|
+
/* begin_public_function
|
|
24773
|
+
id: feed.query.user_feed
|
|
24774
|
+
*/
|
|
24775
|
+
/**
|
|
24776
|
+
* ```js
|
|
24777
|
+
* import { FeedRepository } from '@amityco/ts-sdk'
|
|
24778
|
+
*
|
|
24779
|
+
* let posts = []
|
|
24780
|
+
* const unsubscribe = FeedRepository.getUserFeed({
|
|
24781
|
+
* userId: string,
|
|
24782
|
+
* feedSources: ['user', 'community'],
|
|
24783
|
+
* }, response => response => processResponse(response))
|
|
24784
|
+
* ```
|
|
24785
|
+
*
|
|
24786
|
+
* Observe all mutations on a list of {@link Amity.Post} for a given user and feedSources
|
|
24787
|
+
*
|
|
24788
|
+
* @param params.userId the ID of the user
|
|
24789
|
+
* @param params.feedSources the sources of the feed
|
|
24790
|
+
* @param callback the function to call when new data are available
|
|
24791
|
+
* @param config
|
|
24792
|
+
* @returns An {@link Amity.Unsubscriber} function to run when willing to stop observing the messages
|
|
24793
|
+
*
|
|
24794
|
+
* @category Posts Live Collection
|
|
24795
|
+
*/
|
|
24796
|
+
const getUserFeed = (params, callback, config) => {
|
|
24797
|
+
const { log, cache } = getActiveClient();
|
|
24798
|
+
if (!cache) {
|
|
24799
|
+
console.log(ENABLE_CACHE_MESSAGE);
|
|
24800
|
+
}
|
|
24801
|
+
const timestamp = Date.now();
|
|
24802
|
+
log(`getUserFeed(tmpid: ${timestamp}) > listen`);
|
|
24803
|
+
const userFeedLiveCollection = new UserFeedLiveCollectionController(params, callback);
|
|
24804
|
+
const disposers = userFeedLiveCollection.startSubscription();
|
|
24805
|
+
const cacheKey = userFeedLiveCollection.getCacheKey();
|
|
24806
|
+
disposers.push(() => dropFromCache(cacheKey));
|
|
24807
|
+
return () => {
|
|
24808
|
+
log(`getUserFeed(tmpid: ${timestamp}) > dispose`);
|
|
24809
|
+
disposers.forEach(fn => fn());
|
|
24810
|
+
};
|
|
24811
|
+
};
|
|
24812
|
+
/* end_public_function */
|
|
24813
|
+
|
|
24814
|
+
var index$9 = /*#__PURE__*/Object.freeze({
|
|
24815
|
+
__proto__: null,
|
|
24463
24816
|
queryGlobalFeed: queryGlobalFeed,
|
|
24464
24817
|
getCustomRankingGlobalFeed: getCustomRankingGlobalFeed,
|
|
24818
|
+
getGlobalFeed: getGlobalFeed,
|
|
24465
24819
|
getUserFeed: getUserFeed
|
|
24466
24820
|
});
|
|
24467
24821
|
|
|
@@ -25126,75 +25480,81 @@ class PostQueryStreamController extends QueryStreamController {
|
|
|
25126
25480
|
}
|
|
25127
25481
|
}
|
|
25128
25482
|
|
|
25483
|
+
const commentEventHandler = (callback, eventHandler, cacheKey, resolveId) => {
|
|
25484
|
+
return eventHandler(async (comment) => {
|
|
25485
|
+
var _a;
|
|
25486
|
+
const currentCollection = (_a = pullFromCache(cacheKey)) === null || _a === void 0 ? void 0 : _a.data;
|
|
25487
|
+
if (!currentCollection ||
|
|
25488
|
+
!currentCollection.data.includes(resolveId ? resolveId(comment.referenceId) : comment.referenceId))
|
|
25489
|
+
return;
|
|
25490
|
+
await getPost$1(comment.referenceId);
|
|
25491
|
+
callback(comment);
|
|
25492
|
+
});
|
|
25493
|
+
};
|
|
25494
|
+
const generateCommentSubscriptions = ({ cacheKey, resolveId, }) => {
|
|
25495
|
+
const eventHandlers = [
|
|
25496
|
+
onCommentCreated,
|
|
25497
|
+
onCommentDeleted,
|
|
25498
|
+
onCommentReactionAdded,
|
|
25499
|
+
onCommentReactionRemoved,
|
|
25500
|
+
onCommentCreatedLocal,
|
|
25501
|
+
onCommentDeleteLocal,
|
|
25502
|
+
onLocalCommentReactionAdded,
|
|
25503
|
+
onLocalCommentReactionRemoved,
|
|
25504
|
+
];
|
|
25505
|
+
return eventHandlers.map(handler => ({
|
|
25506
|
+
fn: convertEventPayload((callback) => commentEventHandler(callback, handler, cacheKey, resolveId), 'referenceId', 'post'),
|
|
25507
|
+
action: EnumPostActions.OnPostUpdated,
|
|
25508
|
+
}));
|
|
25509
|
+
};
|
|
25510
|
+
const getPostSubscription = (cacheKey) => {
|
|
25511
|
+
return [
|
|
25512
|
+
{ fn: onPostCreated, action: EnumPostActions.OnPostCreated },
|
|
25513
|
+
{ fn: onPostUpdated, action: EnumPostActions.OnPostUpdated },
|
|
25514
|
+
{ fn: onPostUpdatedLocal, action: EnumPostActions.OnPostUpdated },
|
|
25515
|
+
{ fn: onPostDeleted, action: EnumPostActions.OnPostDeleted },
|
|
25516
|
+
{ fn: onPostFlagged, action: EnumPostActions.OnPostFlagged },
|
|
25517
|
+
{ fn: onPostUnflagged, action: EnumPostActions.OnPostUnflagged },
|
|
25518
|
+
{ fn: onPostApproved, action: EnumPostActions.OnPostApproved },
|
|
25519
|
+
{ fn: onPostDeclined, action: EnumPostActions.OnPostDeclined },
|
|
25520
|
+
{ fn: onPostReactionAdded, action: EnumPostActions.OnPostReactionAdded },
|
|
25521
|
+
{ fn: onPostReactionRemoved, action: EnumPostActions.OnPostReactionRemoved },
|
|
25522
|
+
{ fn: onLocalPostReactionAdded, action: EnumPostActions.OnPostReactionAdded },
|
|
25523
|
+
{ fn: onLocalPostReactionRemoved, action: EnumPostActions.OnPostReactionRemoved },
|
|
25524
|
+
{ fn: onLocalPostDeleted, action: EnumPostActions.OnPostDeleted },
|
|
25525
|
+
...generateCommentSubscriptions({ cacheKey }),
|
|
25526
|
+
];
|
|
25527
|
+
};
|
|
25528
|
+
|
|
25129
25529
|
class PostLiveCollectionController extends LiveCollectionController {
|
|
25130
25530
|
constructor(query, callback) {
|
|
25131
25531
|
const queryStreamId = hash__default["default"](query);
|
|
25132
25532
|
const cacheKey = ['posts', 'collection', queryStreamId];
|
|
25133
25533
|
const paginationController = new PostPaginationController(query);
|
|
25134
|
-
super(paginationController, queryStreamId, cacheKey, callback);
|
|
25135
|
-
this.query = query;
|
|
25136
|
-
this.queryStreamController = new PostQueryStreamController(this.query, this.cacheKey, this.notifyChange.bind(this), preparePostPayload);
|
|
25137
|
-
this.callback = callback.bind(this);
|
|
25138
|
-
this.loadPage({ initial: true });
|
|
25139
|
-
}
|
|
25140
|
-
setup() {
|
|
25141
|
-
var _a;
|
|
25142
|
-
const collection = (_a = pullFromCache(this.cacheKey)) === null || _a === void 0 ? void 0 : _a.data;
|
|
25143
|
-
if (!collection) {
|
|
25144
|
-
pushToCache(this.cacheKey, {
|
|
25145
|
-
data: [],
|
|
25146
|
-
params: {},
|
|
25147
|
-
});
|
|
25148
|
-
}
|
|
25149
|
-
}
|
|
25150
|
-
async persistModel(queryPayload) {
|
|
25151
|
-
await this.queryStreamController.saveToMainDB(queryPayload);
|
|
25152
|
-
}
|
|
25153
|
-
persistQueryStream({ response, direction, refresh, }) {
|
|
25154
|
-
this.queryStreamController.appendToQueryStream(response, direction, refresh);
|
|
25155
|
-
}
|
|
25156
|
-
startSubscription() {
|
|
25157
|
-
return this.queryStreamController.subscribeRTE(
|
|
25158
|
-
{ fn: onPostCreated, action: EnumPostActions.OnPostCreated },
|
|
25159
|
-
{ fn: onPostUpdated, action: EnumPostActions.OnPostUpdated },
|
|
25160
|
-
{ fn: onPostUpdatedLocal, action: EnumPostActions.OnPostUpdated },
|
|
25161
|
-
{ fn: onPostDeleted, action: EnumPostActions.OnPostDeleted },
|
|
25162
|
-
{ fn: onPostFlagged, action: EnumPostActions.OnPostFlagged },
|
|
25163
|
-
{ fn: onPostUnflagged, action: EnumPostActions.OnPostUnflagged },
|
|
25164
|
-
{ fn: onPostApproved, action: EnumPostActions.OnPostApproved },
|
|
25165
|
-
{ fn: onPostDeclined, action: EnumPostActions.OnPostDeclined },
|
|
25166
|
-
{ fn: onPostReactionAdded, action: EnumPostActions.OnPostReactionAdded },
|
|
25167
|
-
{ fn: onPostReactionRemoved, action: EnumPostActions.OnPostReactionRemoved },
|
|
25168
|
-
{ fn: onLocalPostReactionAdded, action: EnumPostActions.OnPostReactionAdded },
|
|
25169
|
-
{ fn: onLocalPostReactionRemoved, action: EnumPostActions.OnPostReactionRemoved },
|
|
25170
|
-
{ fn: onLocalPostDeleted, action: EnumPostActions.OnPostDeleted },
|
|
25171
|
-
{
|
|
25172
|
-
fn: convertEventPayload((callback) => {
|
|
25173
|
-
return onCommentCreated(async (comment) => {
|
|
25174
|
-
var _a;
|
|
25175
|
-
const currentCollection = (_a = pullFromCache(this.cacheKey)) === null || _a === void 0 ? void 0 : _a.data;
|
|
25176
|
-
if (!currentCollection || currentCollection.data.includes(comment.referenceId))
|
|
25177
|
-
return;
|
|
25178
|
-
await getPost$1(comment.referenceId);
|
|
25179
|
-
callback(comment);
|
|
25180
|
-
});
|
|
25181
|
-
}, 'referenceId', 'post'),
|
|
25182
|
-
action: EnumPostActions.OnPostUpdated,
|
|
25183
|
-
},
|
|
25184
|
-
{
|
|
25185
|
-
fn: convertEventPayload((callback) => {
|
|
25186
|
-
return onCommentDeleted(async (comment) => {
|
|
25187
|
-
var _a;
|
|
25188
|
-
const currentCollection = (_a = pullFromCache(this.cacheKey)) === null || _a === void 0 ? void 0 : _a.data;
|
|
25189
|
-
if (!currentCollection || currentCollection.data.includes(comment.referenceId))
|
|
25190
|
-
return;
|
|
25191
|
-
await getPost$1(comment.referenceId);
|
|
25192
|
-
callback(comment);
|
|
25193
|
-
});
|
|
25194
|
-
}, 'referenceId', 'post'),
|
|
25195
|
-
action: EnumPostActions.OnPostUpdated,
|
|
25196
|
-
},
|
|
25197
|
-
]);
|
|
25534
|
+
super(paginationController, queryStreamId, cacheKey, callback);
|
|
25535
|
+
this.query = query;
|
|
25536
|
+
this.queryStreamController = new PostQueryStreamController(this.query, this.cacheKey, this.notifyChange.bind(this), preparePostPayload);
|
|
25537
|
+
this.callback = callback.bind(this);
|
|
25538
|
+
this.loadPage({ initial: true });
|
|
25539
|
+
}
|
|
25540
|
+
setup() {
|
|
25541
|
+
var _a;
|
|
25542
|
+
const collection = (_a = pullFromCache(this.cacheKey)) === null || _a === void 0 ? void 0 : _a.data;
|
|
25543
|
+
if (!collection) {
|
|
25544
|
+
pushToCache(this.cacheKey, {
|
|
25545
|
+
data: [],
|
|
25546
|
+
params: {},
|
|
25547
|
+
});
|
|
25548
|
+
}
|
|
25549
|
+
}
|
|
25550
|
+
async persistModel(queryPayload) {
|
|
25551
|
+
await this.queryStreamController.saveToMainDB(queryPayload);
|
|
25552
|
+
}
|
|
25553
|
+
persistQueryStream({ response, direction, refresh, }) {
|
|
25554
|
+
this.queryStreamController.appendToQueryStream(response, direction, refresh);
|
|
25555
|
+
}
|
|
25556
|
+
startSubscription() {
|
|
25557
|
+
return this.queryStreamController.subscribeRTE(getPostSubscription(this.cacheKey));
|
|
25198
25558
|
}
|
|
25199
25559
|
notifyChange({ origin, loading, error }) {
|
|
25200
25560
|
var _a, _b;
|
|
@@ -25329,6 +25689,22 @@ class PinnedPostQueryStreamController extends QueryStreamController {
|
|
|
25329
25689
|
});
|
|
25330
25690
|
}
|
|
25331
25691
|
}
|
|
25692
|
+
reactor(action) {
|
|
25693
|
+
return (post) => {
|
|
25694
|
+
var _a;
|
|
25695
|
+
const collection = (_a = pullFromCache(this.cacheKey)) === null || _a === void 0 ? void 0 : _a.data;
|
|
25696
|
+
if (!collection)
|
|
25697
|
+
return;
|
|
25698
|
+
if (action === EnumPostActions.OnPostDeleted) {
|
|
25699
|
+
collection.data = collection.data.filter(referenceId => referenceId !== `global#${post.postId}`);
|
|
25700
|
+
}
|
|
25701
|
+
pushToCache(this.cacheKey, collection);
|
|
25702
|
+
this.notifyChange({ origin: "event" /* Amity.LiveDataOrigin.EVENT */, loading: false });
|
|
25703
|
+
};
|
|
25704
|
+
}
|
|
25705
|
+
subscribeRTE(createSubscriber) {
|
|
25706
|
+
return createSubscriber.map(subscriber => subscriber.fn(this.reactor(subscriber.action)));
|
|
25707
|
+
}
|
|
25332
25708
|
}
|
|
25333
25709
|
|
|
25334
25710
|
class PinnedPostLiveCollectionController extends LiveCollectionController {
|
|
@@ -25360,7 +25736,10 @@ class PinnedPostLiveCollectionController extends LiveCollectionController {
|
|
|
25360
25736
|
}
|
|
25361
25737
|
// eslint-disable-next-line class-methods-use-this
|
|
25362
25738
|
startSubscription() {
|
|
25363
|
-
return
|
|
25739
|
+
return this.queryStreamController.subscribeRTE(generateCommentSubscriptions({
|
|
25740
|
+
cacheKey: this.cacheKey,
|
|
25741
|
+
resolveId: id => `${this.query.placement}#${id}`,
|
|
25742
|
+
}));
|
|
25364
25743
|
}
|
|
25365
25744
|
notifyChange({ origin, loading, error }) {
|
|
25366
25745
|
var _a, _b;
|
|
@@ -25512,6 +25891,10 @@ class GlobalPinnedPostLiveCollectionController extends LiveCollectionController
|
|
|
25512
25891
|
fn: onPostDeleted,
|
|
25513
25892
|
action: EnumPostActions.OnPostDeleted,
|
|
25514
25893
|
},
|
|
25894
|
+
...generateCommentSubscriptions({
|
|
25895
|
+
cacheKey: this.cacheKey,
|
|
25896
|
+
resolveId: id => `global#${id}`,
|
|
25897
|
+
}),
|
|
25515
25898
|
]);
|
|
25516
25899
|
}
|
|
25517
25900
|
notifyChange({ origin, loading, error }) {
|
|
@@ -25791,6 +26174,238 @@ const semanticSearchPosts = (params, callback, config) => {
|
|
|
25791
26174
|
};
|
|
25792
26175
|
};
|
|
25793
26176
|
|
|
26177
|
+
class SearchPostPaginationController extends PaginationController {
|
|
26178
|
+
async getRequest(queryParams, token) {
|
|
26179
|
+
const { limit = COLLECTION_DEFAULT_PAGINATION_LIMIT, matchingOnlyParentPost, hashtags, dataTypes, targetType = 'all' } = queryParams, params = __rest(queryParams, ["limit", "matchingOnlyParentPost", "hashtags", "dataTypes", "targetType"]);
|
|
26180
|
+
const baseOptions = {
|
|
26181
|
+
type: params.sortBy || queryParams.limit ? 'pagination' : undefined,
|
|
26182
|
+
};
|
|
26183
|
+
const options = token ? Object.assign(Object.assign({}, baseOptions), { token }) : Object.assign(Object.assign({}, baseOptions), { limit });
|
|
26184
|
+
const { data: queryResponse } = await this.http.get(`/api/v1/search/posts`, {
|
|
26185
|
+
params: Object.assign(Object.assign({}, params), { hashtags,
|
|
26186
|
+
dataTypes,
|
|
26187
|
+
targetType,
|
|
26188
|
+
/*
|
|
26189
|
+
* when creating post like image, file, video BE will create 2 posts
|
|
26190
|
+
* 1. parent post to store text with dataType=text
|
|
26191
|
+
* 2. child post to store dataTypes post data
|
|
26192
|
+
*
|
|
26193
|
+
* By default, BE queries only parent post
|
|
26194
|
+
*/
|
|
26195
|
+
matchingOnlyParentPost: matchingOnlyParentPost !== null && matchingOnlyParentPost !== void 0 ? matchingOnlyParentPost : !(dataTypes === null || dataTypes === void 0 ? void 0 : dataTypes.length), options }),
|
|
26196
|
+
});
|
|
26197
|
+
return queryResponse;
|
|
26198
|
+
}
|
|
26199
|
+
}
|
|
26200
|
+
|
|
26201
|
+
class SearchPostQueryStreamController extends QueryStreamController {
|
|
26202
|
+
constructor(query, cacheKey, notifyChange, preparePayload) {
|
|
26203
|
+
super(query, cacheKey);
|
|
26204
|
+
this.notifyChange = notifyChange;
|
|
26205
|
+
this.preparePayload = preparePayload;
|
|
26206
|
+
}
|
|
26207
|
+
async saveToMainDB(response) {
|
|
26208
|
+
const processedPayload = await this.preparePayload(response);
|
|
26209
|
+
const client = getActiveClient();
|
|
26210
|
+
const cachedAt = client.cache && Date.now();
|
|
26211
|
+
if (client.cache) {
|
|
26212
|
+
ingestInCache(processedPayload, { cachedAt });
|
|
26213
|
+
}
|
|
26214
|
+
}
|
|
26215
|
+
appendToQueryStream(response, direction, refresh = false) {
|
|
26216
|
+
var _a, _b;
|
|
26217
|
+
if (refresh) {
|
|
26218
|
+
pushToCache(this.cacheKey, {
|
|
26219
|
+
data: response.posts.map(getResolver('post')),
|
|
26220
|
+
});
|
|
26221
|
+
}
|
|
26222
|
+
else {
|
|
26223
|
+
const collection = (_a = pullFromCache(this.cacheKey)) === null || _a === void 0 ? void 0 : _a.data;
|
|
26224
|
+
const posts = (_b = collection === null || collection === void 0 ? void 0 : collection.data) !== null && _b !== void 0 ? _b : [];
|
|
26225
|
+
pushToCache(this.cacheKey, Object.assign(Object.assign({}, collection), { data: [...new Set([...posts, ...response.posts.map(getResolver('post'))])] }));
|
|
26226
|
+
}
|
|
26227
|
+
}
|
|
26228
|
+
reactor(action) {
|
|
26229
|
+
return (post) => {
|
|
26230
|
+
var _a, _b;
|
|
26231
|
+
const collection = (_a = pullFromCache(this.cacheKey)) === null || _a === void 0 ? void 0 : _a.data;
|
|
26232
|
+
if (!collection)
|
|
26233
|
+
return;
|
|
26234
|
+
if (post.parentPostId && post.isDeleted) {
|
|
26235
|
+
const parentPost = (_b = pullFromCache([
|
|
26236
|
+
'post',
|
|
26237
|
+
'get',
|
|
26238
|
+
post.parentPostId,
|
|
26239
|
+
])) === null || _b === void 0 ? void 0 : _b.data;
|
|
26240
|
+
if (!parentPost)
|
|
26241
|
+
return;
|
|
26242
|
+
parentPost.children = parentPost.children.filter(childId => childId !== post.postId);
|
|
26243
|
+
pushToCache(['post', 'get', parentPost.postId], parentPost);
|
|
26244
|
+
}
|
|
26245
|
+
if (action === EnumPostActions.OnPostDeclined) {
|
|
26246
|
+
collection.data = collection.data.filter(postId => postId !== post.postId);
|
|
26247
|
+
}
|
|
26248
|
+
if (action === EnumPostActions.OnPostCreated || action === EnumPostActions.OnPostApproved) {
|
|
26249
|
+
collection.data = [...new Set([post.postId, ...collection.data])];
|
|
26250
|
+
}
|
|
26251
|
+
pushToCache(this.cacheKey, collection);
|
|
26252
|
+
this.notifyChange({ origin: "event" /* Amity.LiveDataOrigin.EVENT */, loading: false });
|
|
26253
|
+
};
|
|
26254
|
+
}
|
|
26255
|
+
subscribeRTE(createSubscriber) {
|
|
26256
|
+
return createSubscriber.map(subscriber => subscriber.fn(this.reactor(subscriber.action)));
|
|
26257
|
+
}
|
|
26258
|
+
}
|
|
26259
|
+
|
|
26260
|
+
class SearchPostLiveCollectionController extends LiveCollectionController {
|
|
26261
|
+
constructor(query, callback) {
|
|
26262
|
+
const queryStreamId = hash__default["default"](query);
|
|
26263
|
+
const cacheKey = ['posts', 'collection', queryStreamId];
|
|
26264
|
+
const paginationController = new SearchPostPaginationController(query);
|
|
26265
|
+
super(paginationController, queryStreamId, cacheKey, callback);
|
|
26266
|
+
this.query = query;
|
|
26267
|
+
this.queryStreamController = new SearchPostQueryStreamController(this.query, this.cacheKey, this.notifyChange.bind(this), preparePostPayload);
|
|
26268
|
+
this.callback = callback.bind(this);
|
|
26269
|
+
this.loadPage({ initial: true });
|
|
26270
|
+
}
|
|
26271
|
+
setup() {
|
|
26272
|
+
var _a;
|
|
26273
|
+
const collection = (_a = pullFromCache(this.cacheKey)) === null || _a === void 0 ? void 0 : _a.data;
|
|
26274
|
+
if (!collection) {
|
|
26275
|
+
pushToCache(this.cacheKey, {
|
|
26276
|
+
data: [],
|
|
26277
|
+
params: {},
|
|
26278
|
+
});
|
|
26279
|
+
}
|
|
26280
|
+
}
|
|
26281
|
+
async persistModel(queryPayload) {
|
|
26282
|
+
await this.queryStreamController.saveToMainDB(queryPayload);
|
|
26283
|
+
}
|
|
26284
|
+
persistQueryStream({ response, direction, refresh, }) {
|
|
26285
|
+
this.queryStreamController.appendToQueryStream(response, direction, refresh);
|
|
26286
|
+
}
|
|
26287
|
+
startSubscription() {
|
|
26288
|
+
return this.queryStreamController.subscribeRTE([
|
|
26289
|
+
{ fn: onPostCreated, action: EnumPostActions.OnPostCreated },
|
|
26290
|
+
{ fn: onPostUpdated, action: EnumPostActions.OnPostUpdated },
|
|
26291
|
+
{ fn: onPostUpdatedLocal, action: EnumPostActions.OnPostUpdated },
|
|
26292
|
+
{ fn: onPostDeleted, action: EnumPostActions.OnPostDeleted },
|
|
26293
|
+
{ fn: onPostFlagged, action: EnumPostActions.OnPostFlagged },
|
|
26294
|
+
{ fn: onPostUnflagged, action: EnumPostActions.OnPostUnflagged },
|
|
26295
|
+
{ fn: onPostApproved, action: EnumPostActions.OnPostApproved },
|
|
26296
|
+
{ fn: onPostDeclined, action: EnumPostActions.OnPostDeclined },
|
|
26297
|
+
{ fn: onPostReactionAdded, action: EnumPostActions.OnPostReactionAdded },
|
|
26298
|
+
{ fn: onPostReactionRemoved, action: EnumPostActions.OnPostReactionRemoved },
|
|
26299
|
+
{ fn: onLocalPostReactionAdded, action: EnumPostActions.OnPostReactionAdded },
|
|
26300
|
+
{ fn: onLocalPostReactionRemoved, action: EnumPostActions.OnPostReactionRemoved },
|
|
26301
|
+
{ fn: onLocalPostDeleted, action: EnumPostActions.OnPostDeleted },
|
|
26302
|
+
{
|
|
26303
|
+
fn: convertEventPayload((callback) => {
|
|
26304
|
+
return onCommentCreated(async (comment) => {
|
|
26305
|
+
var _a;
|
|
26306
|
+
const currentCollection = (_a = pullFromCache(this.cacheKey)) === null || _a === void 0 ? void 0 : _a.data;
|
|
26307
|
+
if (!currentCollection || currentCollection.data.includes(comment.referenceId))
|
|
26308
|
+
return;
|
|
26309
|
+
await getPost$1(comment.referenceId);
|
|
26310
|
+
callback(comment);
|
|
26311
|
+
});
|
|
26312
|
+
}, 'referenceId', 'post'),
|
|
26313
|
+
action: EnumPostActions.OnPostUpdated,
|
|
26314
|
+
},
|
|
26315
|
+
{
|
|
26316
|
+
fn: convertEventPayload((callback) => {
|
|
26317
|
+
return onCommentDeleted(async (comment) => {
|
|
26318
|
+
var _a;
|
|
26319
|
+
const currentCollection = (_a = pullFromCache(this.cacheKey)) === null || _a === void 0 ? void 0 : _a.data;
|
|
26320
|
+
if (!currentCollection || currentCollection.data.includes(comment.referenceId))
|
|
26321
|
+
return;
|
|
26322
|
+
await getPost$1(comment.referenceId);
|
|
26323
|
+
callback(comment);
|
|
26324
|
+
});
|
|
26325
|
+
}, 'referenceId', 'post'),
|
|
26326
|
+
action: EnumPostActions.OnPostUpdated,
|
|
26327
|
+
},
|
|
26328
|
+
]);
|
|
26329
|
+
}
|
|
26330
|
+
notifyChange({ origin, loading, error }) {
|
|
26331
|
+
var _a, _b;
|
|
26332
|
+
const collection = (_a = pullFromCache(this.cacheKey)) === null || _a === void 0 ? void 0 : _a.data;
|
|
26333
|
+
if (!collection)
|
|
26334
|
+
return;
|
|
26335
|
+
const data = this.applyFilter((_b = collection.data
|
|
26336
|
+
.map(id => pullFromCache(['post', 'get', id]))
|
|
26337
|
+
.filter(isNonNullable)
|
|
26338
|
+
.map(({ data }) => data)) !== null && _b !== void 0 ? _b : []).map(LinkedObject.post);
|
|
26339
|
+
if (!this.shouldNotify(data) && origin === 'event')
|
|
26340
|
+
return;
|
|
26341
|
+
this.callback({
|
|
26342
|
+
onNextPage: () => this.loadPage({ direction: "next" /* Amity.LiveCollectionPageDirection.NEXT */ }),
|
|
26343
|
+
data,
|
|
26344
|
+
hasNextPage: !!this.paginationController.getNextToken(),
|
|
26345
|
+
loading,
|
|
26346
|
+
error,
|
|
26347
|
+
});
|
|
26348
|
+
}
|
|
26349
|
+
applyFilter(data) {
|
|
26350
|
+
var _a;
|
|
26351
|
+
let posts = data;
|
|
26352
|
+
if ((_a = this.query.dataTypes) === null || _a === void 0 ? void 0 : _a.length) {
|
|
26353
|
+
posts = filterByPostDataTypes(posts, this.query.dataTypes);
|
|
26354
|
+
}
|
|
26355
|
+
switch (this.query.sortBy) {
|
|
26356
|
+
case 'firstCreated':
|
|
26357
|
+
posts = posts.sort(sortByFirstCreated);
|
|
26358
|
+
break;
|
|
26359
|
+
case 'lastCreated':
|
|
26360
|
+
default:
|
|
26361
|
+
posts = posts.sort(sortByLastCreated);
|
|
26362
|
+
break;
|
|
26363
|
+
}
|
|
26364
|
+
return posts;
|
|
26365
|
+
}
|
|
26366
|
+
}
|
|
26367
|
+
|
|
26368
|
+
/* begin_public_function
|
|
26369
|
+
id: post.query
|
|
26370
|
+
*/
|
|
26371
|
+
/**
|
|
26372
|
+
* ```js
|
|
26373
|
+
* import { PostRepository } from '@amityco/ts-sdk'
|
|
26374
|
+
*
|
|
26375
|
+
* let posts = []
|
|
26376
|
+
* const unsub = PostRepository.searchPostsByHashtag({
|
|
26377
|
+
* hashtags: ['amity'],
|
|
26378
|
+
* limit: 10,
|
|
26379
|
+
* }, response => merge(posts, response.data))
|
|
26380
|
+
* ```
|
|
26381
|
+
*
|
|
26382
|
+
* Observe all mutations on a list of {@link Amity.Post} for a given target object
|
|
26383
|
+
*
|
|
26384
|
+
* @param params.hashtags the hashtags to search for
|
|
26385
|
+
* @param callback the function to call when new data are available
|
|
26386
|
+
* @param config
|
|
26387
|
+
* @returns An {@link Amity.Unsubscriber} function to run when willing to stop observing the messages
|
|
26388
|
+
*
|
|
26389
|
+
* @category Posts Live Collection
|
|
26390
|
+
*/
|
|
26391
|
+
const searchPostsByHashtag = (params, callback, config) => {
|
|
26392
|
+
const { log, cache } = getActiveClient();
|
|
26393
|
+
if (!cache) {
|
|
26394
|
+
console.log(ENABLE_CACHE_MESSAGE);
|
|
26395
|
+
}
|
|
26396
|
+
const timestamp = Date.now();
|
|
26397
|
+
log(`searchPostsByHashtag(tmpid: ${timestamp}) > listen`);
|
|
26398
|
+
const postsLiveCollection = new SearchPostLiveCollectionController(params, callback);
|
|
26399
|
+
const disposers = postsLiveCollection.startSubscription();
|
|
26400
|
+
const cacheKey = postsLiveCollection.getCacheKey();
|
|
26401
|
+
disposers.push(() => dropFromCache(cacheKey));
|
|
26402
|
+
return () => {
|
|
26403
|
+
log(`searchPostsByHashtag(tmpid: ${timestamp}) > dispose`);
|
|
26404
|
+
disposers.forEach(fn => fn());
|
|
26405
|
+
};
|
|
26406
|
+
};
|
|
26407
|
+
/* end_public_function */
|
|
26408
|
+
|
|
25794
26409
|
var index$8 = /*#__PURE__*/Object.freeze({
|
|
25795
26410
|
__proto__: null,
|
|
25796
26411
|
getPostByIds: getPostByIds,
|
|
@@ -25818,7 +26433,8 @@ var index$8 = /*#__PURE__*/Object.freeze({
|
|
|
25818
26433
|
getPosts: getPosts,
|
|
25819
26434
|
getPinnedPosts: getPinnedPosts,
|
|
25820
26435
|
getGlobalPinnedPosts: getGlobalPinnedPosts,
|
|
25821
|
-
semanticSearchPosts: semanticSearchPosts
|
|
26436
|
+
semanticSearchPosts: semanticSearchPosts,
|
|
26437
|
+
searchPostsByHashtag: searchPostsByHashtag
|
|
25822
26438
|
});
|
|
25823
26439
|
|
|
25824
26440
|
/* begin_public_function
|
|
@@ -26423,8 +27039,8 @@ var index$7 = /*#__PURE__*/Object.freeze({
|
|
|
26423
27039
|
* const created = await createPoll({
|
|
26424
27040
|
* question: 'question',
|
|
26425
27041
|
* answers: [
|
|
26426
|
-
* { dataType: 'text', data: 'answer1' },
|
|
26427
|
-
* { dataType: 'text', data: 'answer2' },
|
|
27042
|
+
* { dataType: 'text', data: 'answer1', fileId: 'fileId1' },
|
|
27043
|
+
* { dataType: 'text', data: 'answer2', fileId: 'fileId2' },
|
|
26428
27044
|
* ],
|
|
26429
27045
|
* closedIn: 1649136484
|
|
26430
27046
|
* }))
|