import { Avatar, MenuItem, Select, SelectChangeEvent, Typography, useMediaQuery, useTheme, } from "@mui/material"; import Box from "@mui/material/Box"; import { FC, useCallback, useRef, useState } from "react"; import "./CustomSelect.css"; import arrow_down from "../../assets/icons/arrow_down.svg"; type CustomSelectProps = { items: string[]; selectedItem: string | null; setSelectedItem: (value: string | null) => void; }; export const CustomSelect: FC = ({ items, selectedItem, setSelectedItem, }) => { const theme = useTheme(); const isMobile = useMediaQuery(theme.breakpoints.down(600)); const [opened, setOpened] = useState(false); const [currentValue, setCurrentValue] = useState(selectedItem); const ref = useRef(null); const onSelectItem = useCallback( (event: SelectChangeEvent) => { const newValue = event.target.value.toString(); setCurrentValue(newValue); setSelectedItem(newValue); }, [setSelectedItem, setCurrentValue], ); const toggleOpened = useCallback(() => { setOpened((isOpened) => !isOpened); }, []); return ( ref.current?.click()} > {currentValue || "Выберите ответственного за сделку"} check ); };