diff options
author | Caidan Williams <caidan@internet.dev> | 2025-08-22 18:25:35 -0700 |
---|---|---|
committer | Caidan Williams <caidan@internet.dev> | 2025-08-26 13:01:36 -0700 |
commit | 6ddc268b91d990da6ef754323310227690378556 (patch) | |
tree | b209645dea05ed9d4e2128ec53da49f0fec47d13 /src/view/com/feeds | |
parent | 0517768cd32c96e96eb6ff80b23c3a8db284dfa0 (diff) | |
download | voidsky-6ddc268b91d990da6ef754323310227690378556.tar.zst |
feat: prevent search engines from indexing Discover feed content as page descriptions
Diffstat (limited to 'src/view/com/feeds')
-rw-r--r-- | src/view/com/feeds/FeedPage.tsx | 81 |
1 files changed, 43 insertions, 38 deletions
diff --git a/src/view/com/feeds/FeedPage.tsx b/src/view/com/feeds/FeedPage.tsx index 0e7813b7c..26c28729c 100644 --- a/src/view/com/feeds/FeedPage.tsx +++ b/src/view/com/feeds/FeedPage.tsx @@ -29,6 +29,7 @@ import {FAB} from '../util/fab/FAB' import {type ListMethods} from '../util/List' import {LoadLatestBtn} from '../util/load-latest/LoadLatestBtn' import {MainScrollProvider} from '../util/MainScrollProvider' +import {NoSnippetWrapper} from '../util/NoSnippetWrapper' const POLL_FREQ = 60e3 // 60sec @@ -132,45 +133,49 @@ export function FeedPage({ const shouldPrefetch = isNative && isPageAdjacent return ( - <View testID={testID} {...(isDiscoverFeed && {'data-nosnippet': true})}> - <MainScrollProvider> - <FeedFeedbackProvider value={feedFeedback}> - <PostFeed - testID={testID ? `${testID}-feed` : undefined} - enabled={isPageFocused || shouldPrefetch} - feed={feed} - feedParams={feedParams} - pollInterval={POLL_FREQ} - disablePoll={hasNew || !isPageFocused} - scrollElRef={scrollElRef} - onScrolledDownChange={setIsScrolledDown} - onHasNew={setHasNew} - renderEmptyState={renderEmptyState} - renderEndOfFeed={renderEndOfFeed} - headerOffset={headerOffset} - savedFeedConfig={savedFeedConfig} - isVideoFeed={isVideoFeed} + <NoSnippetWrapper enabled={isDiscoverFeed}> + <View testID={testID}> + <MainScrollProvider> + <FeedFeedbackProvider value={feedFeedback}> + <PostFeed + testID={testID ? `${testID}-feed` : undefined} + enabled={isPageFocused || shouldPrefetch} + feed={feed} + feedParams={feedParams} + pollInterval={POLL_FREQ} + disablePoll={hasNew || !isPageFocused} + scrollElRef={scrollElRef} + onScrolledDownChange={setIsScrolledDown} + onHasNew={setHasNew} + renderEmptyState={renderEmptyState} + renderEndOfFeed={renderEndOfFeed} + headerOffset={headerOffset} + savedFeedConfig={savedFeedConfig} + isVideoFeed={isVideoFeed} + /> + </FeedFeedbackProvider> + </MainScrollProvider> + {(isScrolledDown || hasNew) && ( + <LoadLatestBtn + onPress={onPressLoadLatest} + label={_(msg`Load new posts`)} + showIndicator={hasNew} /> - </FeedFeedbackProvider> - </MainScrollProvider> - {(isScrolledDown || hasNew) && ( - <LoadLatestBtn - onPress={onPressLoadLatest} - label={_(msg`Load new posts`)} - showIndicator={hasNew} - /> - )} + )} - {hasSession && ( - <FAB - testID="composeFAB" - onPress={onPressCompose} - icon={<ComposeIcon2 strokeWidth={1.5} size={29} style={s.white} />} - accessibilityRole="button" - accessibilityLabel={_(msg({message: `New post`, context: 'action'}))} - accessibilityHint="" - /> - )} - </View> + {hasSession && ( + <FAB + testID="composeFAB" + onPress={onPressCompose} + icon={<ComposeIcon2 strokeWidth={1.5} size={29} style={s.white} />} + accessibilityRole="button" + accessibilityLabel={_( + msg({message: `New post`, context: 'action'}), + )} + accessibilityHint="" + /> + )} + </View> + </NoSnippetWrapper> ) } |