import { useState, useRef } from 'react' import './CustomDropdown.scss' import ArrowDropdown from 'remixicon-react/ArrowDropDownLineIcon' import { useClickOutside } from '../../hooks/useClickOutside' import { Tooltip } from '../Tooltip/Tooltip' interface Option { value: number label: string } interface CustomDropdownProps { options: Option[] value: number onChange: (value: number, index: number) => void placeholder?: string id?: string label?: string icon?: React.ReactNode infoText?: string } export function CustomDropdown({ options, value, onChange, placeholder, id, label, icon, infoText, }: CustomDropdownProps) { const [open, setOpen] = useState(false) const ref = useRef(null) useClickOutside(ref, () => setOpen(false), open) const selectedLabel = options.find(opt => opt.value === value)?.label || '' return (
{label && ( )}
setOpen(prev => !prev)} > {selectedLabel || {placeholder} }
{open && ( )}
) }