From 9effdc5ebbfb8232edee1afbd2a74c1b9b157bbb Mon Sep 17 00:00:00 2001 From: Tim Haasdyk Date: Fri, 10 Oct 2025 11:47:29 +0200 Subject: [PATCH] Test adding context to a translated string --- .../lib/components/field-editors/multi-select.svelte | 3 ++- .../src/lib/components/field-editors/select.svelte | 3 ++- frontend/viewer/src/lib/i18n/index.ts | 4 +++- frontend/viewer/src/lib/i18n/strings.svelte.ts | 10 ++++++++++ frontend/viewer/src/locales/en.po | 4 ++-- frontend/viewer/src/locales/es.po | 4 ++-- frontend/viewer/src/locales/fr.po | 6 +++--- frontend/viewer/src/locales/id.po | 6 +++--- frontend/viewer/src/locales/ko.po | 6 +++--- frontend/viewer/src/locales/ms.po | 6 +++--- frontend/viewer/src/locales/sw.po | 6 +++--- 11 files changed, 36 insertions(+), 22 deletions(-) create mode 100644 frontend/viewer/src/lib/i18n/strings.svelte.ts diff --git a/frontend/viewer/src/lib/components/field-editors/multi-select.svelte b/frontend/viewer/src/lib/components/field-editors/multi-select.svelte index b8f245233e..7fe36a82e2 100644 --- a/frontend/viewer/src/lib/components/field-editors/multi-select.svelte +++ b/frontend/viewer/src/lib/components/field-editors/multi-select.svelte @@ -15,6 +15,7 @@ import {slide} from 'svelte/transition'; import {watch} from 'runed'; import {computeCommandScore} from 'bits-ui'; + import {s} from '$lib/i18n'; type Value = ReadonlyDeep; @@ -199,7 +200,7 @@
{#if IsMobile.value} {#if filterValue} - (filterValue = '')} aria-label={$t`clear`} /> + (filterValue = '')} aria-label={$t(s.clear)} /> {/if} {:else} {#if dirty} diff --git a/frontend/viewer/src/lib/components/field-editors/select.svelte b/frontend/viewer/src/lib/components/field-editors/select.svelte index 5a39aedeb6..c4c54091fc 100644 --- a/frontend/viewer/src/lib/components/field-editors/select.svelte +++ b/frontend/viewer/src/lib/components/field-editors/select.svelte @@ -10,6 +10,7 @@ import {cn} from '$lib/utils'; import {watch} from 'runed'; import {computeCommandScore} from 'bits-ui'; + import {s} from '$lib/i18n'; type Value = ReadonlyDeep; @@ -113,7 +114,7 @@
{#if IsMobile.value} {#if filterValue} - (filterValue = '')} aria-label={$t`clear`} /> + (filterValue = '')} aria-label={$t(s.clear)} /> {/if} {:else} diff --git a/frontend/viewer/src/lib/i18n/index.ts b/frontend/viewer/src/lib/i18n/index.ts index 94acc363c6..00a16ed0de 100644 --- a/frontend/viewer/src/lib/i18n/index.ts +++ b/frontend/viewer/src/lib/i18n/index.ts @@ -1,5 +1,7 @@ -import {locale} from 'svelte-i18n-lingui'; import {createSubscriber} from 'svelte/reactivity'; +import {locale} from 'svelte-i18n-lingui'; + +export * from './strings.svelte' const hasSetLang = {value: false}; const subscriber = createSubscriber(update => { diff --git a/frontend/viewer/src/lib/i18n/strings.svelte.ts b/frontend/viewer/src/lib/i18n/strings.svelte.ts new file mode 100644 index 0000000000..11bc9e3e4a --- /dev/null +++ b/frontend/viewer/src/lib/i18n/strings.svelte.ts @@ -0,0 +1,10 @@ +import {gt} from 'svelte-i18n-lingui'; + +export const s = { + get clear() { + return gt({ + message: 'clear', + comment: 'Button to clear/empty a text field e.g. when filtering for semantic domains', + }); + }, +}; diff --git a/frontend/viewer/src/locales/en.po b/frontend/viewer/src/locales/en.po index 9a7bd535af..d1ff4d8d28 100644 --- a/frontend/viewer/src/locales/en.po +++ b/frontend/viewer/src/locales/en.po @@ -205,8 +205,8 @@ msgstr "Citation Form" msgid "Classic FieldWorks Projects" msgstr "Classic FieldWorks Projects" -#: src/lib/components/field-editors/select.svelte -#: src/lib/components/field-editors/multi-select.svelte +#. Button to clear/empty a text field e.g. when filtering for semantic domains +#: src/lib/i18n/strings.svelte.ts msgid "clear" msgstr "clear" diff --git a/frontend/viewer/src/locales/es.po b/frontend/viewer/src/locales/es.po index 59df944f3b..154fadabc9 100644 --- a/frontend/viewer/src/locales/es.po +++ b/frontend/viewer/src/locales/es.po @@ -210,8 +210,8 @@ msgstr "Formulario de citación" msgid "Classic FieldWorks Projects" msgstr "Proyectos clásicos de FieldWorks" -#: src/lib/components/field-editors/select.svelte -#: src/lib/components/field-editors/multi-select.svelte +#. Button to clear/empty a text field e.g. when filtering for semantic domains +#: src/lib/i18n/strings.svelte.ts msgid "clear" msgstr "borrar" diff --git a/frontend/viewer/src/locales/fr.po b/frontend/viewer/src/locales/fr.po index 81a8cc2a5a..3ec67e543a 100644 --- a/frontend/viewer/src/locales/fr.po +++ b/frontend/viewer/src/locales/fr.po @@ -210,10 +210,10 @@ msgstr "Formulaire de citation" msgid "Classic FieldWorks Projects" msgstr "Projets FieldWorks classiques" -#: src/lib/components/field-editors/select.svelte -#: src/lib/components/field-editors/multi-select.svelte +#. Button to clear/empty a text field e.g. when filtering for semantic domains +#: src/lib/i18n/strings.svelte.ts msgid "clear" -msgstr "clair" +msgstr "" #: src/project/tasks/SubjectPopup.svelte #: src/lib/components/ui/button/x-button.svelte diff --git a/frontend/viewer/src/locales/id.po b/frontend/viewer/src/locales/id.po index 5ca5248b6c..166b23fbc4 100644 --- a/frontend/viewer/src/locales/id.po +++ b/frontend/viewer/src/locales/id.po @@ -210,10 +210,10 @@ msgstr "Formulir Kutipan" msgid "Classic FieldWorks Projects" msgstr "Proyek FieldWorks Klasik" -#: src/lib/components/field-editors/select.svelte -#: src/lib/components/field-editors/multi-select.svelte +#. Button to clear/empty a text field e.g. when filtering for semantic domains +#: src/lib/i18n/strings.svelte.ts msgid "clear" -msgstr "jelas" +msgstr "" #: src/project/tasks/SubjectPopup.svelte #: src/lib/components/ui/button/x-button.svelte diff --git a/frontend/viewer/src/locales/ko.po b/frontend/viewer/src/locales/ko.po index 6d011af071..723c8b095b 100644 --- a/frontend/viewer/src/locales/ko.po +++ b/frontend/viewer/src/locales/ko.po @@ -210,10 +210,10 @@ msgstr "인용 양식" msgid "Classic FieldWorks Projects" msgstr "클래식 FieldWorks 프로젝트" -#: src/lib/components/field-editors/select.svelte -#: src/lib/components/field-editors/multi-select.svelte +#. Button to clear/empty a text field e.g. when filtering for semantic domains +#: src/lib/i18n/strings.svelte.ts msgid "clear" -msgstr "clear" +msgstr "" #: src/project/tasks/SubjectPopup.svelte #: src/lib/components/ui/button/x-button.svelte diff --git a/frontend/viewer/src/locales/ms.po b/frontend/viewer/src/locales/ms.po index 405e8cc1f2..764d7cef58 100644 --- a/frontend/viewer/src/locales/ms.po +++ b/frontend/viewer/src/locales/ms.po @@ -210,10 +210,10 @@ msgstr "Bentuk Petikan" msgid "Classic FieldWorks Projects" msgstr "Projek FieldWorks Klasik" -#: src/lib/components/field-editors/select.svelte -#: src/lib/components/field-editors/multi-select.svelte +#. Button to clear/empty a text field e.g. when filtering for semantic domains +#: src/lib/i18n/strings.svelte.ts msgid "clear" -msgstr "padam" +msgstr "" #: src/project/tasks/SubjectPopup.svelte #: src/lib/components/ui/button/x-button.svelte diff --git a/frontend/viewer/src/locales/sw.po b/frontend/viewer/src/locales/sw.po index 6197439980..f59604501d 100644 --- a/frontend/viewer/src/locales/sw.po +++ b/frontend/viewer/src/locales/sw.po @@ -210,10 +210,10 @@ msgstr "Fomu ya Manukuu" msgid "Classic FieldWorks Projects" msgstr "" -#: src/lib/components/field-editors/select.svelte -#: src/lib/components/field-editors/multi-select.svelte +#. Button to clear/empty a text field e.g. when filtering for semantic domains +#: src/lib/i18n/strings.svelte.ts msgid "clear" -msgstr "futa" +msgstr "" #: src/project/tasks/SubjectPopup.svelte #: src/lib/components/ui/button/x-button.svelte