Files
BanGUI/Docs/Tasks.md

24 lines
1.2 KiB
Markdown

# BanGUI — Task List
This document breaks the entire BanGUI project into development stages, ordered so that each stage builds on the previous one. Every task is described in prose with enough detail for a developer to begin work. References point to the relevant documentation.
Reference: `Docs/Refactoring.md` for full analysis of each issue.
---
## Open Issues
- **World Map highlight does not reset on mouse leave** (done)
- Location: `frontend/src/components/WorldMap.tsx`, `GeoLayer` component
- Root cause: interactive event handlers (`onMouseEnter`, `onMouseMove`, `onMouseLeave`, `onClick`, `onKeyDown`) were on wrapping `<g>` element, creating mismatch with `Geography` internal hover state.
- Fix applied:
1. Interactive props and aria attributes are on `<Geography>`.
2. Hover highlight uses `style.hover` with derived `fill` from `isSelected/count`.
3. Tooltip state resets via `Geography.onMouseLeave` -> `setTooltip(null)`.
4. Test asserts tooltip appears/disappears and button role label is correct.
- Verification commands:
- `cd frontend && npx vitest --run src/components/__tests__/WorldMap.test.tsx`
- `cd frontend && npx vitest --run`