Problem
PollView.jsx:301 uses confirm('Delete your availability?') — a native browser dialog for a destructive action. This is inconsistent with poll deletion which uses a proper DeletePollDialog.
The native confirm() dialog:
- Looks different on every browser/OS
- Can't be styled to match the app's design system
- Creates anxiety — users see an unfamiliar, ugly dialog for a destructive action
Solution
Install @shadcn/alert-dialog and create a DeleteResponseDialog component (or reuse an inline AlertDialog pattern). AlertDialog prevents accidental dismiss (click outside / Escape won't close), which is the correct behavior for destructive confirmations.
Also: DeletePollDialog should use AlertDialog
DeletePollDialog.jsx:33 uses regular Dialog for poll deletion. Per shadcn conventions, destructive actions should use AlertDialog — it prevents accidental dismiss.
JTBD context
Confirm/Modify stages — destructive actions need clear, consistent confirmation to reduce anxiety.
Problem
PollView.jsx:301usesconfirm('Delete your availability?')— a native browser dialog for a destructive action. This is inconsistent with poll deletion which uses a properDeletePollDialog.The native
confirm()dialog:Solution
Install
@shadcn/alert-dialogand create aDeleteResponseDialogcomponent (or reuse an inline AlertDialog pattern). AlertDialog prevents accidental dismiss (click outside / Escape won't close), which is the correct behavior for destructive confirmations.Also: DeletePollDialog should use AlertDialog
DeletePollDialog.jsx:33uses regularDialogfor poll deletion. Per shadcn conventions, destructive actions should useAlertDialog— it prevents accidental dismiss.JTBD context
Confirm/Modify stages — destructive actions need clear, consistent confirmation to reduce anxiety.