@@ -13,6 +13,9 @@ import { type SearchSourceState } from 'stream-chat';
13
13
import { useMessageComposer } from '../MessageInput/hooks/messageComposer/useMessageComposer' ;
14
14
import { useStateStore } from '../../store' ;
15
15
import { InfiniteScrollPaginator } from '../InfiniteScrollPaginator/InfiniteScrollPaginator' ;
16
+ import { EmoticonItem } from '../EmoticonItem' ;
17
+ import { CommandItem } from '../CommandItem' ;
18
+ import { UserItem } from '../UserItem' ;
16
19
17
20
type ObjectUnion < T > = T [ keyof T ] ;
18
21
@@ -21,7 +24,6 @@ export type SuggestionListProps<
21
24
EmojiData extends UnknownType = UnknownType ,
22
25
> = ObjectUnion < {
23
26
[ key in keyof TriggerSettings < V > ] : Partial < {
24
- component : TriggerSettings < V > [ key ] [ 'component' ] ;
25
27
dropdownScroll : ( element : HTMLElement ) => void ;
26
28
getSelectedItem :
27
29
| ( ( item : Parameters < TriggerSettings < V > [ key ] [ 'output' ] > [ 0 ] ) => void )
@@ -52,7 +54,6 @@ export const SuggestionList = <
52
54
EmojiData extends UnknownType = UnknownType ,
53
55
> ( {
54
56
className,
55
- component,
56
57
value : propValue ,
57
58
} : SuggestionListProps < V > ) => {
58
59
const { AutocompleteSuggestionItem = DefaultSuggestionListItem } =
@@ -65,7 +66,13 @@ export const SuggestionList = <
65
66
// const [selectedItemIndex, setSelectedItemIndex] = useState<number | undefined>(
66
67
// undefined,
67
68
// );
68
-
69
+ const component =
70
+ suggestions ?. trigger &&
71
+ {
72
+ '/' : CommandItem ,
73
+ ':' : EmoticonItem ,
74
+ '@' : UserItem ,
75
+ } [ suggestions ?. trigger ] ;
69
76
const itemsRef : HTMLElement [ ] = [ ] ;
70
77
71
78
// const isSelected = (item: SuggestionItem<EmojiData>) =>
0 commit comments