diff options
Diffstat (limited to 'src/view/shell')
-rw-r--r-- | src/view/shell/Composer.tsx | 9 | ||||
-rw-r--r-- | src/view/shell/Composer.web.tsx | 10 | ||||
-rw-r--r-- | src/view/shell/Drawer.tsx | 69 | ||||
-rw-r--r-- | src/view/shell/NavSignupCard.tsx | 12 | ||||
-rw-r--r-- | src/view/shell/bottom-bar/BottomBar.tsx | 44 | ||||
-rw-r--r-- | src/view/shell/bottom-bar/BottomBarStyles.tsx | 2 | ||||
-rw-r--r-- | src/view/shell/bottom-bar/BottomBarWeb.tsx | 28 | ||||
-rw-r--r-- | src/view/shell/createNativeStackNavigatorWithAuth.tsx | 25 | ||||
-rw-r--r-- | src/view/shell/desktop/Feeds.tsx | 19 | ||||
-rw-r--r-- | src/view/shell/desktop/LeftNav.tsx | 60 | ||||
-rw-r--r-- | src/view/shell/desktop/RightNav.tsx | 20 | ||||
-rw-r--r-- | src/view/shell/desktop/Search.tsx | 36 | ||||
-rw-r--r-- | src/view/shell/index.tsx | 40 | ||||
-rw-r--r-- | src/view/shell/index.web.tsx | 30 |
14 files changed, 194 insertions, 210 deletions
diff --git a/src/view/shell/Composer.tsx b/src/view/shell/Composer.tsx index 5ab9407f0..1937fcb6e 100644 --- a/src/view/shell/Composer.tsx +++ b/src/view/shell/Composer.tsx @@ -1,11 +1,10 @@ -import {useAnimatedValue} from 'lib/hooks/useAnimatedValue' -import {usePalette} from 'lib/hooks/usePalette' -import {observer} from 'mobx-react-lite' import React, {useEffect} from 'react' +import {observer} from 'mobx-react-lite' import {Animated, Easing, Platform, StyleSheet, View} from 'react-native' -import {useComposerState} from 'state/shell/composer' - import {ComposePost} from '../com/composer/Composer' +import {useComposerState} from 'state/shell/composer' +import {useAnimatedValue} from 'lib/hooks/useAnimatedValue' +import {usePalette} from 'lib/hooks/usePalette' export const Composer = observer(function ComposerImpl({ winHeight, diff --git a/src/view/shell/Composer.web.tsx b/src/view/shell/Composer.web.tsx index c0b71a1c8..00233f66a 100644 --- a/src/view/shell/Composer.web.tsx +++ b/src/view/shell/Composer.web.tsx @@ -1,18 +1,16 @@ -import {usePalette} from 'lib/hooks/usePalette' -import {useWebMediaQueries} from 'lib/hooks/useWebMediaQueries' import React from 'react' import {StyleSheet, View} from 'react-native' import Animated, {FadeIn, FadeInDown, FadeOut} from 'react-native-reanimated' +import {ComposePost} from '../com/composer/Composer' import {useComposerState} from 'state/shell/composer' +import {usePalette} from 'lib/hooks/usePalette' +import {useWebMediaQueries} from 'lib/hooks/useWebMediaQueries' +import {useWebBodyScrollLock} from '#/lib/hooks/useWebBodyScrollLock' import { EmojiPicker, EmojiPickerState, } from 'view/com/composer/text-input/web/EmojiPicker.web' -import {useWebBodyScrollLock} from '#/lib/hooks/useWebBodyScrollLock' - -import {ComposePost} from '../com/composer/Composer' - const BOTTOM_BAR_HEIGHT = 61 export function Composer({}: {winHeight: number}) { diff --git a/src/view/shell/Drawer.tsx b/src/view/shell/Drawer.tsx index 6bc9700ee..2a37d1fe9 100644 --- a/src/view/shell/Drawer.tsx +++ b/src/view/shell/Drawer.tsx @@ -1,59 +1,58 @@ +import React, {ComponentProps} from 'react' +import { + Linking, + SafeAreaView, + ScrollView, + StyleProp, + StyleSheet, + TouchableOpacity, + View, + ViewStyle, +} from 'react-native' +import {useNavigation, StackActions} from '@react-navigation/native' import { FontAwesomeIcon, FontAwesomeIconStyle, } from '@fortawesome/react-native-fontawesome' -import {msg, Trans} from '@lingui/macro' -import {useLingui} from '@lingui/react' -import {StackActions, useNavigation} from '@react-navigation/native' -import {useAnalytics} from 'lib/analytics/analytics' +import {s, colors} from 'lib/styles' import {FEEDBACK_FORM_URL, HELP_DESK_URL} from 'lib/constants' -import {useNavigationTabState} from 'lib/hooks/useNavigationTabState' -import {usePalette} from 'lib/hooks/usePalette' import { + HomeIcon, + HomeIconSolid, BellIcon, BellIconSolid, + UserIcon, CogIcon, - HandIcon, - HashtagIcon, - HomeIcon, - HomeIconSolid, - ListIcon, MagnifyingGlassIcon2, MagnifyingGlassIcon2Solid, - UserIcon, UserIconSolid, + HashtagIcon, + ListIcon, + HandIcon, } from 'lib/icons' +import {UserAvatar} from 'view/com/util/UserAvatar' +import {Text} from 'view/com/util/text/Text' +import {useTheme} from 'lib/ThemeContext' +import {usePalette} from 'lib/hooks/usePalette' +import {useAnalytics} from 'lib/analytics/analytics' +import {pluralize} from 'lib/strings/helpers' import {getTabState, TabState} from 'lib/routes/helpers' import {NavigationProp} from 'lib/routes/types' -import {pluralize} from 'lib/strings/helpers' -import {colors, s} from 'lib/styles' -import {useTheme} from 'lib/ThemeContext' +import {useNavigationTabState} from 'lib/hooks/useNavigationTabState' import {isWeb} from 'platform/detection' -import React, {ComponentProps} from 'react' -import { - Linking, - SafeAreaView, - ScrollView, - StyleProp, - StyleSheet, - TouchableOpacity, - View, - ViewStyle, -} from 'react-native' import {formatCountShortOnly} from 'view/com/util/numeric/format' -import {Text} from 'view/com/util/text/Text' -import {UserAvatar} from 'view/com/util/UserAvatar' - -import {useTheme as useAlfTheme} from '#/alf' -import {emitSoftReset} from '#/state/events' -import {useUnreadNotifications} from '#/state/queries/notifications/unread' -import {useProfileQuery} from '#/state/queries/profile' -import {SessionAccount, useSession} from '#/state/session' +import {Trans, msg} from '@lingui/macro' +import {useLingui} from '@lingui/react' import {useSetDrawerOpen} from '#/state/shell' +import {useSession, SessionAccount} from '#/state/session' +import {useProfileQuery} from '#/state/queries/profile' +import {useUnreadNotifications} from '#/state/queries/notifications/unread' +import {emitSoftReset} from '#/state/events' import {NavSignupCard} from '#/view/shell/NavSignupCard' - import {TextLink} from '../com/util/Link' +import {useTheme as useAlfTheme} from '#/alf' + let DrawerProfileCard = ({ account, onPressProfile, diff --git a/src/view/shell/NavSignupCard.tsx b/src/view/shell/NavSignupCard.tsx index 63d5ea2b0..bae37e838 100644 --- a/src/view/shell/NavSignupCard.tsx +++ b/src/view/shell/NavSignupCard.tsx @@ -1,14 +1,14 @@ -import {msg, Trans} from '@lingui/macro' -import {useLingui} from '@lingui/react' -import {usePalette} from 'lib/hooks/usePalette' -import {s} from 'lib/styles' import React from 'react' import {View} from 'react-native' +import {msg, Trans} from '@lingui/macro' +import {useLingui} from '@lingui/react' +import {s} from 'lib/styles' +import {usePalette} from 'lib/hooks/usePalette' +import {Text} from '#/view/com/util/text/Text' +import {Button} from '#/view/com/util/forms/Button' import {useLoggedOutViewControls} from '#/state/shell/logged-out' import {useCloseAllActiveElements} from '#/state/util' -import {Button} from '#/view/com/util/forms/Button' -import {Text} from '#/view/com/util/text/Text' import {Logo} from '#/view/icons/Logo' let NavSignupCard = ({}: {}): React.ReactNode => { diff --git a/src/view/shell/bottom-bar/BottomBar.tsx b/src/view/shell/bottom-bar/BottomBar.tsx index 70503f4c4..115faa296 100644 --- a/src/view/shell/bottom-bar/BottomBar.tsx +++ b/src/view/shell/bottom-bar/BottomBar.tsx @@ -1,44 +1,42 @@ -import {msg, Trans} from '@lingui/macro' -import {useLingui} from '@lingui/react' -import {BottomTabBarProps} from '@react-navigation/bottom-tabs' +import React, {ComponentProps} from 'react' +import {GestureResponderEvent, TouchableOpacity, View} from 'react-native' +import Animated from 'react-native-reanimated' import {StackActions} from '@react-navigation/native' +import {BottomTabBarProps} from '@react-navigation/bottom-tabs' +import {useSafeAreaInsets} from 'react-native-safe-area-context' +import {Text} from 'view/com/util/text/Text' import {useAnalytics} from 'lib/analytics/analytics' -import {useDedupe} from 'lib/hooks/useDedupe' -import {useMinimalShellMode} from 'lib/hooks/useMinimalShellMode' -import {useNavigationTabState} from 'lib/hooks/useNavigationTabState' -import {usePalette} from 'lib/hooks/usePalette' +import {clamp} from 'lib/numbers' import { - BellIcon, - BellIconSolid, - HashtagIcon, HomeIcon, HomeIconSolid, MagnifyingGlassIcon2, MagnifyingGlassIcon2Solid, + HashtagIcon, + BellIcon, + BellIconSolid, } from 'lib/icons' -import {clamp} from 'lib/numbers' +import {usePalette} from 'lib/hooks/usePalette' import {getTabState, TabState} from 'lib/routes/helpers' -import {s} from 'lib/styles' -import React, {ComponentProps} from 'react' -import {GestureResponderEvent, TouchableOpacity, View} from 'react-native' -import Animated from 'react-native-reanimated' -import {useSafeAreaInsets} from 'react-native-safe-area-context' -import {Text} from 'view/com/util/text/Text' +import {styles} from './BottomBarStyles' +import {useMinimalShellMode} from 'lib/hooks/useMinimalShellMode' +import {useNavigationTabState} from 'lib/hooks/useNavigationTabState' import {UserAvatar} from 'view/com/util/UserAvatar' - -import {emitSoftReset} from '#/state/events' +import {useLingui} from '@lingui/react' +import {msg, Trans} from '@lingui/macro' import {useModalControls} from '#/state/modals' +import {useShellLayout} from '#/state/shell/shell-layout' import {useUnreadNotifications} from '#/state/queries/notifications/unread' -import {useProfileQuery} from '#/state/queries/profile' +import {emitSoftReset} from '#/state/events' import {useSession} from '#/state/session' +import {useProfileQuery} from '#/state/queries/profile' import {useLoggedOutViewControls} from '#/state/shell/logged-out' -import {useShellLayout} from '#/state/shell/shell-layout' import {useCloseAllActiveElements} from '#/state/util' import {Button} from '#/view/com/util/forms/Button' +import {s} from 'lib/styles' import {Logo} from '#/view/icons/Logo' import {Logotype} from '#/view/icons/Logotype' - -import {styles} from './BottomBarStyles' +import {useDedupe} from 'lib/hooks/useDedupe' type TabOptions = 'Home' | 'Search' | 'Notifications' | 'MyProfile' | 'Feeds' diff --git a/src/view/shell/bottom-bar/BottomBarStyles.tsx b/src/view/shell/bottom-bar/BottomBarStyles.tsx index 1e8347161..f226406f5 100644 --- a/src/view/shell/bottom-bar/BottomBarStyles.tsx +++ b/src/view/shell/bottom-bar/BottomBarStyles.tsx @@ -1,5 +1,5 @@ -import {colors} from 'lib/styles' import {StyleSheet} from 'react-native' +import {colors} from 'lib/styles' export const styles = StyleSheet.create({ bottomBar: { diff --git a/src/view/shell/bottom-bar/BottomBarWeb.tsx b/src/view/shell/bottom-bar/BottomBarWeb.tsx index 582c92b02..b330c4b80 100644 --- a/src/view/shell/bottom-bar/BottomBarWeb.tsx +++ b/src/view/shell/bottom-bar/BottomBarWeb.tsx @@ -1,40 +1,38 @@ +import React from 'react' +import {usePalette} from 'lib/hooks/usePalette' +import {useNavigationState} from '@react-navigation/native' +import Animated from 'react-native-reanimated' +import {useSafeAreaInsets} from 'react-native-safe-area-context' +import {View} from 'react-native' import {msg, Trans} from '@lingui/macro' import {useLingui} from '@lingui/react' -import {useNavigationState} from '@react-navigation/native' -import {useMinimalShellMode} from 'lib/hooks/useMinimalShellMode' -import {usePalette} from 'lib/hooks/usePalette' +import {getCurrentRoute, isTab} from 'lib/routes/helpers' +import {styles} from './BottomBarStyles' +import {clamp} from 'lib/numbers' import { BellIcon, BellIconSolid, - HashtagIcon, HomeIcon, HomeIconSolid, MagnifyingGlassIcon2, MagnifyingGlassIcon2Solid, + HashtagIcon, UserIcon, UserIconSolid, } from 'lib/icons' -import {clamp} from 'lib/numbers' -import {getCurrentRoute, isTab} from 'lib/routes/helpers' +import {Link} from 'view/com/util/Link' +import {useMinimalShellMode} from 'lib/hooks/useMinimalShellMode' import {makeProfileLink} from 'lib/routes/links' import {CommonNavigatorParams} from 'lib/routes/types' -import {s} from 'lib/styles' -import React from 'react' -import {View} from 'react-native' -import Animated from 'react-native-reanimated' -import {useSafeAreaInsets} from 'react-native-safe-area-context' -import {Link} from 'view/com/util/Link' - import {useSession} from '#/state/session' import {useLoggedOutViewControls} from '#/state/shell/logged-out' import {useCloseAllActiveElements} from '#/state/util' import {Button} from '#/view/com/util/forms/Button' import {Text} from '#/view/com/util/text/Text' +import {s} from 'lib/styles' import {Logo} from '#/view/icons/Logo' import {Logotype} from '#/view/icons/Logotype' -import {styles} from './BottomBarStyles' - export function BottomBarWeb() { const {_} = useLingui() const {hasSession, currentAccount} = useSession() diff --git a/src/view/shell/createNativeStackNavigatorWithAuth.tsx b/src/view/shell/createNativeStackNavigatorWithAuth.tsx index 968e149f6..938213c31 100644 --- a/src/view/shell/createNativeStackNavigatorWithAuth.tsx +++ b/src/view/shell/createNativeStackNavigatorWithAuth.tsx @@ -1,6 +1,11 @@ +import * as React from 'react' +import {View} from 'react-native' +import {PWI_ENABLED, NEW_ONBOARDING_ENABLED} from '#/lib/build-flags' + // Based on @react-navigation/native-stack/src/createNativeStackNavigator.ts // MIT License // Copyright (c) 2017 React Navigation Contributors + import { createNavigatorFactory, EventArg, @@ -16,28 +21,24 @@ import type { NativeStackNavigationEventMap, NativeStackNavigationOptions, } from '@react-navigation/native-stack' -import {NativeStackView} from '@react-navigation/native-stack' import type {NativeStackNavigatorProps} from '@react-navigation/native-stack/src/types' -import {isWeb} from 'platform/detection' -import * as React from 'react' -import {View} from 'react-native' +import {NativeStackView} from '@react-navigation/native-stack' -import {NEW_ONBOARDING_ENABLED, PWI_ENABLED} from '#/lib/build-flags' +import {BottomBarWeb} from './bottom-bar/BottomBarWeb' +import {DesktopLeftNav} from './desktop/LeftNav' +import {DesktopRightNav} from './desktop/RightNav' import {useWebMediaQueries} from '#/lib/hooks/useWebMediaQueries' -import {Deactivated} from '#/screens/Deactivated' -import {Onboarding as NewOnboarding} from '#/screens/Onboarding' -import {useSession} from '#/state/session' import {useOnboardingState} from '#/state/shell' import { useLoggedOutView, useLoggedOutViewControls, } from '#/state/shell/logged-out' - +import {useSession} from '#/state/session' +import {isWeb} from 'platform/detection' +import {Deactivated} from '#/screens/Deactivated' import {LoggedOut} from '../com/auth/LoggedOut' import {Onboarding} from '../com/auth/Onboarding' -import {BottomBarWeb} from './bottom-bar/BottomBarWeb' -import {DesktopLeftNav} from './desktop/LeftNav' -import {DesktopRightNav} from './desktop/RightNav' +import {Onboarding as NewOnboarding} from '#/screens/Onboarding' type NativeStackNavigationOptionsWithAuth = NativeStackNavigationOptions & { requireAuth?: boolean diff --git a/src/view/shell/desktop/Feeds.tsx b/src/view/shell/desktop/Feeds.tsx index 22e1f9e67..f447490b3 100644 --- a/src/view/shell/desktop/Feeds.tsx +++ b/src/view/shell/desktop/Feeds.tsx @@ -1,17 +1,16 @@ -import {msg} from '@lingui/macro' -import {useLingui} from '@lingui/react' -import {useNavigation, useNavigationState} from '@react-navigation/native' -import {usePalette} from 'lib/hooks/usePalette' -import {getCurrentRoute} from 'lib/routes/helpers' -import {NavigationProp} from 'lib/routes/types' import React from 'react' -import {StyleSheet, View} from 'react-native' +import {View, StyleSheet} from 'react-native' +import {useNavigationState, useNavigation} from '@react-navigation/native' +import {usePalette} from 'lib/hooks/usePalette' import {TextLink} from 'view/com/util/Link' - -import {emitSoftReset} from '#/state/events' +import {getCurrentRoute} from 'lib/routes/helpers' +import {useLingui} from '@lingui/react' +import {msg} from '@lingui/macro' import {usePinnedFeedsInfos} from '#/state/queries/feed' -import {FeedDescriptor} from '#/state/queries/post-feed' import {useSelectedFeed, useSetSelectedFeed} from '#/state/shell/selected-feed' +import {FeedDescriptor} from '#/state/queries/post-feed' +import {NavigationProp} from 'lib/routes/types' +import {emitSoftReset} from '#/state/events' export function DesktopFeeds() { const pal = usePalette('default') diff --git a/src/view/shell/desktop/LeftNav.tsx b/src/view/shell/desktop/LeftNav.tsx index f3340b7a7..c56ba941e 100644 --- a/src/view/shell/desktop/LeftNav.tsx +++ b/src/view/shell/desktop/LeftNav.tsx @@ -1,54 +1,52 @@ -import { - FontAwesomeIcon, - FontAwesomeIconStyle, -} from '@fortawesome/react-native-fontawesome' -import {msg, Trans} from '@lingui/macro' -import {useLingui} from '@lingui/react' +import React from 'react' +import {StyleSheet, TouchableOpacity, View} from 'react-native' +import {PressableWithHover} from 'view/com/util/PressableWithHover' import { useLinkProps, useNavigation, useNavigationState, } from '@react-navigation/native' +import { + FontAwesomeIcon, + FontAwesomeIconStyle, +} from '@fortawesome/react-native-fontawesome' +import {Text} from 'view/com/util/text/Text' +import {UserAvatar} from 'view/com/util/UserAvatar' +import {Link} from 'view/com/util/Link' +import {LoadingPlaceholder} from 'view/com/util/LoadingPlaceholder' import {usePalette} from 'lib/hooks/usePalette' import {useWebMediaQueries} from 'lib/hooks/useWebMediaQueries' +import {s, colors} from 'lib/styles' import { - BellIcon, - BellIconSolid, - CogIcon, - CogIconSolid, - ComposeIcon2, - HandIcon, - HashtagIcon, HomeIcon, HomeIconSolid, - ListIcon, MagnifyingGlassIcon2, MagnifyingGlassIcon2Solid, + BellIcon, + BellIconSolid, UserIcon, UserIconSolid, + CogIcon, + CogIconSolid, + ComposeIcon2, + ListIcon, + HashtagIcon, + HandIcon, } from 'lib/icons' -import {getCurrentRoute, isStateAtTabRoot, isTab} from 'lib/routes/helpers' +import {getCurrentRoute, isTab, isStateAtTabRoot} from 'lib/routes/helpers' +import {NavigationProp, CommonNavigatorParams} from 'lib/routes/types' +import {router} from '../../../routes' import {makeProfileLink} from 'lib/routes/links' -import {CommonNavigatorParams, NavigationProp} from 'lib/routes/types' -import {colors, s} from 'lib/styles' -import React from 'react' -import {StyleSheet, TouchableOpacity, View} from 'react-native' -import {Link} from 'view/com/util/Link' -import {LoadingPlaceholder} from 'view/com/util/LoadingPlaceholder' -import {PressableWithHover} from 'view/com/util/PressableWithHover' -import {Text} from 'view/com/util/text/Text' -import {UserAvatar} from 'view/com/util/UserAvatar' - -import {isInvalidHandle} from '#/lib/strings/handles' -import {emitSoftReset} from '#/state/events' -import {useFetchHandle} from '#/state/queries/handle' -import {useUnreadNotifications} from '#/state/queries/notifications/unread' +import {useLingui} from '@lingui/react' +import {Trans, msg} from '@lingui/macro' import {useProfileQuery} from '#/state/queries/profile' import {useSession} from '#/state/session' +import {useUnreadNotifications} from '#/state/queries/notifications/unread' import {useComposerControls} from '#/state/shell/composer' +import {useFetchHandle} from '#/state/queries/handle' +import {emitSoftReset} from '#/state/events' import {NavSignupCard} from '#/view/shell/NavSignupCard' - -import {router} from '../../../routes' +import {isInvalidHandle} from '#/lib/strings/handles' function ProfileCard() { const {currentAccount} = useSession() diff --git a/src/view/shell/desktop/RightNav.tsx b/src/view/shell/desktop/RightNav.tsx index bfbb19f10..c1f498724 100644 --- a/src/view/shell/desktop/RightNav.tsx +++ b/src/view/shell/desktop/RightNav.tsx @@ -1,19 +1,17 @@ -import {msg} from '@lingui/macro' -import {useLingui} from '@lingui/react' -import {FEEDBACK_FORM_URL, HELP_DESK_URL} from 'lib/constants' -import {usePalette} from 'lib/hooks/usePalette' -import {useWebMediaQueries} from 'lib/hooks/useWebMediaQueries' -import {s} from 'lib/styles' import React from 'react' import {StyleSheet, View} from 'react-native' -import {TextLink} from 'view/com/util/Link' +import {usePalette} from 'lib/hooks/usePalette' +import {DesktopSearch} from './Search' +import {DesktopFeeds} from './Feeds' import {Text} from 'view/com/util/text/Text' - +import {TextLink} from 'view/com/util/Link' +import {FEEDBACK_FORM_URL, HELP_DESK_URL} from 'lib/constants' +import {s} from 'lib/styles' +import {useWebMediaQueries} from 'lib/hooks/useWebMediaQueries' +import {useLingui} from '@lingui/react' +import {msg} from '@lingui/macro' import {useSession} from '#/state/session' -import {DesktopFeeds} from './Feeds' -import {DesktopSearch} from './Search' - export function DesktopRightNav({routeName}: {routeName: string}) { const pal = usePalette('default') const {_} = useLingui() diff --git a/src/view/shell/desktop/Search.tsx b/src/view/shell/desktop/Search.tsx index 043b9ff3c..4a9483733 100644 --- a/src/view/shell/desktop/Search.tsx +++ b/src/view/shell/desktop/Search.tsx @@ -1,33 +1,33 @@ +import React from 'react' +import { + ViewStyle, + TextInput, + View, + StyleSheet, + TouchableOpacity, + ActivityIndicator, +} from 'react-native' +import {useNavigation, StackActions} from '@react-navigation/native' import { AppBskyActorDefs, moderateProfile, ProfileModeration, } from '@atproto/api' -import {msg, Trans} from '@lingui/macro' +import {Trans, msg} from '@lingui/macro' import {useLingui} from '@lingui/react' -import {StackActions, useNavigation} from '@react-navigation/native' + +import {s} from '#/lib/styles' +import {sanitizeDisplayName} from '#/lib/strings/display-names' +import {sanitizeHandle} from '#/lib/strings/handles' +import {makeProfileLink} from '#/lib/routes/links' +import {Link} from '#/view/com/util/Link' import {usePalette} from 'lib/hooks/usePalette' import {MagnifyingGlassIcon2} from 'lib/icons' import {NavigationProp} from 'lib/routes/types' -import React from 'react' -import { - ActivityIndicator, - StyleSheet, - TextInput, - TouchableOpacity, - View, - ViewStyle, -} from 'react-native' import {Text} from 'view/com/util/text/Text' - -import {makeProfileLink} from '#/lib/routes/links' -import {sanitizeDisplayName} from '#/lib/strings/display-names' -import {sanitizeHandle} from '#/lib/strings/handles' -import {s} from '#/lib/styles' +import {UserAvatar} from '#/view/com/util/UserAvatar' import {useActorAutocompleteFn} from '#/state/queries/actor-autocomplete' import {useModerationOpts} from '#/state/queries/preferences' -import {Link} from '#/view/com/util/Link' -import {UserAvatar} from '#/view/com/util/UserAvatar' export const MATCH_HANDLE = /@?([a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*(?:\.[a-zA-Z]{2,}))/ diff --git a/src/view/shell/index.tsx b/src/view/shell/index.tsx index b20754378..76a7f8fb3 100644 --- a/src/view/shell/index.tsx +++ b/src/view/shell/index.tsx @@ -1,39 +1,37 @@ -import {useNavigationState} from '@react-navigation/native' -import {StatusBar} from 'expo-status-bar' -import {usePalette} from 'lib/hooks/usePalette' -import * as notifications from 'lib/notifications/notifications' -import {isStateAtTabRoot} from 'lib/routes/helpers' -import {useTheme} from 'lib/ThemeContext' -import {isAndroid} from 'platform/detection' import React from 'react' +import {StatusBar} from 'expo-status-bar' import { - BackHandler, DimensionValue, StyleSheet, useWindowDimensions, View, + BackHandler, } from 'react-native' -import {Drawer} from 'react-native-drawer-layout' -import Animated from 'react-native-reanimated' import {useSafeAreaInsets} from 'react-native-safe-area-context' -import {useDialogStateContext} from 'state/dialogs' -import {Lightbox} from 'view/com/lightbox/Lightbox' +import {Drawer} from 'react-native-drawer-layout' +import {useNavigationState} from '@react-navigation/native' import {ModalsContainer} from 'view/com/modals/Modal' +import {Lightbox} from 'view/com/lightbox/Lightbox' import {ErrorBoundary} from 'view/com/util/ErrorBoundary' - -import {MutedWordsDialog} from '#/components/dialogs/MutedWords' -import {Outlet as PortalOutlet} from '#/components/Portal' -import {useSession} from '#/state/session' +import {DrawerContent} from './Drawer' +import {Composer} from './Composer' +import {useTheme} from 'lib/ThemeContext' +import {usePalette} from 'lib/hooks/usePalette' +import {RoutesContainer, TabsNavigator} from '../../Navigation' +import {isStateAtTabRoot} from 'lib/routes/helpers' import { useIsDrawerOpen, - useIsDrawerSwipeDisabled, useSetDrawerOpen, + useIsDrawerSwipeDisabled, } from '#/state/shell' +import {isAndroid} from 'platform/detection' +import {useSession} from '#/state/session' import {useCloseAnyActiveElement} from '#/state/util' - -import {RoutesContainer, TabsNavigator} from '../../Navigation' -import {Composer} from './Composer' -import {DrawerContent} from './Drawer' +import * as notifications from 'lib/notifications/notifications' +import {Outlet as PortalOutlet} from '#/components/Portal' +import {MutedWordsDialog} from '#/components/dialogs/MutedWords' +import {useDialogStateContext} from 'state/dialogs' +import Animated from 'react-native-reanimated' function ShellInner() { const isDrawerOpen = useIsDrawerOpen() diff --git a/src/view/shell/index.web.tsx b/src/view/shell/index.web.tsx index d5ac5b970..71dccb8c4 100644 --- a/src/view/shell/index.web.tsx +++ b/src/view/shell/index.web.tsx @@ -1,24 +1,22 @@ -import {t} from '@lingui/macro' -import {useNavigation} from '@react-navigation/native' -import {useColorSchemeStyle} from 'lib/hooks/useColorSchemeStyle' -import {NavigationProp} from 'lib/routes/types' -import {colors, s} from 'lib/styles' import React, {useEffect} from 'react' -import {StyleSheet, TouchableOpacity, View} from 'react-native' - -import {MutedWordsDialog} from '#/components/dialogs/MutedWords' -import {Outlet as PortalOutlet} from '#/components/Portal' -import {useWebBodyScrollLock} from '#/lib/hooks/useWebBodyScrollLock' -import {useIsDrawerOpen, useSetDrawerOpen} from '#/state/shell' -import {useCloseAllActiveElements} from '#/state/util' - -import {useWebMediaQueries} from '../../lib/hooks/useWebMediaQueries' -import {FlatNavigator, RoutesContainer} from '../../Navigation' +import {View, StyleSheet, TouchableOpacity} from 'react-native' +import {ErrorBoundary} from '../com/util/ErrorBoundary' import {Lightbox} from '../com/lightbox/Lightbox' import {ModalsContainer} from '../com/modals/Modal' -import {ErrorBoundary} from '../com/util/ErrorBoundary' import {Composer} from './Composer.web' +import {useColorSchemeStyle} from 'lib/hooks/useColorSchemeStyle' +import {s, colors} from 'lib/styles' +import {RoutesContainer, FlatNavigator} from '../../Navigation' import {DrawerContent} from './Drawer' +import {useWebMediaQueries} from '../../lib/hooks/useWebMediaQueries' +import {useNavigation} from '@react-navigation/native' +import {NavigationProp} from 'lib/routes/types' +import {t} from '@lingui/macro' +import {useIsDrawerOpen, useSetDrawerOpen} from '#/state/shell' +import {useCloseAllActiveElements} from '#/state/util' +import {useWebBodyScrollLock} from '#/lib/hooks/useWebBodyScrollLock' +import {Outlet as PortalOutlet} from '#/components/Portal' +import {MutedWordsDialog} from '#/components/dialogs/MutedWords' function ShellInner() { const isDrawerOpen = useIsDrawerOpen() |