"use client"; import { useState } from "react"; import { MemberMentionPicker } from "@/components/chat-comments/member-mention-picker"; import type { MemberOption } from "@/components/chat-comments/member-mention-picker"; const fakeMembersData: MemberOption[] = [ { id: "550e8400-e29b-41d4-a716-446655440001", displayName: "Alice Smith", email: "alice@example.com", avatarUrl: null, }, { id: "550e8400-e29b-41d4-a716-446655440002", displayName: "Bob Johnson", email: "bob.johnson@example.com", avatarUrl: null, }, { id: "550e8400-e29b-41d4-a716-446655440003", displayName: "Charlie Brown", email: "charlie@example.com", avatarUrl: null, }, { id: "550e8400-e29b-41d4-a716-446655440004", displayName: null, email: "david.wilson@example.com", avatarUrl: null, }, { id: "550e8400-e29b-41d4-a716-446655440005", displayName: "Emma Davis", email: "emma@example.com", avatarUrl: null, }, ]; export default function ChatCommentsPreviewPage() { const [highlightedIndex, setHighlightedIndex] = useState(0); const [selectedMember, setSelectedMember] = useState(null); return (

Chat Comments UI Preview

Preview page for chat comments components with fake data

After typing @

Shows all members

setSelectedMember(member)} onHighlightChange={setHighlightedIndex} />
{selectedMember && (
Selected: @[{selectedMember.id.slice(0, 8)}...] {" → @"} {selectedMember.displayName || selectedMember.email}
)}

After typing @ali

Filtered to matching members

{}} onHighlightChange={() => {}} />

Loading State

While fetching members

{}} onHighlightChange={() => {}} />

No Results

After typing @xyz (no match)

{}} onHighlightChange={() => {}} />
); }