Proyectos de Subversion LeadersLinked - SPA

Rev

Rev 3610 | Rev 3616 | Ir a la última revisión | | Comparar con el anterior | Ultima modificación | Ver Log |

Rev Autor Línea Nro. Línea
3610 stevensc 1
import React, { useMemo, useState } from 'react';
3580 stevensc 2
 
3610 stevensc 3
import { Card, CardContent, CardHeader, List, Menu, SearchBar } from '@shared/components';
3580 stevensc 4
import { ConversationItem } from './ConversationItem';
5
 
3610 stevensc 6
export const ConversationsList = ({
7
  conversations = [],
8
  onSelectConversation,
9
  onStartConversation
10
}) => {
11
  const [search, setSearch] = useState('');
12
 
13
  const filteredConversations = useMemo(() => {
14
    return conversations.filter((conversation) =>
15
      conversation.name.toLowerCase().includes(search.toLowerCase())
16
    );
17
  }, [conversations, search]);
18
 
3580 stevensc 19
  return (
20
    <Card>
3615 stevensc 21
      <CardHeader title='Conversaciones' />
3580 stevensc 22
      <CardContent>
3610 stevensc 23
        <SearchBar placeholder='Buscar conversación' onChange={setSearch} />
3580 stevensc 24
        <List
3610 stevensc 25
          items={filteredConversations}
3580 stevensc 26
          keyExtractor={(item) => item.uuid}
27
          emptyMessage='No hay conversaciones'
28
          renderItem={(conversation) => (
29
            <ConversationItem
30
              conversation={conversation}
31
              onSelectConversation={onSelectConversation}
32
            />
33
          )}
34
        />
35
      </CardContent>
36
    </Card>
37
  );
38
};