From 8fdefb7e941652f206e2dda7c4fcd92d5bff487c Mon Sep 17 00:00:00 2001 From: Eric Bailey Date: Mon, 21 Apr 2025 16:32:29 -0500 Subject: Add check to composer user autocomplete (#8253) * Add check to composer autocomplete web * Add check to composer autocomplete mobile --- .../composer/text-input/mobile/Autocomplete.tsx | 118 +++++++++++++-------- 1 file changed, 73 insertions(+), 45 deletions(-) (limited to 'src/view/com/composer/text-input/mobile/Autocomplete.tsx') diff --git a/src/view/com/composer/text-input/mobile/Autocomplete.tsx b/src/view/com/composer/text-input/mobile/Autocomplete.tsx index 5e91ef149..83ae6cb39 100644 --- a/src/view/com/composer/text-input/mobile/Autocomplete.tsx +++ b/src/view/com/composer/text-input/mobile/Autocomplete.tsx @@ -1,5 +1,6 @@ import {View} from 'react-native' import Animated, {FadeInDown, FadeOut} from 'react-native-reanimated' +import {type AppBskyActorDefs} from '@atproto/api' import {Trans} from '@lingui/macro' import {PressableScale} from '#/lib/custom-animations/PressableScale' @@ -9,6 +10,8 @@ import {useActorAutocompleteQuery} from '#/state/queries/actor-autocomplete' import {UserAvatar} from '#/view/com/util/UserAvatar' import {atoms as a, useTheme} from '#/alf' import {Text} from '#/components/Typography' +import {useSimpleVerificationState} from '#/components/verification' +import {VerificationCheck} from '#/components/verification/VerificationCheck' export function Autocomplete({ prefix, @@ -42,51 +45,15 @@ export function Autocomplete({ {suggestions?.length ? ( suggestions.slice(0, 5).map((item, index, arr) => { return ( - - onSelect(item.handle)} - accessibilityLabel={`Select ${item.handle}`} - accessibilityHint=""> - - - - {sanitizeDisplayName( - item.displayName || sanitizeHandle(item.handle), - )} - - - {sanitizeHandle(item.handle, '@')} - - - - + { + onSelect(item.handle) + }} + /> ) }) ) : ( @@ -97,3 +64,64 @@ export function Autocomplete({ ) } + +function AutocompleteProfileCard({ + profile, + itemIndex, + totalItems, + onPress, +}: { + profile: AppBskyActorDefs.ProfileViewBasic + itemIndex: number + totalItems: number + onPress: () => void +}) { + const t = useTheme() + const state = useSimpleVerificationState({profile}) + const displayName = sanitizeDisplayName( + profile.displayName || sanitizeHandle(profile.handle), + ) + return ( + + + + + + + {displayName} + + {state.isVerified && ( + + + + )} + + + + {sanitizeHandle(profile.handle, '@')} + + + + ) +} -- cgit 1.4.1