- /coverage now renders a full-bleed Leaflet map of every ready coverage in the org as one composite heatmap; the prior table view moves to /coverage/list. - Top-right tower toggle list with Show All / Hide All. Disabled towers grey out and their overlay/marker drop from the map. - Bottom-center opacity slider controls all overlays in unison; the cnHeat dBm legend renders next to it. - Top-left base-layer toggle (OSM streets / Esri satellite) and a Nominatim address search bar that drops a marker. - Click anywhere on the map → Distance Tool side panel with each tower sorted by distance and the predicted RSSI at that point (read from each coverage's GeoTIFF via gdallocationinfo). ft/m unit toggle, NA for out-of-bbox, color-coded by signal quality. - Backend additions: Coverages.list_ready_for_organization/1, Coverages.query_point/3, Raster.query_rssi/3 (gdallocationinfo wrapper with bbox guard, NoData sentinel handling). - New JS hook MultiCoverageMap manages the layer set, toolbar, search, opacity, click-to-probe, and live updates via PubSub (coverage:enabled-changed and coverage:list-changed). |
||
|---|---|---|
| .. | ||
| channels | ||
| components | ||
| controllers | ||
| graphql | ||
| helpers | ||
| live | ||
| plugs | ||
| changelog_parser.ex | ||
| endpoint.ex | ||
| gettext.ex | ||
| gettext_helpers.ex | ||
| graphql_socket.ex | ||
| permissions.ex | ||
| plug_exceptions.ex | ||
| remote_ip.ex | ||
| router.ex | ||
| scoped_resource.ex | ||
| telemetry.ex | ||
| telemetry_filter.ex | ||
| user_auth.ex | ||