diff options
Diffstat (limited to 'src/view/screens/Search.web.tsx')
-rw-r--r-- | src/view/screens/Search.web.tsx | 73 |
1 files changed, 38 insertions, 35 deletions
diff --git a/src/view/screens/Search.web.tsx b/src/view/screens/Search.web.tsx index 75b5f01ce..29b884493 100644 --- a/src/view/screens/Search.web.tsx +++ b/src/view/screens/Search.web.tsx @@ -1,6 +1,7 @@ import React from 'react' import {StyleSheet, View} from 'react-native' import {useFocusEffect} from '@react-navigation/native' +import {withAuthRequired} from 'view/com/auth/withAuthRequired' import {ScrollView} from '../com/util/Views' import {observer} from 'mobx-react-lite' import { @@ -17,46 +18,48 @@ import {useOnMainScroll} from 'lib/hooks/useOnMainScroll' const FIVE_MIN = 5 * 60 * 1e3 type Props = NativeStackScreenProps<SearchTabNavigatorParams, 'Search'> -export const SearchScreen = observer(({}: Props) => { - const pal = usePalette('default') - const store = useStores() - const scrollElRef = React.useRef<ScrollView>(null) - const onMainScroll = useOnMainScroll(store) - const [lastRenderTime, setRenderTime] = React.useState<number>(Date.now()) // used to trigger reloads +export const SearchScreen = withAuthRequired( + observer(({}: Props) => { + const pal = usePalette('default') + const store = useStores() + const scrollElRef = React.useRef<ScrollView>(null) + const onMainScroll = useOnMainScroll(store) + const [lastRenderTime, setRenderTime] = React.useState<number>(Date.now()) // used to trigger reloads - const onSoftReset = () => { - scrollElRef.current?.scrollTo({x: 0, y: 0}) - } + const onSoftReset = () => { + scrollElRef.current?.scrollTo({x: 0, y: 0}) + } - useFocusEffect( - React.useCallback(() => { - const softResetSub = store.onScreenSoftReset(onSoftReset) + useFocusEffect( + React.useCallback(() => { + const softResetSub = store.onScreenSoftReset(onSoftReset) - const now = Date.now() - if (now - lastRenderTime > FIVE_MIN) { - setRenderTime(Date.now()) // trigger reload of suggestions - } - store.shell.setMinimalShellMode(false) + const now = Date.now() + if (now - lastRenderTime > FIVE_MIN) { + setRenderTime(Date.now()) // trigger reload of suggestions + } + store.shell.setMinimalShellMode(false) - return () => { - softResetSub.remove() - } - }, [store, lastRenderTime, setRenderTime]), - ) + return () => { + softResetSub.remove() + } + }, [store, lastRenderTime, setRenderTime]), + ) - return ( - <ScrollView - ref={scrollElRef} - testID="searchScrollView" - style={[pal.view, styles.container]} - onScroll={onMainScroll} - scrollEventThrottle={100}> - <WhoToFollow key={`wtf-${lastRenderTime}`} /> - <SuggestedPosts key={`sp-${lastRenderTime}`} /> - <View style={s.footerSpacer} /> - </ScrollView> - ) -}) + return ( + <ScrollView + ref={scrollElRef} + testID="searchScrollView" + style={[pal.view, styles.container]} + onScroll={onMainScroll} + scrollEventThrottle={100}> + <WhoToFollow key={`wtf-${lastRenderTime}`} /> + <SuggestedPosts key={`sp-${lastRenderTime}`} /> + <View style={s.footerSpacer} /> + </ScrollView> + ) + }), +) const styles = StyleSheet.create({ container: { |