Corrections to the previous weather-map pass: * The "helper" that was supposed to live in the top-right was the color legend, not the layer description. Move the Leaflet legend control to `topright` (was `bottomright` on desktop). * Put the layer description back in the desktop sidebar where it used to live, now with a "Group · Label" header above the body text so it matches the new style in the mockup. * Add play/stop controls to the weather forecast timeline, ported from the propagation map: start plays "now" → end at 1s/step and loops; stop returns to the time closest to wall clock. A manual click interrupts playback the same way it does on /map. * Fix the reconnect/reload loop I introduced by making mount do a synchronous ProfilesFile read + derive for the full 92k-point grid. That was pushing mount past the LV socket join timeout on a cold pod, which makes the LV client fall back to a full HTTP reload every ~20 seconds (no server-side error). Mount now uses the original `latest_weather_grid/1` cache-only hot path and only `weather_grid_at/2` (sync disk read) on user timeline scrubs. * Clean up the playback timer in the hook's `destroyed` callback. |
||
|---|---|---|
| .. | ||
| admin | ||
| beacon_live | ||
| contact_live | ||
| user_management_live | ||
| about_live.ex | ||
| algo_live.ex | ||
| contact_map_live.ex | ||
| map_live.ex | ||
| path_live.ex | ||
| privacy_live.ex | ||
| rover_live.ex | ||
| status_live.ex | ||
| submit_live.ex | ||
| user_profile_live.ex | ||
| weather_map_live.ex | ||