diff --git a/src/components/ProfileCard.tsx b/src/components/ProfileCard.tsx index d3b1b39dd2..1ccefc412d 100644 --- a/src/components/ProfileCard.tsx +++ b/src/components/ProfileCard.tsx @@ -1,9 +1,10 @@ import React from 'react' import {View} from 'react-native' -import {AppBskyActorDefs} from '@atproto/api' +import {AppBskyActorDefs, moderateProfile, ModerationOpts} from '@atproto/api' import {sanitizeDisplayName} from 'lib/strings/display-names' import {sanitizeHandle} from 'lib/strings/handles' +import {ProfileCardPills} from 'view/com/profile/ProfileCard' import {UserAvatar} from 'view/com/util/UserAvatar' import {atoms as a, useTheme} from '#/alf' import {Link} from '#/components/Link' @@ -11,8 +12,10 @@ import {Text} from '#/components/Typography' export function Default({ profile, + moderationOpts, }: { profile: AppBskyActorDefs.ProfileViewDetailed + moderationOpts: ModerationOpts }) { const t = useTheme() @@ -22,13 +25,22 @@ export function Default({ ? sanitizeDisplayName(profile.displayName) : handle + const moderation = moderateProfile(profile, moderationOpts) + return ( {name} @@ -36,6 +48,10 @@ export function Default({ {handle} + {profile.description && ( {profile.description} diff --git a/src/components/StarterPack/Main/ProfilesList.tsx b/src/components/StarterPack/Main/ProfilesList.tsx index cc3a80ec04..057ba88595 100644 --- a/src/components/StarterPack/Main/ProfilesList.tsx +++ b/src/components/StarterPack/Main/ProfilesList.tsx @@ -1,27 +1,14 @@ import React, {useCallback} from 'react' import {ListRenderItemInfo, View} from 'react-native' -import {AppBskyActorDefs, AtUri} from '@atproto/api' +import {AppBskyActorDefs, AtUri, ModerationOpts} from '@atproto/api' import {useBottomBarOffset} from 'lib/hooks/useBottomBarOffset' import {isNative} from 'platform/detection' import {useListMembersQuery} from 'state/queries/list-members' import {useSession} from 'state/session' -import {ProfileCardWithFollowBtn} from 'view/com/profile/ProfileCard' import {List, ListRef} from 'view/com/util/List' import {SectionRef} from '#/screens/Profile/Sections/types' - -function renderItem({ - item, - index, -}: ListRenderItemInfo) { - return ( - - ) -} +import {Default as ProfileCard} from '#/components/ProfileCard' function keyExtractor(item: AppBskyActorDefs.ProfileViewBasic, index: number) { return `${item.did}-${index}` @@ -31,10 +18,14 @@ interface ProfilesListProps { listUri: string headerHeight: number scrollElRef: ListRef + moderationOpts: ModerationOpts } export const ProfilesList = React.forwardRef( - function ProfilesListImpl({listUri, headerHeight, scrollElRef}, ref) { + function ProfilesListImpl( + {listUri, headerHeight, scrollElRef, moderationOpts}, + ref, + ) { const [initialHeaderHeight] = React.useState(headerHeight) const bottomBarOffset = useBottomBarOffset(20) const {currentAccount} = useSession() @@ -72,6 +63,12 @@ export const ProfilesList = React.forwardRef( scrollToTop: onScrollToTop, })) + const renderItem = ({ + item, + }: ListRenderItemInfo) => { + return + } + return ( @@ -104,6 +106,7 @@ export function StarterPackScreen({route}: StarterPackScreeProps) { headerHeight={headerHeight} // @ts-expect-error scrollElRef={scrollElRef} + moderationOpts={moderationOpts} /> ) : null}