feat(map): rebuild popup as mini card with Ofsted badge and headline metric

Replaces the bare Leaflet popup with a mini card showing school name,
3-state Ofsted badge (OEIF grade / ReportCard / pending), phase tag,
headline metric (Att8 for secondary, RWM% for primary) with delta vs
LA/national average, and a styled View Details button. Threads
nationalAvgRwm and laAverages from HomeView → SchoolMap → LeafletMapInner.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Tudor Sitaru
2026-04-13 14:29:55 +01:00
parent 51310160a8
commit 177571f411
3 changed files with 101 additions and 11 deletions
+4 -2
View File
@@ -28,10 +28,10 @@ interface SchoolMapProps {
referencePoint?: [number, number];
onMarkerClick?: (school: School) => void;
nationalAvgRwm?: number | null;
laAverages?: Record<string, number | null>;
}
export function SchoolMap({ schools, center, zoom = 13, referencePoint, onMarkerClick, nationalAvgRwm: _nationalAvgRwm }: SchoolMapProps) {
// TODO: thread _nationalAvgRwm to LeafletMapInner (Task 7)
export function SchoolMap({ schools, center, zoom = 13, referencePoint, onMarkerClick, nationalAvgRwm, laAverages }: SchoolMapProps) {
const wrapperRef = useRef<HTMLDivElement>(null);
const [isFullscreen, setIsFullscreen] = useState(false);
@@ -91,6 +91,8 @@ export function SchoolMap({ schools, center, zoom = 13, referencePoint, onMarker
zoom={zoom}
referencePoint={referencePoint}
onMarkerClick={onMarkerClick}
nationalAvgRwm={nationalAvgRwm}
laAverages={laAverages}
/>
</div>
);