test / src /components /sidebar /DeleteDialog.tsx
aiioe's picture
Automated build & deploy
e454383 verified
Raw History Blame Contribute Delete
1.19 kB
import {
Dialog,
DialogContent,
DialogHeader,
DialogTitle,
DialogDescription,
DialogFooter,
} from "@/components/ui/dialog";
import { Button } from "@/components/ui/button";
type DeleteDialogProps = {
chatId: string;
isOpen: boolean;
onClose: () => void;
onDelete?: (chatId: string) => Promise<Boolean>;
};
export function DeleteDialog({
chatId,
onDelete,
isOpen,
onClose,
}: DeleteDialogProps) {
const handleDelete = () => {
if (onDelete) {
onDelete(chatId).then((val) => {
val && onClose();
});
}
};
return (
<Dialog open={isOpen} onOpenChange={onClose}>
<DialogContent>
<DialogHeader>
<DialogTitle>Delete Chat</DialogTitle>
<DialogDescription>
Are you sure you want to delete this chat? This action cannot be
undone.
</DialogDescription>
</DialogHeader>
<DialogFooter>
<Button variant="outline" onClick={onClose}>
Cancel
</Button>
<Button variant="destructive" onClick={handleDelete}>
Delete
</Button>
</DialogFooter>
</DialogContent>
</Dialog>
);
}