whisper-money/app/Http
Víctor Falcón 7a056213cf
feat(accounts): allow setting initial balance when creating balance-tracking accounts (#239)
## Summary

- Adds an optional balance input field to the account creation modal for
**investment**, **loan**, **retirement**, and **savings** account types.
- When a balance is provided, an `AccountBalance` record is created for
today's date upon account creation.
- The balance label adapts to the account type (e.g., "Owed Amount" for
loans, "Balance" for others).

## Changes

- **`account-form.tsx`** — Shows `AmountInput` when a balance-tracking
type is selected and currency is set.
- **`create-account-dialog.tsx`** — Passes `balance` in the POST payload
when present.
- **`StoreAccountRequest.php`** — Adds optional `balance` (nullable
integer) validation.
- **`AccountController::store`** — Creates an `AccountBalance` record
when balance is provided.
- **`AccountTest.php`** — 3 new tests covering creation with balance,
without balance, and invalid balance validation.

## Screenshots
<img width="1017" height="649" alt="image"
src="https://github.com/user-attachments/assets/4bf1530e-0faf-45a4-a3d1-d0ec49d5b412"
/>
2026-03-20 10:51:42 +00:00
..
Controllers feat(accounts): allow setting initial balance when creating balance-tracking accounts (#239) 2026-03-20 10:51:42 +00:00
Middleware fix(dashboard): treat loans as debt in net worth (#238) 2026-03-20 09:55:53 +00:00
Requests feat(accounts): allow setting initial balance when creating balance-tracking accounts (#239) 2026-03-20 10:51:42 +00:00
Responses feat: Auto-open encryption key modal after login (#54) 2026-01-11 20:29:49 +01:00