whisper-money/app/Http/Controllers/Api
Víctor Falcón d470ee9646 feat(spaces): scope reads by active space and add the space switcher
Flip every user-facing read (dashboard, cashflow, transactions, budgets,
accounts, settings, analytics, sync, shared props) from user-scoped to
active-space-scoped via explicit $space->… relations, and re-key the category
tree, spending, and budget-assignment services by space_id. Authorization moves
from creator-ownership to space membership.

Add the visible spaces layer behind a Pennant 'spaces' flag: a sidebar space
switcher, a settings page to create/rename/delete/switch spaces, per-space
offline-cache flushing, and the currentSpace/spaces shared props. Data creation
is unchanged — the BelongsToSpace trait already stamps space_id from the active
space. Isolation tests prove no cross-space leakage.
2026-07-09 15:19:03 +02:00
..
Concerns fix(analysis): respect category types like the cashflow screen (#612) 2026-06-29 21:04:18 +02:00
AccountController.php feat(spaces): scope reads by active space and add the space switcher 2026-07-09 15:19:03 +02:00
CashflowAnalyticsController.php feat(spaces): scope reads by active space and add the space switcher 2026-07-09 15:19:03 +02:00
CategoryMonthlyBreakdownController.php feat(spaces): scope reads by active space and add the space switcher 2026-07-09 15:19:03 +02:00
DashboardAnalyticsController.php feat(spaces): scope reads by active space and add the space switcher 2026-07-09 15:19:03 +02:00
ImportDataController.php feat(spaces): scope reads by active space and add the space switcher 2026-07-09 15:19:03 +02:00
SavedFilterController.php feat(spaces): scope reads by active space and add the space switcher 2026-07-09 15:19:03 +02:00
TransactionAnalysisController.php feat(spaces): scope reads by active space and add the space switcher 2026-07-09 15:19:03 +02:00
TransactionController.php feat(spaces): scope reads by active space and add the space switcher 2026-07-09 15:19:03 +02:00