## Why ### Problem Users viewing a budget had no way to look back at historical periods — the show page always displayed the current period with no navigation. The cashflow page's period selector also used a different visual style (loose buttons with gaps) compared to the new grouped button pattern established for budgets. ## What ### Changes - **Budget period navigation**: new `BudgetPeriodNavigation` component renders a `ButtonGroup` with `[<] [date range] [>]` buttons. Clicking the label returns to the current period; arrows navigate between existing periods. - **Backend**: `BudgetController::show` accepts an optional `?period=<uuid>` query param to serve a specific period. Future periods are blocked at the query level on both direct access and `nextPeriod` resolution. - **Dropdown**: removed the split `ButtonGroup` from the budget header; "Edit budget" and "Delete budget" now live together in a single `˅` dropdown. - **Cashflow period selector**: updated `PeriodNavigation` to use `ButtonGroup` + `size="icon"` buttons to match the same visual style. - **Tests**: 4 new feature tests covering period navigation, future-period blocking, cross-budget access (404), and `nextPeriod` boundary behaviour. ## Verification <img width="921" height="683" alt="image" src="https://github.com/user-attachments/assets/ceb5f70b-a15a-4a36-ae49-5d84054a62f9" /> |
||
|---|---|---|
| .. | ||
| Actions | ||
| Console/Commands | ||
| Contracts | ||
| Enums | ||
| Events | ||
| Http | ||
| Jobs | ||
| Listeners | ||
| Models | ||
| Notifications | ||
| Policies | ||
| Providers | ||
| Services | ||