mirror of
https://github.com/dpup/meshstream.git
synced 2026-03-28 17:42:37 +01:00
Map: - Fix __publicField error by setting esbuild target to esnext - Replace react-map-gl with direct maplibre-gl imperative API across all map components - Add dark theme styling for MapLibre popup, attribution, and navigation controls - Add NavigationControl to NetworkMap and NodeLocationMap - Fix auto-zoom race condition using mapLoaded state - Fix node click popup being immediately dismissed - Add MQTT links as separate dashed purple layer - Reduce node/dot sizes on NetworkMap - Switch glyph CDN to fonts.openmaptiles.org - Extend map legend with SNR line color key and MQTT indicator Node detail: - Extract shared ConnectionRow and ConnectionList components - Compact connections table: single row per entry with color-coded SNR, badges, short time - Apply same compact style to NeighborInfoPacket neighbor list - Move Connections section into right column below Last Activity - Split Gateway Node out of Device Information into its own card - Fold observed node count into "Recently observed nodes (N)" subtext - Add formatLastSeenShort for compact time display Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
32 lines
1.1 KiB
TypeScript
32 lines
1.1 KiB
TypeScript
import type { StyleSpecification } from "maplibre-gl";
|
|
|
|
const CARTO_TILES = [
|
|
"https://a.basemaps.cartocdn.com/dark_all/{z}/{x}/{y}.png",
|
|
"https://b.basemaps.cartocdn.com/dark_all/{z}/{x}/{y}.png",
|
|
"https://c.basemaps.cartocdn.com/dark_all/{z}/{x}/{y}.png",
|
|
];
|
|
|
|
const CARTO_SOURCE = {
|
|
type: "raster" as const,
|
|
tiles: CARTO_TILES,
|
|
tileSize: 256,
|
|
attribution:
|
|
'© <a href="https://carto.com/attributions">CARTO</a> © <a href="https://www.openstreetmap.org/copyright">OpenStreetMap contributors</a>',
|
|
maxzoom: 19,
|
|
};
|
|
|
|
/** Base CartoDB Dark Matter style — raster tiles, no labels */
|
|
export const CARTO_DARK_STYLE: StyleSpecification = {
|
|
version: 8,
|
|
sources: { carto: CARTO_SOURCE },
|
|
layers: [{ id: "carto-dark", type: "raster", source: "carto" }],
|
|
};
|
|
|
|
/** CartoDB Dark Matter style with glyph support for GL text labels */
|
|
export const CARTO_DARK_STYLE_LABELLED: StyleSpecification = {
|
|
version: 8,
|
|
glyphs: "https://fonts.openmaptiles.org/{fontstack}/{range}.pbf",
|
|
sources: { carto: CARTO_SOURCE },
|
|
layers: [{ id: "carto-dark", type: "raster", source: "carto" }],
|
|
};
|