24 lines
1.2 KiB
Markdown
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`
|
|
|
|
|