'use client'; import { useState } from 'react'; import { useTranslations } from 'next-intl'; import { Search, Target, MapPin, Plus, Minus, X } from 'lucide-react'; interface MapControlsProps { onSearch?: (query: string) => void; onZoomIn?: () => void; onZoomOut?: () => void; onLocate?: () => void; onSpotlight?: () => void; } export function MapControls({ onSearch, onZoomIn, onZoomOut, onLocate, onSpotlight, }: MapControlsProps) { const t = useTranslations('map'); const [searchOpen, setSearchOpen] = useState(false); const [query, setQuery] = useState(''); const submitSearch = () => { if (onSearch && query.trim()) { onSearch(query.trim()); } }; return (
{/* Search */}
{searchOpen && (
setQuery(e.target.value)} onKeyDown={(e) => e.key === 'Enter' && submitSearch()} placeholder={t('search')} className="w-48 px-2 py-1.5 bg-transparent text-sm text-[var(--map-text)] placeholder:text-[var(--map-text-muted)] focus:outline-none" autoFocus />
)}
{/* Spotlight selection */} {/* Zoom to my location */} {/* Zoom in/out */}
); }