Fix profile icon on custom feeds (#11408)
Co-authored-by: DS Boyce <260543580+ds-boyce@users.noreply.github.com>
This commit is contained in:
@@ -0,0 +1,30 @@
|
||||
import {Trans} from '@lingui/react/macro'
|
||||
|
||||
import {
|
||||
type CommonNavigatorParams,
|
||||
type NativeStackScreenProps,
|
||||
} from '#/lib/routes/types'
|
||||
import {makeRecordUri} from '#/lib/strings/url-helpers'
|
||||
import {PostLikedBy as PostLikedByComponent} from '#/view/com/post-thread/PostLikedBy'
|
||||
import * as Layout from '#/components/Layout'
|
||||
|
||||
type Props = NativeStackScreenProps<CommonNavigatorParams, 'CustomFeedLikedBy'>
|
||||
export const CustomFeedLikedByScreen = ({route}: Props) => {
|
||||
const {name, rkey} = route.params
|
||||
const uri = makeRecordUri(name, 'app.bsky.feed.generator', rkey)
|
||||
|
||||
return (
|
||||
<Layout.Screen testID="customFeedLikedByScreen">
|
||||
<Layout.Header.Outer>
|
||||
<Layout.Header.BackButton />
|
||||
<Layout.Header.Content>
|
||||
<Layout.Header.TitleText>
|
||||
<Trans>Liked By</Trans>
|
||||
</Layout.Header.TitleText>
|
||||
</Layout.Header.Content>
|
||||
<Layout.Header.Slot />
|
||||
</Layout.Header.Outer>
|
||||
<PostLikedByComponent uri={uri} />
|
||||
</Layout.Screen>
|
||||
)
|
||||
}
|
||||
+2
-2
@@ -52,7 +52,7 @@ import {Text} from '#/components/Typography'
|
||||
import {useAnalytics} from '#/analytics'
|
||||
import {IS_WEB} from '#/env'
|
||||
|
||||
export function ProfileFeedHeaderSkeleton() {
|
||||
export function CustomFeedHeaderSkeleton() {
|
||||
const t = useTheme()
|
||||
|
||||
return (
|
||||
@@ -82,7 +82,7 @@ export function ProfileFeedHeaderSkeleton() {
|
||||
)
|
||||
}
|
||||
|
||||
export function ProfileFeedHeader({
|
||||
export function CustomFeedHeader({
|
||||
info,
|
||||
isTrending,
|
||||
}: {
|
||||
@@ -34,18 +34,18 @@ import {FAB} from '#/view/com/util/fab/FAB'
|
||||
import {type ListRef} from '#/view/com/util/List'
|
||||
import {LoadLatestBtn} from '#/view/com/util/load-latest/LoadLatestBtn'
|
||||
import {PostFeedLoadingPlaceholder} from '#/view/com/util/LoadingPlaceholder'
|
||||
import {
|
||||
ProfileFeedHeader,
|
||||
ProfileFeedHeaderSkeleton,
|
||||
} from '#/screens/Profile/components/ProfileFeedHeader'
|
||||
import {useTheme} from '#/alf'
|
||||
import {EditBig_Stroke2_Corner2_Rounded as EditBigIcon} from '#/components/icons/EditBig'
|
||||
import {HashtagWide_Stroke1_Corner0_Rounded as HashtagWideIcon} from '#/components/icons/Hashtag'
|
||||
import * as Layout from '#/components/Layout'
|
||||
import {IS_NATIVE} from '#/env'
|
||||
import {
|
||||
CustomFeedHeader,
|
||||
CustomFeedHeaderSkeleton,
|
||||
} from './components/CustomFeedHeader'
|
||||
|
||||
type Props = NativeStackScreenProps<CommonNavigatorParams, 'ProfileFeed'>
|
||||
export function ProfileFeedScreen(props: Props) {
|
||||
type Props = NativeStackScreenProps<CommonNavigatorParams, 'CustomFeed'>
|
||||
export function CustomFeedScreen(props: Props) {
|
||||
const {rkey, name: handleOrDid} = props.route.params
|
||||
|
||||
const feedParams: FeedParams | undefined = props.route.params.feedCacheKey
|
||||
@@ -66,7 +66,7 @@ export function ProfileFeedScreen(props: Props) {
|
||||
|
||||
if (error && !isRefetching) {
|
||||
return (
|
||||
<Layout.Screen testID="profileFeedScreenError">
|
||||
<Layout.Screen testID="customFeedScreenError">
|
||||
<ErrorScreen
|
||||
showHeader
|
||||
title={l`Could not load feed`}
|
||||
@@ -78,15 +78,15 @@ export function ProfileFeedScreen(props: Props) {
|
||||
}
|
||||
|
||||
return resolvedUri ? (
|
||||
<Layout.Screen testID="profileFeedScreen">
|
||||
<ProfileFeedScreenIntermediate
|
||||
<Layout.Screen testID="customFeedScreen">
|
||||
<CustomFeedScreenIntermediate
|
||||
feedUri={resolvedUri.uri}
|
||||
feedParams={feedParams}
|
||||
/>
|
||||
</Layout.Screen>
|
||||
) : (
|
||||
<Layout.Screen testID="profileFeedScreen">
|
||||
<ProfileFeedHeaderSkeleton />
|
||||
<Layout.Screen testID="customFeedScreen">
|
||||
<CustomFeedHeaderSkeleton />
|
||||
<Layout.Content>
|
||||
<PostFeedLoadingPlaceholder />
|
||||
</Layout.Content>
|
||||
@@ -94,7 +94,7 @@ export function ProfileFeedScreen(props: Props) {
|
||||
)
|
||||
}
|
||||
|
||||
function ProfileFeedScreenIntermediate({
|
||||
function CustomFeedScreenIntermediate({
|
||||
feedUri,
|
||||
feedParams,
|
||||
}: {
|
||||
@@ -107,14 +107,14 @@ function ProfileFeedScreenIntermediate({
|
||||
if (!preferences || !info) {
|
||||
return (
|
||||
<Layout.Content>
|
||||
<ProfileFeedHeaderSkeleton />
|
||||
<CustomFeedHeaderSkeleton />
|
||||
<PostFeedLoadingPlaceholder />
|
||||
</Layout.Content>
|
||||
)
|
||||
}
|
||||
|
||||
return (
|
||||
<ProfileFeedScreenInner
|
||||
<CustomFeedScreenInner
|
||||
preferences={preferences}
|
||||
feedInfo={info as FeedSourceFeedInfo}
|
||||
feedParams={feedParams}
|
||||
@@ -122,7 +122,7 @@ function ProfileFeedScreenIntermediate({
|
||||
)
|
||||
}
|
||||
|
||||
export function ProfileFeedScreenInner({
|
||||
export function CustomFeedScreenInner({
|
||||
feedInfo,
|
||||
feedParams,
|
||||
}: {
|
||||
@@ -186,7 +186,7 @@ export function ProfileFeedScreenInner({
|
||||
|
||||
return (
|
||||
<>
|
||||
<ProfileFeedHeader info={feedInfo} isTrending={isTrending} />
|
||||
<CustomFeedHeader info={feedInfo} isTrending={isTrending} />
|
||||
<FeedFeedbackProvider value={feedFeedback}>
|
||||
<PostFeed
|
||||
enabled
|
||||
Reference in New Issue
Block a user