'use client'; import { ChatInput } from './ChatInput'; import { ChatMessages } from './ChatMessages'; import { ChatPrompt } from './ChatPrompt'; import { ChatSidebar } from './ChatSidebar'; import { useChatSession } from '@/hooks/use-chat-session'; import type { PromptSuggestion } from '@/config/suggestions'; import { DEFAULT_OPENROUTER_MODEL_ID, type OpenRouterModelId } from '@/lib/openrouter'; import { SidebarProvider, SidebarInset, SidebarTrigger, } from '@/components/ui/sidebar'; interface ChatAgentProps { suggestions?: PromptSuggestion[]; webSearchEnabled?: boolean; defaultModelId?: OpenRouterModelId; } export function ChatAgent({ suggestions, webSearchEnabled = false, defaultModelId = DEFAULT_OPENROUTER_MODEL_ID, }: ChatAgentProps) { const { inputValue, setInputValue, modelId, setModelId, chatId, chats, chatMessages, status, chatStatus, aiError, isPreparingFiles, handleSelectChat, handleNewChat, handleDeleteChat, handleSendMessage, handleStop, } = useChatSession(defaultModelId); const hasMessages = chatMessages.length > 0; return ( {!hasMessages ? (
) : (
{aiError && (

The response could not be completed. Please try again.

)}
)}
); } export type { UIMessage as Message } from 'ai';