Bluesky app fork with some witchin' additions 馃挮
witchsky.app
bluesky
fork
client
1import {SiftItem} from '@bsky.app/sift'
2
3import {useModerationOpts} from '#/state/preferences/moderation-opts'
4import {atoms as a, useTheme} from '#/alf'
5import * as ProfileCard from '#/components/ProfileCard'
6import {type AutocompleteItemProps} from './types'
7
8export function AutocompleteItemProfile({
9 active,
10 isFirst,
11 isLast,
12 props,
13 item,
14}: AutocompleteItemProps) {
15 const t = useTheme()
16 const moderationOpts = useModerationOpts()
17
18 if (item.type !== 'profile' || !moderationOpts) return null
19
20 return (
21 <SiftItem
22 {...props}
23 style={s => [
24 a.py_sm,
25 a.px_md,
26 active || s.hovered || s.pressed ? [t.atoms.bg_contrast_25] : [],
27 isFirst && {
28 paddingTop: a.py_sm.paddingTop * 1.2,
29 },
30 isLast && {
31 paddingBottom: a.py_sm.paddingTop * 1.2,
32 },
33 ]}>
34 <ProfileCard.Header>
35 <ProfileCard.Avatar
36 disabledPreview
37 profile={item.profile}
38 moderationOpts={moderationOpts}
39 />
40 <ProfileCard.NameAndHandle
41 profile={item.profile}
42 moderationOpts={moderationOpts}
43 />
44 </ProfileCard.Header>
45 </SiftItem>
46 )
47}