about summary refs log tree commit diff
path: root/src/view/screens/Search.web.tsx
diff options
context:
space:
mode:
Diffstat (limited to 'src/view/screens/Search.web.tsx')
-rw-r--r--src/view/screens/Search.web.tsx73
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: {