Replace the broken-looking Leaflet/OSM address picker with a MapLibre GL map using Map.ir vector tiles, plus Map.ir reverse geocoding for fast coordinates -> Persian address. - InteractiveMap: drop react-leaflet/leaflet; init a MapLibre map (Map.ir style via transformRequest x-api-key), a NavigationControl, and a fixed center pin — the map moves under the pin and the centre is reverse- geocoded on moveend (debounced). Wrapped dir=ltr so the map renders correctly inside the RTL page (fixes the scattered-tiles bug). Selected address shown in an overlay chip; city select / geolocation fly the map. - reverse geocoding: Nominatim -> Map.ir (https://map.ir/reverse), which returns proper Persian addresses (Nominatim was weak for Iran and its TOS forbids production use). - default map centre fixed to Tehran (matched the "تهران" selector). - key via VITE_MAPIR_KEY (documented in .env.example; real key in env). - deps: add maplibre-gl, remove leaflet/react-leaflet/@types/leaflet. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| assets | ||
| components | ||
| data | ||
| hooks | ||
| lib | ||
| requestHandler | ||
| routes | ||
| styles | ||
| types | ||
| utils | ||
| auth.server.ts | ||
| cookie.ts | ||
| entry.client.tsx | ||
| entry.server.tsx | ||
| i18n.ts | ||
| root.tsx | ||
| sessions.server.ts | ||
| tailwind.css | ||