import React from 'react'; import { User, Plus, X } from 'lucide-react'; import { Channel } from '../types'; interface DMListProps { activeChannelId: string; onSelectChannel: (id: string) => void; } const MOCK_CHANNELS: Channel[] = [ { id: '1', name: 'Gemini AI', type: 'dm', status: 'online', avatarUrl: 'https://picsum.photos/seed/gemini/50/50' }, { id: '2', name: 'Wumpus', type: 'dm', status: 'idle', avatarUrl: 'https://picsum.photos/seed/wumpus/50/50' }, { id: '3', name: 'Clyde', type: 'dm', status: 'dnd', avatarUrl: 'https://picsum.photos/seed/clyde/50/50' }, { id: '4', name: 'Nelly', type: 'dm', status: 'offline', avatarUrl: 'https://picsum.photos/seed/nelly/50/50' }, ]; const DMList: React.FC = ({ activeChannelId, onSelectChannel }) => { return (
{/* Search / Find Button */}
{/* List */}
Direct Messages
{MOCK_CHANNELS.map((channel) => (
onSelectChannel(channel.id)} className={`group flex items-center gap-3 px-2 py-2 rounded-[4px] cursor-pointer transition-colors ${ activeChannelId === channel.id ? 'bg-[#404249] text-white' : 'text-[#949ba4] hover:bg-[#35373c] hover:text-[#dbdee1]' }`} >
{channel.name} {channel.status && (
{channel.status === 'idle' &&
} {channel.status === 'dnd' &&
}
)}
{channel.name} {channel.id === '1' && BOT}
))}
{/* User Area */}
Me
Current User
#1234
{/* Buttons */}
{/* Minimal controls simulation */}
); }; export default DMList;