MyMidas/frontend/src/pages/investments
megaproxy cdc1e67321 Investment portfolio charts, search fix, and holding creation fixes
- Add four portfolio charts: allocation donut by holding, allocation
  donut by asset type, cost basis vs current value bar, return % bar
- Fix asset search to use yf.Search() full-text instead of ticker-only
  lookup — name searches like "vanguard ftse all world" now work
- Fix holding creation double-quantity bug: holdings now created with
  quantity=0 so buy transaction is sole source of quantity/cost basis
- Add per-share / total price toggle in Add Holding modal with live
  calculated equivalent shown as you type
- Add ErrorBoundary in AppShell so render errors show a message instead
  of a blank page
- Fix donut charts using || instead of ?? when falling back from
  current_value to cost_basis_total (0 was not falling through ??)
- Allow HoldingCreate.quantity >= 0 (was gt=0) to support zero-init
- Fix error display for Pydantic v2 array-of-objects validation errors

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-22 23:06:41 +00:00
..
AddHoldingModal.tsx Investment portfolio charts, search fix, and holding creation fixes 2026-04-22 23:06:41 +00:00
AssetDetail.tsx Complete Phase 3, Phase 5 polish and hardening 2026-04-22 14:59:11 +00:00
PortfolioCharts.tsx Investment portfolio charts, search fix, and holding creation fixes 2026-04-22 23:06:41 +00:00
PortfolioPage.tsx Investment portfolio charts, search fix, and holding creation fixes 2026-04-22 23:06:41 +00:00