diff --git a/src/screens/Profile/Header/ProfileHeaderStandard.tsx b/src/screens/Profile/Header/ProfileHeaderStandard.tsx index f3f2a370da..953fbd6169 100644 --- a/src/screens/Profile/Header/ProfileHeaderStandard.tsx +++ b/src/screens/Profile/Header/ProfileHeaderStandard.tsx @@ -9,12 +9,15 @@ import { 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 {NavigationProp} from '#/lib/routes/types' import {useGate} from '#/lib/statsig/statsig' import {logger} from '#/logger' import {isIOS, isWeb} from '#/platform/detection' import {Shadow} from '#/state/cache/types' import {useModalControls} from '#/state/modals' +import {useMaybeConvoForUser} from '#/state/queries/messages/get-convo-for-members' import { useProfileBlockMutationQueue, useProfileFollowMutationQueue, @@ -29,6 +32,7 @@ import * as Toast from '#/view/com/util/Toast' import {atoms as a, useTheme} from '#/alf' import {Button, ButtonIcon, ButtonText} from '#/components/Button' import {Check_Stroke2_Corner0_Rounded as Check} from '#/components/icons/Check' +import {Envelope_Stroke2_Corner0_Rounded as Envelope} from '#/components/icons/Envelope' import {PlusLarge_Stroke2_Corner0_Rounded as Plus} from '#/components/icons/Plus' import * as Prompt from '#/components/Prompt' import {RichText} from '#/components/RichText' @@ -71,6 +75,9 @@ let ProfileHeaderStandard = ({ const [_queueBlock, queueUnblock] = useProfileBlockMutationQueue(profile) const unblockPromptControl = Prompt.usePromptControl() const requireAuth = useRequireAuth() + const navigation = useNavigation() + + const {data: convoId} = useMaybeConvoForUser(profile.did) const onPressEditProfile = React.useCallback(() => { track('ProfileHeader:EditProfileButtonClicked') @@ -141,6 +148,11 @@ let ProfileHeaderStandard = ({ } }, [_, queueUnblock, track]) + const onPressDm = React.useCallback(() => { + if (!convoId) return + navigation.navigate('MessagesConversation', {conversation: convoId}) + }, [navigation, convoId]) + const isMe = React.useMemo( () => currentAccount?.did === profile.did, [currentAccount, profile], @@ -156,7 +168,14 @@ let ProfileHeaderStandard = ({ style={[a.px_lg, a.pt_md, a.pb_sm]} pointerEvents={isIOS ? 'auto' : 'box-none'}> {isMe ? ( + )} + + label={_(msg`Show follows similar to ${profile.handle}`)} + style={{width: 36, height: 36}}> + + + )}