Commit Graph

8 Commits

Author SHA1 Message Date
Jason Stedwell 55d636b512 Client UX: toast system, confirm dialogs, load-error banners, nav fix, 404 page
- New ToastProvider/useToast (self-built, no dep): success/error toasts replace
  all five alert() calls, with server error messages surfaced
- New ConfirmProvider/useConfirm promise-based dialog replaces all six
  window.confirm sites, showing what is being deleted; Escape/overlay cancels
- Dashboard + BreedingCalendar loaders use Promise.allSettled with a
  danger banner + Retry instead of silently blanking on fetch failure
- Settings load failure now surfaces a toast instead of vanishing
- Fix BreedingCalendar females list: read paginated {data} shape (was .dogs,
  so 'Start Heat Cycle' never listed any females)
- Nav links highlight on detail routes (/dogs/123, /pedigree/5)
- Catch-all 404 route with link back to Dashboard

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-06 14:55:32 -05:00
jason aa3b1b2404 feat(nav): add External Dogs nav link and route 2026-03-10 15:27:06 -05:00
jason aa63e4f388 feat(nav): swap Dogs icon from Users to PawPrint 2026-03-09 22:59:02 -05:00
jason 67912dc78d feat: App.jsx — dynamic kennel name in header, Settings nav link, useSettings hook 2026-03-09 22:14:51 -05:00
jason 49d2851532 feat: add /litters/:id route for LitterDetail page 2026-03-09 20:50:42 -05:00
jason 6a74c2d14e feat: Wire PairingSimulator into App router and navbar 2026-03-09 20:23:17 -05:00
jason bc6cf83f72 feat: Replace generic icon with br-logo.png in navbar brand 2026-03-09 18:47:27 -05:00
jason 3e9d878eb2 Add main App component with routing 2026-03-08 22:52:40 -05:00