'use client'
import {
formatMessageTime,
getContactInitials,
type Conversation,
type Contact,
} from '@/lib/MessagesContext'
interface ConversationListProps {
isDark: boolean
filteredConversations: Conversation[]
currentConversationId: string | null
unreadCount: number
searchQuery: string
setSearchQuery: (q: string) => void
setShowNewConversation: (show: boolean) => void
selectConversation: (conv: Conversation) => void
getConversationContact: (conv: Conversation) => Contact | undefined
}
export function ConversationList({
isDark, filteredConversations, currentConversationId, unreadCount,
searchQuery, setSearchQuery, setShowNewConversation,
selectConversation, getConversationContact,
}: ConversationListProps) {
return (
{/* Header */}
Nachrichten
{unreadCount > 0 && (
{unreadCount} ungelesen
)}
{/* Search */}
{/* Conversation List */}
{filteredConversations.length === 0 ? (
💬
Keine Konversationen
Starten Sie eine neue Unterhaltung!
) : (
{filteredConversations.map((conv) => (
selectConversation(conv)} />
))}
)}
)
}
function ConversationItem({ conv, isDark, isActive, contact, onClick }: {
conv: Conversation; isDark: boolean; isActive: boolean
contact: Contact | undefined; onClick: () => void
}) {
return (
)
}