"use client" import { useState } from "react" import { Send, X, Minimize2, Maximize2 } from "lucide-react" import { Button } from "@/components/ui/button" import { Card, CardContent, CardHeader, CardTitle } from "@/components/ui/card" import { Input } from "@/components/ui/input" import { useOverlayContext } from "./overlay-context" import { ScrollArea } from "@/components/ui/scroll-area" interface ChatBotProps { onClose: () => void } export function ChatBot({ onClose }: ChatBotProps) { const { overlays, minimizeOverlay, maximizeOverlay } = useOverlayContext() const isMinimized = overlays.chat.minimized const [message, setMessage] = useState("") const [chatHistory, setChatHistory] = useState([{ role: "bot", content: "Hi! How can I help you today?" }]) const handleSendMessage = () => { if (!message.trim()) return // Add user message to chat setChatHistory([...chatHistory, { role: "user", content: message }]) // Simulate bot response (in a real app, this would call an API) setTimeout(() => { setChatHistory((prev) => [ ...prev, { role: "bot", content: "I can provide information about this area. What would you like to know?", }, ]) }, 1000) setMessage("") } if (isMinimized) { return ( ChatBot
) } return ( ChatBot
{chatHistory.map((chat, index) => (
{chat.content}
))}
setMessage(e.target.value)} placeholder="Type your message..." className="flex-1" onKeyDown={(e) => { if (e.key === "Enter") { handleSendMessage() } }} />
) }