import React, { useCallback, useEffect, useMemo, useState } from "react"; import axios from "axios"; import { Card, CardHeader, CardBody, Typography, Avatar, Chip, Tooltip, Progress, Collapse, Button, ButtonGroup, Select, Option, Input, useSelect } from "@material-tailwind/react"; const StickyOption = React.forwardRef(({ value, onValueSelect, onClick, onKeyDown, ...props }, ref) => { const { setOpen } = useSelect(); const reopen = useCallback(() => { const schedule = (typeof window !== "undefined" && typeof window.requestAnimationFrame === "function") ? window.requestAnimationFrame : (callback) => setTimeout(callback, 0); schedule(() => { setOpen(true); }); }, [setOpen]); const commitSelection = useCallback(() => { if (typeof onValueSelect === "function") { onValueSelect(value); } }, [onValueSelect, value]); const handleClick = useCallback((event) => { if (typeof onClick === "function") { onClick(event); } commitSelection(); reopen(); }, [onClick, commitSelection, reopen]); const handleKeyDown = useCallback((event) => { if (typeof onKeyDown === "function") { onKeyDown(event); } if (event.key === "Enter" || event.key === " ") { commitSelection(); reopen(); } }, [onKeyDown, commitSelection, reopen]); return (