import { useState, useEffect, useMemo } from 'react' export default function OfferCustomerPicker({ customers, customerId, customerName, onSelect, onClear, error, readOnly }) { const [customerSearch, setCustomerSearch] = useState('') const [showDropdown, setShowDropdown] = useState(false) // Close dropdown on outside click useEffect(() => { const handleClickOutside = () => setShowDropdown(false) if (showDropdown) { document.addEventListener('click', handleClickOutside) return () => document.removeEventListener('click', handleClickOutside) } }, [showDropdown]) const filteredCustomers = useMemo(() => { if (!customerSearch) return customers const q = customerSearch.toLowerCase() return customers.filter(c => (c.name || '').toLowerCase().includes(q) || (c.company_id || '').includes(customerSearch) || (c.city || '').toLowerCase().includes(q) ) }, [customers, customerSearch]) const handleSelect = (customer) => { onSelect(customer) setCustomerSearch('') setShowDropdown(false) } return (