From ac5a14ffaf7a2e9342f45e2931d3c17970ffe6ce Mon Sep 17 00:00:00 2001 From: Doxa Maps Date: Tue, 29 Sep 2026 08:39:07 +0000 Subject: [PATCH] The UPG-100 map's first status re-resolves on a language switch: it was set once at setup, which check:frozen-labels refuses --- plugin-designs/my-upg-100-list/upg-100-list.vue | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/plugin-designs/my-upg-100-list/upg-100-list.vue b/plugin-designs/my-upg-100-list/upg-100-list.vue index 2a67feafc..88b004cc1 100644 --- a/plugin-designs/my-upg-100-list/upg-100-list.vue +++ b/plugin-designs/my-upg-100-list/upg-100-list.vue @@ -414,7 +414,12 @@ const API_BASE = (typeof window !== 'undefined' && window.MAP_APP_API_URL) // so the dialog opens in this tab rather than a popup a browser may block. The // packet's locale follows the app's, so a reader gets it in their own language. const { locale: packetLocale, t } = useI18n() -status.value = t('legend.loadingData') +// The first status a reader sees. Set in a watcher, not once at setup, so a language switch while the +// map is still loading re-resolves it; the first real status replaces it and the watcher then leaves it. +let loadingText = '' +watch(packetLocale, () => { + if (status.value === '' || status.value === loadingText) status.value = loadingText = t('legend.loadingData') +}, { immediate: true }) // ★ THE LEGEND SPEAKS THE READER'S LANGUAGE. Its rows were clusters.json's English labels and its // section rows the English grouping keys, while the packet printed from the same row was localized