diff --git a/frontend-nuxt/assets/css/leaflet-overrides.css b/frontend-nuxt/assets/css/leaflet-overrides.css index bf2023a..05348f8 100644 --- a/frontend-nuxt/assets/css/leaflet-overrides.css +++ b/frontend-nuxt/assets/css/leaflet-overrides.css @@ -8,3 +8,18 @@ .leaflet-tile { visibility: visible !important; } + +/* Brief highlight when a tile is updated via SSE (tile freshness indicator). */ +@keyframes tile-fresh-glow { + 0% { + filter: brightness(1.15); + box-shadow: 0 0 0 0 oklch(0.6 0.2 264 / 0.4); + } + 100% { + filter: brightness(1); + box-shadow: none; + } +} +.leaflet-tile.tile-fresh { + animation: tile-fresh-glow 0.6s ease-out; +} diff --git a/frontend-nuxt/components/MapErrorBoundary.vue b/frontend-nuxt/components/MapErrorBoundary.vue new file mode 100644 index 0000000..1e7471e --- /dev/null +++ b/frontend-nuxt/components/MapErrorBoundary.vue @@ -0,0 +1,33 @@ + + + diff --git a/frontend-nuxt/components/MapView.vue b/frontend-nuxt/components/MapView.vue index 9cb891e..3398d09 100644 --- a/frontend-nuxt/components/MapView.vue +++ b/frontend-nuxt/components/MapView.vue @@ -32,6 +32,17 @@ :mapid="mapLogic.state.mapid.value" :display-coords="mapLogic.state.displayCoords.value" /> +
+ + +