File size: 780 Bytes
212c959 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 | import Modal from './Modal'
import Button from './Button'
export default function ConfirmDialog({
open,
onOpenChange,
title,
description,
onConfirm,
confirmLabel = 'Confirm',
destructive = false,
}) {
return (
<Modal
open={open}
onOpenChange={onOpenChange}
size="sm"
title={title}
description={description}
footer={
<div className="flex justify-end gap-2">
<Button variant="ghost" onClick={() => onOpenChange(false)}>
Cancel
</Button>
<Button variant={destructive ? 'danger' : 'primary'} onClick={onConfirm}>
{confirmLabel}
</Button>
</div>
}
>
<p className="text-sm text-muted-foreground">{description}</p>
</Modal>
)
}
|