diff options
130 files changed, 370 insertions, 339 deletions
diff --git a/.eslintrc.js b/.eslintrc.js index 66e75d485..ac50d978f 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -42,9 +42,9 @@ module.exports = { ], 'bsky-internal/use-exact-imports': 'error', 'bsky-internal/use-typed-gates': 'error', - 'bsky-internal/use-prefixed-imports': 'warn', + 'bsky-internal/use-prefixed-imports': 'error', 'simple-import-sort/imports': [ - 'warn', + 'error', { groups: [ // Side effect imports. @@ -78,7 +78,7 @@ module.exports = { ], }, ], - 'simple-import-sort/exports': 'warn', + 'simple-import-sort/exports': 'error', // TODO: Reenable when we figure out why it gets stuck on CI. // 'react-compiler/react-compiler': 'error', 'no-restricted-imports': [ diff --git a/src/components/Divider.tsx b/src/components/Divider.tsx index 24e2789e5..ff0bbb045 100644 --- a/src/components/Divider.tsx +++ b/src/components/Divider.tsx @@ -1,6 +1,7 @@ import React from 'react' import {View} from 'react-native' -import {atoms as a, useTheme, ViewStyleProp, flatten} from '#/alf' + +import {atoms as a, flatten, useTheme, ViewStyleProp} from '#/alf' export function Divider({style}: ViewStyleProp) { const t = useTheme() diff --git a/src/components/Error.tsx b/src/components/Error.tsx index 59d219831..a27ccb88c 100644 --- a/src/components/Error.tsx +++ b/src/components/Error.tsx @@ -3,8 +3,8 @@ import {View} from 'react-native' import {msg, Trans} from '@lingui/macro' import {useLingui} from '@lingui/react' -import {useGoBack} from 'lib/hooks/useGoBack' -import {CenteredView} from 'view/com/util/Views' +import {useGoBack} from '#/lib/hooks/useGoBack' +import {CenteredView} from '#/view/com/util/Views' import {atoms as a, useBreakpoints, useTheme} from '#/alf' import {Button, ButtonText} from '#/components/Button' import {Text} from '#/components/Typography' diff --git a/src/components/LikedByList.tsx b/src/components/LikedByList.tsx index 0106a5618..a83f98258 100644 --- a/src/components/LikedByList.tsx +++ b/src/components/LikedByList.tsx @@ -3,11 +3,11 @@ import {AppBskyFeedGetLikes as GetLikes} from '@atproto/api' import {msg} from '@lingui/macro' import {useLingui} from '@lingui/react' +import {useInitialNumToRender} from '#/lib/hooks/useInitialNumToRender' +import {cleanError} from '#/lib/strings/errors' import {logger} from '#/logger' import {useLikedByQuery} from '#/state/queries/post-liked-by' import {useResolveUriQuery} from '#/state/queries/resolve-uri' -import {useInitialNumToRender} from 'lib/hooks/useInitialNumToRender' -import {cleanError} from 'lib/strings/errors' import {ProfileCardWithFollowBtn} from '#/view/com/profile/ProfileCard' import {List} from '#/view/com/util/List' import {ListFooter, ListMaybePlaceholder} from '#/components/Lists' diff --git a/src/components/Lists.tsx b/src/components/Lists.tsx index 2d9e61a96..16bd6a9ea 100644 --- a/src/components/Lists.tsx +++ b/src/components/Lists.tsx @@ -3,8 +3,8 @@ import {StyleProp, View, ViewStyle} from 'react-native' import {msg, Trans} from '@lingui/macro' import {useLingui} from '@lingui/react' -import {cleanError} from 'lib/strings/errors' -import {CenteredView} from 'view/com/util/Views' +import {cleanError} from '#/lib/strings/errors' +import {CenteredView} from '#/view/com/util/Views' import {atoms as a, flatten, useBreakpoints, useTheme} from '#/alf' import {Button, ButtonText} from '#/components/Button' import {Error} from '#/components/Error' diff --git a/src/components/ProfileHoverCard/index.web.tsx b/src/components/ProfileHoverCard/index.web.tsx index 3854ee014..4cda42fdb 100644 --- a/src/components/ProfileHoverCard/index.web.tsx +++ b/src/components/ProfileHoverCard/index.web.tsx @@ -5,15 +5,15 @@ import {flip, offset, shift, size, useFloating} from '@floating-ui/react-dom' import {msg, plural} from '@lingui/macro' import {useLingui} from '@lingui/react' +import {isTouchDevice} from '#/lib/browser' import {getModerationCauseKey} from '#/lib/moderation' import {makeProfileLink} from '#/lib/routes/links' import {sanitizeDisplayName} from '#/lib/strings/display-names' import {sanitizeHandle} from '#/lib/strings/handles' +import {useProfileShadow} from '#/state/cache/profile-shadow' import {useModerationOpts} from '#/state/preferences/moderation-opts' import {usePrefetchProfileQuery, useProfileQuery} from '#/state/queries/profile' import {useSession} from '#/state/session' -import {isTouchDevice} from 'lib/browser' -import {useProfileShadow} from 'state/cache/profile-shadow' import {formatCount} from '#/view/com/util/numeric/format' import {UserAvatar} from '#/view/com/util/UserAvatar' import {ProfileHeaderHandle} from '#/screens/Profile/Header/Handle' diff --git a/src/components/StarterPack/Main/FeedsList.tsx b/src/components/StarterPack/Main/FeedsList.tsx index 7d7cd2047..31d85ab42 100644 --- a/src/components/StarterPack/Main/FeedsList.tsx +++ b/src/components/StarterPack/Main/FeedsList.tsx @@ -3,9 +3,9 @@ import {ListRenderItemInfo, View} from 'react-native' import {AppBskyFeedDefs} from '@atproto/api' import {GeneratorView} from '@atproto/api/dist/client/types/app/bsky/feed/defs' -import {useBottomBarOffset} from 'lib/hooks/useBottomBarOffset' -import {isNative, isWeb} from 'platform/detection' -import {List, ListRef} from 'view/com/util/List' +import {useBottomBarOffset} from '#/lib/hooks/useBottomBarOffset' +import {isNative, isWeb} from '#/platform/detection' +import {List, ListRef} from '#/view/com/util/List' import {SectionRef} from '#/screens/Profile/Sections/types' import {atoms as a, useTheme} from '#/alf' import * as FeedCard from '#/components/FeedCard' diff --git a/src/components/StarterPack/Main/PostsList.tsx b/src/components/StarterPack/Main/PostsList.tsx index 0ff84ff45..a5275ae87 100644 --- a/src/components/StarterPack/Main/PostsList.tsx +++ b/src/components/StarterPack/Main/PostsList.tsx @@ -3,11 +3,11 @@ import {View} from 'react-native' import {msg} from '@lingui/macro' import {useLingui} from '@lingui/react' +import {isNative} from '#/platform/detection' import {FeedDescriptor} from '#/state/queries/post-feed' -import {isNative} from 'platform/detection' -import {Feed} from 'view/com/posts/Feed' -import {EmptyState} from 'view/com/util/EmptyState' -import {ListRef} from 'view/com/util/List' +import {Feed} from '#/view/com/posts/Feed' +import {EmptyState} from '#/view/com/util/EmptyState' +import {ListRef} from '#/view/com/util/List' import {SectionRef} from '#/screens/Profile/Sections/types' interface ProfilesListProps { diff --git a/src/components/StarterPack/Main/ProfilesList.tsx b/src/components/StarterPack/Main/ProfilesList.tsx index a5c7cd1b7..ecd6225bb 100644 --- a/src/components/StarterPack/Main/ProfilesList.tsx +++ b/src/components/StarterPack/Main/ProfilesList.tsx @@ -8,13 +8,13 @@ import { } from '@atproto/api' import {InfiniteData, UseInfiniteQueryResult} from '@tanstack/react-query' -import {useBottomBarOffset} from 'lib/hooks/useBottomBarOffset' -import {useInitialNumToRender} from 'lib/hooks/useInitialNumToRender' -import {isBlockedOrBlocking} from 'lib/moderation/blocked-and-muted' -import {isNative, isWeb} from 'platform/detection' -import {useAllListMembersQuery} from 'state/queries/list-members' -import {useSession} from 'state/session' -import {List, ListRef} from 'view/com/util/List' +import {useBottomBarOffset} from '#/lib/hooks/useBottomBarOffset' +import {useInitialNumToRender} from '#/lib/hooks/useInitialNumToRender' +import {isBlockedOrBlocking} from '#/lib/moderation/blocked-and-muted' +import {isNative, isWeb} from '#/platform/detection' +import {useAllListMembersQuery} from '#/state/queries/list-members' +import {useSession} from '#/state/session' +import {List, ListRef} from '#/view/com/util/List' import {SectionRef} from '#/screens/Profile/Sections/types' import {atoms as a, useTheme} from '#/alf' import {ListFooter, ListMaybePlaceholder} from '#/components/Lists' diff --git a/src/components/StarterPack/Wizard/ScreenTransition.tsx b/src/components/StarterPack/Wizard/ScreenTransition.tsx index b7cd4e4c1..9b76d4c60 100644 --- a/src/components/StarterPack/Wizard/ScreenTransition.tsx +++ b/src/components/StarterPack/Wizard/ScreenTransition.tsx @@ -7,7 +7,7 @@ import Animated, { SlideInRight, } from 'react-native-reanimated' -import {isWeb} from 'platform/detection' +import {isWeb} from '#/platform/detection' export function ScreenTransition({ direction, diff --git a/src/components/dms/ActionsWrapper.tsx b/src/components/dms/ActionsWrapper.tsx index 1bb57ff90..9b06bd0b2 100644 --- a/src/components/dms/ActionsWrapper.tsx +++ b/src/components/dms/ActionsWrapper.tsx @@ -12,8 +12,8 @@ import {ChatBskyConvoDefs} from '@atproto/api' import {msg} from '@lingui/macro' import {useLingui} from '@lingui/react' -import {HITSLOP_10} from 'lib/constants' -import {useHaptics} from 'lib/haptics' +import {HITSLOP_10} from '#/lib/constants' +import {useHaptics} from '#/lib/haptics' import {atoms as a} from '#/alf' import {MessageMenu} from '#/components/dms/MessageMenu' import {useMenuControl} from '#/components/Menu' diff --git a/src/components/dms/BlockedByListDialog.tsx b/src/components/dms/BlockedByListDialog.tsx index b786e3681..2a83ea8c0 100644 --- a/src/components/dms/BlockedByListDialog.tsx +++ b/src/components/dms/BlockedByListDialog.tsx @@ -4,7 +4,7 @@ import {ModerationCause} from '@atproto/api' import {msg} from '@lingui/macro' import {useLingui} from '@lingui/react' -import {listUriToHref} from 'lib/strings/url-helpers' +import {listUriToHref} from '#/lib/strings/url-helpers' import {atoms as a, useTheme} from '#/alf' import * as Dialog from '#/components/Dialog' import {DialogControlProps} from '#/components/Dialog' diff --git a/src/components/dms/ChatEmptyPill.tsx b/src/components/dms/ChatEmptyPill.tsx index 4633832fc..ffd022f56 100644 --- a/src/components/dms/ChatEmptyPill.tsx +++ b/src/components/dms/ChatEmptyPill.tsx @@ -9,10 +9,10 @@ import Animated, { import {msg} from '@lingui/macro' import {useLingui} from '@lingui/react' -import {ScaleAndFadeIn} from 'lib/custom-animations/ScaleAndFade' -import {ShrinkAndPop} from 'lib/custom-animations/ShrinkAndPop' -import {useHaptics} from 'lib/haptics' -import {isWeb} from 'platform/detection' +import {ScaleAndFadeIn} from '#/lib/custom-animations/ScaleAndFade' +import {ShrinkAndPop} from '#/lib/custom-animations/ShrinkAndPop' +import {useHaptics} from '#/lib/haptics' +import {isWeb} from '#/platform/detection' import {atoms as a, useTheme} from '#/alf' import {Text} from '#/components/Typography' diff --git a/src/components/dms/LeaveConvoPrompt.tsx b/src/components/dms/LeaveConvoPrompt.tsx index b0dd83b29..2baa07b46 100644 --- a/src/components/dms/LeaveConvoPrompt.tsx +++ b/src/components/dms/LeaveConvoPrompt.tsx @@ -3,10 +3,10 @@ import {msg} from '@lingui/macro' import {useLingui} from '@lingui/react' import {useNavigation} from '@react-navigation/native' -import {NavigationProp} from 'lib/routes/types' -import {isNative} from 'platform/detection' -import {useLeaveConvo} from 'state/queries/messages/leave-conversation' -import * as Toast from 'view/com/util/Toast' +import {NavigationProp} from '#/lib/routes/types' +import {isNative} from '#/platform/detection' +import {useLeaveConvo} from '#/state/queries/messages/leave-conversation' +import * as Toast from '#/view/com/util/Toast' import {DialogOuterProps} from '#/components/Dialog' import * as Prompt from '#/components/Prompt' diff --git a/src/components/dms/MessagesListBlockedFooter.tsx b/src/components/dms/MessagesListBlockedFooter.tsx index a018b8623..ec7ba2855 100644 --- a/src/components/dms/MessagesListBlockedFooter.tsx +++ b/src/components/dms/MessagesListBlockedFooter.tsx @@ -4,8 +4,8 @@ import {AppBskyActorDefs, ModerationCause} from '@atproto/api' import {msg, Trans} from '@lingui/macro' import {useLingui} from '@lingui/react' -import {useProfileShadow} from 'state/cache/profile-shadow' -import {useProfileBlockMutationQueue} from 'state/queries/profile' +import {useProfileShadow} from '#/state/cache/profile-shadow' +import {useProfileBlockMutationQueue} from '#/state/queries/profile' import {atoms as a, useBreakpoints, useTheme} from '#/alf' import {Button, ButtonText} from '#/components/Button' import {useDialogControl} from '#/components/Dialog' diff --git a/src/components/dms/NewMessagesPill.tsx b/src/components/dms/NewMessagesPill.tsx index 924f7c455..2f7ff8f4b 100644 --- a/src/components/dms/NewMessagesPill.tsx +++ b/src/components/dms/NewMessagesPill.tsx @@ -12,9 +12,9 @@ import {Trans} from '@lingui/macro' import { ScaleAndFadeIn, ScaleAndFadeOut, -} from 'lib/custom-animations/ScaleAndFade' -import {useHaptics} from 'lib/haptics' -import {isAndroid, isIOS, isWeb} from 'platform/detection' +} from '#/lib/custom-animations/ScaleAndFade' +import {useHaptics} from '#/lib/haptics' +import {isAndroid, isIOS, isWeb} from '#/platform/detection' import {atoms as a, useTheme} from '#/alf' import {Text} from '#/components/Typography' diff --git a/src/components/hooks/useStarterPackEntry.native.ts b/src/components/hooks/useStarterPackEntry.native.ts index 212ecae71..4104ac074 100644 --- a/src/components/hooks/useStarterPackEntry.native.ts +++ b/src/components/hooks/useStarterPackEntry.native.ts @@ -3,10 +3,10 @@ import React from 'react' import { createStarterPackLinkFromAndroidReferrer, httpStarterPackUriToAtUri, -} from 'lib/strings/starter-pack' -import {isAndroid} from 'platform/detection' -import {useHasCheckedForStarterPack} from 'state/preferences/used-starter-packs' -import {useSetActiveStarterPack} from 'state/shell/starter-pack' +} from '#/lib/strings/starter-pack' +import {isAndroid} from '#/platform/detection' +import {useHasCheckedForStarterPack} from '#/state/preferences/used-starter-packs' +import {useSetActiveStarterPack} from '#/state/shell/starter-pack' import {Referrer, SharedPrefs} from '../../../modules/expo-bluesky-swiss-army' export function useStarterPackEntry() { diff --git a/src/components/hooks/useStarterPackEntry.ts b/src/components/hooks/useStarterPackEntry.ts index dba801e09..2c2e8c638 100644 --- a/src/components/hooks/useStarterPackEntry.ts +++ b/src/components/hooks/useStarterPackEntry.ts @@ -1,7 +1,7 @@ import React from 'react' -import {httpStarterPackUriToAtUri} from 'lib/strings/starter-pack' -import {useSetActiveStarterPack} from 'state/shell/starter-pack' +import {httpStarterPackUriToAtUri} from '#/lib/strings/starter-pack' +import {useSetActiveStarterPack} from '#/state/shell/starter-pack' export function useStarterPackEntry() { const [ready, setReady] = React.useState(false) diff --git a/src/components/moderation/PostHider.tsx b/src/components/moderation/PostHider.tsx index b6fb17452..16d9127ff 100644 --- a/src/components/moderation/PostHider.tsx +++ b/src/components/moderation/PostHider.tsx @@ -6,8 +6,8 @@ import {useLingui} from '@lingui/react' import {useQueryClient} from '@tanstack/react-query' import {useModerationCauseDescription} from '#/lib/moderation/useModerationCauseDescription' -import {addStyle} from 'lib/styles' -import {precacheProfile} from 'state/queries/profile' +import {addStyle} from '#/lib/styles' +import {precacheProfile} from '#/state/queries/profile' // import {Link} from '#/components/Link' TODO this imposes some styles that screw things up import {Link} from '#/view/com/util/Link' import {atoms as a, useTheme} from '#/alf' diff --git a/src/components/moderation/ProfileHeaderAlerts.tsx b/src/components/moderation/ProfileHeaderAlerts.tsx index 94779697f..891caec18 100644 --- a/src/components/moderation/ProfileHeaderAlerts.tsx +++ b/src/components/moderation/ProfileHeaderAlerts.tsx @@ -2,7 +2,7 @@ import React from 'react' import {StyleProp, ViewStyle} from 'react-native' import {ModerationDecision} from '@atproto/api' -import {getModerationCauseKey} from 'lib/moderation' +import {getModerationCauseKey} from '#/lib/moderation' import * as Pills from '#/components/Pills' export function ProfileHeaderAlerts({ diff --git a/src/lib/api/feed/merge.ts b/src/lib/api/feed/merge.ts index b41e82fb0..35c344055 100644 --- a/src/lib/api/feed/merge.ts +++ b/src/lib/api/feed/merge.ts @@ -1,11 +1,11 @@ import {AppBskyFeedDefs, AppBskyFeedGetTimeline, BskyAgent} from '@atproto/api' import shuffle from 'lodash.shuffle' +import {bundleAsync} from '#/lib/async/bundle' +import {timeout} from '#/lib/async/timeout' +import {feedUriToHref} from '#/lib/strings/url-helpers' import {getContentLanguages} from '#/state/preferences/languages' import {FeedParams} from '#/state/queries/post-feed' -import {bundleAsync} from 'lib/async/bundle' -import {timeout} from 'lib/async/timeout' -import {feedUriToHref} from 'lib/strings/url-helpers' import {FeedTuner} from '../feed-manip' import {FeedTunerFn} from '../feed-manip' import {FeedAPI, FeedAPIResponse, ReasonFeedSource} from './types' diff --git a/src/lib/async/retry.ts b/src/lib/async/retry.ts index f14ae6cf6..abf78de55 100644 --- a/src/lib/async/retry.ts +++ b/src/lib/async/retry.ts @@ -1,4 +1,4 @@ -import {isNetworkError} from 'lib/strings/errors' +import {isNetworkError} from '#/lib/strings/errors' export async function retry<P>( retries: number, diff --git a/src/lib/custom-animations/CountWheel.tsx b/src/lib/custom-animations/CountWheel.tsx index 2e435f7d3..b4ca62c6e 100644 --- a/src/lib/custom-animations/CountWheel.tsx +++ b/src/lib/custom-animations/CountWheel.tsx @@ -8,10 +8,10 @@ import Animated, { } from 'react-native-reanimated' import {i18n} from '@lingui/core' -import {decideShouldRoll} from 'lib/custom-animations/util' -import {s} from 'lib/styles' -import {formatCount} from 'view/com/util/numeric/format' -import {Text} from 'view/com/util/text/Text' +import {decideShouldRoll} from '#/lib/custom-animations/util' +import {s} from '#/lib/styles' +import {formatCount} from '#/view/com/util/numeric/format' +import {Text} from '#/view/com/util/text/Text' import {atoms as a, useTheme} from '#/alf' const animationConfig = { diff --git a/src/lib/custom-animations/CountWheel.web.tsx b/src/lib/custom-animations/CountWheel.web.tsx index 78120b707..980ed06e6 100644 --- a/src/lib/custom-animations/CountWheel.web.tsx +++ b/src/lib/custom-animations/CountWheel.web.tsx @@ -3,10 +3,10 @@ import {View} from 'react-native' import {useReducedMotion} from 'react-native-reanimated' import {i18n} from '@lingui/core' -import {decideShouldRoll} from 'lib/custom-animations/util' -import {s} from 'lib/styles' -import {formatCount} from 'view/com/util/numeric/format' -import {Text} from 'view/com/util/text/Text' +import {decideShouldRoll} from '#/lib/custom-animations/util' +import {s} from '#/lib/styles' +import {formatCount} from '#/view/com/util/numeric/format' +import {Text} from '#/view/com/util/text/Text' import {atoms as a, useTheme} from '#/alf' const animationConfig = { diff --git a/src/lib/custom-animations/LikeIcon.tsx b/src/lib/custom-animations/LikeIcon.tsx index ee3d413e5..5c736e88d 100644 --- a/src/lib/custom-animations/LikeIcon.tsx +++ b/src/lib/custom-animations/LikeIcon.tsx @@ -6,7 +6,7 @@ import Animated, { useReducedMotion, } from 'react-native-reanimated' -import {s} from 'lib/styles' +import {s} from '#/lib/styles' import {useTheme} from '#/alf' import { Heart2_Filled_Stroke2_Corner0_Rounded as HeartIconFilled, diff --git a/src/lib/custom-animations/LikeIcon.web.tsx b/src/lib/custom-animations/LikeIcon.web.tsx index 9a70212fe..79a646e6d 100644 --- a/src/lib/custom-animations/LikeIcon.web.tsx +++ b/src/lib/custom-animations/LikeIcon.web.tsx @@ -2,7 +2,7 @@ import React from 'react' import {View} from 'react-native' import {useReducedMotion} from 'react-native-reanimated' -import {s} from 'lib/styles' +import {s} from '#/lib/styles' import {useTheme} from '#/alf' import { Heart2_Filled_Stroke2_Corner0_Rounded as HeartIconFilled, diff --git a/src/lib/generate-starterpack.ts b/src/lib/generate-starterpack.ts index dba98b942..3be338ac8 100644 --- a/src/lib/generate-starterpack.ts +++ b/src/lib/generate-starterpack.ts @@ -8,11 +8,11 @@ import {msg} from '@lingui/macro' import {useLingui} from '@lingui/react' import {useMutation} from '@tanstack/react-query' -import {until} from 'lib/async/until' -import {sanitizeDisplayName} from 'lib/strings/display-names' -import {sanitizeHandle} from 'lib/strings/handles' -import {enforceLen} from 'lib/strings/helpers' -import {useAgent} from 'state/session' +import {until} from '#/lib/async/until' +import {sanitizeDisplayName} from '#/lib/strings/display-names' +import {sanitizeHandle} from '#/lib/strings/handles' +import {enforceLen} from '#/lib/strings/helpers' +import {useAgent} from '#/state/session' export const createStarterPackList = async ({ name, diff --git a/src/lib/hooks/useAnimatedScrollHandler_FIXED.web.ts b/src/lib/hooks/useAnimatedScrollHandler_FIXED.web.ts index 98e05a8ce..7f8a99506 100644 --- a/src/lib/hooks/useAnimatedScrollHandler_FIXED.web.ts +++ b/src/lib/hooks/useAnimatedScrollHandler_FIXED.web.ts @@ -1,4 +1,4 @@ -import {useRef, useEffect} from 'react' +import {useEffect, useRef} from 'react' import {useAnimatedScrollHandler as useAnimatedScrollHandler_BUGGY} from 'react-native-reanimated' export const useAnimatedScrollHandler: typeof useAnimatedScrollHandler_BUGGY = ( diff --git a/src/lib/hooks/useBottomBarOffset.ts b/src/lib/hooks/useBottomBarOffset.ts index 945c98062..abe18c81b 100644 --- a/src/lib/hooks/useBottomBarOffset.ts +++ b/src/lib/hooks/useBottomBarOffset.ts @@ -1,8 +1,8 @@ import {useSafeAreaInsets} from 'react-native-safe-area-context' -import {useWebMediaQueries} from 'lib/hooks/useWebMediaQueries' -import {clamp} from 'lib/numbers' -import {isWeb} from 'platform/detection' +import {useWebMediaQueries} from '#/lib/hooks/useWebMediaQueries' +import {clamp} from '#/lib/numbers' +import {isWeb} from '#/platform/detection' export function useBottomBarOffset(modifier: number = 0) { const {isTabletOrDesktop} = useWebMediaQueries() diff --git a/src/lib/hooks/useColorSchemeStyle.ts b/src/lib/hooks/useColorSchemeStyle.ts index 100dc44e4..8b79e9e42 100644 --- a/src/lib/hooks/useColorSchemeStyle.ts +++ b/src/lib/hooks/useColorSchemeStyle.ts @@ -1,4 +1,4 @@ -import {useTheme} from 'lib/ThemeContext' +import {useTheme} from '#/lib/ThemeContext' export function useColorSchemeStyle<T>(lightStyle: T, darkStyle: T) { const colorScheme = useTheme().colorScheme diff --git a/src/lib/hooks/useCustomPalette.ts b/src/lib/hooks/useCustomPalette.ts index 4f8f5c836..5691ea79b 100644 --- a/src/lib/hooks/useCustomPalette.ts +++ b/src/lib/hooks/useCustomPalette.ts @@ -1,6 +1,7 @@ import React from 'react' -import {useTheme} from 'lib/ThemeContext' -import {choose} from 'lib/functions' + +import {choose} from '#/lib/functions' +import {useTheme} from '#/lib/ThemeContext' export function useCustomPalette<T>({light, dark}: {light: T; dark: T}) { const theme = useTheme() diff --git a/src/lib/hooks/useDraggableScrollView.ts b/src/lib/hooks/useDraggableScrollView.ts index b0f7465d7..3471d0d06 100644 --- a/src/lib/hooks/useDraggableScrollView.ts +++ b/src/lib/hooks/useDraggableScrollView.ts @@ -1,7 +1,8 @@ -import {useEffect, useRef, useMemo, ForwardedRef} from 'react' -import {Platform, findNodeHandle} from 'react-native' +import {ForwardedRef, useEffect, useMemo, useRef} from 'react' import type {ScrollView} from 'react-native' -import {mergeRefs} from 'lib/merge-refs' +import {findNodeHandle, Platform} from 'react-native' + +import {mergeRefs} from '#/lib/merge-refs' type Props<Scrollable extends ScrollView = ScrollView> = { cursor?: string diff --git a/src/lib/hooks/useGoBack.ts b/src/lib/hooks/useGoBack.ts index 59555bdac..e5a39f745 100644 --- a/src/lib/hooks/useGoBack.ts +++ b/src/lib/hooks/useGoBack.ts @@ -1,6 +1,6 @@ import {StackActions, useNavigation} from '@react-navigation/native' -import {NavigationProp} from 'lib/routes/types' +import {NavigationProp} from '#/lib/routes/types' import {router} from '#/routes' export function useGoBack(onGoBack?: () => unknown) { diff --git a/src/lib/hooks/useInitialNumToRender.ts b/src/lib/hooks/useInitialNumToRender.ts index f729cbffa..fd80d5d77 100644 --- a/src/lib/hooks/useInitialNumToRender.ts +++ b/src/lib/hooks/useInitialNumToRender.ts @@ -1,7 +1,7 @@ import {useWindowDimensions} from 'react-native' import {useSafeAreaInsets} from 'react-native-safe-area-context' -import {useBottomBarOffset} from 'lib/hooks/useBottomBarOffset' +import {useBottomBarOffset} from '#/lib/hooks/useBottomBarOffset' const MIN_POST_HEIGHT = 100 diff --git a/src/lib/hooks/useIsKeyboardVisible.ts b/src/lib/hooks/useIsKeyboardVisible.ts index 38fc80bde..5a9bbd574 100644 --- a/src/lib/hooks/useIsKeyboardVisible.ts +++ b/src/lib/hooks/useIsKeyboardVisible.ts @@ -1,6 +1,7 @@ -import {useState, useEffect} from 'react' +import {useEffect, useState} from 'react' import {Keyboard} from 'react-native' -import {isIOS} from 'platform/detection' + +import {isIOS} from '#/platform/detection' export function useIsKeyboardVisible({ iosUseWillEvents, diff --git a/src/lib/hooks/useNavigationDeduped.ts b/src/lib/hooks/useNavigationDeduped.ts index d913f7f3d..56ae5e8a2 100644 --- a/src/lib/hooks/useNavigationDeduped.ts +++ b/src/lib/hooks/useNavigationDeduped.ts @@ -1,9 +1,10 @@ import React from 'react' import {useNavigation} from '@react-navigation/core' -import {AllNavigatorParams, NavigationProp} from 'lib/routes/types' -import type {NavigationAction} from '@react-navigation/routers' import {NavigationState} from '@react-navigation/native' -import {useDedupe} from 'lib/hooks/useDedupe' +import type {NavigationAction} from '@react-navigation/routers' + +import {useDedupe} from '#/lib/hooks/useDedupe' +import {AllNavigatorParams, NavigationProp} from '#/lib/routes/types' export type DebouncedNavigationProp = Pick< NavigationProp, diff --git a/src/lib/hooks/useNavigationTabState.ts b/src/lib/hooks/useNavigationTabState.ts index e1fa95008..2d15bce56 100644 --- a/src/lib/hooks/useNavigationTabState.ts +++ b/src/lib/hooks/useNavigationTabState.ts @@ -1,6 +1,6 @@ import {useNavigationState} from '@react-navigation/native' -import {getTabState, TabState} from 'lib/routes/helpers' +import {getTabState, TabState} from '#/lib/routes/helpers' export function useNavigationTabState() { return useNavigationState(state => { diff --git a/src/lib/hooks/useNavigationTabState.web.ts b/src/lib/hooks/useNavigationTabState.web.ts index e86d6c6c3..03dcbbb03 100644 --- a/src/lib/hooks/useNavigationTabState.web.ts +++ b/src/lib/hooks/useNavigationTabState.web.ts @@ -1,6 +1,6 @@ import {useNavigationState} from '@react-navigation/native' -import {getCurrentRoute} from 'lib/routes/helpers' +import {getCurrentRoute} from '#/lib/routes/helpers' export function useNavigationTabState() { return useNavigationState(state => { diff --git a/src/lib/hooks/useOTAUpdates.ts b/src/lib/hooks/useOTAUpdates.ts index a1692e62c..731406dce 100644 --- a/src/lib/hooks/useOTAUpdates.ts +++ b/src/lib/hooks/useOTAUpdates.ts @@ -10,9 +10,9 @@ import { useUpdates, } from 'expo-updates' +import {IS_TESTFLIGHT} from '#/lib/app-info' import {logger} from '#/logger' -import {IS_TESTFLIGHT} from 'lib/app-info' -import {isIOS} from 'platform/detection' +import {isIOS} from '#/platform/detection' const MINIMUM_MINIMIZE_TIME = 15 * 60e3 diff --git a/src/lib/hooks/usePalette.ts b/src/lib/hooks/usePalette.ts index eeb43d0b1..2530642f6 100644 --- a/src/lib/hooks/usePalette.ts +++ b/src/lib/hooks/usePalette.ts @@ -1,6 +1,7 @@ import {useMemo} from 'react' import {TextStyle, ViewStyle} from 'react-native' -import {useTheme, PaletteColorName, PaletteColor} from '../ThemeContext' + +import {PaletteColor, PaletteColorName, useTheme} from '../ThemeContext' export interface UsePaletteValue { colors: PaletteColor diff --git a/src/lib/hooks/usePermissions.ts b/src/lib/hooks/usePermissions.ts index d248e1975..6da14232f 100644 --- a/src/lib/hooks/usePermissions.ts +++ b/src/lib/hooks/usePermissions.ts @@ -2,8 +2,8 @@ import {Linking} from 'react-native' import {Camera} from 'expo-camera/legacy' // TODO: Migrate to the new one. import * as MediaLibrary from 'expo-media-library' -import {isWeb} from 'platform/detection' -import {Alert} from 'view/com/util/Alert' +import {isWeb} from '#/platform/detection' +import {Alert} from '#/view/com/util/Alert' const openPermissionAlert = (perm: string) => { Alert.alert( diff --git a/src/lib/hooks/useSetTitle.ts b/src/lib/hooks/useSetTitle.ts index 129023f71..fa1e2a5b1 100644 --- a/src/lib/hooks/useSetTitle.ts +++ b/src/lib/hooks/useSetTitle.ts @@ -1,8 +1,8 @@ import {useEffect} from 'react' import {useNavigation} from '@react-navigation/native' -import {NavigationProp} from 'lib/routes/types' -import {bskyTitle} from 'lib/strings/headings' +import {NavigationProp} from '#/lib/routes/types' +import {bskyTitle} from '#/lib/strings/headings' import {useUnreadNotifications} from '#/state/queries/notifications/unread' export function useSetTitle(title?: string) { diff --git a/src/lib/hooks/useTabFocusEffect.ts b/src/lib/hooks/useTabFocusEffect.ts index e446084c5..a54a3af73 100644 --- a/src/lib/hooks/useTabFocusEffect.ts +++ b/src/lib/hooks/useTabFocusEffect.ts @@ -1,6 +1,7 @@ import {useEffect, useState} from 'react' import {useNavigation} from '@react-navigation/native' -import {getTabState, TabState} from 'lib/routes/helpers' + +import {getTabState, TabState} from '#/lib/routes/helpers' export function useTabFocusEffect( tabName: string, diff --git a/src/lib/hooks/useToggleMutationQueue.ts b/src/lib/hooks/useToggleMutationQueue.ts index 28ae86142..c4b86d325 100644 --- a/src/lib/hooks/useToggleMutationQueue.ts +++ b/src/lib/hooks/useToggleMutationQueue.ts @@ -1,4 +1,4 @@ -import {useState, useRef, useEffect, useCallback} from 'react' +import {useCallback, useEffect, useRef, useState} from 'react' type Task<TServerState> = { isOn: boolean diff --git a/src/lib/hooks/useWebMediaQueries.tsx b/src/lib/hooks/useWebMediaQueries.tsx index 71a96a89b..fa9d6ffa6 100644 --- a/src/lib/hooks/useWebMediaQueries.tsx +++ b/src/lib/hooks/useWebMediaQueries.tsx @@ -1,5 +1,6 @@ import {useMediaQuery} from 'react-responsive' -import {isNative} from 'platform/detection' + +import {isNative} from '#/platform/detection' export function useWebMediaQueries() { const isDesktop = useMediaQuery({minWidth: 1300}) diff --git a/src/lib/hooks/useWebScrollRestoration.ts b/src/lib/hooks/useWebScrollRestoration.ts index f68fbf0f2..36484ba0f 100644 --- a/src/lib/hooks/useWebScrollRestoration.ts +++ b/src/lib/hooks/useWebScrollRestoration.ts @@ -1,4 +1,4 @@ -import {useMemo, useState, useEffect} from 'react' +import {useEffect, useMemo, useState} from 'react' import {EventArg, useNavigation} from '@react-navigation/core' if ('scrollRestoration' in history) { diff --git a/src/lib/media/image-sizes.ts b/src/lib/media/image-sizes.ts index 4ea95ea23..7a1555688 100644 --- a/src/lib/media/image-sizes.ts +++ b/src/lib/media/image-sizes.ts @@ -1,5 +1,6 @@ import {Image} from 'react-native' -import type {Dimensions} from 'lib/media/types' + +import type {Dimensions} from '#/lib/media/types' const sizes: Map<string, Dimensions> = new Map() const activeRequests: Map<string, Promise<Dimensions>> = new Map() diff --git a/src/lib/media/video/compress.web.ts b/src/lib/media/video/compress.web.ts index 7f057d2ea..ef868792a 100644 --- a/src/lib/media/video/compress.web.ts +++ b/src/lib/media/video/compress.web.ts @@ -1,6 +1,6 @@ import {ImagePickerAsset} from 'expo-image-picker' -import {VideoTooLargeError} from 'lib/media/video/errors' +import {VideoTooLargeError} from '#/lib/media/video/errors' import {CompressedVideo} from './types' const MAX_VIDEO_SIZE = 1024 * 1024 * 50 // 50mb diff --git a/src/lib/moderation/create-sanitized-display-name.ts b/src/lib/moderation/create-sanitized-display-name.ts index 5863503f5..4f9584f91 100644 --- a/src/lib/moderation/create-sanitized-display-name.ts +++ b/src/lib/moderation/create-sanitized-display-name.ts @@ -1,7 +1,7 @@ import {AppBskyActorDefs} from '@atproto/api' -import {sanitizeDisplayName} from 'lib/strings/display-names' -import {sanitizeHandle} from 'lib/strings/handles' +import {sanitizeDisplayName} from '#/lib/strings/display-names' +import {sanitizeHandle} from '#/lib/strings/handles' export function createSanitizedDisplayName( profile: diff --git a/src/lib/moderation/useLabelBehaviorDescription.ts b/src/lib/moderation/useLabelBehaviorDescription.ts index 0250c1bc8..4e773e0f0 100644 --- a/src/lib/moderation/useLabelBehaviorDescription.ts +++ b/src/lib/moderation/useLabelBehaviorDescription.ts @@ -1,6 +1,6 @@ import {InterpretedLabelValueDefinition, LabelPreference} from '@atproto/api' -import {useLingui} from '@lingui/react' import {msg} from '@lingui/macro' +import {useLingui} from '@lingui/react' export function useLabelBehaviorDescription( labelValueDef: InterpretedLabelValueDefinition, diff --git a/src/lib/notifications/notifications.ts b/src/lib/notifications/notifications.ts index 88b9eee3a..dfdc3b49c 100644 --- a/src/lib/notifications/notifications.ts +++ b/src/lib/notifications/notifications.ts @@ -3,10 +3,10 @@ import * as Notifications from 'expo-notifications' import {getBadgeCountAsync, setBadgeCountAsync} from 'expo-notifications' import {BskyAgent} from '@atproto/api' +import {logEvent} from '#/lib/statsig/statsig' import {logger} from '#/logger' +import {devicePlatform, isAndroid, isNative} from '#/platform/detection' import {SessionAccount, useAgent, useSession} from '#/state/session' -import {logEvent} from 'lib/statsig/statsig' -import {devicePlatform, isAndroid, isNative} from 'platform/detection' import BackgroundNotificationHandler from '../../../modules/expo-background-notification-handler' const SERVICE_DID = (serviceUrl?: string) => diff --git a/src/lib/routes/links.ts b/src/lib/routes/links.ts index 56b716677..8a9950262 100644 --- a/src/lib/routes/links.ts +++ b/src/lib/routes/links.ts @@ -1,6 +1,6 @@ import {AppBskyGraphDefs, AtUri} from '@atproto/api' -import {isInvalidHandle} from 'lib/strings/handles' +import {isInvalidHandle} from '#/lib/strings/handles' export function makeProfileLink( info: { diff --git a/src/lib/sentry.ts b/src/lib/sentry.ts index 37d41e3a2..2c390d7de 100644 --- a/src/lib/sentry.ts +++ b/src/lib/sentry.ts @@ -7,7 +7,7 @@ import {Platform} from 'react-native' import {nativeApplicationVersion, nativeBuildVersion} from 'expo-application' import {init} from '@sentry/react-native' -import {BUILD_ENV, IS_DEV, IS_TESTFLIGHT} from 'lib/app-info' +import {BUILD_ENV, IS_DEV, IS_TESTFLIGHT} from '#/lib/app-info' /** * Examples: diff --git a/src/lib/strings/handles.ts b/src/lib/strings/handles.ts index 7955e1b2e..90786ac3f 100644 --- a/src/lib/strings/handles.ts +++ b/src/lib/strings/handles.ts @@ -1,6 +1,6 @@ // Regex from the go implementation // https://github.com/bluesky-social/indigo/blob/main/atproto/syntax/handle.go#L10 -import {forceLTR} from 'lib/strings/bidi' +import {forceLTR} from '#/lib/strings/bidi' const VALIDATE_REGEX = /^([a-zA-Z0-9]([a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z]([a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?$/ diff --git a/src/lib/strings/rich-text-helpers.ts b/src/lib/strings/rich-text-helpers.ts index 662004599..54f0733d0 100644 --- a/src/lib/strings/rich-text-helpers.ts +++ b/src/lib/strings/rich-text-helpers.ts @@ -1,4 +1,5 @@ import {AppBskyRichtextFacet, RichText} from '@atproto/api' + import {linkRequiresWarning} from './url-helpers' export function richTextToString(rt: RichText, loose: boolean): string { diff --git a/src/lib/strings/url-helpers.ts b/src/lib/strings/url-helpers.ts index 4c8db8399..c44fdf7c2 100644 --- a/src/lib/strings/url-helpers.ts +++ b/src/lib/strings/url-helpers.ts @@ -2,10 +2,10 @@ import {AtUri} from '@atproto/api' import psl from 'psl' import TLDs from 'tlds' +import {BSKY_SERVICE} from '#/lib/constants' +import {isInvalidHandle} from '#/lib/strings/handles' +import {startUriToStarterPackUri} from '#/lib/strings/starter-pack' import {logger} from '#/logger' -import {BSKY_SERVICE} from 'lib/constants' -import {isInvalidHandle} from 'lib/strings/handles' -import {startUriToStarterPackUri} from 'lib/strings/starter-pack' export const BSKY_APP_HOST = 'https://bsky.app' const BSKY_TRUSTED_HOSTS = [ diff --git a/src/locale/__tests__/helpers.test.ts b/src/locale/__tests__/helpers.test.ts index 5e924c9fe..0cc0b7816 100644 --- a/src/locale/__tests__/helpers.test.ts +++ b/src/locale/__tests__/helpers.test.ts @@ -1,4 +1,4 @@ -import {test, expect} from '@jest/globals' +import {expect, test} from '@jest/globals' import {sanitizeAppLanguageSetting} from '#/locale/helpers' import {AppLanguage} from '#/locale/languages' diff --git a/src/locale/helpers.ts b/src/locale/helpers.ts index f4d6eea53..0d215a9d7 100644 --- a/src/locale/helpers.ts +++ b/src/locale/helpers.ts @@ -2,7 +2,7 @@ import {AppBskyFeedDefs, AppBskyFeedPost} from '@atproto/api' import * as bcp47Match from 'bcp-47-match' import lande from 'lande' -import {hasProp} from 'lib/type-guards' +import {hasProp} from '#/lib/type-guards' import { AppLanguage, LANGUAGES_MAP_CODE2, diff --git a/src/locale/i18nProvider.tsx b/src/locale/i18nProvider.tsx index 3766f5b71..f7f067973 100644 --- a/src/locale/i18nProvider.tsx +++ b/src/locale/i18nProvider.tsx @@ -1,6 +1,7 @@ import React from 'react' -import {I18nProvider as DefaultI18nProvider} from '@lingui/react' import {i18n} from '@lingui/core' +import {I18nProvider as DefaultI18nProvider} from '@lingui/react' + import {useLocaleLanguage} from './i18n' export default function I18nProvider({children}: {children: React.ReactNode}) { diff --git a/src/screens/List/ListHiddenScreen.tsx b/src/screens/List/ListHiddenScreen.tsx index e4354337a..a694cbb83 100644 --- a/src/screens/List/ListHiddenScreen.tsx +++ b/src/screens/List/ListHiddenScreen.tsx @@ -5,18 +5,18 @@ import {msg, Trans} from '@lingui/macro' import {useLingui} from '@lingui/react' import {useQueryClient} from '@tanstack/react-query' +import {useGoBack} from '#/lib/hooks/useGoBack' +import {sanitizeHandle} from '#/lib/strings/handles' import {logger} from '#/logger' import {RQKEY_ROOT as listQueryRoot} from '#/state/queries/list' -import {useGoBack} from 'lib/hooks/useGoBack' -import {sanitizeHandle} from 'lib/strings/handles' -import {useListBlockMutation, useListMuteMutation} from 'state/queries/list' +import {useListBlockMutation, useListMuteMutation} from '#/state/queries/list' import { UsePreferencesQueryResponse, useRemoveFeedMutation, -} from 'state/queries/preferences' -import {useSession} from 'state/session' -import * as Toast from 'view/com/util/Toast' -import {CenteredView} from 'view/com/util/Views' +} from '#/state/queries/preferences' +import {useSession} from '#/state/session' +import * as Toast from '#/view/com/util/Toast' +import {CenteredView} from '#/view/com/util/Views' import {atoms as a, useBreakpoints, useTheme} from '#/alf' import {Button, ButtonIcon, ButtonText} from '#/components/Button' import {EyeSlash_Stroke2_Corner0_Rounded as EyeSlash} from '#/components/icons/EyeSlash' diff --git a/src/screens/Profile/ErrorState.tsx b/src/screens/Profile/ErrorState.tsx index 2ec2cf592..97ce35bb2 100644 --- a/src/screens/Profile/ErrorState.tsx +++ b/src/screens/Profile/ErrorState.tsx @@ -1,14 +1,14 @@ import React from 'react' import {View} from 'react-native' -import {Trans, msg} from '@lingui/macro' +import {msg, Trans} from '@lingui/macro' import {useLingui} from '@lingui/react' import {useNavigation} from '@react-navigation/native' -import {useTheme, atoms as a} from '#/alf' -import {Text} from '#/components/Typography' +import {NavigationProp} from '#/lib/routes/types' +import {atoms as a, useTheme} from '#/alf' import {Button, ButtonText} from '#/components/Button' import {CircleInfo_Stroke2_Corner0_Rounded as CircleInfo} from '#/components/icons/CircleInfo' -import {NavigationProp} from '#/lib/routes/types' +import {Text} from '#/components/Typography' export function ErrorState({error}: {error: string}) { const t = useTheme() diff --git a/src/screens/Profile/Header/Metrics.tsx b/src/screens/Profile/Header/Metrics.tsx index 756eb1f89..30686ef99 100644 --- a/src/screens/Profile/Header/Metrics.tsx +++ b/src/screens/Profile/Header/Metrics.tsx @@ -4,9 +4,9 @@ import {AppBskyActorDefs} from '@atproto/api' import {msg, plural} from '@lingui/macro' import {useLingui} from '@lingui/react' +import {makeProfileLink} from '#/lib/routes/links' import {Shadow} from '#/state/cache/types' -import {makeProfileLink} from 'lib/routes/links' -import {formatCount} from 'view/com/util/numeric/format' +import {formatCount} from '#/view/com/util/numeric/format' import {atoms as a, useTheme} from '#/alf' import {InlineLinkText} from '#/components/Link' import {Text} from '#/components/Typography' diff --git a/src/screens/Signup/StepCaptcha/index.tsx b/src/screens/Signup/StepCaptcha/index.tsx index 9050ca061..f75715510 100644 --- a/src/screens/Signup/StepCaptcha/index.tsx +++ b/src/screens/Signup/StepCaptcha/index.tsx @@ -4,9 +4,9 @@ import {msg} from '@lingui/macro' import {useLingui} from '@lingui/react' import {nanoid} from 'nanoid/non-secure' +import {logEvent} from '#/lib/statsig/statsig' import {createFullHandle} from '#/lib/strings/handles' import {logger} from '#/logger' -import {logEvent} from 'lib/statsig/statsig' import {ScreenTransition} from '#/screens/Login/ScreenTransition' import {useSignupContext} from '#/screens/Signup/state' import {CaptchaWebView} from '#/screens/Signup/StepCaptcha/CaptchaWebView' diff --git a/src/screens/StarterPack/Wizard/State.tsx b/src/screens/StarterPack/Wizard/State.tsx index debb7e23c..f65933fbb 100644 --- a/src/screens/StarterPack/Wizard/State.tsx +++ b/src/screens/StarterPack/Wizard/State.tsx @@ -7,8 +7,8 @@ import { import {GeneratorView} from '@atproto/api/dist/client/types/app/bsky/feed/defs' import {msg} from '@lingui/macro' -import {STARTER_PACK_MAX_SIZE} from 'lib/constants' -import {useSession} from 'state/session' +import {STARTER_PACK_MAX_SIZE} from '#/lib/constants' +import {useSession} from '#/state/session' import * as Toast from '#/view/com/util/Toast' const steps = ['Details', 'Profiles', 'Feeds'] as const diff --git a/src/screens/StarterPack/Wizard/StepDetails.tsx b/src/screens/StarterPack/Wizard/StepDetails.tsx index 24c992c60..4ee2cada9 100644 --- a/src/screens/StarterPack/Wizard/StepDetails.tsx +++ b/src/screens/StarterPack/Wizard/StepDetails.tsx @@ -3,8 +3,8 @@ import {View} from 'react-native' import {msg, Trans} from '@lingui/macro' import {useLingui} from '@lingui/react' -import {useProfileQuery} from 'state/queries/profile' -import {useSession} from 'state/session' +import {useProfileQuery} from '#/state/queries/profile' +import {useSession} from '#/state/session' import {useWizardState} from '#/screens/StarterPack/Wizard/State' import {atoms as a, useTheme} from '#/alf' import * as TextField from '#/components/forms/TextField' diff --git a/src/state/preferences/external-embeds-prefs.tsx b/src/state/preferences/external-embeds-prefs.tsx index 04afb89dd..9104bc71f 100644 --- a/src/state/preferences/external-embeds-prefs.tsx +++ b/src/state/preferences/external-embeds-prefs.tsx @@ -1,7 +1,7 @@ import React from 'react' +import {EmbedPlayerSource} from '#/lib/strings/embed-player' import * as persisted from '#/state/persisted' -import {EmbedPlayerSource} from 'lib/strings/embed-player' type StateContext = persisted.Schema['externalEmbeds'] type SetContext = ( diff --git a/src/state/queries/messages/conversation.ts b/src/state/queries/messages/conversation.ts index 16ace3c5a..fa8a883d0 100644 --- a/src/state/queries/messages/conversation.ts +++ b/src/state/queries/messages/conversation.ts @@ -1,10 +1,10 @@ import {ChatBskyConvoDefs} from '@atproto/api' import {useMutation, useQuery, useQueryClient} from '@tanstack/react-query' +import {STALE} from '#/state/queries' import {DM_SERVICE_HEADERS} from '#/state/queries/messages/const' import {useOnMarkAsRead} from '#/state/queries/messages/list-converations' import {useAgent} from '#/state/session' -import {STALE} from 'state/queries' import {RQKEY as LIST_CONVOS_KEY} from './list-converations' const RQKEY_ROOT = 'convo' diff --git a/src/state/queries/notifications/unread.tsx b/src/state/queries/notifications/unread.tsx index 7bb325ea9..2ade04246 100644 --- a/src/state/queries/notifications/unread.tsx +++ b/src/state/queries/notifications/unread.tsx @@ -8,9 +8,9 @@ import {useQueryClient} from '@tanstack/react-query' import EventEmitter from 'eventemitter3' import BroadcastChannel from '#/lib/broadcast' +import {resetBadgeCount} from '#/lib/notifications/notifications' import {logger} from '#/logger' import {useAgent, useSession} from '#/state/session' -import {resetBadgeCount} from 'lib/notifications/notifications' import {useModerationOpts} from '../../preferences/moderation-opts' import {truncateAndInvalidate} from '../util' import {RQKEY as RQKEY_NOTIFS} from './feed' diff --git a/src/state/queries/post-thread.ts b/src/state/queries/post-thread.ts index a569cb160..103a1d03b 100644 --- a/src/state/queries/post-thread.ts +++ b/src/state/queries/post-thread.ts @@ -11,13 +11,13 @@ import { import {QueryClient, useQuery, useQueryClient} from '@tanstack/react-query' import {moderatePost_wrapped as moderatePost} from '#/lib/moderatePost_wrapped' +import {findAllPostsInQueryData as findAllPostsInQuoteQueryData} from '#/state/queries/post-quotes' import {UsePreferencesQueryResponse} from '#/state/queries/preferences/types' -import {useAgent} from '#/state/session' -import {findAllPostsInQueryData as findAllPostsInQuoteQueryData} from 'state/queries/post-quotes' import { findAllPostsInQueryData as findAllPostsInSearchQueryData, findAllProfilesInQueryData as findAllProfilesInSearchQueryData, -} from 'state/queries/search-posts' +} from '#/state/queries/search-posts' +import {useAgent} from '#/state/session' import { findAllPostsInQueryData as findAllPostsInNotifsQueryData, findAllProfilesInQueryData as findAllProfilesInNotifsQueryData, diff --git a/src/state/queries/resolve-short-link.ts b/src/state/queries/resolve-short-link.ts index a10bc12c1..649d2db74 100644 --- a/src/state/queries/resolve-short-link.ts +++ b/src/state/queries/resolve-short-link.ts @@ -1,8 +1,8 @@ import {useQuery} from '@tanstack/react-query' -import {resolveShortLink} from 'lib/link-meta/resolve-short-link' -import {parseStarterPackUri} from 'lib/strings/starter-pack' -import {STALE} from 'state/queries/index' +import {resolveShortLink} from '#/lib/link-meta/resolve-short-link' +import {parseStarterPackUri} from '#/lib/strings/starter-pack' +import {STALE} from '#/state/queries/index' const ROOT_URI = 'https://go.bsky.app/' diff --git a/src/state/queries/starter-packs.ts b/src/state/queries/starter-packs.ts index a3795d792..4066f8f19 100644 --- a/src/state/queries/starter-packs.ts +++ b/src/state/queries/starter-packs.ts @@ -18,17 +18,17 @@ import { } from '@tanstack/react-query' import chunk from 'lodash.chunk' -import {until} from 'lib/async/until' -import {createStarterPackList} from 'lib/generate-starterpack' +import {until} from '#/lib/async/until' +import {createStarterPackList} from '#/lib/generate-starterpack' import { createStarterPackUri, httpStarterPackUriToAtUri, parseStarterPackUri, -} from 'lib/strings/starter-pack' -import {invalidateActorStarterPacksQuery} from 'state/queries/actor-starter-packs' -import {STALE} from 'state/queries/index' -import {invalidateListMembersQuery} from 'state/queries/list-members' -import {useAgent} from 'state/session' +} from '#/lib/strings/starter-pack' +import {invalidateActorStarterPacksQuery} from '#/state/queries/actor-starter-packs' +import {STALE} from '#/state/queries/index' +import {invalidateListMembersQuery} from '#/state/queries/list-members' +import {useAgent} from '#/state/session' const RQKEY_ROOT = 'starter-pack' const RQKEY = ({ diff --git a/src/view/com/auth/util/HelpTip.tsx b/src/view/com/auth/util/HelpTip.tsx index 65f7278d6..0fac86bec 100644 --- a/src/view/com/auth/util/HelpTip.tsx +++ b/src/view/com/auth/util/HelpTip.tsx @@ -1,9 +1,10 @@ import React from 'react' import {StyleSheet, View} from 'react-native' -import {Text} from 'view/com/util/text/Text' -import {InfoCircleIcon} from 'lib/icons' -import {s, colors} from 'lib/styles' -import {useColorSchemeStyle} from 'lib/hooks/useColorSchemeStyle' + +import {useColorSchemeStyle} from '#/lib/hooks/useColorSchemeStyle' +import {InfoCircleIcon} from '#/lib/icons' +import {colors, s} from '#/lib/styles' +import {Text} from '#/view/com/util/text/Text' export function HelpTip({text}: {text: string}) { const bg = useColorSchemeStyle( diff --git a/src/view/com/auth/util/TextInput.tsx b/src/view/com/auth/util/TextInput.tsx index 38aff0384..0ccbe6ac4 100644 --- a/src/view/com/auth/util/TextInput.tsx +++ b/src/view/com/auth/util/TextInput.tsx @@ -1,9 +1,10 @@ import React, {ComponentProps} from 'react' import {StyleSheet, TextInput as RNTextInput, View} from 'react-native' -import {FontAwesomeIcon} from '@fortawesome/react-native-fontawesome' import {IconProp} from '@fortawesome/fontawesome-svg-core' -import {usePalette} from 'lib/hooks/usePalette' -import {useTheme} from 'lib/ThemeContext' +import {FontAwesomeIcon} from '@fortawesome/react-native-fontawesome' + +import {usePalette} from '#/lib/hooks/usePalette' +import {useTheme} from '#/lib/ThemeContext' interface Props extends Omit<ComponentProps<typeof RNTextInput>, 'onChange'> { testID?: string diff --git a/src/view/com/composer/select-language/SelectLangBtn.tsx b/src/view/com/composer/select-language/SelectLangBtn.tsx index 7a086789a..695c84950 100644 --- a/src/view/com/composer/select-language/SelectLangBtn.tsx +++ b/src/view/com/composer/select-language/SelectLangBtn.tsx @@ -7,6 +7,8 @@ import { import {msg} from '@lingui/macro' import {useLingui} from '@lingui/react' +import {usePalette} from '#/lib/hooks/usePalette' +import {isNative} from '#/platform/detection' import {useModalControls} from '#/state/modals' import { hasPostLanguage, @@ -14,14 +16,12 @@ import { useLanguagePrefs, useLanguagePrefsApi, } from '#/state/preferences/languages' -import {usePalette} from 'lib/hooks/usePalette' -import {isNative} from 'platform/detection' import { DropdownButton, DropdownItem, DropdownItemButton, -} from 'view/com/util/forms/DropdownButton' -import {Text} from 'view/com/util/text/Text' +} from '#/view/com/util/forms/DropdownButton' +import {Text} from '#/view/com/util/text/Text' import {codeToLanguageName} from '../../../../locale/helpers' export function SelectLangBtn() { diff --git a/src/view/com/composer/select-language/SuggestedLanguage.tsx b/src/view/com/composer/select-language/SuggestedLanguage.tsx index 0bf62ae0d..e915f4c66 100644 --- a/src/view/com/composer/select-language/SuggestedLanguage.tsx +++ b/src/view/com/composer/select-language/SuggestedLanguage.tsx @@ -1,22 +1,23 @@ import React, {useEffect, useState} from 'react' import {StyleSheet, View} from 'react-native' -import lande from 'lande' -import {Trans, msg} from '@lingui/macro' +import { + FontAwesomeIcon, + FontAwesomeIconStyle, +} from '@fortawesome/react-native-fontawesome' +import {msg, Trans} from '@lingui/macro' import {useLingui} from '@lingui/react' -import {Text} from '../../util/text/Text' -import {Button} from '../../util/forms/Button' +import lande from 'lande' + +import {usePalette} from '#/lib/hooks/usePalette' +import {s} from '#/lib/styles' import {code3ToCode2Strict, codeToLanguageName} from '#/locale/helpers' import { toPostLanguages, useLanguagePrefs, useLanguagePrefsApi, } from '#/state/preferences/languages' -import {usePalette} from '#/lib/hooks/usePalette' -import {s} from '#/lib/styles' -import { - FontAwesomeIcon, - FontAwesomeIconStyle, -} from '@fortawesome/react-native-fontawesome' +import {Button} from '../../util/forms/Button' +import {Text} from '../../util/text/Text' // fallbacks for safari const onIdle = globalThis.requestIdleCallback || (cb => setTimeout(cb, 1)) diff --git a/src/view/com/composer/text-input/hooks/useGrapheme.tsx b/src/view/com/composer/text-input/hooks/useGrapheme.tsx index 25947c3ec..01b5b9698 100644 --- a/src/view/com/composer/text-input/hooks/useGrapheme.tsx +++ b/src/view/com/composer/text-input/hooks/useGrapheme.tsx @@ -1,5 +1,5 @@ -import Graphemer from 'graphemer' import {useCallback, useMemo} from 'react' +import Graphemer from 'graphemer' export const useGrapheme = () => { const splitter = useMemo(() => new Graphemer(), []) diff --git a/src/view/com/composer/text-input/web/LinkDecorator.ts b/src/view/com/composer/text-input/web/LinkDecorator.ts index 60f2d4085..af38d6b05 100644 --- a/src/view/com/composer/text-input/web/LinkDecorator.ts +++ b/src/view/com/composer/text-input/web/LinkDecorator.ts @@ -20,7 +20,7 @@ import {Node as ProsemirrorNode} from '@tiptap/pm/model' import {Plugin, PluginKey} from '@tiptap/pm/state' import {Decoration, DecorationSet} from '@tiptap/pm/view' -import {isValidDomain} from 'lib/strings/url-helpers' +import {isValidDomain} from '#/lib/strings/url-helpers' export const LinkDecorator = Mark.create({ name: 'link-decorator', diff --git a/src/view/com/composer/text-input/web/TagDecorator.ts b/src/view/com/composer/text-input/web/TagDecorator.ts index 2bf3184a8..9225fd6bf 100644 --- a/src/view/com/composer/text-input/web/TagDecorator.ts +++ b/src/view/com/composer/text-input/web/TagDecorator.ts @@ -14,11 +14,11 @@ * the facet-set. */ +import {TAG_REGEX, TRAILING_PUNCTUATION_REGEX} from '@atproto/api' import {Mark} from '@tiptap/core' -import {Plugin, PluginKey} from '@tiptap/pm/state' import {Node as ProsemirrorNode} from '@tiptap/pm/model' +import {Plugin, PluginKey} from '@tiptap/pm/state' import {Decoration, DecorationSet} from '@tiptap/pm/view' -import {TAG_REGEX, TRAILING_PUNCTUATION_REGEX} from '@atproto/api' function getDecorations(doc: ProsemirrorNode) { const decorations: Decoration[] = [] diff --git a/src/view/com/composer/videos/VideoPreview.tsx b/src/view/com/composer/videos/VideoPreview.tsx index 000d22f37..50a38f976 100644 --- a/src/view/com/composer/videos/VideoPreview.tsx +++ b/src/view/com/composer/videos/VideoPreview.tsx @@ -6,7 +6,7 @@ import {BlueskyVideoView} from '@haileyok/bluesky-video' import {CompressedVideo} from '#/lib/media/video/types' import {clamp} from '#/lib/numbers' import {useAutoplayDisabled} from '#/state/preferences' -import {ExternalEmbedRemoveBtn} from 'view/com/composer/ExternalEmbedRemoveBtn' +import {ExternalEmbedRemoveBtn} from '#/view/com/composer/ExternalEmbedRemoveBtn' import {atoms as a, useTheme} from '#/alf' import {PlayButtonIcon} from '#/components/video/PlayButtonIcon' diff --git a/src/view/com/composer/videos/VideoPreview.web.tsx b/src/view/com/composer/videos/VideoPreview.web.tsx index f64de29e7..ccb3391c2 100644 --- a/src/view/com/composer/videos/VideoPreview.web.tsx +++ b/src/view/com/composer/videos/VideoPreview.web.tsx @@ -7,8 +7,8 @@ import {useLingui} from '@lingui/react' import {CompressedVideo} from '#/lib/media/video/types' import {clamp} from '#/lib/numbers' import {useAutoplayDisabled} from '#/state/preferences' +import {ExternalEmbedRemoveBtn} from '#/view/com/composer/ExternalEmbedRemoveBtn' import * as Toast from '#/view/com/util/Toast' -import {ExternalEmbedRemoveBtn} from 'view/com/composer/ExternalEmbedRemoveBtn' import {atoms as a} from '#/alf' import {PlayButtonIcon} from '#/components/video/PlayButtonIcon' diff --git a/src/view/com/home/HomeHeader.tsx b/src/view/com/home/HomeHeader.tsx index b225efaa3..31c713563 100644 --- a/src/view/com/home/HomeHeader.tsx +++ b/src/view/com/home/HomeHeader.tsx @@ -2,10 +2,10 @@ import React from 'react' import {useNavigation} from '@react-navigation/native' import {usePalette} from '#/lib/hooks/usePalette' +import {NavigationProp} from '#/lib/routes/types' import {FeedSourceInfo} from '#/state/queries/feed' import {useSession} from '#/state/session' -import {NavigationProp} from 'lib/routes/types' -import {RenderTabBarFnProps} from 'view/com/pager/Pager' +import {RenderTabBarFnProps} from '#/view/com/pager/Pager' import {TabBar} from '../pager/TabBar' import {HomeHeaderLayout} from './HomeHeaderLayout' diff --git a/src/view/com/lightbox/ImageViewing/components/ImageDefaultHeader.tsx b/src/view/com/lightbox/ImageViewing/components/ImageDefaultHeader.tsx index 88476c8e1..e7caa58a8 100644 --- a/src/view/com/lightbox/ImageViewing/components/ImageDefaultHeader.tsx +++ b/src/view/com/lightbox/ImageViewing/components/ImageDefaultHeader.tsx @@ -8,8 +8,8 @@ import React from 'react' import { SafeAreaView, - TouchableOpacity, StyleSheet, + TouchableOpacity, ViewStyle, } from 'react-native' import {FontAwesomeIcon} from '@fortawesome/react-native-fontawesome' diff --git a/src/view/com/lightbox/ImageViewing/components/ImageItem/ImageItem.tsx b/src/view/com/lightbox/ImageViewing/components/ImageItem/ImageItem.tsx index 08b99bf9e..4cb7903ef 100644 --- a/src/view/com/lightbox/ImageViewing/components/ImageItem/ImageItem.tsx +++ b/src/view/com/lightbox/ImageViewing/components/ImageItem/ImageItem.tsx @@ -2,6 +2,7 @@ import React from 'react' import {View} from 'react-native' + import {ImageSource} from '../../@types' type Props = { diff --git a/src/view/com/lightbox/ImageViewing/index.tsx b/src/view/com/lightbox/ImageViewing/index.tsx index ff8fdb86d..1432b34ff 100644 --- a/src/view/com/lightbox/ImageViewing/index.tsx +++ b/src/view/com/lightbox/ImageViewing/index.tsx @@ -9,15 +9,14 @@ // https://github.com/jobtoday/react-native-image-viewing import React, {ComponentType, useCallback, useMemo, useState} from 'react' -import {StyleSheet, View, Platform} from 'react-native' - -import ImageItem from './components/ImageItem/ImageItem' -import ImageDefaultHeader from './components/ImageDefaultHeader' - -import {ImageSource} from './@types' +import {Platform, StyleSheet, View} from 'react-native' +import PagerView from 'react-native-pager-view' import Animated, {useAnimatedStyle, withSpring} from 'react-native-reanimated' import {Edge, SafeAreaView} from 'react-native-safe-area-context' -import PagerView from 'react-native-pager-view' + +import {ImageSource} from './@types' +import ImageDefaultHeader from './components/ImageDefaultHeader' +import ImageItem from './components/ImageItem/ImageItem' type Props = { images: ImageSource[] diff --git a/src/view/com/modals/ChangeEmail.tsx b/src/view/com/modals/ChangeEmail.tsx index a214627e2..dc450705e 100644 --- a/src/view/com/modals/ChangeEmail.tsx +++ b/src/view/com/modals/ChangeEmail.tsx @@ -3,13 +3,13 @@ import {ActivityIndicator, SafeAreaView, StyleSheet, View} from 'react-native' import {msg, Trans} from '@lingui/macro' import {useLingui} from '@lingui/react' +import {usePalette} from '#/lib/hooks/usePalette' +import {useWebMediaQueries} from '#/lib/hooks/useWebMediaQueries' +import {cleanError} from '#/lib/strings/errors' +import {colors, s} from '#/lib/styles' +import {isWeb} from '#/platform/detection' import {useModalControls} from '#/state/modals' import {useAgent, useSession} from '#/state/session' -import {usePalette} from 'lib/hooks/usePalette' -import {useWebMediaQueries} from 'lib/hooks/useWebMediaQueries' -import {cleanError} from 'lib/strings/errors' -import {colors, s} from 'lib/styles' -import {isWeb} from 'platform/detection' import {ErrorMessage} from '../util/error/ErrorMessage' import {Button} from '../util/forms/Button' import {Text} from '../util/text/Text' diff --git a/src/view/com/modals/ChangePassword.tsx b/src/view/com/modals/ChangePassword.tsx index 196715b49..c40fcb5e3 100644 --- a/src/view/com/modals/ChangePassword.tsx +++ b/src/view/com/modals/ChangePassword.tsx @@ -11,15 +11,15 @@ import {msg, Trans} from '@lingui/macro' import {useLingui} from '@lingui/react' import * as EmailValidator from 'email-validator' +import {usePalette} from '#/lib/hooks/usePalette' +import {useWebMediaQueries} from '#/lib/hooks/useWebMediaQueries' +import {cleanError, isNetworkError} from '#/lib/strings/errors' +import {checkAndFormatResetCode} from '#/lib/strings/password' +import {colors, s} from '#/lib/styles' import {logger} from '#/logger' +import {isAndroid, isWeb} from '#/platform/detection' import {useModalControls} from '#/state/modals' import {useAgent, useSession} from '#/state/session' -import {usePalette} from 'lib/hooks/usePalette' -import {useWebMediaQueries} from 'lib/hooks/useWebMediaQueries' -import {cleanError, isNetworkError} from 'lib/strings/errors' -import {checkAndFormatResetCode} from 'lib/strings/password' -import {colors, s} from 'lib/styles' -import {isAndroid, isWeb} from 'platform/detection' import {ErrorMessage} from '../util/error/ErrorMessage' import {Button} from '../util/forms/Button' import {Text} from '../util/text/Text' diff --git a/src/view/com/modals/InviteCodes.tsx b/src/view/com/modals/InviteCodes.tsx index 44a6cc9ea..60020f996 100644 --- a/src/view/com/modals/InviteCodes.tsx +++ b/src/view/com/modals/InviteCodes.tsx @@ -14,17 +14,17 @@ import { import {msg, Trans} from '@lingui/macro' import {useLingui} from '@lingui/react' +import {usePalette} from '#/lib/hooks/usePalette' +import {useWebMediaQueries} from '#/lib/hooks/useWebMediaQueries' import {makeProfileLink} from '#/lib/routes/links' +import {cleanError} from '#/lib/strings/errors' +import {isWeb} from '#/platform/detection' import {useInvitesAPI, useInvitesState} from '#/state/invites' import {useModalControls} from '#/state/modals' import { InviteCodesQueryResponse, useInviteCodesQuery, } from '#/state/queries/invites' -import {usePalette} from 'lib/hooks/usePalette' -import {useWebMediaQueries} from 'lib/hooks/useWebMediaQueries' -import {cleanError} from 'lib/strings/errors' -import {isWeb} from 'platform/detection' import {ErrorMessage} from '../util/error/ErrorMessage' import {Button} from '../util/forms/Button' import {Link} from '../util/Link' diff --git a/src/view/com/modals/ListAddRemoveUsers.tsx b/src/view/com/modals/ListAddRemoveUsers.tsx index e968252d2..5285d4a15 100644 --- a/src/view/com/modals/ListAddRemoveUsers.tsx +++ b/src/view/com/modals/ListAddRemoveUsers.tsx @@ -12,6 +12,14 @@ import {msg, Trans} from '@lingui/macro' import {useLingui} from '@lingui/react' import {HITSLOP_20} from '#/lib/constants' +import {useIsKeyboardVisible} from '#/lib/hooks/useIsKeyboardVisible' +import {usePalette} from '#/lib/hooks/usePalette' +import {useWebMediaQueries} from '#/lib/hooks/useWebMediaQueries' +import {sanitizeDisplayName} from '#/lib/strings/display-names' +import {cleanError} from '#/lib/strings/errors' +import {sanitizeHandle} from '#/lib/strings/handles' +import {colors, s} from '#/lib/styles' +import {isWeb} from '#/platform/detection' import {useModalControls} from '#/state/modals' import {useActorAutocompleteQuery} from '#/state/queries/actor-autocomplete' import { @@ -21,14 +29,6 @@ import { useListMembershipAddMutation, useListMembershipRemoveMutation, } from '#/state/queries/list-memberships' -import {useIsKeyboardVisible} from 'lib/hooks/useIsKeyboardVisible' -import {usePalette} from 'lib/hooks/usePalette' -import {useWebMediaQueries} from 'lib/hooks/useWebMediaQueries' -import {sanitizeDisplayName} from 'lib/strings/display-names' -import {cleanError} from 'lib/strings/errors' -import {sanitizeHandle} from 'lib/strings/handles' -import {colors, s} from 'lib/styles' -import {isWeb} from 'platform/detection' import {Button} from '../util/forms/Button' import {Text} from '../util/text/Text' import * as Toast from '../util/Toast' diff --git a/src/view/com/modals/VerifyEmail.tsx b/src/view/com/modals/VerifyEmail.tsx index 8fdec7d5d..fce1275fe 100644 --- a/src/view/com/modals/VerifyEmail.tsx +++ b/src/view/com/modals/VerifyEmail.tsx @@ -11,14 +11,14 @@ import {FontAwesomeIcon} from '@fortawesome/react-native-fontawesome' import {msg, Trans} from '@lingui/macro' import {useLingui} from '@lingui/react' +import {usePalette} from '#/lib/hooks/usePalette' +import {useWebMediaQueries} from '#/lib/hooks/useWebMediaQueries' +import {cleanError} from '#/lib/strings/errors' +import {colors, s} from '#/lib/styles' import {logger} from '#/logger' +import {isWeb} from '#/platform/detection' import {useModalControls} from '#/state/modals' import {useAgent, useSession} from '#/state/session' -import {usePalette} from 'lib/hooks/usePalette' -import {useWebMediaQueries} from 'lib/hooks/useWebMediaQueries' -import {cleanError} from 'lib/strings/errors' -import {colors, s} from 'lib/styles' -import {isWeb} from 'platform/detection' import {ErrorMessage} from '../util/error/ErrorMessage' import {Button} from '../util/forms/Button' import {Text} from '../util/text/Text' diff --git a/src/view/com/modals/lang-settings/ConfirmLanguagesButton.tsx b/src/view/com/modals/lang-settings/ConfirmLanguagesButton.tsx index ab21ba65a..8755a2fbb 100644 --- a/src/view/com/modals/lang-settings/ConfirmLanguagesButton.tsx +++ b/src/view/com/modals/lang-settings/ConfirmLanguagesButton.tsx @@ -4,9 +4,9 @@ import {LinearGradient} from 'expo-linear-gradient' import {msg, Trans} from '@lingui/macro' import {useLingui} from '@lingui/react' -import {usePalette} from 'lib/hooks/usePalette' -import {useWebMediaQueries} from 'lib/hooks/useWebMediaQueries' -import {colors, gradients, s} from 'lib/styles' +import {usePalette} from '#/lib/hooks/usePalette' +import {useWebMediaQueries} from '#/lib/hooks/useWebMediaQueries' +import {colors, gradients, s} from '#/lib/styles' export const ConfirmLanguagesButton = ({ onPress, diff --git a/src/view/com/modals/lang-settings/LanguageToggle.tsx b/src/view/com/modals/lang-settings/LanguageToggle.tsx index 45b100f20..b8c0121e6 100644 --- a/src/view/com/modals/lang-settings/LanguageToggle.tsx +++ b/src/view/com/modals/lang-settings/LanguageToggle.tsx @@ -1,8 +1,9 @@ import React from 'react' import {StyleSheet} from 'react-native' -import {usePalette} from 'lib/hooks/usePalette' -import {ToggleButton} from 'view/com/util/forms/ToggleButton' -import {useLanguagePrefs, toPostLanguages} from '#/state/preferences/languages' + +import {usePalette} from '#/lib/hooks/usePalette' +import {toPostLanguages, useLanguagePrefs} from '#/state/preferences/languages' +import {ToggleButton} from '#/view/com/util/forms/ToggleButton' export function LanguageToggle({ code2, diff --git a/src/view/com/pager/DraggableScrollView.tsx b/src/view/com/pager/DraggableScrollView.tsx index 4b7396eaa..fc06b72e8 100644 --- a/src/view/com/pager/DraggableScrollView.tsx +++ b/src/view/com/pager/DraggableScrollView.tsx @@ -1,7 +1,8 @@ -import {useDraggableScroll} from 'lib/hooks/useDraggableScrollView' import React, {ComponentProps} from 'react' import {ScrollView} from 'react-native' +import {useDraggableScroll} from '#/lib/hooks/useDraggableScrollView' + export const DraggableScrollView = React.forwardRef< ScrollView, ComponentProps<typeof ScrollView> diff --git a/src/view/com/pager/Pager.web.tsx b/src/view/com/pager/Pager.web.tsx index 1266a1620..2cce727c0 100644 --- a/src/view/com/pager/Pager.web.tsx +++ b/src/view/com/pager/Pager.web.tsx @@ -3,7 +3,7 @@ import {View} from 'react-native' import {flushSync} from 'react-dom' import {LogEvents} from '#/lib/statsig/events' -import {s} from 'lib/styles' +import {s} from '#/lib/styles' export interface RenderTabBarFnProps { selectedPage: number diff --git a/src/view/com/post-thread/PostLikedBy.tsx b/src/view/com/post-thread/PostLikedBy.tsx index bea105744..69e04e046 100644 --- a/src/view/com/post-thread/PostLikedBy.tsx +++ b/src/view/com/post-thread/PostLikedBy.tsx @@ -3,12 +3,12 @@ import {AppBskyFeedGetLikes as GetLikes} from '@atproto/api' import {msg} from '@lingui/macro' import {useLingui} from '@lingui/react' +import {useInitialNumToRender} from '#/lib/hooks/useInitialNumToRender' import {cleanError} from '#/lib/strings/errors' import {logger} from '#/logger' +import {isWeb} from '#/platform/detection' import {useLikedByQuery} from '#/state/queries/post-liked-by' import {useResolveUriQuery} from '#/state/queries/resolve-uri' -import {useInitialNumToRender} from 'lib/hooks/useInitialNumToRender' -import {isWeb} from 'platform/detection' import {ProfileCardWithFollowBtn} from '#/view/com/profile/ProfileCard' import {List} from '#/view/com/util/List' import {ListFooter, ListMaybePlaceholder} from '#/components/Lists' diff --git a/src/view/com/post-thread/PostQuotes.tsx b/src/view/com/post-thread/PostQuotes.tsx index 6115ae584..56cf81a3e 100644 --- a/src/view/com/post-thread/PostQuotes.tsx +++ b/src/view/com/post-thread/PostQuotes.tsx @@ -7,15 +7,15 @@ import { import {msg} from '@lingui/macro' import {useLingui} from '@lingui/react' +import {useInitialNumToRender} from '#/lib/hooks/useInitialNumToRender' import {moderatePost_wrapped as moderatePost} from '#/lib/moderatePost_wrapped' import {cleanError} from '#/lib/strings/errors' import {logger} from '#/logger' +import {isWeb} from '#/platform/detection' import {useModerationOpts} from '#/state/preferences/moderation-opts' import {usePostQuotesQuery} from '#/state/queries/post-quotes' import {useResolveUriQuery} from '#/state/queries/resolve-uri' -import {useInitialNumToRender} from 'lib/hooks/useInitialNumToRender' -import {isWeb} from 'platform/detection' -import {Post} from 'view/com/post/Post' +import {Post} from '#/view/com/post/Post' import {ListFooter, ListMaybePlaceholder} from '#/components/Lists' import {List} from '../util/List' diff --git a/src/view/com/post-thread/PostRepostedBy.tsx b/src/view/com/post-thread/PostRepostedBy.tsx index 68606b1a5..67a89e435 100644 --- a/src/view/com/post-thread/PostRepostedBy.tsx +++ b/src/view/com/post-thread/PostRepostedBy.tsx @@ -3,11 +3,11 @@ import {AppBskyActorDefs as ActorDefs} from '@atproto/api' import {msg} from '@lingui/macro' import {useLingui} from '@lingui/react' +import {useInitialNumToRender} from '#/lib/hooks/useInitialNumToRender' import {cleanError} from '#/lib/strings/errors' import {logger} from '#/logger' import {usePostRepostedByQuery} from '#/state/queries/post-reposted-by' import {useResolveUriQuery} from '#/state/queries/resolve-uri' -import {useInitialNumToRender} from 'lib/hooks/useInitialNumToRender' import {ProfileCardWithFollowBtn} from '#/view/com/profile/ProfileCard' import {List} from '#/view/com/util/List' import {ListFooter, ListMaybePlaceholder} from '#/components/Lists' diff --git a/src/view/com/post-thread/PostThread.tsx b/src/view/com/post-thread/PostThread.tsx index 4c4b00809..7ce6deaa1 100644 --- a/src/view/com/post-thread/PostThread.tsx +++ b/src/view/com/post-thread/PostThread.tsx @@ -7,9 +7,15 @@ import {AppBskyFeedDefs, AppBskyFeedThreadgate} from '@atproto/api' import {msg, Trans} from '@lingui/macro' import {useLingui} from '@lingui/react' +import {useInitialNumToRender} from '#/lib/hooks/useInitialNumToRender' +import {useMinimalShellFabTransform} from '#/lib/hooks/useMinimalShellTransform' +import {useSetTitle} from '#/lib/hooks/useSetTitle' +import {useWebMediaQueries} from '#/lib/hooks/useWebMediaQueries' import {moderatePost_wrapped as moderatePost} from '#/lib/moderatePost_wrapped' import {clamp} from '#/lib/numbers' import {ScrollProvider} from '#/lib/ScrollContext' +import {sanitizeDisplayName} from '#/lib/strings/display-names' +import {cleanError} from '#/lib/strings/errors' import {isAndroid, isNative, isWeb} from '#/platform/detection' import {useModerationOpts} from '#/state/preferences/moderation-opts' import { @@ -26,13 +32,7 @@ import {usePreferencesQuery} from '#/state/queries/preferences' import {useSession} from '#/state/session' import {useComposerControls} from '#/state/shell' import {useMergedThreadgateHiddenReplies} from '#/state/threadgate-hidden-replies' -import {useInitialNumToRender} from 'lib/hooks/useInitialNumToRender' -import {useMinimalShellFabTransform} from 'lib/hooks/useMinimalShellTransform' -import {useSetTitle} from 'lib/hooks/useSetTitle' -import {useWebMediaQueries} from 'lib/hooks/useWebMediaQueries' -import {sanitizeDisplayName} from 'lib/strings/display-names' -import {cleanError} from 'lib/strings/errors' -import {CenteredView} from 'view/com/util/Views' +import {CenteredView} from '#/view/com/util/Views' import {atoms as a, useTheme} from '#/alf' import {ListFooter, ListMaybePlaceholder} from '#/components/Lists' import {Text} from '#/components/Typography' diff --git a/src/view/com/posts/CustomFeedEmptyState.tsx b/src/view/com/posts/CustomFeedEmptyState.tsx index 62a10fd19..1d216dd29 100644 --- a/src/view/com/posts/CustomFeedEmptyState.tsx +++ b/src/view/com/posts/CustomFeedEmptyState.tsx @@ -1,18 +1,19 @@ import React from 'react' import {StyleSheet, View} from 'react-native' -import {useNavigation} from '@react-navigation/native' import { FontAwesomeIcon, FontAwesomeIconStyle, } from '@fortawesome/react-native-fontawesome' -import {Text} from '../util/text/Text' -import {Button} from '../util/forms/Button' -import {MagnifyingGlassIcon} from 'lib/icons' -import {NavigationProp} from 'lib/routes/types' -import {usePalette} from 'lib/hooks/usePalette' -import {s} from 'lib/styles' -import {isWeb} from 'platform/detection' import {Trans} from '@lingui/macro' +import {useNavigation} from '@react-navigation/native' + +import {usePalette} from '#/lib/hooks/usePalette' +import {MagnifyingGlassIcon} from '#/lib/icons' +import {NavigationProp} from '#/lib/routes/types' +import {s} from '#/lib/styles' +import {isWeb} from '#/platform/detection' +import {Button} from '../util/forms/Button' +import {Text} from '../util/text/Text' export function CustomFeedEmptyState() { const pal = usePalette('default') diff --git a/src/view/com/posts/DiscoverFallbackHeader.tsx b/src/view/com/posts/DiscoverFallbackHeader.tsx index ffde89997..0153cf5f4 100644 --- a/src/view/com/posts/DiscoverFallbackHeader.tsx +++ b/src/view/com/posts/DiscoverFallbackHeader.tsx @@ -1,10 +1,11 @@ import React from 'react' import {View} from 'react-native' import {Trans} from '@lingui/macro' -import {Text} from '../util/text/Text' + import {usePalette} from '#/lib/hooks/usePalette' -import {TextLink} from '../util/Link' import {InfoCircleIcon} from '#/lib/icons' +import {TextLink} from '../util/Link' +import {Text} from '../util/text/Text' export function DiscoverFallbackHeader() { const pal = usePalette('default') diff --git a/src/view/com/posts/FeedErrorMessage.tsx b/src/view/com/posts/FeedErrorMessage.tsx index 437d7788a..cc7b34750 100644 --- a/src/view/com/posts/FeedErrorMessage.tsx +++ b/src/view/com/posts/FeedErrorMessage.tsx @@ -5,12 +5,12 @@ import {msg as msgLingui, Trans} from '@lingui/macro' import {useLingui} from '@lingui/react' import {useNavigation} from '@react-navigation/native' +import {usePalette} from '#/lib/hooks/usePalette' +import {NavigationProp} from '#/lib/routes/types' import {cleanError} from '#/lib/strings/errors' import {logger} from '#/logger' import {FeedDescriptor} from '#/state/queries/post-feed' import {useRemoveFeedMutation} from '#/state/queries/preferences' -import {usePalette} from 'lib/hooks/usePalette' -import {NavigationProp} from 'lib/routes/types' import * as Prompt from '#/components/Prompt' import {EmptyState} from '../util/EmptyState' import {ErrorMessage} from '../util/error/ErrorMessage' diff --git a/src/view/com/posts/FollowingEmptyState.tsx b/src/view/com/posts/FollowingEmptyState.tsx index dd4915e18..3f330b327 100644 --- a/src/view/com/posts/FollowingEmptyState.tsx +++ b/src/view/com/posts/FollowingEmptyState.tsx @@ -7,11 +7,11 @@ import { import {Trans} from '@lingui/macro' import {useNavigation} from '@react-navigation/native' -import {usePalette} from 'lib/hooks/usePalette' -import {MagnifyingGlassIcon} from 'lib/icons' -import {NavigationProp} from 'lib/routes/types' -import {s} from 'lib/styles' -import {isWeb} from 'platform/detection' +import {usePalette} from '#/lib/hooks/usePalette' +import {MagnifyingGlassIcon} from '#/lib/icons' +import {NavigationProp} from '#/lib/routes/types' +import {s} from '#/lib/styles' +import {isWeb} from '#/platform/detection' import {Button} from '../util/forms/Button' import {Text} from '../util/text/Text' diff --git a/src/view/com/posts/FollowingEndOfFeed.tsx b/src/view/com/posts/FollowingEndOfFeed.tsx index d3c616a20..4abb3c1f5 100644 --- a/src/view/com/posts/FollowingEndOfFeed.tsx +++ b/src/view/com/posts/FollowingEndOfFeed.tsx @@ -7,10 +7,10 @@ import { import {Trans} from '@lingui/macro' import {useNavigation} from '@react-navigation/native' -import {usePalette} from 'lib/hooks/usePalette' -import {NavigationProp} from 'lib/routes/types' -import {s} from 'lib/styles' -import {isWeb} from 'platform/detection' +import {usePalette} from '#/lib/hooks/usePalette' +import {NavigationProp} from '#/lib/routes/types' +import {s} from '#/lib/styles' +import {isWeb} from '#/platform/detection' import {Button} from '../util/forms/Button' import {Text} from '../util/text/Text' diff --git a/src/view/com/profile/ProfileFollowers.tsx b/src/view/com/profile/ProfileFollowers.tsx index 8318f13de..60a7a5e31 100644 --- a/src/view/com/profile/ProfileFollowers.tsx +++ b/src/view/com/profile/ProfileFollowers.tsx @@ -3,13 +3,13 @@ import {AppBskyActorDefs as ActorDefs} from '@atproto/api' import {msg} from '@lingui/macro' import {useLingui} from '@lingui/react' +import {useInitialNumToRender} from '#/lib/hooks/useInitialNumToRender' import {cleanError} from '#/lib/strings/errors' import {logger} from '#/logger' +import {isWeb} from '#/platform/detection' import {useProfileFollowersQuery} from '#/state/queries/profile-followers' import {useResolveDidQuery} from '#/state/queries/resolve-uri' -import {useInitialNumToRender} from 'lib/hooks/useInitialNumToRender' -import {isWeb} from 'platform/detection' -import {useSession} from 'state/session' +import {useSession} from '#/state/session' import {ListFooter, ListMaybePlaceholder} from '#/components/Lists' import {List} from '../util/List' import {ProfileCardWithFollowBtn} from './ProfileCard' diff --git a/src/view/com/profile/ProfileFollows.tsx b/src/view/com/profile/ProfileFollows.tsx index de4346afb..572b0b9f4 100644 --- a/src/view/com/profile/ProfileFollows.tsx +++ b/src/view/com/profile/ProfileFollows.tsx @@ -3,13 +3,13 @@ import {AppBskyActorDefs as ActorDefs} from '@atproto/api' import {msg} from '@lingui/macro' import {useLingui} from '@lingui/react' +import {useInitialNumToRender} from '#/lib/hooks/useInitialNumToRender' import {cleanError} from '#/lib/strings/errors' import {logger} from '#/logger' +import {isWeb} from '#/platform/detection' import {useProfileFollowsQuery} from '#/state/queries/profile-follows' import {useResolveDidQuery} from '#/state/queries/resolve-uri' -import {useInitialNumToRender} from 'lib/hooks/useInitialNumToRender' -import {isWeb} from 'platform/detection' -import {useSession} from 'state/session' +import {useSession} from '#/state/session' import {ListFooter, ListMaybePlaceholder} from '#/components/Lists' import {List} from '../util/List' import {ProfileCardWithFollowBtn} from './ProfileCard' diff --git a/src/view/com/util/AccountDropdownBtn.tsx b/src/view/com/util/AccountDropdownBtn.tsx index fa2553d38..e7985bccf 100644 --- a/src/view/com/util/AccountDropdownBtn.tsx +++ b/src/view/com/util/AccountDropdownBtn.tsx @@ -7,9 +7,9 @@ import { import {msg} from '@lingui/macro' import {useLingui} from '@lingui/react' +import {usePalette} from '#/lib/hooks/usePalette' +import {s} from '#/lib/styles' import {SessionAccount, useSessionApi} from '#/state/session' -import {usePalette} from 'lib/hooks/usePalette' -import {s} from 'lib/styles' import {useDialogControl} from '#/components/Dialog' import * as Prompt from '#/components/Prompt' import * as Toast from '../../com/util/Toast' diff --git a/src/view/com/util/EmptyState.tsx b/src/view/com/util/EmptyState.tsx index 42f0ab6d0..587d84462 100644 --- a/src/view/com/util/EmptyState.tsx +++ b/src/view/com/util/EmptyState.tsx @@ -6,10 +6,10 @@ import { FontAwesomeIconStyle, } from '@fortawesome/react-native-fontawesome' +import {usePalette} from '#/lib/hooks/usePalette' import {useWebMediaQueries} from '#/lib/hooks/useWebMediaQueries' -import {usePalette} from 'lib/hooks/usePalette' -import {UserGroupIcon} from 'lib/icons' -import {isWeb} from 'platform/detection' +import {UserGroupIcon} from '#/lib/icons' +import {isWeb} from '#/platform/detection' import {Growth_Stroke2_Corner0_Rounded as Growth} from '#/components/icons/Growth' import {Text} from './text/Text' diff --git a/src/view/com/util/EmptyStateWithButton.tsx b/src/view/com/util/EmptyStateWithButton.tsx index 008ca2bdb..7b7aa129e 100644 --- a/src/view/com/util/EmptyStateWithButton.tsx +++ b/src/view/com/util/EmptyStateWithButton.tsx @@ -1,14 +1,15 @@ import React from 'react' import {StyleSheet, View} from 'react-native' +import {IconProp} from '@fortawesome/fontawesome-svg-core' import { FontAwesomeIcon, FontAwesomeIconStyle, } from '@fortawesome/react-native-fontawesome' -import {IconProp} from '@fortawesome/fontawesome-svg-core' -import {Text} from './text/Text' + +import {usePalette} from '#/lib/hooks/usePalette' +import {s} from '#/lib/styles' import {Button} from './forms/Button' -import {usePalette} from 'lib/hooks/usePalette' -import {s} from 'lib/styles' +import {Text} from './text/Text' interface Props { testID?: string diff --git a/src/view/com/util/FeedInfoText.tsx b/src/view/com/util/FeedInfoText.tsx index 54124c739..da5c48af7 100644 --- a/src/view/com/util/FeedInfoText.tsx +++ b/src/view/com/util/FeedInfoText.tsx @@ -1,10 +1,11 @@ import React from 'react' import {StyleProp, StyleSheet, TextStyle} from 'react-native' + +import {sanitizeDisplayName} from '#/lib/strings/display-names' +import {TypographyVariant} from '#/lib/ThemeContext' +import {useFeedSourceInfoQuery} from '#/state/queries/feed' import {TextLinkOnWebOnly} from './Link' import {LoadingPlaceholder} from './LoadingPlaceholder' -import {TypographyVariant} from 'lib/ThemeContext' -import {sanitizeDisplayName} from 'lib/strings/display-names' -import {useFeedSourceInfoQuery} from '#/state/queries/feed' export function FeedNameText({ type = 'md', diff --git a/src/view/com/util/LoadMoreRetryBtn.tsx b/src/view/com/util/LoadMoreRetryBtn.tsx index a2e9838b3..863e8e2f5 100644 --- a/src/view/com/util/LoadMoreRetryBtn.tsx +++ b/src/view/com/util/LoadMoreRetryBtn.tsx @@ -4,9 +4,10 @@ import { FontAwesomeIcon, FontAwesomeIconStyle, } from '@fortawesome/react-native-fontawesome' + +import {usePalette} from '#/lib/hooks/usePalette' import {Button} from './forms/Button' import {Text} from './text/Text' -import {usePalette} from 'lib/hooks/usePalette' export function LoadMoreRetryBtn({ label, diff --git a/src/view/com/util/LoadingScreen.tsx b/src/view/com/util/LoadingScreen.tsx index 93c3bee42..15066d625 100644 --- a/src/view/com/util/LoadingScreen.tsx +++ b/src/view/com/util/LoadingScreen.tsx @@ -1,6 +1,7 @@ import React from 'react' import {ActivityIndicator, View} from 'react-native' -import {s} from 'lib/styles' + +import {s} from '#/lib/styles' import {CenteredView} from './Views' export function LoadingScreen() { diff --git a/src/view/com/util/MainScrollProvider.tsx b/src/view/com/util/MainScrollProvider.tsx index c87ee209e..23dffc561 100644 --- a/src/view/com/util/MainScrollProvider.tsx +++ b/src/view/com/util/MainScrollProvider.tsx @@ -9,9 +9,9 @@ import { import EventEmitter from 'eventemitter3' import {ScrollProvider} from '#/lib/ScrollContext' +import {isNative, isWeb} from '#/platform/detection' import {useMinimalShellMode} from '#/state/shell' import {useShellLayout} from '#/state/shell/shell-layout' -import {isNative, isWeb} from 'platform/detection' const WEB_HIDE_SHELL_THRESHOLD = 200 diff --git a/src/view/com/util/Selector.tsx b/src/view/com/util/Selector.tsx index 66e363cd4..cf9d347af 100644 --- a/src/view/com/util/Selector.tsx +++ b/src/view/com/util/Selector.tsx @@ -1,9 +1,10 @@ -import React, {createRef, useState, useMemo, useRef} from 'react' +import React, {createRef, useMemo, useRef, useState} from 'react' import {Animated, Pressable, StyleSheet, View} from 'react-native' -import {Text} from './text/Text' -import {usePalette} from 'lib/hooks/usePalette' -import {useLingui} from '@lingui/react' import {msg} from '@lingui/macro' +import {useLingui} from '@lingui/react' + +import {usePalette} from '#/lib/hooks/usePalette' +import {Text} from './text/Text' interface Layout { x: number diff --git a/src/view/com/util/ViewSelector.tsx b/src/view/com/util/ViewSelector.tsx index ee993c564..f8ba8f561 100644 --- a/src/view/com/util/ViewSelector.tsx +++ b/src/view/com/util/ViewSelector.tsx @@ -1,20 +1,21 @@ import React, {useEffect, useState} from 'react' import { - NativeSyntheticEvent, NativeScrollEvent, + NativeSyntheticEvent, Pressable, RefreshControl, + ScrollView, StyleSheet, View, - ScrollView, } from 'react-native' -import {FlatList_INTERNAL} from './Views' -import {useColorSchemeStyle} from 'lib/hooks/useColorSchemeStyle' + +import {useColorSchemeStyle} from '#/lib/hooks/useColorSchemeStyle' +import {usePalette} from '#/lib/hooks/usePalette' +import {clamp} from '#/lib/numbers' +import {colors, s} from '#/lib/styles' +import {isAndroid} from '#/platform/detection' import {Text} from './text/Text' -import {usePalette} from 'lib/hooks/usePalette' -import {clamp} from 'lib/numbers' -import {s, colors} from 'lib/styles' -import {isAndroid} from 'platform/detection' +import {FlatList_INTERNAL} from './Views' const HEADER_ITEM = {_reactKey: '__header__'} const SELECTOR_ITEM = {_reactKey: '__selector__'} diff --git a/src/view/com/util/Views.web.tsx b/src/view/com/util/Views.web.tsx index c4549dbc7..272cc9dd5 100644 --- a/src/view/com/util/Views.web.tsx +++ b/src/view/com/util/Views.web.tsx @@ -23,9 +23,9 @@ import { } from 'react-native' import Animated from 'react-native-reanimated' -import {usePalette} from 'lib/hooks/usePalette' -import {useWebMediaQueries} from 'lib/hooks/useWebMediaQueries' -import {addStyle} from 'lib/styles' +import {usePalette} from '#/lib/hooks/usePalette' +import {useWebMediaQueries} from '#/lib/hooks/useWebMediaQueries' +import {addStyle} from '#/lib/styles' interface AddedProps { desktopFixedHeight?: boolean | number diff --git a/src/view/com/util/anim/TriggerableAnimated.tsx b/src/view/com/util/anim/TriggerableAnimated.tsx index eedeeda03..97605fb46 100644 --- a/src/view/com/util/anim/TriggerableAnimated.tsx +++ b/src/view/com/util/anim/TriggerableAnimated.tsx @@ -1,6 +1,7 @@ import React from 'react' import {Animated, StyleProp, View, ViewStyle} from 'react-native' -import {useAnimatedValue} from 'lib/hooks/useAnimatedValue' + +import {useAnimatedValue} from '#/lib/hooks/useAnimatedValue' type CreateAnimFn = (interp: Animated.Value) => Animated.CompositeAnimation type FinishCb = () => void diff --git a/src/view/com/util/error/ErrorMessage.tsx b/src/view/com/util/error/ErrorMessage.tsx index a4238b8a4..f0ef3a40f 100644 --- a/src/view/com/util/error/ErrorMessage.tsx +++ b/src/view/com/util/error/ErrorMessage.tsx @@ -1,8 +1,8 @@ import React from 'react' import { + StyleProp, StyleSheet, TouchableOpacity, - StyleProp, View, ViewStyle, } from 'react-native' @@ -10,11 +10,12 @@ import { FontAwesomeIcon, FontAwesomeIconStyle, } from '@fortawesome/react-native-fontawesome' -import {Text} from '../text/Text' -import {useTheme} from 'lib/ThemeContext' -import {usePalette} from 'lib/hooks/usePalette' -import {useLingui} from '@lingui/react' import {msg} from '@lingui/macro' +import {useLingui} from '@lingui/react' + +import {usePalette} from '#/lib/hooks/usePalette' +import {useTheme} from '#/lib/ThemeContext' +import {Text} from '../text/Text' export function ErrorMessage({ message, diff --git a/src/view/com/util/error/ErrorScreen.tsx b/src/view/com/util/error/ErrorScreen.tsx index 98fe6437b..1b23141f3 100644 --- a/src/view/com/util/error/ErrorScreen.tsx +++ b/src/view/com/util/error/ErrorScreen.tsx @@ -4,15 +4,16 @@ import { FontAwesomeIcon, FontAwesomeIconStyle, } from '@fortawesome/react-native-fontawesome' -import {Text} from '../text/Text' -import {useTheme} from 'lib/ThemeContext' -import {usePalette} from 'lib/hooks/usePalette' +import {msg, Trans} from '@lingui/macro' +import {useLingui} from '@lingui/react' + +import {usePalette} from '#/lib/hooks/usePalette' +import {useWebMediaQueries} from '#/lib/hooks/useWebMediaQueries' +import {useTheme} from '#/lib/ThemeContext' +import {ViewHeader} from '#/view/com/util/ViewHeader' import {Button} from '../forms/Button' +import {Text} from '../text/Text' import {CenteredView} from '../Views' -import {Trans, msg} from '@lingui/macro' -import {useLingui} from '@lingui/react' -import {ViewHeader} from 'view/com/util/ViewHeader' -import {useWebMediaQueries} from 'lib/hooks/useWebMediaQueries' export function ErrorScreen({ title, diff --git a/src/view/com/util/forms/DateInput.tsx b/src/view/com/util/forms/DateInput.tsx index bfbb2ff55..9df53f116 100644 --- a/src/view/com/util/forms/DateInput.tsx +++ b/src/view/com/util/forms/DateInput.tsx @@ -7,10 +7,10 @@ import { } from '@fortawesome/react-native-fontawesome' import {useLingui} from '@lingui/react' -import {usePalette} from 'lib/hooks/usePalette' -import {TypographyVariant} from 'lib/ThemeContext' -import {useTheme} from 'lib/ThemeContext' -import {isAndroid, isIOS} from 'platform/detection' +import {usePalette} from '#/lib/hooks/usePalette' +import {TypographyVariant} from '#/lib/ThemeContext' +import {useTheme} from '#/lib/ThemeContext' +import {isAndroid, isIOS} from '#/platform/detection' import {Text} from '../text/Text' import {Button, ButtonType} from './Button' diff --git a/src/view/com/util/forms/DateInput.web.tsx b/src/view/com/util/forms/DateInput.web.tsx index 8d74f6dae..ea6102356 100644 --- a/src/view/com/util/forms/DateInput.web.tsx +++ b/src/view/com/util/forms/DateInput.web.tsx @@ -1,8 +1,9 @@ -import React, {useState, useCallback} from 'react' +import React, {useCallback, useState} from 'react' import {StyleProp, StyleSheet, TextStyle, View, ViewStyle} from 'react-native' // @ts-ignore types not available -prf import {unstable_createElement} from 'react-native-web' -import {usePalette} from 'lib/hooks/usePalette' + +import {usePalette} from '#/lib/hooks/usePalette' interface Props { testID?: string diff --git a/src/view/com/util/forms/RadioGroup.tsx b/src/view/com/util/forms/RadioGroup.tsx index 493c36a9d..c6cf63930 100644 --- a/src/view/com/util/forms/RadioGroup.tsx +++ b/src/view/com/util/forms/RadioGroup.tsx @@ -1,7 +1,7 @@ import React, {useState} from 'react' import {View} from 'react-native' -import {s} from 'lib/styles' +import {s} from '#/lib/styles' import {ButtonType} from './Button' import {RadioButton} from './RadioButton' diff --git a/src/view/com/util/forms/SelectableBtn.tsx b/src/view/com/util/forms/SelectableBtn.tsx index e577e155d..1d74b935a 100644 --- a/src/view/com/util/forms/SelectableBtn.tsx +++ b/src/view/com/util/forms/SelectableBtn.tsx @@ -1,8 +1,9 @@ import React from 'react' -import {Pressable, ViewStyle, StyleProp, StyleSheet} from 'react-native' +import {Pressable, StyleProp, StyleSheet, ViewStyle} from 'react-native' + +import {usePalette} from '#/lib/hooks/usePalette' +import {useWebMediaQueries} from '#/lib/hooks/useWebMediaQueries' import {Text} from '../text/Text' -import {usePalette} from 'lib/hooks/usePalette' -import {useWebMediaQueries} from 'lib/hooks/useWebMediaQueries' interface SelectableBtnProps { testID?: string diff --git a/src/view/com/util/layouts/withBreakpoints.tsx b/src/view/com/util/layouts/withBreakpoints.tsx index 5746aa660..71971c604 100644 --- a/src/view/com/util/layouts/withBreakpoints.tsx +++ b/src/view/com/util/layouts/withBreakpoints.tsx @@ -1,6 +1,7 @@ import React from 'react' -import {isNative} from 'platform/detection' -import {useWebMediaQueries} from 'lib/hooks/useWebMediaQueries' + +import {useWebMediaQueries} from '#/lib/hooks/useWebMediaQueries' +import {isNative} from '#/platform/detection' export const withBreakpoints = <P extends object>( Mobile: React.ComponentType<P>, diff --git a/src/view/com/util/text/RichText.tsx b/src/view/com/util/text/RichText.tsx index f4ade30e5..a4cf517a4 100644 --- a/src/view/com/util/text/RichText.tsx +++ b/src/view/com/util/text/RichText.tsx @@ -1,15 +1,16 @@ import React from 'react' -import {TextStyle, StyleProp} from 'react-native' -import {RichText as RichTextObj, AppBskyRichtextFacet} from '@atproto/api' +import {StyleProp, TextStyle} from 'react-native' +import {AppBskyRichtextFacet, RichText as RichTextObj} from '@atproto/api' + +import {usePalette} from '#/lib/hooks/usePalette' +import {makeTagLink} from '#/lib/routes/links' +import {toShortUrl} from '#/lib/strings/url-helpers' +import {lh} from '#/lib/styles' +import {TypographyVariant, useTheme} from '#/lib/ThemeContext' +import {isNative} from '#/platform/detection' +import {TagMenu, useTagMenuControl} from '#/components/TagMenu' import {TextLink} from '../Link' import {Text} from './Text' -import {lh} from 'lib/styles' -import {toShortUrl} from 'lib/strings/url-helpers' -import {useTheme, TypographyVariant} from 'lib/ThemeContext' -import {usePalette} from 'lib/hooks/usePalette' -import {makeTagLink} from 'lib/routes/links' -import {TagMenu, useTagMenuControl} from '#/components/TagMenu' -import {isNative} from '#/platform/detection' const WORD_WRAP = {wordWrap: 1} diff --git a/src/view/icons/Logotype.tsx b/src/view/icons/Logotype.tsx index 080c402fb..d6c35f6d9 100644 --- a/src/view/icons/Logotype.tsx +++ b/src/view/icons/Logotype.tsx @@ -1,5 +1,5 @@ import React from 'react' -import Svg, {Path, SvgProps, PathProps} from 'react-native-svg' +import Svg, {Path, PathProps, SvgProps} from 'react-native-svg' import {usePalette} from '#/lib/hooks/usePalette' diff --git a/src/view/screens/Settings/Email2FAToggle.tsx b/src/view/screens/Settings/Email2FAToggle.tsx index b5e7adddb..f6ed19a21 100644 --- a/src/view/screens/Settings/Email2FAToggle.tsx +++ b/src/view/screens/Settings/Email2FAToggle.tsx @@ -4,7 +4,7 @@ import {useLingui} from '@lingui/react' import {useModalControls} from '#/state/modals' import {useAgent, useSession} from '#/state/session' -import {ToggleButton} from 'view/com/util/forms/ToggleButton' +import {ToggleButton} from '#/view/com/util/forms/ToggleButton' import {useDialogControl} from '#/components/Dialog' import {DisableEmail2FADialog} from './DisableEmail2FADialog' diff --git a/src/view/screens/Storybook/Breakpoints.tsx b/src/view/screens/Storybook/Breakpoints.tsx index 1b846d517..5dd8a89fc 100644 --- a/src/view/screens/Storybook/Breakpoints.tsx +++ b/src/view/screens/Storybook/Breakpoints.tsx @@ -1,8 +1,8 @@ import React from 'react' import {View} from 'react-native' -import {atoms as a, useTheme, useBreakpoints} from '#/alf' -import {Text, H3} from '#/components/Typography' +import {atoms as a, useBreakpoints, useTheme} from '#/alf' +import {H3, Text} from '#/components/Typography' export function Breakpoints() { const t = useTheme() diff --git a/src/view/screens/Storybook/ListContained.tsx b/src/view/screens/Storybook/ListContained.tsx index 20ec68657..833320148 100644 --- a/src/view/screens/Storybook/ListContained.tsx +++ b/src/view/screens/Storybook/ListContained.tsx @@ -1,8 +1,8 @@ import React from 'react' import {FlatList, View} from 'react-native' -import {ScrollProvider} from 'lib/ScrollContext' -import {List} from 'view/com/util/List' +import {ScrollProvider} from '#/lib/ScrollContext' +import {List} from '#/view/com/util/List' import {Button, ButtonText} from '#/components/Button' import * as Toggle from '#/components/forms/Toggle' import {Text} from '#/components/Typography' diff --git a/src/view/screens/Storybook/Spacing.tsx b/src/view/screens/Storybook/Spacing.tsx index d7faf93a8..9b97e92ad 100644 --- a/src/view/screens/Storybook/Spacing.tsx +++ b/src/view/screens/Storybook/Spacing.tsx @@ -2,7 +2,7 @@ import React from 'react' import {View} from 'react-native' import {atoms as a, useTheme} from '#/alf' -import {Text, H1} from '#/components/Typography' +import {H1, Text} from '#/components/Typography' export function Spacing() { const t = useTheme() diff --git a/src/view/screens/Storybook/Typography.tsx b/src/view/screens/Storybook/Typography.tsx index f0d67c528..03f86fd46 100644 --- a/src/view/screens/Storybook/Typography.tsx +++ b/src/view/screens/Storybook/Typography.tsx @@ -2,8 +2,8 @@ import React from 'react' import {View} from 'react-native' import {atoms as a} from '#/alf' -import {Text} from '#/components/Typography' import {RichText} from '#/components/RichText' +import {Text} from '#/components/Typography' export function Typography() { return ( diff --git a/src/view/shell/bottom-bar/BottomBarWeb.tsx b/src/view/shell/bottom-bar/BottomBarWeb.tsx index 21c253ee0..35d385593 100644 --- a/src/view/shell/bottom-bar/BottomBarWeb.tsx +++ b/src/view/shell/bottom-bar/BottomBarWeb.tsx @@ -13,16 +13,16 @@ import {getCurrentRoute, isTab} from '#/lib/routes/helpers' import {makeProfileLink} from '#/lib/routes/links' import {CommonNavigatorParams} from '#/lib/routes/types' import {s} from '#/lib/styles' +import {useUnreadMessageCount} from '#/state/queries/messages/list-converations' +import {useUnreadNotifications} from '#/state/queries/notifications/unread' import {useSession} from '#/state/session' import {useLoggedOutViewControls} from '#/state/shell/logged-out' import {useCloseAllActiveElements} from '#/state/util' -import {useUnreadMessageCount} from 'state/queries/messages/list-converations' -import {useUnreadNotifications} from 'state/queries/notifications/unread' import {Button} from '#/view/com/util/forms/Button' +import {Link} from '#/view/com/util/Link' import {Text} from '#/view/com/util/text/Text' import {Logo} from '#/view/icons/Logo' import {Logotype} from '#/view/icons/Logotype' -import {Link} from 'view/com/util/Link' import { Bell_Filled_Corner0_Rounded as BellFilled, Bell_Stroke2_Corner0_Rounded as Bell, |