Replace browser confirm() with styled confirmation modal #18

Closed
opened 2026-02-08 06:44:20 -08:00 by kyle · 1 comment
Owner

Context: Inline window.confirm() is used for delete confirmations across all list pages. These are unstyled browser dialogs that break the polished UI.

Files affected:

  • frontend/src/pages/VipList.tsx (line 216)
  • frontend/src/pages/DriverList.tsx (line 215)
  • frontend/src/pages/EventList.tsx (line 112)
  • frontend/src/pages/UserList.tsx (lines 97, 103, 110)

Suggested fix:

  • Create a <ConfirmModal> component (or use Shadcn AlertDialog)
  • Add useConfirm() hook that returns a promise-based confirm function
  • Replace all if (confirm(...)) calls with the styled modal

Effort: Small

**Context:** Inline `window.confirm()` is used for delete confirmations across all list pages. These are unstyled browser dialogs that break the polished UI. **Files affected:** - `frontend/src/pages/VipList.tsx` (line 216) - `frontend/src/pages/DriverList.tsx` (line 215) - `frontend/src/pages/EventList.tsx` (line 112) - `frontend/src/pages/UserList.tsx` (lines 97, 103, 110) **Suggested fix:** - Create a `<ConfirmModal>` component (or use Shadcn AlertDialog) - Add `useConfirm()` hook that returns a promise-based confirm function - Replace all `if (confirm(...))` calls with the styled modal **Effort:** Small
Author
Owner

Created with dark-themed styling. Replaced all in VipList, DriverList, EventList, and UserList.

Created with dark-themed styling. Replaced all in VipList, DriverList, EventList, and UserList.
kyle closed this issue 2026-02-08 07:09:58 -08:00
Sign in to join this conversation.
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: kyle/vip-coordinator#18