import { type ReactNode } from 'react' import { useNavigate, useSearchParams, Navigate } from 'react-router' import { ArrowLeft, Package, ClipboardList } from 'lucide-react' import { cn, interactive } from '@/lib' import { MainLayout, MainHeaderBar } from '@/layouts' import { ChatContainer, ItemSection, RemainingTime } from '@/features/chat' import { MobileDrawer } from '@/features/chat/components/MobileDrawer' import { MenuSection } from '@/features/chat/components/menu/MenuSection' import { useChatUiStore } from '@/features/chat/stores/useChatUiStore' import { SidebarFooter } from '@/features/auth' export function ChatPage() { const [searchParams] = useSearchParams() const sessionId = searchParams.get('session_id') ?? '' const drawer = useChatUiStore((s) => s.drawer) const close = useChatUiStore((s) => s.close) // session_id 없이 진입하면 목록으로 되돌린다. if (!sessionId) return return ( <> } header={
실시간 구매 협상 채널
} label="상품" panel="product" /> } label="현황" panel="status" />
} >
{/* 모바일 드로어 (lg 미만) */} ) } // 헤더 좌상단: 목록으로 돌아가기 (텍스트 + ← 아이콘) function BackToListButton() { const navigate = useNavigate() return ( ) } // 헤더 우측: 상품/현황 패널 드로어 토글 (모바일 전용) function PanelToggle({ icon, label, panel, }: { icon: ReactNode label: string panel: 'product' | 'status' }) { const open = useChatUiStore((s) => s.open) return ( ) } function Sidebar() { return ( <> ) } export default ChatPage