@amityco/ts-sdk 7.8.0 → 7.8.1-0c348c9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.env +26 -26
- package/.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 +36 -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 +22 -1
- 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/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 +1 -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 +1 -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 -1
- 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 -1
- 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 +13 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getUserFeed/LiveCollectionController.d.ts.map +1 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getUserFeed/LiveCollectionController.js +108 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getUserFeed/LiveCollectionController.js.map +1 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getUserFeed/PaginationController.d.ts +5 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getUserFeed/PaginationController.d.ts.map +1 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getUserFeed/PaginationController.js +15 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getUserFeed/PaginationController.js.map +1 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getUserFeed/QueryStreamController.d.ts +15 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getUserFeed/QueryStreamController.d.ts.map +1 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getUserFeed/QueryStreamController.js +78 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getUserFeed/QueryStreamController.js.map +1 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getUserFeed.d.ts +23 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getUserFeed.d.ts.map +1 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getUserFeed.js +46 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/getUserFeed.js.map +1 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/index.d.ts +4 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/index.d.ts.map +1 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/index.js +4 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/feedRepository/observers/index.js.map +1 -0
- 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/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 +36 -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/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 +1 -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 -1
- 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 +13 -0
- package/dist/feedRepository/observers/getUserFeed/LiveCollectionController.d.ts.map +1 -0
- package/dist/feedRepository/observers/getUserFeed/PaginationController.d.ts +5 -0
- package/dist/feedRepository/observers/getUserFeed/PaginationController.d.ts.map +1 -0
- package/dist/feedRepository/observers/getUserFeed/QueryStreamController.d.ts +15 -0
- package/dist/feedRepository/observers/getUserFeed/QueryStreamController.d.ts.map +1 -0
- package/dist/feedRepository/observers/getUserFeed.d.ts +23 -0
- package/dist/feedRepository/observers/getUserFeed.d.ts.map +1 -0
- package/dist/feedRepository/observers/index.d.ts +4 -0
- package/dist/feedRepository/observers/index.d.ts.map +1 -0
- package/dist/feedRepository/observers/utils.d.ts +6 -0
- package/dist/feedRepository/observers/utils.d.ts.map +1 -0
- package/dist/index.cjs.js +2132 -1280
- package/dist/index.esm.js +2034 -1182
- package/dist/index.umd.js +4 -4
- 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 +60 -0
- package/src/@types/domains/hashtag.ts +11 -0
- package/src/@types/domains/notification.ts +1 -0
- 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 +2 -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 -1
- 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 +162 -0
- package/src/feedRepository/observers/getUserFeed/PaginationController.ts +37 -0
- package/src/feedRepository/observers/getUserFeed/QueryStreamController.ts +119 -0
- package/src/feedRepository/observers/getUserFeed.ts +56 -0
- package/src/feedRepository/observers/index.ts +3 -0
- package/src/feedRepository/observers/utils.ts +85 -0
- 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
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { getActiveClient } from '~/client/api/activeClient';
|
|
2
|
+
import { dropFromCache } from '~/cache/api/dropFromCache';
|
|
3
|
+
import { ENABLE_CACHE_MESSAGE } from '~/utils/constants';
|
|
4
|
+
import { UserFeedLiveCollectionController } from './getUserFeed/LiveCollectionController';
|
|
5
|
+
/* begin_public_function
|
|
6
|
+
id: feed.query.user_feed
|
|
7
|
+
*/
|
|
8
|
+
/**
|
|
9
|
+
* ```js
|
|
10
|
+
* import { FeedRepository } from '@amityco/ts-sdk'
|
|
11
|
+
*
|
|
12
|
+
* let posts = []
|
|
13
|
+
* const unsubscribe = FeedRepository.getUserFeed({
|
|
14
|
+
* userId: string,
|
|
15
|
+
* feedSources: ['user', 'community'],
|
|
16
|
+
* }, response => response => processResponse(response))
|
|
17
|
+
* ```
|
|
18
|
+
*
|
|
19
|
+
* Observe all mutations on a list of {@link Amity.Post} for a given user and feedSources
|
|
20
|
+
*
|
|
21
|
+
* @param params.userId the ID of the user
|
|
22
|
+
* @param params.feedSources the sources of the feed
|
|
23
|
+
* @param callback the function to call when new data are available
|
|
24
|
+
* @param config
|
|
25
|
+
* @returns An {@link Amity.Unsubscriber} function to run when willing to stop observing the messages
|
|
26
|
+
*
|
|
27
|
+
* @category Posts Live Collection
|
|
28
|
+
*/
|
|
29
|
+
export const getUserFeed = (params, callback, config) => {
|
|
30
|
+
const { log, cache } = getActiveClient();
|
|
31
|
+
if (!cache) {
|
|
32
|
+
console.log(ENABLE_CACHE_MESSAGE);
|
|
33
|
+
}
|
|
34
|
+
const timestamp = Date.now();
|
|
35
|
+
log(`getUserFeed(tmpid: ${timestamp}) > listen`);
|
|
36
|
+
const userFeedLiveCollection = new UserFeedLiveCollectionController(params, callback);
|
|
37
|
+
const disposers = userFeedLiveCollection.startSubscription();
|
|
38
|
+
const cacheKey = userFeedLiveCollection.getCacheKey();
|
|
39
|
+
disposers.push(() => dropFromCache(cacheKey));
|
|
40
|
+
return () => {
|
|
41
|
+
log(`getUserFeed(tmpid: ${timestamp}) > dispose`);
|
|
42
|
+
disposers.forEach(fn => fn());
|
|
43
|
+
};
|
|
44
|
+
};
|
|
45
|
+
/* end_public_function */
|
|
46
|
+
//# sourceMappingURL=getUserFeed.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getUserFeed.js","sourceRoot":"","sources":["../../../src/feedRepository/observers/getUserFeed.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAE,gCAAgC,EAAE,MAAM,wCAAwC,CAAC;AAE1F;;EAEE;AACF;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CACzB,MAAoC,EACpC,QAAkD,EAClD,MAAmC,EACf,EAAE;IACtB,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,eAAe,EAAE,CAAC;IAEzC,IAAI,CAAC,KAAK,EAAE;QACV,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;KACnC;IAED,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC7B,GAAG,CAAC,sBAAsB,SAAS,YAAY,CAAC,CAAC;IAEjD,MAAM,sBAAsB,GAAG,IAAI,gCAAgC,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACtF,MAAM,SAAS,GAAG,sBAAsB,CAAC,iBAAiB,EAAE,CAAC;IAE7D,MAAM,QAAQ,GAAG,sBAAsB,CAAC,WAAW,EAAE,CAAC;IAEtD,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC;IAE9C,OAAO,GAAG,EAAE;QACV,GAAG,CAAC,sBAAsB,SAAS,aAAa,CAAC,CAAC;QAClD,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IAChC,CAAC,CAAC;AACJ,CAAC,CAAC;AACF,yBAAyB","sourcesContent":["import { getActiveClient } from '~/client/api/activeClient';\nimport { dropFromCache } from '~/cache/api/dropFromCache';\nimport { ENABLE_CACHE_MESSAGE } from '~/utils/constants';\nimport { UserFeedLiveCollectionController } from './getUserFeed/LiveCollectionController';\n\n/* begin_public_function\n id: feed.query.user_feed\n*/\n/**\n * ```js\n * import { FeedRepository } from '@amityco/ts-sdk'\n *\n * let posts = []\n * const unsubscribe = FeedRepository.getUserFeed({\n * userId: string,\n * feedSources: ['user', 'community'],\n * }, response => response => processResponse(response))\n * ```\n *\n * Observe all mutations on a list of {@link Amity.Post} for a given user and feedSources\n *\n * @param params.userId the ID of the user\n * @param params.feedSources the sources of the feed\n * @param callback the function to call when new data are available\n * @param config\n * @returns An {@link Amity.Unsubscriber} function to run when willing to stop observing the messages\n *\n * @category Posts Live Collection\n */\nexport const getUserFeed = (\n params: Amity.UserFeedLiveCollection,\n callback: Amity.LiveCollectionCallback<Amity.Post>,\n config?: Amity.LiveCollectionConfig,\n): Amity.Unsubscriber => {\n const { log, cache } = getActiveClient();\n\n if (!cache) {\n console.log(ENABLE_CACHE_MESSAGE);\n }\n\n const timestamp = Date.now();\n log(`getUserFeed(tmpid: ${timestamp}) > listen`);\n\n const userFeedLiveCollection = new UserFeedLiveCollectionController(params, callback);\n const disposers = userFeedLiveCollection.startSubscription();\n\n const cacheKey = userFeedLiveCollection.getCacheKey();\n\n disposers.push(() => dropFromCache(cacheKey));\n\n return () => {\n log(`getUserFeed(tmpid: ${timestamp}) > dispose`);\n disposers.forEach(fn => fn());\n };\n};\n/* end_public_function */\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/feedRepository/observers/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/feedRepository/observers/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC","sourcesContent":["export { getCustomRankingGlobalFeed } from './getCustomRankingGlobalFeed';\nexport { getGlobalFeed } from './getGlobalFeed';\nexport { getUserFeed } from './getUserFeed';\n"]}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { EnumPostActions } from '~/postRepository/observers/enums';
|
|
2
|
+
export declare const getGlobalFeedSubscriptions: (cacheKey: Amity.CacheKey) => {
|
|
3
|
+
fn: (callback: Amity.Listener<Amity.InternalPost<any>>) => Amity.Unsubscriber;
|
|
4
|
+
action: EnumPostActions;
|
|
5
|
+
}[];
|
|
6
|
+
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/feedRepository/observers/utils.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AAiDnE,eAAO,MAAM,0BAA0B;;;GAiBtC,CAAC"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import { pullFromCache } from '~/cache/api';
|
|
2
|
+
import { onCommentCreated, onCommentDeleted } from '~/commentRepository';
|
|
3
|
+
import { getPost } from '~/postRepository/internalApi';
|
|
4
|
+
import { onPostCreated, onPostUpdated, onPostDeleted, onPostFlagged, onPostUnflagged, onPostReactionAdded, onPostReactionRemoved, onPostApproved, onPostDeclined, } from '~/postRepository/events';
|
|
5
|
+
import { onLocalPostDeleted } from '~/postRepository/events/onLocalPostDeleted';
|
|
6
|
+
import { onLocalPostReactionAdded } from '~/postRepository/events/onLocalPostReactionAdded';
|
|
7
|
+
import { onLocalPostReactionRemoved } from '~/postRepository/events/onLocalPostReactionRemoved';
|
|
8
|
+
import { onPostUpdatedLocal } from '~/postRepository/events/onPostUpdatedLocal';
|
|
9
|
+
import { EnumPostActions } from '~/postRepository/observers/enums';
|
|
10
|
+
import { convertEventPayload } from '~/utils/event';
|
|
11
|
+
import { onCommentCreatedLocal } from '~/commentRepository/events/onCommentCreatedLocal';
|
|
12
|
+
import { onCommentDeleteLocal } from '~/commentRepository/events/onCommentDeletedLocal';
|
|
13
|
+
import { onCommentReactionAdded, onCommentReactionRemoved } from '~/commentRepository/events';
|
|
14
|
+
import { onLocalCommentReactionAdded } from '~/commentRepository/events/onLocalCommentReactionAdded';
|
|
15
|
+
import { onLocalCommentReactionRemoved } from '~/commentRepository/events/onLocalCommentReactionRemoved';
|
|
16
|
+
const commentEventHandler = (callback, eventHandler, cacheKey) => {
|
|
17
|
+
return eventHandler(async (comment) => {
|
|
18
|
+
var _a;
|
|
19
|
+
const currentCollection = (_a = pullFromCache(cacheKey)) === null || _a === void 0 ? void 0 : _a.data;
|
|
20
|
+
if (!currentCollection || !currentCollection.data.includes(comment.referenceId))
|
|
21
|
+
return;
|
|
22
|
+
await getPost(comment.referenceId);
|
|
23
|
+
callback(comment);
|
|
24
|
+
});
|
|
25
|
+
};
|
|
26
|
+
const generateCommentSubscriptions = (cacheKey) => {
|
|
27
|
+
const eventHandlers = [
|
|
28
|
+
onCommentCreated,
|
|
29
|
+
onCommentDeleted,
|
|
30
|
+
onCommentReactionAdded,
|
|
31
|
+
onCommentReactionRemoved,
|
|
32
|
+
onCommentCreatedLocal,
|
|
33
|
+
onCommentDeleteLocal,
|
|
34
|
+
onLocalCommentReactionAdded,
|
|
35
|
+
onLocalCommentReactionRemoved,
|
|
36
|
+
];
|
|
37
|
+
return eventHandlers.map(handler => ({
|
|
38
|
+
fn: convertEventPayload((callback) => commentEventHandler(callback, handler, cacheKey), 'referenceId', 'post'),
|
|
39
|
+
action: EnumPostActions.OnPostUpdated,
|
|
40
|
+
}));
|
|
41
|
+
};
|
|
42
|
+
export const getGlobalFeedSubscriptions = (cacheKey) => {
|
|
43
|
+
return [
|
|
44
|
+
{ fn: onPostCreated, action: EnumPostActions.OnPostCreated },
|
|
45
|
+
{ fn: onPostUpdated, action: EnumPostActions.OnPostUpdated },
|
|
46
|
+
{ fn: onPostUpdatedLocal, action: EnumPostActions.OnPostUpdated },
|
|
47
|
+
{ fn: onPostDeleted, action: EnumPostActions.OnPostDeleted },
|
|
48
|
+
{ fn: onPostFlagged, action: EnumPostActions.OnPostFlagged },
|
|
49
|
+
{ fn: onPostUnflagged, action: EnumPostActions.OnPostUnflagged },
|
|
50
|
+
{ fn: onPostApproved, action: EnumPostActions.OnPostApproved },
|
|
51
|
+
{ fn: onPostDeclined, action: EnumPostActions.OnPostDeclined },
|
|
52
|
+
{ fn: onPostReactionAdded, action: EnumPostActions.OnPostReactionAdded },
|
|
53
|
+
{ fn: onPostReactionRemoved, action: EnumPostActions.OnPostReactionRemoved },
|
|
54
|
+
{ fn: onLocalPostReactionAdded, action: EnumPostActions.OnPostReactionAdded },
|
|
55
|
+
{ fn: onLocalPostReactionRemoved, action: EnumPostActions.OnPostReactionRemoved },
|
|
56
|
+
{ fn: onLocalPostDeleted, action: EnumPostActions.OnPostDeleted },
|
|
57
|
+
...generateCommentSubscriptions(cacheKey),
|
|
58
|
+
];
|
|
59
|
+
};
|
|
60
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/feedRepository/observers/utils.ts"],"names":[],"mappings":"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","sourcesContent":["import { pullFromCache } from '~/cache/api';\nimport { onCommentCreated, onCommentDeleted } from '~/commentRepository';\nimport { getPost } from '~/postRepository/internalApi';\nimport {\n onPostCreated,\n onPostUpdated,\n onPostDeleted,\n onPostFlagged,\n onPostUnflagged,\n onPostReactionAdded,\n onPostReactionRemoved,\n onPostApproved,\n onPostDeclined,\n} from '~/postRepository/events';\nimport { onLocalPostDeleted } from '~/postRepository/events/onLocalPostDeleted';\nimport { onLocalPostReactionAdded } from '~/postRepository/events/onLocalPostReactionAdded';\nimport { onLocalPostReactionRemoved } from '~/postRepository/events/onLocalPostReactionRemoved';\nimport { onPostUpdatedLocal } from '~/postRepository/events/onPostUpdatedLocal';\nimport { EnumPostActions } from '~/postRepository/observers/enums';\nimport { convertEventPayload } from '~/utils/event';\nimport { onCommentCreatedLocal } from '~/commentRepository/events/onCommentCreatedLocal';\nimport { onCommentDeleteLocal } from '~/commentRepository/events/onCommentDeletedLocal';\nimport { onCommentReactionAdded, onCommentReactionRemoved } from '~/commentRepository/events';\nimport { onLocalCommentReactionAdded } from '~/commentRepository/events/onLocalCommentReactionAdded';\nimport { onLocalCommentReactionRemoved } from '~/commentRepository/events/onLocalCommentReactionRemoved';\n\ntype CommentEventHandler = (callback: Amity.Listener<Amity.InternalComment>) => Amity.Unsubscriber;\n\nconst commentEventHandler = (\n callback: Amity.Listener<Amity.InternalComment>,\n eventHandler: CommentEventHandler,\n cacheKey: Amity.CacheKey,\n) => {\n return eventHandler(async (comment: Amity.InternalComment) => {\n const currentCollection =\n pullFromCache<Amity.CustomRankingGlobalFeedLiveCollectionCache>(cacheKey)?.data;\n\n if (!currentCollection || !currentCollection.data.includes(comment.referenceId)) return;\n\n await getPost(comment.referenceId);\n callback(comment);\n });\n};\n\nconst generateCommentSubscriptions = (cacheKey: Amity.CacheKey) => {\n const eventHandlers = [\n onCommentCreated,\n onCommentDeleted,\n onCommentReactionAdded,\n onCommentReactionRemoved,\n onCommentCreatedLocal,\n onCommentDeleteLocal,\n onLocalCommentReactionAdded,\n onLocalCommentReactionRemoved,\n ];\n\n return eventHandlers.map(handler => ({\n fn: convertEventPayload(\n (callback: Amity.Listener<Amity.InternalComment>) =>\n commentEventHandler(callback, handler, cacheKey),\n 'referenceId',\n 'post',\n ),\n action: EnumPostActions.OnPostUpdated,\n }));\n};\n\nexport const getGlobalFeedSubscriptions = (cacheKey: Amity.CacheKey) => {\n return [\n { fn: onPostCreated, action: EnumPostActions.OnPostCreated },\n { fn: onPostUpdated, action: EnumPostActions.OnPostUpdated },\n { fn: onPostUpdatedLocal, action: EnumPostActions.OnPostUpdated },\n { fn: onPostDeleted, action: EnumPostActions.OnPostDeleted },\n { fn: onPostFlagged, action: EnumPostActions.OnPostFlagged },\n { fn: onPostUnflagged, action: EnumPostActions.OnPostUnflagged },\n { fn: onPostApproved, action: EnumPostActions.OnPostApproved },\n { fn: onPostDeclined, action: EnumPostActions.OnPostDeclined },\n { fn: onPostReactionAdded, action: EnumPostActions.OnPostReactionAdded },\n { fn: onPostReactionRemoved, action: EnumPostActions.OnPostReactionRemoved },\n { fn: onLocalPostReactionAdded, action: EnumPostActions.OnPostReactionAdded },\n { fn: onLocalPostReactionRemoved, action: EnumPostActions.OnPostReactionRemoved },\n { fn: onLocalPostDeleted, action: EnumPostActions.OnPostDeleted },\n ...generateCommentSubscriptions(cacheKey),\n ];\n};\n"]}
|
|
@@ -4,8 +4,8 @@
|
|
|
4
4
|
* const created = await createPoll({
|
|
5
5
|
* question: 'question',
|
|
6
6
|
* answers: [
|
|
7
|
-
* { dataType: 'text', data: 'answer1' },
|
|
8
|
-
* { dataType: 'text', data: 'answer2' },
|
|
7
|
+
* { dataType: 'text', data: 'answer1', fileId: 'fileId1' },
|
|
8
|
+
* { dataType: 'text', data: 'answer2', fileId: 'fileId2' },
|
|
9
9
|
* ],
|
|
10
10
|
* closedIn: 1649136484
|
|
11
11
|
* }))
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
* @category Poll API
|
|
20
20
|
* @async
|
|
21
21
|
*/
|
|
22
|
-
export declare const createPoll: (bundle: Pick<Amity.Poll, 'question' | 'answerType' | 'closedIn'> & {
|
|
22
|
+
export declare const createPoll: (bundle: Pick<Amity.Poll, 'title' | 'question' | 'answerType' | 'closedIn'> & {
|
|
23
23
|
answers: Pick<Amity.PollAnswer, 'dataType' | 'data'>[];
|
|
24
24
|
}) => Promise<Amity.Cached<Amity.Poll>>;
|
|
25
25
|
//# sourceMappingURL=createPoll.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createPoll.d.ts","sourceRoot":"","sources":["../../../src/pollRepository/api/createPoll.ts"],"names":[],"mappings":"AAOA;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,eAAO,MAAM,UAAU,WACb,KAAK,MAAM,IAAI,EAAE,UAAU,GAAG,YAAY,GAAG,UAAU,CAAC,GAAG;
|
|
1
|
+
{"version":3,"file":"createPoll.d.ts","sourceRoot":"","sources":["../../../src/pollRepository/api/createPoll.ts"],"names":[],"mappings":"AAOA;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,eAAO,MAAM,UAAU,WACb,KAAK,MAAM,IAAI,EAAE,OAAO,GAAG,UAAU,GAAG,YAAY,GAAG,UAAU,CAAC,GAAG;IAC3E,OAAO,EAAE,KAAK,MAAM,UAAU,EAAE,UAAU,GAAG,MAAM,CAAC,EAAE,CAAC;CACxD,KACA,QAAQ,MAAM,MAAM,CAAC,MAAM,IAAI,CAAC,CAelC,CAAC"}
|
|
@@ -9,8 +9,8 @@ import { ingestInCache } from '~/cache/api/ingestInCache';
|
|
|
9
9
|
* const created = await createPoll({
|
|
10
10
|
* question: 'question',
|
|
11
11
|
* answers: [
|
|
12
|
-
* { dataType: 'text', data: 'answer1' },
|
|
13
|
-
* { dataType: 'text', data: 'answer2' },
|
|
12
|
+
* { dataType: 'text', data: 'answer1', fileId: 'fileId1' },
|
|
13
|
+
* { dataType: 'text', data: 'answer2', fileId: 'fileId2' },
|
|
14
14
|
* ],
|
|
15
15
|
* closedIn: 1649136484
|
|
16
16
|
* }))
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createPoll.js","sourceRoot":"","sources":["../../../src/pollRepository/api/createPoll.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAE/C,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE1D;;EAEE;AACF;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,KAAK,EAC7B,MAEC,EACkC,EAAE;IACrC,MAAM,MAAM,GAAG,eAAe,EAAE,CAAC;IACjC,MAAM,CAAC,GAAG,CAAC,iBAAiB,EAAE,MAAM,CAAC,CAAC;IAEtC,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,IAAI,CAAoB,eAAe,EAAE,MAAM,CAAC,CAAC;IAEpF,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;IAC5C,IAAI,MAAM,CAAC,KAAK;QAAE,aAAa,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;IAEpD,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;IAEvB,OAAO;QACL,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;QACd,QAAQ;KACT,CAAC;AACJ,CAAC,CAAC;AACF,yBAAyB","sourcesContent":["import { getActiveClient } from '~/client/api';\n\nimport { ingestInCache } from '~/cache/api/ingestInCache';\n\n/* begin_public_function\n id: poll.create\n*/\n/**\n * ```js\n * import { createPoll } from '@amityco/ts-sdk'\n * const created = await createPoll({\n * question: 'question',\n * answers: [\n * { dataType: 'text', data: 'answer1' },\n * { dataType: 'text', data: 'answer2' },\n * ],\n * closedIn: 1649136484\n * }))\n * ```\n *\n * Creates an {@link Amity.Poll}\n *\n * @param bundle The data necessary to create a new {@link Amity.Poll}\n * @returns The newly created {@link Amity.Poll}\n *\n * @category Poll API\n * @async\n */\nexport const createPoll = async (\n bundle: Pick<Amity.Poll, 'question' | 'answerType' | 'closedIn'> & {\n answers: Pick<Amity.PollAnswer, 'dataType' | 'data'>[];\n },\n): Promise<Amity.Cached<Amity.Poll>> => {\n const client = getActiveClient();\n client.log('post/createPoll', bundle);\n\n const { data } = await client.http.post<Amity.PollPayload>('/api/v3/polls', bundle);\n\n const cachedAt = client.cache && Date.now();\n if (client.cache) ingestInCache(data, { cachedAt });\n\n const { polls } = data;\n\n return {\n data: polls[0],\n cachedAt,\n };\n};\n/* end_public_function */\n"]}
|
|
1
|
+
{"version":3,"file":"createPoll.js","sourceRoot":"","sources":["../../../src/pollRepository/api/createPoll.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAE/C,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE1D;;EAEE;AACF;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,KAAK,EAC7B,MAEC,EACkC,EAAE;IACrC,MAAM,MAAM,GAAG,eAAe,EAAE,CAAC;IACjC,MAAM,CAAC,GAAG,CAAC,iBAAiB,EAAE,MAAM,CAAC,CAAC;IAEtC,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,IAAI,CAAoB,eAAe,EAAE,MAAM,CAAC,CAAC;IAEpF,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;IAC5C,IAAI,MAAM,CAAC,KAAK;QAAE,aAAa,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;IAEpD,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;IAEvB,OAAO;QACL,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;QACd,QAAQ;KACT,CAAC;AACJ,CAAC,CAAC;AACF,yBAAyB","sourcesContent":["import { getActiveClient } from '~/client/api';\n\nimport { ingestInCache } from '~/cache/api/ingestInCache';\n\n/* begin_public_function\n id: poll.create\n*/\n/**\n * ```js\n * import { createPoll } from '@amityco/ts-sdk'\n * const created = await createPoll({\n * question: 'question',\n * answers: [\n * { dataType: 'text', data: 'answer1', fileId: 'fileId1' },\n * { dataType: 'text', data: 'answer2', fileId: 'fileId2' },\n * ],\n * closedIn: 1649136484\n * }))\n * ```\n *\n * Creates an {@link Amity.Poll}\n *\n * @param bundle The data necessary to create a new {@link Amity.Poll}\n * @returns The newly created {@link Amity.Poll}\n *\n * @category Poll API\n * @async\n */\nexport const createPoll = async (\n bundle: Pick<Amity.Poll, 'title' | 'question' | 'answerType' | 'closedIn'> & {\n answers: Pick<Amity.PollAnswer, 'dataType' | 'data'>[];\n },\n): Promise<Amity.Cached<Amity.Poll>> => {\n const client = getActiveClient();\n client.log('post/createPoll', bundle);\n\n const { data } = await client.http.post<Amity.PollPayload>('/api/v3/polls', bundle);\n\n const cachedAt = client.cache && Date.now();\n if (client.cache) ingestInCache(data, { cachedAt });\n\n const { polls } = data;\n\n return {\n data: polls[0],\n cachedAt,\n };\n};\n/* end_public_function */\n"]}
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
* @category Post API
|
|
17
17
|
* @async
|
|
18
18
|
*/
|
|
19
|
-
export declare const createPost: <T extends string>(bundle: Pick<Amity.Post<T>, "targetId" | "targetType"> & Partial<Pick<Amity.Post<T>, "tags" | "metadata" | "mentionees">> & {
|
|
19
|
+
export declare const createPost: <T extends string>(bundle: Pick<Amity.Post<T>, "targetId" | "targetType"> & Partial<Pick<Amity.Post<T>, "tags" | "metadata" | "mentionees" | "hashtags">> & {
|
|
20
20
|
dataType?: T | undefined;
|
|
21
21
|
data?: {
|
|
22
22
|
[k: string]: any;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createPost.js","sourceRoot":"","sources":["../../../src/postRepository/api/createPost.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAE/C,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAEtD;;EAEE;AACF;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,KAAK,EAC7B,MAKG,EACgC,EAAE;IACrC,MAAM,MAAM,GAAG,eAAe,EAAE,CAAC;IACjC,MAAM,CAAC,GAAG,CAAC,iBAAiB,EAAE,MAAM,CAAC,CAAC;IAEtC,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE;QACpF,6CAA6C;QAC7C,OAAO,MAAM,CAAC,QAAQ,CAAC;KACxB;IAED,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,IAAI,CAAoB,eAAe,EAAE,MAAM,CAAC,CAAC;IAE7F,SAAS,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;IAEnC,MAAM,IAAI,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;IAEzC,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;IAE5C,IAAI,MAAM,CAAC,KAAK;QAAE,aAAa,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;IAEpD,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;IAEvB,OAAO;QACL,IAAI,EAAE,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACjC,QAAQ;KACT,CAAC;AACJ,CAAC,CAAC;AACF,yBAAyB","sourcesContent":["import { getActiveClient } from '~/client/api';\n\nimport { ingestInCache } from '~/cache/api/ingestInCache';\nimport { fireEvent } from '~/core/events';\nimport { LinkedObject } from '~/utils/linkedObject';\nimport { preparePostPayload } from '../utils/payload';\n\n/* begin_public_function\n id: post.create.text_post, post.create.image_post, post.create.file_post, post.create.video_post, post.create.poll_post, post.create.livestream_post, post.create.custom_post\n*/\n/**\n * ```js\n * import { PostRepository } from '@amityco/ts-sdk'\n * const created = await PostRepository.createPost({\n * targetType: 'user',\n * targetId: 'foobar',\n * data: { text: 'hello world' }\n * }))\n * ```\n *\n * Creates an {@link Amity.Post}\n *\n * @param bundle The data necessary to create a new {@link Amity.Post}\n * @returns The newly created {@link Amity.Post}\n *\n * @category Post API\n * @async\n */\nexport const createPost = async <T extends Amity.PostContentType | string>(\n bundle: Pick<Amity.Post<T>, 'targetType' | 'targetId'> &\n Partial<Pick<Amity.Post<T>, 'metadata' | 'mentionees' | 'tags'>> & {\n dataType?: T;\n data?: { [k: string]: any };\n attachments?: { type: T; fileId: Amity.File['fileId'] }[];\n },\n): Promise<Amity.Cached<Amity.Post>> => {\n const client = getActiveClient();\n client.log('post/createPost', bundle);\n\n if (!bundle.dataType || ['text', 'image', 'file', 'video'].includes(bundle.dataType)) {\n // eslint-disable-next-line no-param-reassign\n delete bundle.dataType;\n }\n\n const { data: payload } = await client.http.post<Amity.PostPayload>('/api/v4/posts', bundle);\n\n fireEvent('post.created', payload);\n\n const data = preparePostPayload(payload);\n\n const cachedAt = client.cache && Date.now();\n\n if (client.cache) ingestInCache(data, { cachedAt });\n\n const { posts } = data;\n\n return {\n data: LinkedObject.post(posts[0]),\n cachedAt,\n };\n};\n/* end_public_function */\n"]}
|
|
1
|
+
{"version":3,"file":"createPost.js","sourceRoot":"","sources":["../../../src/postRepository/api/createPost.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAE/C,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAEtD;;EAEE;AACF;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,KAAK,EAC7B,MAKG,EACgC,EAAE;IACrC,MAAM,MAAM,GAAG,eAAe,EAAE,CAAC;IACjC,MAAM,CAAC,GAAG,CAAC,iBAAiB,EAAE,MAAM,CAAC,CAAC;IAEtC,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE;QACpF,6CAA6C;QAC7C,OAAO,MAAM,CAAC,QAAQ,CAAC;KACxB;IAED,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,IAAI,CAAoB,eAAe,EAAE,MAAM,CAAC,CAAC;IAE7F,SAAS,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;IAEnC,MAAM,IAAI,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;IAEzC,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;IAE5C,IAAI,MAAM,CAAC,KAAK;QAAE,aAAa,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;IAEpD,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;IAEvB,OAAO;QACL,IAAI,EAAE,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACjC,QAAQ;KACT,CAAC;AACJ,CAAC,CAAC;AACF,yBAAyB","sourcesContent":["import { getActiveClient } from '~/client/api';\n\nimport { ingestInCache } from '~/cache/api/ingestInCache';\nimport { fireEvent } from '~/core/events';\nimport { LinkedObject } from '~/utils/linkedObject';\nimport { preparePostPayload } from '../utils/payload';\n\n/* begin_public_function\n id: post.create.text_post, post.create.image_post, post.create.file_post, post.create.video_post, post.create.poll_post, post.create.livestream_post, post.create.custom_post\n*/\n/**\n * ```js\n * import { PostRepository } from '@amityco/ts-sdk'\n * const created = await PostRepository.createPost({\n * targetType: 'user',\n * targetId: 'foobar',\n * data: { text: 'hello world' }\n * }))\n * ```\n *\n * Creates an {@link Amity.Post}\n *\n * @param bundle The data necessary to create a new {@link Amity.Post}\n * @returns The newly created {@link Amity.Post}\n *\n * @category Post API\n * @async\n */\nexport const createPost = async <T extends Amity.PostContentType | string>(\n bundle: Pick<Amity.Post<T>, 'targetType' | 'targetId'> &\n Partial<Pick<Amity.Post<T>, 'metadata' | 'mentionees' | 'tags' | 'hashtags'>> & {\n dataType?: T;\n data?: { [k: string]: any };\n attachments?: { type: T; fileId: Amity.File['fileId'] }[];\n },\n): Promise<Amity.Cached<Amity.Post>> => {\n const client = getActiveClient();\n client.log('post/createPost', bundle);\n\n if (!bundle.dataType || ['text', 'image', 'file', 'video'].includes(bundle.dataType)) {\n // eslint-disable-next-line no-param-reassign\n delete bundle.dataType;\n }\n\n const { data: payload } = await client.http.post<Amity.PostPayload>('/api/v4/posts', bundle);\n\n fireEvent('post.created', payload);\n\n const data = preparePostPayload(payload);\n\n const cachedAt = client.cache && Date.now();\n\n if (client.cache) ingestInCache(data, { cachedAt });\n\n const { posts } = data;\n\n return {\n data: LinkedObject.post(posts[0]),\n cachedAt,\n };\n};\n/* end_public_function */\n"]}
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
* @category Post API
|
|
16
16
|
* @async
|
|
17
17
|
*/
|
|
18
|
-
export declare const editPost: <T extends string>(postId: Amity.Post['postId'], patch: Partial<Pick<Amity.Post<any>, "tags" | "metadata" | "data" | "mentionees">> & {
|
|
18
|
+
export declare const editPost: <T extends string>(postId: Amity.Post['postId'], patch: Partial<Pick<Amity.Post<any>, "tags" | "metadata" | "data" | "mentionees" | "hashtags">> & {
|
|
19
19
|
attachments?: {
|
|
20
20
|
type: T;
|
|
21
21
|
fileId: Amity.File['fileId'];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"editPost.js","sourceRoot":"","sources":["../../../src/postRepository/api/editPost.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAE/C,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,wBAAwB,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEpD;;EAEE;AACF;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,KAAK,EAC3B,MAA4B,EAC5B,KAKC,EACkC,EAAE;IACrC,MAAM,MAAM,GAAG,eAAe,EAAE,CAAC;IACjC,MAAM,CAAC,GAAG,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC;IAEnC,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,GAAG,CAC7C,iBAAiB,kBAAkB,CAAC,MAAM,CAAC,EAAE,EAC7C,KAAK,CACN,CAAC;IAEF,MAAM,IAAI,GAAG,wBAAwB,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;IAEjE,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;IAC5C,IAAI,MAAM,CAAC,KAAK;QAAE,aAAa,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;IAEpD,SAAS,CAAC,oBAAoB,EAAE,IAAI,CAAC,CAAC;IAEtC,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;IAEvB,OAAO;QACL,IAAI,EAAE,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,MAAM,CAAE,CAAC;QACpE,QAAQ;KACT,CAAC;AACJ,CAAC,CAAC;AACF,yBAAyB","sourcesContent":["import { getActiveClient } from '~/client/api';\n\nimport { ingestInCache } from '~/cache/api/ingestInCache';\nimport { fireEvent } from '~/core/events';\nimport { prepareMembershipPayload } from '~/group/utils';\nimport { LinkedObject } from '~/utils/linkedObject';\n\n/* begin_public_function\n id: post.edit, post.edit.custom_post\n*/\n/**\n * ```js\n * import { PostRepository } from '@amityco/ts-sdk'\n * const updated = await PostRepository.editPost(postId, {\n * data: { text: 'hello world' }\n * })\n * ```\n *\n * Updates an {@link Amity.Post}\n *\n * @param postId The ID of the {@link Amity.Post} to edit\n * @param patch The patch data to apply\n * @returns the updated {@link Amity.Post} object\n *\n * @category Post API\n * @async\n */\nexport const editPost = async <T extends Amity.PostContentType>(\n postId: Amity.Post['postId'],\n patch: Patch<Amity.Post, 'data' | 'metadata' | 'mentionees' | 'tags'> & {\n attachments?: {\n type: T;\n fileId: Amity.File['fileId'];\n }[];\n },\n): Promise<Amity.Cached<Amity.Post>> => {\n const client = getActiveClient();\n client.log('user/editPost', patch);\n\n const { data: payload } = await client.http.put<Amity.PostPayload>(\n `/api/v4/posts/${encodeURIComponent(postId)}`,\n patch,\n );\n\n const data = prepareMembershipPayload(payload, 'communityUsers');\n\n const cachedAt = client.cache && Date.now();\n if (client.cache) ingestInCache(data, { cachedAt });\n\n fireEvent('local.post.updated', data);\n\n const { posts } = data;\n\n return {\n data: LinkedObject.post(posts.find(post => post.postId === postId)!),\n cachedAt,\n };\n};\n/* end_public_function */\n"]}
|
|
1
|
+
{"version":3,"file":"editPost.js","sourceRoot":"","sources":["../../../src/postRepository/api/editPost.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAE/C,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,wBAAwB,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEpD;;EAEE;AACF;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,KAAK,EAC3B,MAA4B,EAC5B,KAKC,EACkC,EAAE;IACrC,MAAM,MAAM,GAAG,eAAe,EAAE,CAAC;IACjC,MAAM,CAAC,GAAG,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC;IAEnC,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,GAAG,CAC7C,iBAAiB,kBAAkB,CAAC,MAAM,CAAC,EAAE,EAC7C,KAAK,CACN,CAAC;IAEF,MAAM,IAAI,GAAG,wBAAwB,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;IAEjE,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;IAC5C,IAAI,MAAM,CAAC,KAAK;QAAE,aAAa,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;IAEpD,SAAS,CAAC,oBAAoB,EAAE,IAAI,CAAC,CAAC;IAEtC,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;IAEvB,OAAO;QACL,IAAI,EAAE,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,MAAM,CAAE,CAAC;QACpE,QAAQ;KACT,CAAC;AACJ,CAAC,CAAC;AACF,yBAAyB","sourcesContent":["import { getActiveClient } from '~/client/api';\n\nimport { ingestInCache } from '~/cache/api/ingestInCache';\nimport { fireEvent } from '~/core/events';\nimport { prepareMembershipPayload } from '~/group/utils';\nimport { LinkedObject } from '~/utils/linkedObject';\n\n/* begin_public_function\n id: post.edit, post.edit.custom_post\n*/\n/**\n * ```js\n * import { PostRepository } from '@amityco/ts-sdk'\n * const updated = await PostRepository.editPost(postId, {\n * data: { text: 'hello world' }\n * })\n * ```\n *\n * Updates an {@link Amity.Post}\n *\n * @param postId The ID of the {@link Amity.Post} to edit\n * @param patch The patch data to apply\n * @returns the updated {@link Amity.Post} object\n *\n * @category Post API\n * @async\n */\nexport const editPost = async <T extends Amity.PostContentType>(\n postId: Amity.Post['postId'],\n patch: Patch<Amity.Post, 'data' | 'metadata' | 'mentionees' | 'tags' | 'hashtags'> & {\n attachments?: {\n type: T;\n fileId: Amity.File['fileId'];\n }[];\n },\n): Promise<Amity.Cached<Amity.Post>> => {\n const client = getActiveClient();\n client.log('user/editPost', patch);\n\n const { data: payload } = await client.http.put<Amity.PostPayload>(\n `/api/v4/posts/${encodeURIComponent(postId)}`,\n patch,\n );\n\n const data = prepareMembershipPayload(payload, 'communityUsers');\n\n const cachedAt = client.cache && Date.now();\n if (client.cache) ingestInCache(data, { cachedAt });\n\n fireEvent('local.post.updated', data);\n\n const { posts } = data;\n\n return {\n data: LinkedObject.post(posts.find(post => post.postId === postId)!),\n cachedAt,\n };\n};\n/* end_public_function */\n"]}
|
|
@@ -50,11 +50,11 @@ export const queryPosts = async (query) => {
|
|
|
50
50
|
// const { paging, posts } = unwrapPayload(data)
|
|
51
51
|
// unpacking
|
|
52
52
|
const { paging } = data, payload = __rest(data, ["paging"]);
|
|
53
|
-
const
|
|
53
|
+
const preparedPayload = prepareMembershipPayload(payload, 'communityUsers');
|
|
54
54
|
const { posts } = payload;
|
|
55
55
|
const cachedAt = client.cache && Date.now();
|
|
56
56
|
if (client.cache) {
|
|
57
|
-
ingestInCache(
|
|
57
|
+
ingestInCache(preparedPayload, { cachedAt });
|
|
58
58
|
const cacheKey = ['post', 'query', Object.assign(Object.assign({}, params), { options })];
|
|
59
59
|
pushToCache(cacheKey, { posts: posts.map(getResolver('post')), paging });
|
|
60
60
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"queryPosts.js","sourceRoot":"","sources":["../../../src/postRepository/api/queryPosts.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAI/C,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,OAAO,EAAE,wBAAwB,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEpD;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,KAAK,EAC7B,KAAuB,EAC6B,EAAE;IACtD,MAAM,MAAM,GAAG,eAAe,EAAE,CAAC;IACjC,MAAM,CAAC,GAAG,CAAC,iBAAiB,EAAE,KAAK,CAAC,CAAC;IAErC,MAAM,EAAE,IAAI,EAAE,KAAK,GAAG,EAAE,EAAE,cAAc,KAAgB,KAAK,EAAhB,MAAM,UAAK,KAAK,EAAvD,mCAA+C,CAAQ,CAAC;IAC9D,MAAM,EAAE,SAAS,EAAE,sBAAsB,EAAE,GAAG,MAAM,CAAC;IAErD,MAAM,OAAO,GAAG,CAAC,GAAG,EAAE;QACpB,IAAI,IAAI;YAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;QACjC,IAAI,KAAK;YAAE,OAAO,EAAE,KAAK,EAAE,CAAC;QAE5B,OAAO,SAAS,CAAC;IACnB,CAAC,CAAC,EAAE,CAAC;IAEL,iDAAiD;IACjD,oDAAoD;IACpD,kGAAkG;IAClG,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,GAAG,CAAuC,eAAe,EAAE;QAC5F,MAAM,kCACD,MAAM,KACT,SAAS,EAAE,cAAc,CAAC,cAAc,CAAC;YACzC;;;;;;eAMG;YACH,sBAAsB,EAAE,sBAAsB,aAAtB,sBAAsB,cAAtB,sBAAsB,GAAI,CAAC,CAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,MAAM,CAAA,EACpE,OAAO,GACR;KACF,CAAC,CAAC;IAEH,oDAAoD;IACpD,gDAAgD;IAChD,YAAY;IACZ,MAAM,EAAE,MAAM,KAAiB,IAAI,EAAhB,OAAO,UAAK,IAAI,EAA7B,UAAsB,CAAO,CAAC;IACpC,MAAM,
|
|
1
|
+
{"version":3,"file":"queryPosts.js","sourceRoot":"","sources":["../../../src/postRepository/api/queryPosts.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAI/C,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,OAAO,EAAE,wBAAwB,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEpD;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,KAAK,EAC7B,KAAuB,EAC6B,EAAE;IACtD,MAAM,MAAM,GAAG,eAAe,EAAE,CAAC;IACjC,MAAM,CAAC,GAAG,CAAC,iBAAiB,EAAE,KAAK,CAAC,CAAC;IAErC,MAAM,EAAE,IAAI,EAAE,KAAK,GAAG,EAAE,EAAE,cAAc,KAAgB,KAAK,EAAhB,MAAM,UAAK,KAAK,EAAvD,mCAA+C,CAAQ,CAAC;IAC9D,MAAM,EAAE,SAAS,EAAE,sBAAsB,EAAE,GAAG,MAAM,CAAC;IAErD,MAAM,OAAO,GAAG,CAAC,GAAG,EAAE;QACpB,IAAI,IAAI;YAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;QACjC,IAAI,KAAK;YAAE,OAAO,EAAE,KAAK,EAAE,CAAC;QAE5B,OAAO,SAAS,CAAC;IACnB,CAAC,CAAC,EAAE,CAAC;IAEL,iDAAiD;IACjD,oDAAoD;IACpD,kGAAkG;IAClG,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,GAAG,CAAuC,eAAe,EAAE;QAC5F,MAAM,kCACD,MAAM,KACT,SAAS,EAAE,cAAc,CAAC,cAAc,CAAC;YACzC;;;;;;eAMG;YACH,sBAAsB,EAAE,sBAAsB,aAAtB,sBAAsB,cAAtB,sBAAsB,GAAI,CAAC,CAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,MAAM,CAAA,EACpE,OAAO,GACR;KACF,CAAC,CAAC;IAEH,oDAAoD;IACpD,gDAAgD;IAChD,YAAY;IACZ,MAAM,EAAE,MAAM,KAAiB,IAAI,EAAhB,OAAO,UAAK,IAAI,EAA7B,UAAsB,CAAO,CAAC;IACpC,MAAM,eAAe,GAAG,wBAAwB,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;IAC5E,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC;IAE1B,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;IAE5C,IAAI,MAAM,CAAC,KAAK,EAAE;QAChB,aAAa,CAAC,eAAe,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;QAE7C,MAAM,QAAQ,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,gCAAK,MAAM,KAAE,OAAO,GAAwB,CAAC,CAAC;QACjF,WAAW,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;KAC1E;IAED,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;AAClE,CAAC,CAAC","sourcesContent":["import { getActiveClient } from '~/client/api';\n\nimport { toPageRaw, toToken } from '~/core/query';\n\nimport { pushToCache } from '~/cache/api';\nimport { ingestInCache } from '~/cache/api/ingestInCache';\nimport { getResolver } from '~/core/model';\n\nimport { prepareMembershipPayload } from '~/group/utils';\nimport { inferIsDeleted } from '~/utils/inferIsDeleted';\nimport { LinkedObject } from '~/utils/linkedObject';\n\n/**\n * ```js\n * import { queryPosts } from '@amityco/ts-sdk'\n * const { data: posts, prevPage, nextPage } = await queryPosts({ targetId, targetType })\n * ```\n *\n * Queries a paginable list of {@link Amity.Post} objects\n *\n * @param query The query parameters\n * @returns posts\n *\n * @category Post API\n * @async\n */\nexport const queryPosts = async (\n query: Amity.QueryPosts,\n): Promise<Amity.Cached<Amity.PageToken<Amity.Post>>> => {\n const client = getActiveClient();\n client.log('post/queryPosts', query);\n\n const { page, limit = 10, includeDeleted, ...params } = query;\n const { dataTypes, matchingOnlyParentPost } = params;\n\n const options = (() => {\n if (page) return { token: page };\n if (limit) return { limit };\n\n return undefined;\n })();\n\n // API-FIX: parameters should be querystring. (1)\n // API-FIX: backend should answer Amity.Response (2)\n // const { data } = await client.http.get<Amity.Response<Amity.PagedResponse<Amity.PostPayload>>>(\n const { data } = await client.http.get<Amity.PostPayload & Amity.Pagination>(`/api/v5/posts`, {\n params: {\n ...params,\n isDeleted: inferIsDeleted(includeDeleted),\n /*\n * when creating post like image, file, video BE will create 2 posts\n * 1. parent post to store text with dataType=text\n * 2. child post to store dataTypes post data\n *\n * By default, BE queries only parent post\n */\n matchingOnlyParentPost: matchingOnlyParentPost ?? !dataTypes?.length,\n options,\n },\n });\n\n // API-FIX: backend should answer Amity.Response (2)\n // const { paging, posts } = unwrapPayload(data)\n // unpacking\n const { paging, ...payload } = data;\n const preparedPayload = prepareMembershipPayload(payload, 'communityUsers');\n const { posts } = payload;\n\n const cachedAt = client.cache && Date.now();\n\n if (client.cache) {\n ingestInCache(preparedPayload, { cachedAt });\n\n const cacheKey = ['post', 'query', { ...params, options } as Amity.Serializable];\n pushToCache(cacheKey, { posts: posts.map(getResolver('post')), paging });\n }\n\n return { data: posts.map(LinkedObject.post), cachedAt, paging };\n};\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/postRepository/events/utils.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/postRepository/events/utils.ts"],"names":[],"mappings":"AAmCA,eAAO,MAAM,yBAAyB,UAC7B,MAAM,MAAM,cAAc,YACvB,MAAM,QAAQ,CAAC,MAAM,YAAY,CAAC,uBAwE7C,CAAC;AAEF,eAAO,MAAM,8BAA8B,UAClC,MAAM,KAAK,MAAM,eAAe,EAAE,wBAAwB,GAAG,2BAA2B,CAAC,YACtF,MAAM,QAAQ,CAAC,MAAM,YAAY,CAAC,uBAkC7C,CAAC"}
|
|
@@ -1,9 +1,29 @@
|
|
|
1
1
|
import { getActiveClient } from '~/client/api';
|
|
2
2
|
import { ingestInCache } from '~/cache/api/ingestInCache';
|
|
3
3
|
import { createEventSubscriber, fireEvent } from '~/core/events';
|
|
4
|
-
import { dropFromCache, pullFromCache, queryCache, upsertInCache } from '~/cache/api';
|
|
4
|
+
import { dropFromCache, pullFromCache, pushToCache, queryCache, upsertInCache } from '~/cache/api';
|
|
5
5
|
import { isInTombstone } from '~/cache/api/isInTombstone';
|
|
6
6
|
import { preparePostPayload } from '~/postRepository/utils/payload';
|
|
7
|
+
const processDeleteChildPost = (payload) => {
|
|
8
|
+
var _a;
|
|
9
|
+
const post = payload.posts[0];
|
|
10
|
+
if (!post.parentId)
|
|
11
|
+
return;
|
|
12
|
+
const parentPost = (_a = pullFromCache(['post', 'get', post.parentPostId])) === null || _a === void 0 ? void 0 : _a.data;
|
|
13
|
+
if (!parentPost)
|
|
14
|
+
return;
|
|
15
|
+
pushToCache(['post', 'get', parentPost.postId], Object.assign(Object.assign({}, parentPost), { children: parentPost.children.filter(childId => childId !== post.postId) }));
|
|
16
|
+
};
|
|
17
|
+
const processCreateChildPost = (payload) => {
|
|
18
|
+
var _a;
|
|
19
|
+
const post = payload.posts[0];
|
|
20
|
+
if (!post.parentId)
|
|
21
|
+
return;
|
|
22
|
+
const parentPost = (_a = pullFromCache(['post', 'get', post.parentPostId])) === null || _a === void 0 ? void 0 : _a.data;
|
|
23
|
+
if (!parentPost)
|
|
24
|
+
return;
|
|
25
|
+
pushToCache(['post', 'get', parentPost.postId], Object.assign(Object.assign({}, parentPost), { children: [...new Set([post.postId, ...parentPost.children])] }));
|
|
26
|
+
};
|
|
7
27
|
export const createPostEventSubscriber = (event, callback) => {
|
|
8
28
|
const client = getActiveClient();
|
|
9
29
|
const filter = (payload) => {
|
|
@@ -28,6 +48,7 @@ export const createPostEventSubscriber = (event, callback) => {
|
|
|
28
48
|
}
|
|
29
49
|
if (event === 'post.deleted') {
|
|
30
50
|
const { postId, postedUserId } = payload.posts[0];
|
|
51
|
+
processDeleteChildPost(payload);
|
|
31
52
|
try {
|
|
32
53
|
isInTombstone('post', postId);
|
|
33
54
|
}
|
|
@@ -54,6 +75,8 @@ export const createPostEventSubscriber = (event, callback) => {
|
|
|
54
75
|
}
|
|
55
76
|
queries === null || queries === void 0 ? void 0 : queries.map(({ key, data }) => upsertInCache(key, data, { cachedAt: -1 }));
|
|
56
77
|
}
|
|
78
|
+
if (event === 'post.created')
|
|
79
|
+
processCreateChildPost(payload);
|
|
57
80
|
callback(post.data);
|
|
58
81
|
}
|
|
59
82
|
};
|
|
@@ -80,6 +103,8 @@ export const createLocalPostEventSubscriber = (event, callback) => {
|
|
|
80
103
|
});
|
|
81
104
|
}
|
|
82
105
|
const post = pullFromCache(['post', 'get', payload.posts[0].postId]);
|
|
106
|
+
if (event === 'local.post.deleted')
|
|
107
|
+
processDeleteChildPost(payload);
|
|
83
108
|
callback(post.data);
|
|
84
109
|
}
|
|
85
110
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/postRepository/events/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,qBAAqB,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AACjE,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/postRepository/events/utils.ts"],"names":[],"mappings":"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","sourcesContent":["import { getActiveClient } from '~/client/api';\nimport { ingestInCache } from '~/cache/api/ingestInCache';\nimport { createEventSubscriber, fireEvent } from '~/core/events';\nimport { dropFromCache, pullFromCache, pushToCache, queryCache, upsertInCache } from '~/cache/api';\nimport { isInTombstone } from '~/cache/api/isInTombstone';\nimport { preparePostPayload } from '~/postRepository/utils/payload';\n\nconst processDeleteChildPost = (payload: Amity.PostPayload) => {\n const post = payload.posts[0];\n if (!post.parentId) return;\n\n const parentPost = pullFromCache<Amity.InternalPost>(['post', 'get', post.parentPostId])?.data;\n\n if (!parentPost) return;\n\n pushToCache(['post', 'get', parentPost.postId], {\n ...parentPost,\n children: parentPost.children.filter(childId => childId !== post.postId),\n });\n};\n\nconst processCreateChildPost = (payload: Amity.PostPayload) => {\n const post = payload.posts[0];\n if (!post.parentId) return;\n\n const parentPost = pullFromCache<Amity.InternalPost>(['post', 'get', post.parentPostId])?.data;\n\n if (!parentPost) return;\n\n pushToCache(['post', 'get', parentPost.postId], {\n ...parentPost,\n children: [...new Set([post.postId, ...parentPost.children])],\n });\n};\n\nexport const createPostEventSubscriber = (\n event: keyof Amity.MqttPostEvents,\n callback: Amity.Listener<Amity.InternalPost>,\n) => {\n const client = getActiveClient();\n\n const filter = (payload: Amity.PostPayload) => {\n if (!client.cache) {\n callback(payload.posts[0]);\n } else {\n const data = preparePostPayload(payload);\n\n const { communities } = data;\n\n // NOTE: The event data should be merge with existing cache rather than replace it\n ingestInCache(data, undefined, false);\n\n if (communities?.[0] && !['post.updated'].includes(event)) {\n fireEvent('community.updated', {\n communities,\n categories: [],\n communityUsers: data.communityUsers,\n feeds: [],\n files: [],\n users: [],\n });\n }\n\n if (event === 'post.deleted') {\n const { postId, postedUserId } = payload.posts[0];\n\n processDeleteChildPost(payload);\n\n try {\n isInTombstone('post', postId);\n } catch (e) {\n // Already in tombstone, skip to update client\n return;\n }\n\n // If this post NOT BELONG to current user, let **put it to tombstone in all cases**\n // For the case incoming post belong to current user, If from **different device will treat it as SOFT DELETE**\n // But for same device if it is soft delete it just need to handle as update cache\n // But if it is hard delete, it will pushed into tombstone before fire an event to BE. it means it will stay in tombstone already\n // and will got skip to notify in a previous code block\n if (postedUserId !== client.userId) {\n dropFromCache(['post', 'get', postId]);\n }\n\n return callback(payload.posts[0]);\n }\n\n const post = pullFromCache<Amity.InternalPost>(['post', 'get', payload.posts[0].postId])!;\n\n if (['post.created', 'post.approved', 'post.declined'].includes(event)) {\n let queries = queryCache(['post', 'query'])\n // @ts-ignore\n ?.filter(({ key }) => key[2]?.targetId === post.data.targetId);\n\n if (event === 'post.declined') {\n // @ts-ignore\n queries = queries?.filter(({ key }) => key[2]?.feedType === 'reviewing');\n }\n\n queries?.map(({ key, data }) => upsertInCache(key, data as any, { cachedAt: -1 }));\n }\n\n if (event === 'post.created') processCreateChildPost(payload);\n\n callback(post.data);\n }\n };\n\n return createEventSubscriber(client, event, event, filter);\n};\n\nexport const createLocalPostEventSubscriber = (\n event: keyof Omit<Amity.LocalPostEvents, 'local.post.addReaction' | 'local.post.removeReaction'>,\n callback: Amity.Listener<Amity.InternalPost>,\n) => {\n const client = getActiveClient();\n\n const filter = (payload: Amity.PostPayload) => {\n if (!client.cache) {\n callback(payload.posts[0]);\n } else {\n const data = preparePostPayload(payload);\n\n const { communities } = data;\n\n ingestInCache(data);\n\n if (communities?.[0] && !['local.post.updated'].includes(event)) {\n fireEvent('community.updated', {\n communities,\n categories: [],\n communityUsers: data.communityUsers,\n feeds: [],\n files: [],\n users: [],\n });\n }\n\n const post = pullFromCache<Amity.InternalPost>(['post', 'get', payload.posts[0].postId])!;\n\n if (event === 'local.post.deleted') processDeleteChildPost(payload);\n\n callback(post.data);\n }\n };\n\n return createEventSubscriber(client, event, event, filter);\n};\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GlobalPinnedPostLiveCollectionController.d.ts","sourceRoot":"","sources":["../../../../src/postRepository/observers/getGlobalPinnedPosts/GlobalPinnedPostLiveCollectionController.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,oCAAoC,EAAE,MAAM,wCAAwC,CAAC;AAE9F,OAAO,EAAE,wBAAwB,EAAE,MAAM,gDAAgD,CAAC;
|
|
1
|
+
{"version":3,"file":"GlobalPinnedPostLiveCollectionController.d.ts","sourceRoot":"","sources":["../../../../src/postRepository/observers/getGlobalPinnedPosts/GlobalPinnedPostLiveCollectionController.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,oCAAoC,EAAE,MAAM,wCAAwC,CAAC;AAE9F,OAAO,EAAE,wBAAwB,EAAE,MAAM,gDAAgD,CAAC;AAQ1F,qBAAa,wCAAyC,SAAQ,wBAAwB,CACpF,YAAY,EACZ,KAAK,CAAC,8BAA8B,EACpC,KAAK,CAAC,UAAU,EAChB,oCAAoC,CACrC;IACC,OAAO,CAAC,qBAAqB,CAAwC;IAErE,OAAO,CAAC,KAAK,CAAuC;gBAGlD,KAAK,EAAE,KAAK,CAAC,8BAA8B,EAC3C,QAAQ,EAAE,KAAK,CAAC,sBAAsB,CAAC,KAAK,CAAC,UAAU,CAAC;IAoB1D,SAAS,CAAC,KAAK;cAUC,YAAY,CAAC,YAAY,EAAE,KAAK,CAAC,iBAAiB,GAAG,KAAK,CAAC,UAAU;IAIrF,SAAS,CAAC,kBAAkB,CAAC,EAC3B,QAAQ,EACR,SAAS,EACT,OAAO,GACR,EAAE,KAAK,CAAC,sCAAsC,CAAC,YAAY,CAAC;IAK7D,iBAAiB;IAcjB,YAAY,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,KAAK,CAAC,0BAA0B;CAmB1E"}
|
|
@@ -8,6 +8,7 @@ import { LinkedObject } from '~/utils/linkedObject';
|
|
|
8
8
|
import { onPostDeleted } from '~/postRepository/events';
|
|
9
9
|
import { EnumPostActions } from '../enums';
|
|
10
10
|
import { onLocalPostDeleted } from '~/postRepository/events/onLocalPostDeleted';
|
|
11
|
+
import { generateCommentSubscriptions } from '../utils';
|
|
11
12
|
export class GlobalPinnedPostLiveCollectionController extends LiveCollectionController {
|
|
12
13
|
constructor(query, callback) {
|
|
13
14
|
const queryStreamId = hash(query);
|
|
@@ -43,6 +44,10 @@ export class GlobalPinnedPostLiveCollectionController extends LiveCollectionCont
|
|
|
43
44
|
fn: onPostDeleted,
|
|
44
45
|
action: EnumPostActions.OnPostDeleted,
|
|
45
46
|
},
|
|
47
|
+
...generateCommentSubscriptions({
|
|
48
|
+
cacheKey: this.cacheKey,
|
|
49
|
+
resolveId: id => `global#${id}`,
|
|
50
|
+
}),
|
|
46
51
|
]);
|
|
47
52
|
}
|
|
48
53
|
notifyChange({ origin, loading, error }) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GlobalPinnedPostLiveCollectionController.js","sourceRoot":"","sources":["../../../../src/postRepository/observers/getGlobalPinnedPosts/GlobalPinnedPostLiveCollectionController.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,aAAa,CAAC;AAC/B,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AACzD,OAAO,EAAE,oCAAoC,EAAE,MAAM,wCAAwC,CAAC;AAC9F,OAAO,EAAE,qCAAqC,EAAE,MAAM,yCAAyC,CAAC;AAChG,OAAO,EAAE,wBAAwB,EAAE,MAAM,gDAAgD,CAAC;AAC1F,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,EAAE,kBAAkB,EAAE,MAAM,4CAA4C,CAAC;
|
|
1
|
+
{"version":3,"file":"GlobalPinnedPostLiveCollectionController.js","sourceRoot":"","sources":["../../../../src/postRepository/observers/getGlobalPinnedPosts/GlobalPinnedPostLiveCollectionController.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,aAAa,CAAC;AAC/B,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AACzD,OAAO,EAAE,oCAAoC,EAAE,MAAM,wCAAwC,CAAC;AAC9F,OAAO,EAAE,qCAAqC,EAAE,MAAM,yCAAyC,CAAC;AAChG,OAAO,EAAE,wBAAwB,EAAE,MAAM,gDAAgD,CAAC;AAC1F,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,EAAE,kBAAkB,EAAE,MAAM,4CAA4C,CAAC;AAChF,OAAO,EAAE,4BAA4B,EAAE,MAAM,UAAU,CAAC;AAExD,MAAM,OAAO,wCAAyC,SAAQ,wBAK7D;IAKC,YACE,KAA2C,EAC3C,QAAwD;QAExD,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;QAClC,MAAM,QAAQ,GAAG,CAAC,aAAa,EAAE,YAAY,EAAE,aAAa,CAAC,CAAC;QAC9D,MAAM,oBAAoB,GAAG,IAAI,oCAAoC,CAAC,KAAK,CAAC,CAAC;QAE7E,KAAK,CAAC,oBAAoB,EAAE,aAAa,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAE/D,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,qBAAqB,GAAG,IAAI,qCAAqC,CACpE,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAC5B,QAAQ,CAAC,EAAE,CAAC,QAAQ,CACrB,CAAC;QAEF,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpC,IAAI,CAAC,QAAQ,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;IACnC,CAAC;IAES,KAAK;;QACb,MAAM,UAAU,GAAG,MAAA,aAAa,CAAgC,IAAI,CAAC,QAAQ,CAAC,0CAAE,IAAI,CAAC;QACrF,IAAI,CAAC,UAAU,EAAE;YACf,WAAW,CAAC,IAAI,CAAC,QAAQ,EAAE;gBACzB,IAAI,EAAE,EAAE;gBACR,MAAM,EAAE,EAAE;aACX,CAAC,CAAC;SACJ;IACH,CAAC;IAES,KAAK,CAAC,YAAY,CAAC,YAAwD;QACnF,MAAM,IAAI,CAAC,qBAAqB,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;IAC9D,CAAC;IAES,kBAAkB,CAAC,EAC3B,QAAQ,EACR,SAAS,EACT,OAAO,GACoD;QAC3D,IAAI,CAAC,qBAAqB,CAAC,mBAAmB,CAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;IAC/E,CAAC;IAED,kDAAkD;IAClD,iBAAiB;QACf,OAAO,IAAI,CAAC,qBAAqB,CAAC,YAAY,CAAC;YAC7C,EAAE,EAAE,EAAE,kBAAkB,EAAE,MAAM,EAAE,eAAe,CAAC,aAAa,EAAE;YACjE;gBACE,EAAE,EAAE,aAAa;gBACjB,MAAM,EAAE,eAAe,CAAC,aAAa;aACtC;YACD,GAAG,4BAA4B,CAAC;gBAC9B,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,SAAS,EAAE,EAAE,CAAC,EAAE,CAAC,UAAU,EAAE,EAAE;aAChC,CAAC;SACH,CAAC,CAAC;IACL,CAAC;IAED,YAAY,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAoC;;QACvE,MAAM,UAAU,GAAG,MAAA,aAAa,CAAsC,IAAI,CAAC,QAAQ,CAAC,0CAAE,IAAI,CAAC;QAC3F,IAAI,CAAC,UAAU;YAAE,OAAO;QAExB,MAAM,IAAI,GAAG,CACX,MAAA,UAAU,CAAC,IAAI;aACZ,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,aAAa,CAAoB,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,CAAE,CAAC;aAChE,MAAM,CAAC,aAAa,CAAC;aACrB,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,mCAAI,EAAE,CACjC,CAAC,GAAG,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;QAE/B,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,MAAM,KAAK,OAAO;YAAE,OAAO;QAE3D,IAAI,CAAC,QAAQ,CAAC;YACZ,IAAI;YACJ,OAAO;YACP,KAAK;SACN,CAAC,CAAC;IACL,CAAC;CACF","sourcesContent":["import hash from 'object-hash';\nimport { pullFromCache, pushToCache } from '~/cache/api';\nimport { GlobalPinnedPostPaginationController } from './GlobalPinnedPostPaginationController';\nimport { GlobalPinnedPostQueryStreamController } from './GlobalPinnedPostQueryStreamController';\nimport { LiveCollectionController } from '~/core/liveCollection/LiveCollectionController';\nimport { isNonNullable } from '~/utils';\nimport { LinkedObject } from '~/utils/linkedObject';\nimport { onPostDeleted } from '~/postRepository/events';\nimport { EnumPostActions } from '../enums';\nimport { onLocalPostDeleted } from '~/postRepository/events/onLocalPostDeleted';\nimport { generateCommentSubscriptions } from '../utils';\n\nexport class GlobalPinnedPostLiveCollectionController extends LiveCollectionController<\n 'pinnedPost',\n Amity.GlobalPinnedPostLiveCollection,\n Amity.PinnedPost,\n GlobalPinnedPostPaginationController\n> {\n private queryStreamController: GlobalPinnedPostQueryStreamController;\n\n private query: Amity.GlobalPinnedPostLiveCollection;\n\n constructor(\n query: Amity.GlobalPinnedPostLiveCollection,\n callback: Amity.LiveCollectionCallback<Amity.PinnedPost>,\n ) {\n const queryStreamId = hash(query);\n const cacheKey = ['pinnedPosts', 'collection', queryStreamId];\n const paginationController = new GlobalPinnedPostPaginationController(query);\n\n super(paginationController, queryStreamId, cacheKey, callback);\n\n this.query = query;\n this.queryStreamController = new GlobalPinnedPostQueryStreamController(\n this.query,\n this.cacheKey,\n this.notifyChange.bind(this),\n response => response,\n );\n\n this.callback = callback.bind(this);\n this.loadPage({ initial: true });\n }\n\n protected setup() {\n const collection = pullFromCache<Amity.PostLiveCollectionCache>(this.cacheKey)?.data;\n if (!collection) {\n pushToCache(this.cacheKey, {\n data: [],\n params: {},\n });\n }\n }\n\n protected async persistModel(queryPayload: Amity.PinnedPostPayload & Amity.Pagination) {\n await this.queryStreamController.saveToMainDB(queryPayload);\n }\n\n protected persistQueryStream({\n response,\n direction,\n refresh,\n }: Amity.LiveCollectionPersistQueryStreamParams<'pinnedPost'>) {\n this.queryStreamController.appendToQueryStream(response, direction, refresh);\n }\n\n // eslint-disable-next-line class-methods-use-this\n startSubscription() {\n return this.queryStreamController.subscribeRTE([\n { fn: onLocalPostDeleted, action: EnumPostActions.OnPostDeleted },\n {\n fn: onPostDeleted,\n action: EnumPostActions.OnPostDeleted,\n },\n ...generateCommentSubscriptions({\n cacheKey: this.cacheKey,\n resolveId: id => `global#${id}`,\n }),\n ]);\n }\n\n notifyChange({ origin, loading, error }: Amity.LiveCollectionNotifyParams) {\n const collection = pullFromCache<Amity.PinnedPostLiveCollectionCache>(this.cacheKey)?.data;\n if (!collection) return;\n\n const data = (\n collection.data\n .map(id => pullFromCache<Amity.InternalPin>(['pin', 'get', id])!)\n .filter(isNonNullable)\n .map(({ data }) => data) ?? []\n ).map(LinkedObject.pinnedPost);\n\n if (!this.shouldNotify(data) && origin === 'event') return;\n\n this.callback({\n data,\n loading,\n error,\n });\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PinnedPostLiveCollectionController.d.ts","sourceRoot":"","sources":["../../../../src/postRepository/observers/getPinnedPosts/PinnedPostLiveCollectionController.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,8BAA8B,EAAE,MAAM,kCAAkC,CAAC;AAElF,OAAO,EAAE,wBAAwB,EAAE,MAAM,gDAAgD,CAAC;
|
|
1
|
+
{"version":3,"file":"PinnedPostLiveCollectionController.d.ts","sourceRoot":"","sources":["../../../../src/postRepository/observers/getPinnedPosts/PinnedPostLiveCollectionController.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,8BAA8B,EAAE,MAAM,kCAAkC,CAAC;AAElF,OAAO,EAAE,wBAAwB,EAAE,MAAM,gDAAgD,CAAC;AAM1F,qBAAa,kCAAmC,SAAQ,wBAAwB,CAC9E,YAAY,EACZ,KAAK,CAAC,wBAAwB,EAC9B,KAAK,CAAC,UAAU,EAChB,8BAA8B,CAC/B;IACC,OAAO,CAAC,qBAAqB,CAAkC;IAE/D,OAAO,CAAC,KAAK,CAAiC;gBAG5C,KAAK,EAAE,KAAK,CAAC,wBAAwB,EACrC,QAAQ,EAAE,KAAK,CAAC,sBAAsB,CAAC,KAAK,CAAC,UAAU,CAAC;IAoB1D,SAAS,CAAC,KAAK;cAUC,YAAY,CAAC,YAAY,EAAE,KAAK,CAAC,iBAAiB,GAAG,KAAK,CAAC,UAAU;IAIrF,SAAS,CAAC,kBAAkB,CAAC,EAC3B,QAAQ,EACR,SAAS,EACT,OAAO,GACR,EAAE,KAAK,CAAC,sCAAsC,CAAC,YAAY,CAAC;IAK7D,iBAAiB;IASjB,YAAY,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,KAAK,CAAC,0BAA0B;IAsBzE,OAAO,CAAC,WAAW;CAapB"}
|
|
@@ -6,6 +6,7 @@ import { LiveCollectionController } from '~/core/liveCollection/LiveCollectionCo
|
|
|
6
6
|
import { isNonNullable } from '~/utils';
|
|
7
7
|
import { LinkedObject } from '~/utils/linkedObject';
|
|
8
8
|
import { sortByLastCreated } from '~/core/query';
|
|
9
|
+
import { generateCommentSubscriptions } from '../utils';
|
|
9
10
|
export class PinnedPostLiveCollectionController extends LiveCollectionController {
|
|
10
11
|
constructor(query, callback) {
|
|
11
12
|
const queryStreamId = hash(query);
|
|
@@ -35,7 +36,10 @@ export class PinnedPostLiveCollectionController extends LiveCollectionController
|
|
|
35
36
|
}
|
|
36
37
|
// eslint-disable-next-line class-methods-use-this
|
|
37
38
|
startSubscription() {
|
|
38
|
-
return
|
|
39
|
+
return this.queryStreamController.subscribeRTE(generateCommentSubscriptions({
|
|
40
|
+
cacheKey: this.cacheKey,
|
|
41
|
+
resolveId: id => `${this.query.placement}#${id}`,
|
|
42
|
+
}));
|
|
39
43
|
}
|
|
40
44
|
notifyChange({ origin, loading, error }) {
|
|
41
45
|
var _a, _b;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PinnedPostLiveCollectionController.js","sourceRoot":"","sources":["../../../../src/postRepository/observers/getPinnedPosts/PinnedPostLiveCollectionController.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,aAAa,CAAC;AAC/B,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AACzD,OAAO,EAAE,8BAA8B,EAAE,MAAM,kCAAkC,CAAC;AAClF,OAAO,EAAE,+BAA+B,EAAE,MAAM,mCAAmC,CAAC;AACpF,OAAO,EAAE,wBAAwB,EAAE,MAAM,gDAAgD,CAAC;AAC1F,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"PinnedPostLiveCollectionController.js","sourceRoot":"","sources":["../../../../src/postRepository/observers/getPinnedPosts/PinnedPostLiveCollectionController.ts"],"names":[],"mappings":"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","sourcesContent":["import hash from 'object-hash';\nimport { pullFromCache, pushToCache } from '~/cache/api';\nimport { PinnedPostPaginationController } from './PinnedPostPaginationController';\nimport { PinnedPostQueryStreamController } from './PinnedPostQueryStreamController';\nimport { LiveCollectionController } from '~/core/liveCollection/LiveCollectionController';\nimport { isNonNullable } from '~/utils';\nimport { LinkedObject } from '~/utils/linkedObject';\nimport { sortByLastCreated } from '~/core/query';\nimport { generateCommentSubscriptions } from '../utils';\n\nexport class PinnedPostLiveCollectionController extends LiveCollectionController<\n 'pinnedPost',\n Amity.PinnedPostLiveCollection,\n Amity.PinnedPost,\n PinnedPostPaginationController\n> {\n private queryStreamController: PinnedPostQueryStreamController;\n\n private query: Amity.PinnedPostLiveCollection;\n\n constructor(\n query: Amity.PinnedPostLiveCollection,\n callback: Amity.LiveCollectionCallback<Amity.PinnedPost>,\n ) {\n const queryStreamId = hash(query);\n const cacheKey = ['pinnedPosts', 'collection', queryStreamId];\n const paginationController = new PinnedPostPaginationController(query);\n\n super(paginationController, queryStreamId, cacheKey, callback);\n\n this.query = query;\n this.queryStreamController = new PinnedPostQueryStreamController(\n this.query,\n this.cacheKey,\n this.notifyChange.bind(this),\n response => response,\n );\n\n this.callback = callback.bind(this);\n this.loadPage({ initial: true });\n }\n\n protected setup() {\n const collection = pullFromCache<Amity.PostLiveCollectionCache>(this.cacheKey)?.data;\n if (!collection) {\n pushToCache(this.cacheKey, {\n data: [],\n params: {},\n });\n }\n }\n\n protected async persistModel(queryPayload: Amity.PinnedPostPayload & Amity.Pagination) {\n await this.queryStreamController.saveToMainDB(queryPayload);\n }\n\n protected persistQueryStream({\n response,\n direction,\n refresh,\n }: Amity.LiveCollectionPersistQueryStreamParams<'pinnedPost'>) {\n this.queryStreamController.appendToQueryStream(response, direction, refresh);\n }\n\n // eslint-disable-next-line class-methods-use-this\n startSubscription() {\n return this.queryStreamController.subscribeRTE(\n generateCommentSubscriptions({\n cacheKey: this.cacheKey,\n resolveId: id => `${this.query.placement}#${id}`,\n }),\n );\n }\n\n notifyChange({ origin, loading, error }: Amity.LiveCollectionNotifyParams) {\n const collection = pullFromCache<Amity.PinnedPostLiveCollectionCache>(this.cacheKey)?.data;\n if (!collection) return;\n\n let data = (\n collection.data\n .map(id => pullFromCache<Amity.InternalPin>(['pin', 'get', id])!)\n .filter(isNonNullable)\n .map(({ data }) => data) ?? []\n ).map(LinkedObject.pinnedPost);\n\n data = this.applyFilter(data);\n\n if (!this.shouldNotify(data) && origin === 'event') return;\n\n this.callback({\n data,\n loading,\n error,\n });\n }\n\n private applyFilter(data: Amity.PinnedPost[]) {\n let pinnedPost = data;\n switch (this.query.sortBy) {\n case 'lastCreated':\n pinnedPost = pinnedPost.sort(({ post: postA }, { post: postB }) =>\n sortByLastCreated({ createdAt: postA?.createdAt! }, { createdAt: postB?.createdAt! }),\n );\n break;\n default:\n break;\n }\n return pinnedPost;\n }\n}\n"]}
|
|
@@ -1,9 +1,15 @@
|
|
|
1
1
|
import { QueryStreamController } from '~/core/liveCollection/QueryStreamController';
|
|
2
|
+
import { EnumPostActions } from '../enums';
|
|
2
3
|
export declare class PinnedPostQueryStreamController extends QueryStreamController<Amity.PinnedPostPayload, Amity.PinnedPostLiveCollection> {
|
|
3
4
|
private notifyChange;
|
|
4
5
|
private preparePayload;
|
|
5
6
|
constructor(query: Amity.PinnedPostLiveCollection, cacheKey: string[], notifyChange: (params: Amity.LiveCollectionNotifyParams) => void, preparePayload: (response: Amity.PinnedPostPayload) => Amity.ProcessedPostPayload);
|
|
6
7
|
saveToMainDB(response: Amity.PinnedPostPayload): Promise<void>;
|
|
7
8
|
appendToQueryStream(response: Amity.PinnedPostPayload & Partial<Amity.Pagination>, direction: Amity.LiveCollectionPageDirection, refresh?: boolean): void;
|
|
9
|
+
reactor(action: EnumPostActions): (post: Amity.InternalPost) => void;
|
|
10
|
+
subscribeRTE(createSubscriber: {
|
|
11
|
+
fn: (reactor: (post: Amity.InternalPost) => void) => Amity.Unsubscriber;
|
|
12
|
+
action: EnumPostActions;
|
|
13
|
+
}[]): Amity.Unsubscriber[];
|
|
8
14
|
}
|
|
9
15
|
//# sourceMappingURL=PinnedPostQueryStreamController.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PinnedPostQueryStreamController.d.ts","sourceRoot":"","sources":["../../../../src/postRepository/observers/getPinnedPosts/PinnedPostQueryStreamController.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,6CAA6C,CAAC;
|
|
1
|
+
{"version":3,"file":"PinnedPostQueryStreamController.d.ts","sourceRoot":"","sources":["../../../../src/postRepository/observers/getPinnedPosts/PinnedPostQueryStreamController.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,6CAA6C,CAAC;AAMpF,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAE3C,qBAAa,+BAAgC,SAAQ,qBAAqB,CACxE,KAAK,CAAC,iBAAiB,EACvB,KAAK,CAAC,wBAAwB,CAC/B;IACC,OAAO,CAAC,YAAY,CAAqD;IAEzE,OAAO,CAAC,cAAc,CAAoE;gBAGxF,KAAK,EAAE,KAAK,CAAC,wBAAwB,EACrC,QAAQ,EAAE,MAAM,EAAE,EAClB,YAAY,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,0BAA0B,KAAK,IAAI,EAChE,cAAc,EAAE,CAAC,QAAQ,EAAE,KAAK,CAAC,iBAAiB,KAAK,KAAK,CAAC,oBAAoB;IAQ7E,YAAY,CAAC,QAAQ,EAAE,KAAK,CAAC,iBAAiB;IAcpD,mBAAmB,CACjB,QAAQ,EAAE,KAAK,CAAC,iBAAiB,GAAG,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,EAC7D,SAAS,EAAE,KAAK,CAAC,2BAA2B,EAC5C,OAAO,UAAQ;IAuBjB,OAAO,CAAC,MAAM,EAAE,eAAe,UACf,MAAM,YAAY;IAgBlC,YAAY,CACV,gBAAgB,EAAE;QAChB,EAAE,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC,YAAY,KAAK,IAAI,KAAK,KAAK,CAAC,YAAY,CAAC;QACxE,MAAM,EAAE,eAAe,CAAC;KACzB,EAAE;CAIN"}
|