import React, { useState, useRef } from 'react'; import classNames from 'classnames'; import Menu from './Menu'; import useDocumentClick from 'hooks/useDocumentClick'; import Chevron from 'assets/chevron-down.svg'; import styles from './Dropdown.module.css'; import Icon from './Icon'; export default function DropDown({ value, className, menuClassName, options = [], onChange = () => {}, }) { const [showMenu, setShowMenu] = useState(false); const ref = useRef(); function handleShowMenu() { setShowMenu(state => !state); } function handleSelect(selected, e) { e.stopPropagation(); setShowMenu(false); if (selected !== value) { onChange(selected); } } useDocumentClick(e => { if (!ref.current.contains(e.target)) { setShowMenu(false); } }); return (
{options.find(e => e.value === value)?.label} } size="small" />
{showMenu && ( )}
); }