diff --git a/plugin-designs/cities-internet/connectivity-map.vue b/plugin-designs/cities-internet/connectivity-map.vue index cba469537..4745f3540 100644 --- a/plugin-designs/cities-internet/connectivity-map.vue +++ b/plugin-designs/cities-internet/connectivity-map.vue @@ -50,6 +50,7 @@ import ShareButton from '@map/components/map-controls/ShareButton.vue' import { resolveAssetsBase } from '@map/utils/embedBase.js' import { resolveMapProvider } from '@map/composables/useMapProvider.js' import { ensureEngineScript, engineGlobal, ensureEngineCSS, engineStylesheetUrl, engineUiLocale } from '@map/composables/useMapInstance.js' +import { localizeBasemapLabels } from '@map/maps/localize-labels.js' import { resolveNamedStyle } from '@map/styles/registry.js' import { installRtlTextPlugin } from '@map/maps/rtl-text.js' // People-group dots open the SAME detail panel as Prayer Progress (doxa-simple-map): the @@ -417,6 +418,10 @@ onMounted(async () => { // countries carrying a real attribution requirement (India CC BY 2.5 IN, etc). addMapAttribution(map, { boundaries: true }) map.once('load', async () => { + // The BASEMAP's place names in the reader's language (Mapbox setLanguage / MapLibre name:), + // the library's own helper. useMapInstance applies it for every map built through it; this map is + // built raw, so it was the one map whose country and city names stayed English under ar. + try { localizeBasemapLabels(map, readerLang()) } catch (_) { /* a nicety lost, never a broken map */ } paint(map, adm0) selectedPin.initialize() await groupsLoaded