diff --git a/library/i18n/locales/ar/simpleMap.json b/library/i18n/locales/ar/simpleMap.json new file mode 100644 index 000000000..3b70934e9 --- /dev/null +++ b/library/i18n/locales/ar/simpleMap.json @@ -0,0 +1,9 @@ +{ + "loading": "جارٍ تحميل الخريطة…", + "initFailed": "تعذّر تشغيل الخريطة. هذه مشكلة في رمز الخريطة أو في الاتصال.", + "help": { + "what": "تعرض هذه الخريطة الشعوب غير المُبشَّرة في العالم: مجتمعات لا تصل إلى الإنجيل وصولًا حقيقيًا.", + "how": "استخدم الألسنة (إن ظهرت) للتبديل بين العروض. انقر أي نقطة لمعرفة المزيد عن شعب.", + "source": "البيانات من" + } +} diff --git a/library/i18n/locales/de/simpleMap.json b/library/i18n/locales/de/simpleMap.json new file mode 100644 index 000000000..78a322fa2 --- /dev/null +++ b/library/i18n/locales/de/simpleMap.json @@ -0,0 +1,9 @@ +{ + "loading": "Karte wird geladen…", + "initFailed": "Die Karte konnte nicht starten. Das ist ein Problem mit dem Kartenschlüssel oder der Verbindung.", + "help": { + "what": "Diese Karte zeigt die unerreichten Volksgruppen der Welt: Gemeinschaften ohne echten Zugang zum Evangelium.", + "how": "Mit den Reitern (falls sichtbar) wechseln Sie die Ansicht. Klicken Sie auf einen Punkt, um mehr über eine Volksgruppe zu erfahren.", + "source": "Daten von" + } +} diff --git a/library/i18n/locales/en/simpleMap.json b/library/i18n/locales/en/simpleMap.json new file mode 100644 index 000000000..417310ae7 --- /dev/null +++ b/library/i18n/locales/en/simpleMap.json @@ -0,0 +1,9 @@ +{ + "loading": "Loading map…", + "initFailed": "The map could not start. This is a map-token or connection problem.", + "help": { + "what": "This map shows the unreached people groups of the world: communities without meaningful access to the Gospel.", + "how": "Use the tabs (if shown) to switch between views. Click any dot to learn more about a people group.", + "source": "Data from" + } +} diff --git a/library/i18n/locales/es/simpleMap.json b/library/i18n/locales/es/simpleMap.json new file mode 100644 index 000000000..eafd1bea4 --- /dev/null +++ b/library/i18n/locales/es/simpleMap.json @@ -0,0 +1,9 @@ +{ + "loading": "Cargando mapa…", + "initFailed": "El mapa no pudo iniciarse. Es un problema de la clave del mapa o de la conexión.", + "help": { + "what": "Este mapa muestra los pueblos no alcanzados del mundo: comunidades sin acceso real al Evangelio.", + "how": "Usa las pestañas (si aparecen) para cambiar de vista. Haz clic en cualquier punto para saber más de un pueblo.", + "source": "Datos de" + } +} diff --git a/library/i18n/locales/fr/simpleMap.json b/library/i18n/locales/fr/simpleMap.json new file mode 100644 index 000000000..94460bbc5 --- /dev/null +++ b/library/i18n/locales/fr/simpleMap.json @@ -0,0 +1,9 @@ +{ + "loading": "Chargement de la carte…", + "initFailed": "La carte n’a pas pu démarrer. C’est un problème de clé de carte ou de connexion.", + "help": { + "what": "Cette carte montre les peuples non atteints du monde : des communautés sans véritable accès à l’Évangile.", + "how": "Utilisez les onglets (s’ils s’affichent) pour changer de vue. Cliquez sur un point pour en savoir plus sur un peuple.", + "source": "Données :" + } +} diff --git a/library/i18n/locales/hi/simpleMap.json b/library/i18n/locales/hi/simpleMap.json new file mode 100644 index 000000000..b40eb2ea7 --- /dev/null +++ b/library/i18n/locales/hi/simpleMap.json @@ -0,0 +1,9 @@ +{ + "loading": "नक्शा लोड हो रहा है…", + "initFailed": "नक्शा शुरू नहीं हो सका। यह नक्शे की कुंजी या कनेक्शन की समस्या है।", + "help": { + "what": "यह नक्शा दुनिया के अपहुँचे जनसमूह दिखाता है: ऐसे समुदाय जिनकी सुसमाचार तक वास्तविक पहुँच नहीं है।", + "how": "दृश्य बदलने के लिए टैब (यदि दिखें) का उपयोग करें। किसी जनसमूह के बारे में जानने के लिए किसी भी बिंदु पर क्लिक करें।", + "source": "डेटा स्रोत" + } +} diff --git a/library/i18n/locales/it/simpleMap.json b/library/i18n/locales/it/simpleMap.json new file mode 100644 index 000000000..99cded22f --- /dev/null +++ b/library/i18n/locales/it/simpleMap.json @@ -0,0 +1,9 @@ +{ + "loading": "Caricamento della mappa…", + "initFailed": "La mappa non è partita. È un problema della chiave della mappa o della connessione.", + "help": { + "what": "Questa mappa mostra i popoli non raggiunti del mondo: comunità senza un vero accesso al Vangelo.", + "how": "Usa le schede (se presenti) per cambiare vista. Clicca su un punto per saperne di più su un popolo.", + "source": "Dati da" + } +} diff --git a/library/i18n/locales/pt/simpleMap.json b/library/i18n/locales/pt/simpleMap.json new file mode 100644 index 000000000..23b699f8d --- /dev/null +++ b/library/i18n/locales/pt/simpleMap.json @@ -0,0 +1,9 @@ +{ + "loading": "A carregar o mapa…", + "initFailed": "O mapa não pôde iniciar. É um problema da chave do mapa ou da ligação.", + "help": { + "what": "Este mapa mostra os povos não alcançados do mundo: comunidades sem acesso real ao Evangelho.", + "how": "Use os separadores (se visíveis) para mudar de vista. Clique em qualquer ponto para saber mais sobre um povo.", + "source": "Dados de" + } +} diff --git a/library/i18n/locales/ro/simpleMap.json b/library/i18n/locales/ro/simpleMap.json new file mode 100644 index 000000000..ac780abe8 --- /dev/null +++ b/library/i18n/locales/ro/simpleMap.json @@ -0,0 +1,9 @@ +{ + "loading": "Se încarcă harta…", + "initFailed": "Harta nu a putut porni. Este o problemă de cheie a hărții sau de conexiune.", + "help": { + "what": "Această hartă arată popoarele neatinse ale lumii: comunități fără acces real la Evanghelie.", + "how": "Folosiți filele (dacă apar) pentru a schimba vederea. Dați clic pe un punct pentru a afla mai multe despre un popor.", + "source": "Date de la" + } +} diff --git a/library/i18n/locales/ru/simpleMap.json b/library/i18n/locales/ru/simpleMap.json new file mode 100644 index 000000000..22470c694 --- /dev/null +++ b/library/i18n/locales/ru/simpleMap.json @@ -0,0 +1,9 @@ +{ + "loading": "Загрузка карты…", + "initFailed": "Карта не запустилась. Это проблема ключа карты или соединения.", + "help": { + "what": "Эта карта показывает неохваченные народы мира: общины без настоящего доступа к Евангелию.", + "how": "Переключайте виды вкладками (если они показаны). Нажмите на любую точку, чтобы узнать больше о народе.", + "source": "Данные:" + } +} diff --git a/library/i18n/locales/zh/simpleMap.json b/library/i18n/locales/zh/simpleMap.json new file mode 100644 index 000000000..a5217d82f --- /dev/null +++ b/library/i18n/locales/zh/simpleMap.json @@ -0,0 +1,9 @@ +{ + "loading": "正在加载地图…", + "initFailed": "地图无法启动。这是地图密钥或网络连接的问题。", + "help": { + "what": "这张地图显示世界上的未得之民:尚未真正接触福音的群体。", + "how": "使用标签页(如有显示)切换视图。点击任意圆点了解该族群。", + "source": "数据来源" + } +} diff --git a/plugin-designs/doxa-simple-map/doxa-simple-map.vue b/plugin-designs/doxa-simple-map/doxa-simple-map.vue index 2dfed1034..dd42c6cd2 100644 --- a/plugin-designs/doxa-simple-map/doxa-simple-map.vue +++ b/plugin-designs/doxa-simple-map/doxa-simple-map.vue @@ -208,7 +208,7 @@ useShadowStyles(` `, 'doxa-simple-map') // ─── i18n ───────────────────────────────────────────────────────────────────── -const { t, locale } = useI18n() +const { t, te, locale } = useI18n() // ─── Mapbox basemap localisation ────────────────────────────────────────────── // On Mapbox Standard / Streets styles, common label layers carry per-locale @@ -282,6 +282,10 @@ const DEFAULT_TABS = [ { id: 'prayer', label: 'Prayer', colorStrategy: 'prayer', legend: 'prayer', popup: 'prayer' } ] const tabs = computed(() => profileConfig?.value?.tabs ?? DEFAULT_TABS) +// A built-in tab reads its label from tabs. in the reader's language. A label the HOST passed in +// profileConfig.tabs is the host's own words and is shown as given. +const DEFAULT_LABELS = Object.fromEntries(DEFAULT_TABS.map((d) => [d.id, d.label])) +const tabLabel = (tab) => ((!tab.label || tab.label === DEFAULT_LABELS[tab.id]) && te('tabs.' + tab.id)) ? t('tabs.' + tab.id) : tab.label const showTabBar = computed(() => tabs.value.length > 1) // ─── Tab state ──────────────────────────────────────────────────────────────── @@ -362,7 +366,7 @@ function _flatItemsToStlNodes(items) { return out } const legendNodes = computed(() => _flatItemsToStlNodes(flatLegend.items.value)) -const legendTitle = computed(() => 'Legend') +const legendTitle = computed(() => t('legend.titleBar.legend')) // Prayer progress bar (header of the prayer legend; Driver 2026-09-16). The payload // is null on every non-prayer tab → no bar. Passed as a prop to the desktop STL // below AND provide()d so the MOBILE sheet's embedded @@ -1309,7 +1313,7 @@ onMounted(async () => { if (!map.value) { console.error('[doxa-simple-map] Map failed to initialize — check token and container') - mapError.value = 'Map failed to initialize — check token and container' + mapError.value = t('simpleMap.initFailed') return } @@ -1354,14 +1358,14 @@ onBeforeUnmount(() => { :class="{ active: activeTabId === tab.id }" @click="switchTab(tab.id)" > - {{ tab.label }} + {{ tabLabel(tab) }}
-
Loading map…
-
The map could not be loaded. {{ mapError }}
+
{{ t('simpleMap.loading') }}
+
{{ t('allPeopleGroups.loadError') }} {{ mapError }}
- -

About This Map

-

This map displays Unreached People Groups (UPGs) around the world — communities without meaningful access to the Gospel.

-

Use the tabs (if shown) to switch between Prayer and Engagement views. Click any dot to learn more about a people group.

-

Data sourced from pray.doxa.life.

+ +

{{ t('buttons.aboutThisMap') }}

+

{{ t('simpleMap.help.what') }}

+

{{ t('simpleMap.help.how') }}

+

{{ t('simpleMap.help.source') }} pray.doxa.life.