32 lines
1.2 KiB
Markdown
32 lines
1.2 KiB
Markdown
# Plan 33-05 Summary
|
|
|
|
**Status:** Complete
|
|
**Completed:** 2026-04-13
|
|
|
|
## What Was Built
|
|
|
|
Client-side currency system: formatters, market/currency selector, auto-suggestion, conversion toggle.
|
|
|
|
### Key Changes
|
|
- Added formatDualPrice() for dual display format with ~ prefix
|
|
- Evolved useCurrency() to return CurrencyContext { currency, market, showConversions }
|
|
- Created useExchangeRates hook and convertClientPrice utility
|
|
- Redesigned settings page: "Market & Currency" heading, conversion toggle
|
|
- Added locale-based auto-suggestion banner
|
|
- Updated useFormatters to destructure from CurrencyContext
|
|
|
|
### Key Files Created/Modified
|
|
- `src/client/lib/formatters.ts` — formatDualPrice added
|
|
- `src/client/hooks/useCurrency.ts` — CurrencyContext interface
|
|
- `src/client/hooks/useFormatters.ts` — Destructure update
|
|
- `src/client/hooks/useExchangeRates.ts` — New hook
|
|
- `src/client/routes/settings.tsx` — Full UI redesign
|
|
|
|
## Self-Check: PASSED
|
|
- [x] formatDualPrice exports correctly
|
|
- [x] useCurrency returns CurrencyContext
|
|
- [x] Settings page has Market & Currency heading
|
|
- [x] Settings page has Show Converted Prices toggle
|
|
- [x] Auto-suggestion banner present
|
|
- [x] Build succeeds
|