BillTracker/client/components
null d92cc38116 fix(bill-modal): correctness + toast fallbacks + validator consolidation (BM1)
- handleBlur now takes the field value explicitly (was positional guessing that
  fell through to interestRate for unmapped fields).
- Three copy-pasted money validators -> one shared validateNonNegativeMoney in
  client/lib/money.js; expected-amount copy 'positive' -> 'non-negative' (0 ok).
- Removed the save action's duplicate due-day/interest-rate re-validation
  (validateForm already covers it); kept the parses.
- Added err.message fallbacks to save/deactivate/verify-autopay toasts.
- Save toasts now name the bill.

Test: client/lib/money.test.js.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-03 18:32:25 -05:00
..
admin fix(bank-sync): admin config, matching, and worker updates 2026-06-07 19:41:17 -05:00
data feat(data): "Erase my data" danger zone (Batch 5) 2026-07-03 15:21:07 -05:00
layout feat(nav): surface Data in the primary app menu (IMP-IA-01) 2026-07-03 12:50:07 -05:00
snowball refactor(client): single source of truth for money formatting (IMP-CODE-01) 2026-07-03 12:46:22 -05:00
tracker feat(cashflow): safe-to-spend projection with timeline, vitest setup, package upgrades 2026-06-12 01:32:28 -05:00
transactions refactor(client): single source of truth for money formatting (IMP-CODE-01) 2026-07-03 12:46:22 -05:00
ui feat(settings): auto-save preferences with live save status (batch 0.39.0) 2026-06-12 02:08:42 -05:00
BillHistoricalImportDialog.jsx fix: historical import loading state, remove stray catalog export 2026-06-06 23:17:08 -05:00
BillMerchantRules.jsx refactor(client): single source of truth for money formatting (IMP-CODE-01) 2026-07-03 12:46:22 -05:00
BillModal.jsx fix(bill-modal): correctness + toast fallbacks + validator consolidation (BM1) 2026-07-03 18:32:25 -05:00
BillRulesManager.jsx feat: bill rules manager page, merchant re-normalization, match suggestion scoring fix, cleanup pruning 2026-06-04 20:45:11 -05:00
BillsTableInner.jsx refactor(client): single source of truth for money formatting (IMP-CODE-01) 2026-07-03 12:46:22 -05:00
CalendarFeedManager.jsx fix(ui): calendar settings improvements 2026-06-07 16:52:50 -05:00
CommandPalette.jsx feat(data): actionable badges, health dots, at-a-glance stats, palette links (Batch 2) 2026-07-03 15:05:25 -05:00
ErrorBoundary.jsx v0.19.2: add React Error Boundaries for crash recovery 2026-05-09 18:33:02 -05:00
IncomeBreakdownModal.jsx refactor(client): single source of truth for money formatting (IMP-CODE-01) 2026-07-03 12:46:22 -05:00
MarkdownText.jsx initial commit 2026-05-03 19:51:57 -05:00
MobileBillRow.jsx feat: live transaction search in merchant rules, link-import preference toggle, tracker row tweaks 2026-06-06 23:04:53 -05:00
MobileTrackerRow.jsx fix(utils): extract localDateString to shared lib, replace .toISOString().slice() pattern across client 2026-06-11 23:40:22 -05:00
PageLoader.jsx v0.20.1: code splitting, version badge on roadmap, roadmap nav link 2026-05-09 22:01:19 -05:00
PageTransition.jsx chore(client): update PageTransition spacing 2026-06-09 20:51:32 -05:00
RecentlyDeletedBillsDialog.jsx feat(bills): "Recently deleted" restore view for the 30-day window (IMP-UX-01) 2026-07-03 12:56:45 -05:00
ReleaseNotesDialog.jsx 0.34.3 2026-05-31 15:06:10 -05:00
SearchFilterPanel.jsx fix(tracker): search filter and bucket improvements 2026-06-07 17:33:31 -05:00
StatusBadge.jsx style: stronger late/missed payment visibility 2026-05-28 23:42:46 -05:00
SubscriptionCatalogSection.jsx feat: dedicated subscription catalog page, evidence badges, price display in recommendations 2026-06-06 20:44:54 -05:00
SummaryCard.jsx style: global readability/theme pass 2026-05-28 23:18:14 -05:00