"use client"; import { useState, useRef } from "react"; import { Button } from "@/components/ui/button"; import { Card, CardContent } from "@/components/ui/card"; import { Tabs, TabsContent, TabsList, TabsTrigger } from "@/components/ui/tabs"; import { Badge } from "@/components/ui/badge"; import { Slider } from "@/components/ui/slider"; import { Switch } from "@/components/ui/switch"; import { MapPin, Home, BarChart2, Filter, MessageCircle, X, Plus, Minus, Droplets, Wind, Sun, LineChart, Send, Newspaper, Building, BedDouble, Bath, Star, Clock, RefreshCw, } from "lucide-react"; import Link from "next/link"; import { TopNavigation } from "@/components/navigation/top-navigation"; import MapWithSearch from "@/components/map/map-with-search"; import { AnalyticsPanel } from "@/components/map/analytics-panel"; export default function MapsPage() { const [showFilters, setShowFilters] = useState(false); const [showAnalytics, setShowAnalytics] = useState(false); const [showChat, setShowChat] = useState(false); const [showPropertyInfo, setShowPropertyInfo] = useState(false); const [activeTab, setActiveTab] = useState("basic"); const [priceRange, setPriceRange] = useState([5000000, 20000000]); const [radius, setRadius] = useState(30); const [message, setMessage] = useState(""); const [messages, setMessages] = useState([ { role: "assistant", content: "Hi! How can I help you today?" }, ]); const handleSendMessage = () => { if (message.trim()) { setMessages([...messages, { role: "user", content: message }]); // Simulate AI response setTimeout(() => { setMessages((prev) => [ ...prev, { role: "assistant", content: "I can provide information about properties in this area. Would you like to know about flood risks, air quality, or nearby amenities?", }, ]); }, 1000); setMessage(""); } }; const handlePropertyClick = () => { setShowPropertyInfo(true); setShowFilters(false); setShowChat(false); }; return (