Make admin modals non-dismissible with confirmation

Prevent accidental data loss by requiring confirmation before closing any admin modal via backdrop click. Applied to all admin pages with dialogs.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
dwindown
2025-12-25 11:50:00 +07:00
parent 8c7f4000a9
commit 5ae1632684
5 changed files with 42 additions and 6 deletions

View File

@@ -205,7 +205,13 @@ export default function AdminMembers() {
)}
</div>
<Dialog open={dialogOpen} onOpenChange={setDialogOpen}>
<Dialog open={dialogOpen} onOpenChange={(open) => {
if (!open) {
const confirmed = window.confirm('Tutup dialog? Data yang belum disimpan akan hilang.');
if (!confirmed) return;
}
setDialogOpen(open);
}}>
<DialogContent className="max-w-lg border-2 border-border">
<DialogHeader>
<DialogTitle>Detail Member</DialogTitle>