about summary refs log tree commit diff
path: root/src/view/com/post-thread
diff options
context:
space:
mode:
Diffstat (limited to 'src/view/com/post-thread')
-rw-r--r--src/view/com/post-thread/PostLikedBy.tsx18
-rw-r--r--src/view/com/post-thread/PostRepostedBy.tsx18
-rw-r--r--src/view/com/post-thread/PostThread.tsx60
-rw-r--r--src/view/com/post-thread/PostThreadFollowBtn.tsx20
-rw-r--r--src/view/com/post-thread/PostThreadItem.tsx68
5 files changed, 88 insertions, 96 deletions
diff --git a/src/view/com/post-thread/PostLikedBy.tsx b/src/view/com/post-thread/PostLikedBy.tsx
index 67ed3b3f5..55463dc13 100644
--- a/src/view/com/post-thread/PostLikedBy.tsx
+++ b/src/view/com/post-thread/PostLikedBy.tsx
@@ -1,17 +1,15 @@
-import {AppBskyFeedGetLikes as GetLikes} from '@atproto/api'
 import React, {useCallback, useMemo, useState} from 'react'
 import {ActivityIndicator, StyleSheet, View} from 'react-native'
-
-import {cleanError} from '#/lib/strings/errors'
-import {logger} from '#/logger'
-import {usePostLikedByQuery} from '#/state/queries/post-liked-by'
-import {useResolveUriQuery} from '#/state/queries/resolve-uri'
-
-import {ProfileCardWithFollowBtn} from '../profile/ProfileCard'
-import {ErrorMessage} from '../util/error/ErrorMessage'
+import {AppBskyFeedGetLikes as GetLikes} from '@atproto/api'
+import {CenteredView} from '../util/Views'
 import {List} from '../util/List'
+import {ErrorMessage} from '../util/error/ErrorMessage'
+import {ProfileCardWithFollowBtn} from '../profile/ProfileCard'
+import {logger} from '#/logger'
 import {LoadingScreen} from '../util/LoadingScreen'
