From faae363b807751748bbc551f979695ba2971f8d4 Mon Sep 17 00:00:00 2001 From: Dan Abramov Date: Sat, 18 Jan 2025 03:12:25 +0000 Subject: [PATCH] Add FeedFeedbackProvider --- src/screens/Feeds/VibeScreen.tsx | 56 ++++++++++++++++++-------------- 1 file changed, 32 insertions(+), 24 deletions(-) diff --git a/src/screens/Feeds/VibeScreen.tsx b/src/screens/Feeds/VibeScreen.tsx index 2eea966a91..fd41aec5a7 100644 --- a/src/screens/Feeds/VibeScreen.tsx +++ b/src/screens/Feeds/VibeScreen.tsx @@ -55,6 +55,8 @@ import {sanitizeHandle} from '#/lib/strings/handles' import {isAndroid} from '#/platform/detection' import {POST_TOMBSTONE, Shadow, usePostShadow} from '#/state/cache/post-shadow' import {useProfileShadow} from '#/state/cache/profile-shadow' +import {FeedFeedbackProvider} from '#/state/feed-feedback' +import {useFeedFeedback} from '#/state/feed-feedback' import {usePostLikeMutationQueue} from '#/state/queries/post' import { AuthorFilter, @@ -62,6 +64,7 @@ import { usePostFeedQuery, } from '#/state/queries/post-feed' import {useProfileFollowMutationQueue} from '#/state/queries/profile' +import {useSession} from '#/state/session' import {useSetMinimalShellMode} from '#/state/shell' import {useSetLightStatusBar} from '#/state/shell/light-status-bar' import {List} from '#/view/com/util/List' @@ -154,6 +157,7 @@ function Inner() { throw new Error(`Invalid video feed params ${JSON.stringify(params)}`) } }, [params]) + const { data, isFetching, @@ -162,6 +166,8 @@ function Inner() { isFetchingNextPage, fetchNextPage, } = usePostFeedQuery(feedDesc) + const {hasSession} = useSession() + const feedFeedback = useFeedFeedback(feedDesc, hasSession) let videos = data?.pages.flatMap(page => page.slices.flatMap(slice => slice.items), @@ -336,31 +342,33 @@ function Inner() { ) return ( - - - } - onEndReached={() => { - if (hasNextPage && !isFetchingNextPage) { - fetchNextPage() + + + } - }} - showsVerticalScrollIndicator={false} - onViewableItemsChanged={onViewableItemsChanged} - viewabilityConfig={{itemVisiblePercentThreshold: 100}} - /> - + onEndReached={() => { + if (hasNextPage && !isFetchingNextPage) { + fetchNextPage() + } + }} + showsVerticalScrollIndicator={false} + onViewableItemsChanged={onViewableItemsChanged} + viewabilityConfig={{itemVisiblePercentThreshold: 100}} + /> + + ) }