1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
| import type { FC } from 'react'
| import Item from './item'
| import type { ConversationItem } from '@/models/share'
|
| type ListProps = {
| isPin?: boolean
| title?: string
| list: ConversationItem[]
| onOperate: (type: string, item: ConversationItem) => void
| onChangeConversation: (conversationId: string) => void
| currentConversationId: string
| }
| const List: FC<ListProps> = ({
| isPin,
| title,
| list,
| onOperate,
| onChangeConversation,
| currentConversationId,
| }) => {
| return (
| <div className='space-y-0.5'>
| {title && (
| <div className='system-xs-medium-uppercase px-3 pb-1 pt-2 text-text-tertiary'>{title}</div>
| )}
| {list.map(item => (
| <Item
| key={item.id}
| isPin={isPin}
| item={item}
| onOperate={onOperate}
| onChangeConversation={onChangeConversation}
| currentConversationId={currentConversationId}
| />
| ))}
| </div>
| )
| }
|
| export default List
|
|