-import {CenteredView} from '../util/Views'
+import {useResolveUriQuery} from '#/state/queries/resolve-uri'
+import {usePostLikedByQuery} from '#/state/queries/post-liked-by'
+import {cleanError} from '#/lib/strings/errors'
 
 export function PostLikedBy({uri}: {uri: string}) {
   const [isPTRing, setIsPTRing] = useState(false)
diff --git a/src/view/com/post-thread/PostRepostedBy.tsx b/src/view/com/post-thread/PostRepostedBy.tsx
index 82c969235..31a0be832 100644
--- a/src/view/com/post-thread/PostRepostedBy.tsx
+++ b/src/view/com/post-thread/PostRepostedBy.tsx
@@ -1,17 +1,15 @@
-import {AppBskyActorDefs as ActorDefs} from '@atproto/api'
-import React, {useCallback, useMemo, useState} from 'react'
+import React, {useMemo, useCallback, useState} from 'react'
 import {ActivityIndicator, StyleSheet, View} from 'react-native'
-
-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 {AppBskyActorDefs as ActorDefs} from '@atproto/api'
+import {CenteredView} from '../util/Views'
+import {List} from '../util/List'
 import {ProfileCardWithFollowBtn} from '../profile/ProfileCard'
 import {ErrorMessage} from '../util/error/ErrorMessage'
-import {List} from '../util/List'
+import {logger} from '#/logger'
 import {LoadingScreen} from '../util/LoadingScreen'
-import {CenteredView} from '../util/Views'
+import {useResolveUriQuery} from '#/state/queries/resolve-uri'
+import {usePostRepostedByQuery} from '#/state/queries/post-reposted-by'
+import {cleanError} from '#/lib/strings/errors'
 
 export function PostRepostedBy({uri}: {uri: string}) {
   const [isPTRing, setIsPTRing] = useState(false)
diff --git a/src/view/com/post-thread/PostThread.tsx b/src/view/com/post-thread/PostThread.tsx
index f022bdeac..a7ee42a94 100644
--- a/src/view/com/post-thread/PostThread.tsx
+++ b/src/view/com/post-thread/PostThread.tsx
@@ -1,17 +1,3 @@
-import {AppBskyFeedDefs} from '@atproto/api'
-import {
-  FontAwesomeIcon,
-  FontAwesomeIconStyle,
-} from '@fortawesome/react-native-fontawesome'
-import {msg, Trans} from '@lingui/macro'
-import {useLingui} from '@lingui/react'
-import {useNavigation} from '@react-navigation/native'
-import {usePalette} from 'lib/hooks/usePalette'
-import {useSetTitle} from 'lib/hooks/useSetTitle'
-import {useWebMediaQueries} from 'lib/hooks/useWebMediaQueries'
-import {NavigationProp} from 'lib/routes/types'
-import {sanitizeDisplayName} from 'lib/strings/display-names'
-import {s} from 'lib/styles'
 import React, {useEffect, useRef} from 'react'
 import {
   ActivityIndicator,
@@ -20,33 +6,45 @@ import {
   TouchableOpacity,
   View,
 } from 'react-native'
-
-import {moderatePost_wrapped as moderatePost} from '#/lib/moderatePost_wrapped'
-import {cleanError} from '#/lib/strings/errors'
-import {isAndroid, isNative, isWeb} from '#/platform/detection'
+import {AppBskyFeedDefs} from '@atproto/api'
+import {CenteredView} from '../util/Views'
+import {LoadingScreen} from '../util/LoadingScreen'
+import {List, ListMethods} from '../util/List'
+import {
+  FontAwesomeIcon,
+  FontAwesomeIconStyle,
+} from '@fortawesome/react-native-fontawesome'
+import {PostThreadItem} from './PostThreadItem'
+import {ComposePrompt} from '../composer/Prompt'
+import {ViewHeader} from '../util/ViewHeader'
+import {ErrorMessage} from '../util/error/ErrorMessage'
+import {Text} from '../util/text/Text'
+import {s} from 'lib/styles'
+import {usePalette} from 'lib/hooks/usePalette'
+import {useSetTitle} from 'lib/hooks/useSetTitle'
 import {
-  sortThread,
-  ThreadBlocked,
   ThreadNode,
-  ThreadNotFound,
   ThreadPost,
+  ThreadNotFound,
+  ThreadBlocked,
   usePostThreadQuery,
+  sortThread,
 } from '#/state/queries/post-thread'
+import {useNavigation} from '@react-navigation/native'
+import {useWebMediaQueries} from 'lib/hooks/useWebMediaQueries'
+import {NavigationProp} from 'lib/routes/types'
+import {sanitizeDisplayName} from 'lib/strings/display-names'
+import {cleanError} from '#/lib/strings/errors'
+import {Trans, msg} from '@lingui/macro'
+import {useLingui} from '@lingui/react'
 import {
+  UsePreferencesQueryResponse,
   useModerationOpts,
   usePreferencesQuery,
-  UsePreferencesQueryResponse,
 } from '#/state/queries/preferences'
 import {useSession} from '#/state/session'
-
-import {ComposePrompt} from '../composer/Prompt'
-import {ErrorMessage} from '../util/error/ErrorMessage'
-import {List, ListMethods} from '../util/List'
-import {LoadingScreen} from '../util/LoadingScreen'
-import {Text} from '../util/text/Text'
-import {ViewHeader} from '../util/ViewHeader'
-import {CenteredView} from '../util/Views'
-import {PostThreadItem} from './PostThreadItem'
+import {isAndroid, isNative, isWeb} from '#/platform/detection'
+import {moderatePost_wrapped as moderatePost} from '#/lib/moderatePost_wrapped'
 
 // FlatList maintainVisibleContentPosition breaks if too many items
 // are prepended. This seems to be an optimal number based on *shrug*.
diff --git a/src/view/com/post-thread/PostThreadFollowBtn.tsx b/src/view/com/post-thread/PostThreadFollowBtn.tsx
index 63e2888fd..e5b747cc9 100644
--- a/src/view/com/post-thread/PostThreadFollowBtn.tsx
+++ b/src/view/com/post-thread/PostThreadFollowBtn.tsx
@@ -1,24 +1,24 @@
+import React from 'react'
+import {StyleSheet, TouchableOpacity, View} from 'react-native'
+import {useNavigation} from '@react-navigation/native'
 import {AppBskyActorDefs} from '@atproto/api'
-import {FontAwesomeIcon} from '@fortawesome/react-native-fontawesome'
 import {msg, Trans} from '@lingui/macro'
 import {useLingui} from '@lingui/react'
-import {useNavigation} from '@react-navigation/native'
-import {track} from 'lib/analytics/analytics'
+import {FontAwesomeIcon} from '@fortawesome/react-native-fontawesome'
+
+import {logger} from '#/logger'
+import {Text} from 'view/com/util/text/Text'
+import * as Toast from 'view/com/util/Toast'
+import {s} from 'lib/styles'
 import {usePalette} from 'lib/hooks/usePalette'
 import {useWebMediaQueries} from 'lib/hooks/useWebMediaQueries'
-import {s} from 'lib/styles'
-import React from 'react'
-import {StyleSheet, TouchableOpacity, View} from 'react-native'
 import {Shadow, useProfileShadow} from 'state/cache/profile-shadow'
+import {track} from 'lib/analytics/analytics'
 import {
   useProfileFollowMutationQueue,
   useProfileQuery,
 } from 'state/queries/profile'
 import {useRequireAuth} from 'state/session'
-import {Text} from 'view/com/util/text/Text'
-import * as Toast from 'view/com/util/Toast'
-
-import {logger} from '#/logger'
 
 export function PostThreadFollowBtn({did}: {did: string}) {
   const {data: profile, isLoading} = useProfileQuery({did})
diff --git a/src/view/com/post-thread/PostThreadItem.tsx b/src/view/com/post-thread/PostThreadItem.tsx
index 54c47adae..9522ea6a0 100644
--- a/src/view/com/post-thread/PostThreadItem.tsx
+++ b/src/view/com/post-thread/PostThreadItem.tsx
@@ -1,52 +1,50 @@
+import React, {memo, useMemo} from 'react'
+import {StyleSheet, View} from 'react-native'
 import {
+  AtUri,
   AppBskyFeedDefs,
   AppBskyFeedPost,
-  AtUri,
-  PostModeration,
   RichText as RichTextAPI,
+  PostModeration,
 } from '@atproto/api'
+import {moderatePost_wrapped as moderatePost} from '#/lib/moderatePost_wrapped'
 import {FontAwesomeIcon} from '@fortawesome/react-native-fontawesome'
-import {msg, Trans} from '@lingui/macro'
-import {useLingui} from '@lingui/react'
-import {MAX_POST_LINES} from 'lib/constants'
-import {isEmbedByEmbedder} from 'lib/embeds'
-import {usePalette} from 'lib/hooks/usePalette'
-import {useWebMediaQueries} from 'lib/hooks/useWebMediaQueries'
-import {makeProfileLink} from 'lib/routes/links'
+import {PostThreadFollowBtn} from 'view/com/post-thread/PostThreadFollowBtn'
+import {Link, TextLink} from '../util/Link'
+import {RichText} from '#/components/RichText'
+import {Text} from '../util/text/Text'
+import {PreviewableUserAvatar} from '../util/UserAvatar'
+import {s} from 'lib/styles'
+import {niceDate} from 'lib/strings/time'
 import {sanitizeDisplayName} from 'lib/strings/display-names'
 import {sanitizeHandle} from 'lib/strings/handles'
 import {countLines, pluralize} from 'lib/strings/helpers'
-import {niceDate} from 'lib/strings/time'
-import {s} from 'lib/styles'
-import React, {memo, useMemo} from 'react'
-import {StyleSheet, View} from 'react-native'
-import {useSession} from 'state/session'
-import {PostThreadFollowBtn} from 'view/com/post-thread/PostThreadFollowBtn'
-
-import {atoms as a} from '#/alf'
-import {RichText} from '#/components/RichText'
-import {moderatePost_wrapped as moderatePost} from '#/lib/moderatePost_wrapped'
-import {POST_TOMBSTONE, Shadow, usePostShadow} from '#/state/cache/post-shadow'
+import {isEmbedByEmbedder} from 'lib/embeds'
+import {getTranslatorLink, isPostInLanguage} from '../../../locale/helpers'
+import {PostMeta} from '../util/PostMeta'
+import {PostEmbeds} from '../util/post-embeds'
+import {PostCtrls} from '../util/post-ctrls/PostCtrls'
+import {PostHider} from '../util/moderation/PostHider'
+import {ContentHider} from '../util/moderation/ContentHider'
+import {PostAlerts} from '../util/moderation/PostAlerts'
+import {ErrorMessage} from '../util/error/ErrorMessage'
+import {usePalette} from 'lib/hooks/usePalette'
+import {formatCount} from '../util/numeric/format'
+import {makeProfileLink} from 'lib/routes/links'
+import {useWebMediaQueries} from 'lib/hooks/useWebMediaQueries'
+import {MAX_POST_LINES} from 'lib/constants'
+import {Trans, msg} from '@lingui/macro'
+import {useLingui} from '@lingui/react'
 import {useLanguagePrefs} from '#/state/preferences'
+import {useComposerControls} from '#/state/shell/composer'
+import {useModerationOpts} from '#/state/queries/preferences'
 import {useOpenLink} from '#/state/preferences/in-app-browser'
+import {Shadow, usePostShadow, POST_TOMBSTONE} from '#/state/cache/post-shadow'
 import {ThreadPost} from '#/state/queries/post-thread'
-import {useModerationOpts} from '#/state/queries/preferences'
-import {useComposerControls} from '#/state/shell/composer'
-
-import {getTranslatorLink, isPostInLanguage} from '../../../locale/helpers'
+import {useSession} from 'state/session'
 import {WhoCanReply} from '../threadgate/WhoCanReply'
-import {ErrorMessage} from '../util/error/ErrorMessage'
-import {Link, TextLink} from '../util/Link'
 import {LoadingPlaceholder} from '../util/LoadingPlaceholder'
-import {ContentHider} from '../util/moderation/ContentHider'
-import {PostAlerts} from '../util/moderation/PostAlerts'
-import {PostHider} from '../util/moderation/PostHider'
-import {formatCount} from '../util/numeric/format'
-import {PostCtrls} from '../util/post-ctrls/PostCtrls'
-import {PostEmbeds} from '../util/post-embeds'
-import {PostMeta} from '../util/PostMeta'
-import {Text} from '../util/text/Text'
-import {PreviewableUserAvatar} from '../util/UserAvatar'
+import {atoms as a} from '#/alf'
 
 export function PostThreadItem({
   post,