BillTracker/client
null 0abe861928 feat(tracker): multi-select bulk pay/skip (plan C3)
- Add a leading selection checkbox to each desktop + mobile row, threaded from
  the page through TrackerBucket via an optional RowSelection prop (renders only
  when the page supplies a toggle handler).
- Page owns the selection Set; a sticky bottom action bar appears when ≥1 bill is
  checked: "N selected · Pay · Skip · Clear".
- Pay selected reuses the bulkPay item shape + Undo from "Pay all due".
- Skip selected fans out saveBillMonthlyState (no bulk endpoint; skip has no money
  effect) with Promise.allSettled, an aggregated "n skipped / m failed" toast, and
  an Undo that un-skips. Selection clears on month change.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-05 14:56:34 -05:00
..
components feat(tracker): multi-select bulk pay/skip (plan C3) 2026-07-05 14:56:34 -05:00
contexts refactor(ts): convert all UI primitives + ThemeContext to TSX (B2) 2026-07-03 22:57:22 -05:00
hooks refactor(tracker): move settings/simplefin onto React Query + defer search (plan B) 2026-07-05 14:43:13 -05:00
lib feat(tracker): export/print the month + calendar link (plan C1/C2) 2026-07-05 14:49:09 -05:00
pages feat(tracker): multi-select bulk pay/skip (plan C3) 2026-07-05 14:56:34 -05:00
public/img refactor: component splits, PWA support, CommandPalette 2026-05-28 20:53:22 -05:00
App.tsx refactor(ts): convert the app shell to TSX (B7) 2026-07-04 19:49:57 -05:00
api.ts feat(tracker): export/print the month + calendar link (plan C1/C2) 2026-07-05 14:49:09 -05:00
index.css feat(tracker): export/print the month + calendar link (plan C1/C2) 2026-07-05 14:49:09 -05:00
main.tsx refactor(ts): convert the app shell to TSX (B7) 2026-07-04 19:49:57 -05:00
types.ts refactor(ts): move User to @/types + type auth endpoints; add code to 500 (Track C/D) 2026-07-05 12:26:11 -05:00