- 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> |
||
|---|---|---|
| .. | ||
| billDrafts.js | ||
| billingSchedule.js | ||
| cashflowUtils.js | ||
| cashflowUtils.test.js | ||
| money.js | ||
| money.test.js | ||
| reorder.js | ||
| trackerTableColumns.js | ||
| trackerUtils.js | ||
| trackerUtils.test.js | ||
| utils.js | ||
| utils.test.js | ||
| version.js | ||