M2-T09: build data visualization UI (heatmap map as home page)
- self-contained RecordsMap (only module importing leaflet/react-leaflet/ leaflet.heat/leaflet.markercluster); OSM tiles, swappable behind clean props - heatmap layers for location + poo (primary); time-range selector fetches only the window (locations server-filtered; poo client-filtered) - toggleable scatter layer with marker clustering; point-select reuses T10's edit/delete modals + hooks; query-key prefixes refresh map on mutation - pure map logic isolated + unit-tested; leaflet mocked in component tests - responsive layout; typed client only
This commit is contained in:
@@ -0,0 +1,18 @@
|
||||
/**
|
||||
* Public surface of the map module (M2-T09).
|
||||
* Only RecordsMap.tsx imports leaflet — external code should not.
|
||||
*/
|
||||
export { RecordsMap } from './RecordsMap'
|
||||
export type { RecordsMapProps } from './RecordsMap'
|
||||
|
||||
export {
|
||||
locationsToHeatPoints,
|
||||
pooToHeatPoints,
|
||||
locationsToMapPoints,
|
||||
pooToMapPoints,
|
||||
filterPooByTimeWindow,
|
||||
daysAgoISO,
|
||||
nowISO,
|
||||
computeCenter,
|
||||
} from './mapUtils'
|
||||
export type { HeatPoint, LocationMapPoint, PooMapPoint } from './mapUtils'
|
||||
Reference in New Issue
Block a user