import * as React from "react"; const selectArrow = ( ); type CustomSelectProps = { value: string; onChange: (value: string) => void; options: string[]; placeholder?: string; className?: string; }; const CustomSelect: React.FC = ({ value, onChange, options, placeholder = "Выбрать", className = "" }) => { const [open, setOpen] = React.useState(false); const ref = React.useRef(null); React.useEffect(() => { const handleClickOutside = (event: MouseEvent) => { if (ref.current && !ref.current.contains(event.target as Node)) setOpen(false); }; document.addEventListener("mousedown", handleClickOutside); return () => document.removeEventListener("mousedown", handleClickOutside); }, []); return ( setOpen((o) => !o)} > {value || placeholder} {selectArrow} {open && ( {options.map((opt: string) => ( { onChange(opt); setOpen(false); }} > {opt} ))} )} ); }; const periodOptions = ["Этот год", "Последний квартал", "Предыдущий год", "Другое"]; const buyerOptions = ["Покупатель 1", "Покупатель 2", "Покупатель 3"]; const sellerOptions = ["ООО 'ПротекАвто'", "Продавец 2", "Продавец 3"]; const ProfileActsMain = () => { const [period, setPeriod] = React.useState(""); const [buyer, setBuyer] = React.useState(""); const [seller, setSeller] = React.useState(sellerOptions[0]); const [email, setEmail] = React.useState(""); const tabOptions = ["Этот год", "Последний квартал", "Предыдущий год"]; const [activeTab, setActiveTab] = React.useState(tabOptions[0]); return ( <> {tabOptions.map((tab) => ( setActiveTab(tab)} style={{ cursor: 'pointer' }} > {tab} ))} Покупатель Продавец E-mail для получения акта сверки setEmail(e.target.value)} placeholder="@" className="flex relative gap-2.5 items-center self-stretch px-6 py-4 bg-white rounded border border-solid border-stone-300 h-[52px] max-sm:h-12 text-sm text-gray-950 placeholder-neutral-500 outline-none" layer-name="Input" /> Получить акт сверки > ); } export default ProfileActsMain;