Implement error handling and visual enhancements in map components

- Introduced MapErrorBoundary component to handle map loading errors gracefully.
- Enhanced MapView with a reconnection status indicator for live updates.
- Added tile freshness animation to indicate updated tiles visually.
- Preloaded marker icon images to improve rendering performance.
- Updated various pages to utilize the new MapErrorBoundary for better user experience.
This commit is contained in:
2026-03-01 16:04:19 +03:00
parent 7f990c0c11
commit db0b48774a
9 changed files with 128 additions and 11 deletions

View File

@@ -71,8 +71,11 @@ export const SmartTileLayer = L.TileLayer.extend({
const key = `${x}:${y}:${zoom}`
const tile = this._tiles[key]
if (tile) {
if (tile?.el) {
tile.el.src = this.getTrueTileUrl({ x, y }, z)
tile.el.classList.add('tile-fresh')
const el = tile.el
setTimeout(() => el.classList.remove('tile-fresh'), 600)
}
},
}) as unknown as new (urlTemplate: string, options?: L.TileLayerOptions) => L.TileLayer & {