import type { Dispatch, SetStateAction } from "react"; import { useState, useEffect } from "react"; import { Dialog } from "@calcom/features/components/controlled-dialog"; import { useLocale } from "@calcom/lib/hooks/useLocale"; import { Button } from "@calcom/ui/components/button"; import { DialogContent, DialogFooter, DialogClose } from "@calcom/ui/components/dialog"; import { TextAreaField } from "@calcom/ui/components/form"; interface RejectionReasonDialogProps { isOpenDialog: boolean; setIsOpenDialog: Dispatch>; onConfirm: (reason: string) => void; isPending?: boolean; } export function RejectionReasonDialog({ isOpenDialog, setIsOpenDialog, onConfirm, isPending = false, }: RejectionReasonDialogProps) { const { t } = useLocale(); const [rejectionReason, setRejectionReason] = useState(""); useEffect(() => { if (!isOpenDialog) { setRejectionReason(""); } }, [isOpenDialog]); const handleConfirm = () => { onConfirm(rejectionReason); }; return (
{t("rejection_reason")} ({t("optional")}) } value={rejectionReason} onChange={(e) => setRejectionReason(e.target.value)} />
); }