{
setFilter(e.target.value);
if (!open) setOpen(true);
}}
onFocus={() => {
if (!open) setOpen(true);
}}
onBlur={() => {
// Delay close to allow click on option to register
setTimeout(() => setOpen(false), 150);
}}
onKeyDown={handleKeyDown}
/>
0} onOpenChange={setOpen}>
e.preventDefault()}
>
{Array.from(grouped.entries()).map(([group, opts]) => (
{group && (
{group}
)}
{opts.map((opt) => (
))}
))}
{filter && filtered.length === 0 && (
Use "{filter}" as custom value (press Enter)
)}