From 9ed27c47f40d1052f16f35c0c31f398977868ccd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Bombeck?= Date: Thu, 12 Nov 2026 15:19:19 +0100 Subject: [PATCH] fix(i18n): release notes label, neutral discard and prefill wording MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - The About button opens the release notes and now says so in all ten languages; six of them still showed the English word "Changelog". - The discard question now also covers edit sheets, where "Discard this entry?" read like deleting the target or episode being edited. It asks about the changes in every language; Russian also loses the ambiguous "Отменить" on both the title and the button. - The 7-day trend figure on a dashboard tile had an English screen reader label in every language. - Outlier terms in the new checkup and ketone strings follow each catalog (ru "Кетоны в крови", "Коуч"; es "Desactivado"; nl "rusthartslag"), the French steps question reads naturally, and the shared Polish and Russian Coach question no longer assumes a masculine speaker. --- messages/de.json | 4 ++-- messages/en.json | 4 ++-- messages/es.json | 6 +++--- messages/fr.json | 6 +++--- messages/it.json | 4 ++-- messages/ko.json | 4 ++-- messages/nl.json | 6 +++--- messages/pl.json | 6 +++--- messages/pt-BR.json | 4 ++-- messages/ru.json | 14 +++++++------- src/components/charts/trend-card.tsx | 2 +- 11 files changed, 30 insertions(+), 30 deletions(-) diff --git a/messages/de.json b/messages/de.json index 0a0d88e44..77b23e200 100644 --- a/messages/de.json +++ b/messages/de.json @@ -764,7 +764,7 @@ "noneActionableCta": "Zu den Medikamenten" }, "quickEntryDiscard": { - "title": "Eintrag verwerfen?", + "title": "Eingaben verwerfen?", "description": "Du hast nicht gespeicherte Eingaben. Formular schließen und das Getippte verwerfen?", "confirm": "Verwerfen", "cancel": "Weiter bearbeiten" @@ -7071,7 +7071,7 @@ "builtAtLabel": "Erstellt", "license": "Lizenz", "repository": "Quellcode", - "changelog": "Changelog", + "changelog": "Versionshinweise", "docs": "Dokumentation", "credits": "Credits & Datenquellen", "linksHeading": "Quellen & Dokumentation", diff --git a/messages/en.json b/messages/en.json index 358f3a7a5..6705917dc 100644 --- a/messages/en.json +++ b/messages/en.json @@ -764,7 +764,7 @@ "noneActionableCta": "Open medications" }, "quickEntryDiscard": { - "title": "Discard this entry?", + "title": "Discard your changes?", "description": "You have unsaved input. Close the form and lose what you typed?", "confirm": "Discard", "cancel": "Keep editing" @@ -7071,7 +7071,7 @@ "builtAtLabel": "Built", "license": "License", "repository": "Source code", - "changelog": "Changelog", + "changelog": "Release notes", "docs": "Documentation", "credits": "Credits & data attributions", "linksHeading": "Sources & docs", diff --git a/messages/es.json b/messages/es.json index f5a71432e..791a45a5b 100644 --- a/messages/es.json +++ b/messages/es.json @@ -764,7 +764,7 @@ "noneActionableCta": "Abrir medicamentos" }, "quickEntryDiscard": { - "title": "¿Descartar esta entrada?", + "title": "¿Descartar los cambios?", "description": "Tienes datos sin guardar. ¿Cerrar el formulario y perder lo que escribiste?", "confirm": "Descartar", "cancel": "Seguir editando" @@ -7071,7 +7071,7 @@ "builtAtLabel": "Compilado", "license": "Licencia", "repository": "Código fuente", - "changelog": "Changelog", + "changelog": "Notas de la versión", "docs": "Documentación", "credits": "Créditos y atribuciones de datos", "linksHeading": "Fuentes y documentación", @@ -10219,7 +10219,7 @@ "snoozedUntil": "Aplazado hasta {date}", "skippedOn": "Omitido el {date}", "skipCount": "omitido {count} veces", - "disabledBadge": "Apagado", + "disabledBadge": "Desactivado", "nextDue": { "none": "Sin programar", "today": "Vence hoy", diff --git a/messages/fr.json b/messages/fr.json index 147e5d750..574570c36 100644 --- a/messages/fr.json +++ b/messages/fr.json @@ -764,7 +764,7 @@ "noneActionableCta": "Ouvrir les médicaments" }, "quickEntryDiscard": { - "title": "Abandonner cette saisie ?", + "title": "Abandonner les modifications ?", "description": "Vous avez des données non enregistrées. Fermer le formulaire et perdre ce que vous avez saisi ?", "confirm": "Abandonner", "cancel": "Continuer la saisie" @@ -3624,7 +3624,7 @@ "title": "Aucune donnée de pas", "description": "Les totaux de pas quotidiens apparaîtront ici dès qu'Apple Santé ou un appareil d'activité synchronise une journée complète." }, - "coachPrefill": "Je n’ai pas encore enregistré de pas. Quel objectif quotidien de pas est raisonnable, et en quoi marcher davantage aide-t-il ma santé ?" + "coachPrefill": "Je n’ai pas encore enregistré de pas. Quel objectif quotidien de pas est raisonnable, et en quoi le fait de marcher davantage aide-t-il ma santé ?" }, "activeEnergy": { "title": "Énergie active", @@ -7071,7 +7071,7 @@ "builtAtLabel": "Compilé", "license": "Licence", "repository": "Code source", - "changelog": "Changelog", + "changelog": "Notes de version", "docs": "Documentation", "credits": "Crédits et attributions de données", "linksHeading": "Sources et documentation", diff --git a/messages/it.json b/messages/it.json index 3f181295e..c0158d044 100644 --- a/messages/it.json +++ b/messages/it.json @@ -764,7 +764,7 @@ "noneActionableCta": "Apri i farmaci" }, "quickEntryDiscard": { - "title": "Scartare questa voce?", + "title": "Scartare le modifiche?", "description": "Hai dati non salvati. Chiudere il modulo e perdere ciò che hai digitato?", "confirm": "Scarta", "cancel": "Continua a modificare" @@ -7071,7 +7071,7 @@ "builtAtLabel": "Compilato", "license": "Licenza", "repository": "Codice sorgente", - "changelog": "Changelog", + "changelog": "Note di rilascio", "docs": "Documentazione", "credits": "Crediti e attribuzioni dei dati", "linksHeading": "Fonti e documentazione", diff --git a/messages/ko.json b/messages/ko.json index bd3936658..5ff7cafa4 100644 --- a/messages/ko.json +++ b/messages/ko.json @@ -764,7 +764,7 @@ "noneActionableCta": "약 목록 열기" }, "quickEntryDiscard": { - "title": "이 기록을 버릴까요?", + "title": "변경 내용을 버릴까요?", "description": "저장하지 않은 입력이 있어요. 폼을 닫고 입력한 내용을 버릴까요?", "confirm": "버리기", "cancel": "계속 작성" @@ -7071,7 +7071,7 @@ "builtAtLabel": "빌드 시각", "license": "라이선스", "repository": "소스 코드", - "changelog": "변경 이력", + "changelog": "릴리스 노트", "docs": "문서", "credits": "크레딧 및 데이터 출처", "linksHeading": "출처 및 문서", diff --git a/messages/nl.json b/messages/nl.json index d85233f20..6c21d8933 100644 --- a/messages/nl.json +++ b/messages/nl.json @@ -764,7 +764,7 @@ "noneActionableCta": "Medicatie openen" }, "quickEntryDiscard": { - "title": "Deze invoer weggooien?", + "title": "Wijzigingen weggooien?", "description": "Je hebt niet-opgeslagen invoer. Het formulier sluiten en verliezen wat je hebt getypt?", "confirm": "Weggooien", "cancel": "Verder bewerken" @@ -3843,7 +3843,7 @@ "title": "Nog geen hartslagmetingen", "description": "Leg een hartslagmeting vast, dan verschijnen rusthartslag, HRV en VO₂max in deze weergave.", "cta": "Hartslag vastleggen", - "coachPrefill": "Ik heb nog geen rustpols vastgelegd. Waarom is die belangrijk, en wat moet ik weten voordat ik begin?" + "coachPrefill": "Ik heb nog geen rusthartslag vastgelegd. Waarom is die belangrijk, en wat moet ik weten voordat ik begin?" }, "bmi": { "title": "BMI nog niet berekend", @@ -7071,7 +7071,7 @@ "builtAtLabel": "Gebouwd", "license": "Licentie", "repository": "Broncode", - "changelog": "Wijzigingslogboek", + "changelog": "Releasenotes", "docs": "Documentatie", "credits": "Credits en bronvermeldingen", "linksHeading": "Bronnen en documentatie", diff --git a/messages/pl.json b/messages/pl.json index 4085c04fc..d99f6a64d 100644 --- a/messages/pl.json +++ b/messages/pl.json @@ -764,7 +764,7 @@ "noneActionableCta": "Otwórz leki" }, "quickEntryDiscard": { - "title": "Odrzucić ten wpis?", + "title": "Odrzucić zmiany?", "description": "Masz niezapisane dane. Zamknąć formularz i utracić to, co wpisano?", "confirm": "Odrzuć", "cancel": "Kontynuuj edycję" @@ -3730,7 +3730,7 @@ "valuesBackToMetric": "Powrót do {metric}", "scoresBack": "Powrót do Insights", "ecgDescription": "Zapisy EKG jednoodprowadzeniowe z Twojego urządzenia, każdy z wynikiem samego urządzenia.", - "emptyCoachPrefill": "{metric}: nie zapisałem tu jeszcze niczego. Co ten wskaźnik mówi o moim zdrowiu i jak mogę go poprawić?" + "emptyCoachPrefill": "{metric}: nie mam tu jeszcze żadnych wpisów. Co ten wskaźnik mówi o moim zdrowiu i jak mogę go poprawić?" }, "units": { "steps": "kroki", @@ -7071,7 +7071,7 @@ "builtAtLabel": "Skompilowano", "license": "Licencja", "repository": "Kod źródłowy", - "changelog": "Changelog", + "changelog": "Informacje o wersjach", "docs": "Dokumentacja", "credits": "Autorzy i źródła danych", "linksHeading": "Źródła i dokumentacja", diff --git a/messages/pt-BR.json b/messages/pt-BR.json index 6cba6c6a8..1ea7da102 100644 --- a/messages/pt-BR.json +++ b/messages/pt-BR.json @@ -764,7 +764,7 @@ "noneActionableCta": "Abrir medicamentos" }, "quickEntryDiscard": { - "title": "Descartar esta entrada?", + "title": "Descartar as alterações?", "description": "Você tem entrada não salva. Fechar o formulário e perder o que digitou?", "confirm": "Descartar", "cancel": "Continuar editando" @@ -7071,7 +7071,7 @@ "builtAtLabel": "Compilado em", "license": "Licença", "repository": "Código-fonte", - "changelog": "Changelog", + "changelog": "Notas de versão", "docs": "Documentação", "credits": "Créditos e atribuições de dados", "linksHeading": "Fontes e documentação", diff --git a/messages/ru.json b/messages/ru.json index bb63fee93..0d451a0c5 100644 --- a/messages/ru.json +++ b/messages/ru.json @@ -764,9 +764,9 @@ "noneActionableCta": "Открыть лекарства" }, "quickEntryDiscard": { - "title": "Отменить эту запись?", - "description": "У вас есть несохранённые данные. Закрыть форму и потерять введённое?", - "confirm": "Отменить", + "title": "Закрыть без сохранения?", + "description": "Введённые данные не сохранены. Закрыть форму и потерять их?", + "confirm": "Не сохранять", "cancel": "Продолжить ввод" }, "compliance7d": "Приверженность (7 дней)", @@ -3730,7 +3730,7 @@ "valuesBackToMetric": "Назад к {metric}", "scoresBack": "Назад к аналитике", "ecgDescription": "Записи ЭКГ с одним отведением с вашего устройства, каждая с собственным результатом устройства.", - "emptyCoachPrefill": "{metric}: я ещё ничего здесь не записывал. Что этот показатель говорит о моём здоровье и как его улучшить?" + "emptyCoachPrefill": "{metric}: здесь у меня ещё нет записей. Что этот показатель говорит о моём здоровье и как его улучшить?" }, "units": { "steps": "шаги", @@ -7071,7 +7071,7 @@ "builtAtLabel": "Собрано", "license": "Лицензия", "repository": "Исходный код", - "changelog": "Список изменений", + "changelog": "Примечания к выпускам", "docs": "Документация", "credits": "Благодарности и источники данных", "linksHeading": "Источники и документация", @@ -10242,7 +10242,7 @@ "BLOOD_PRESSURE_SYS": "АД", "PULSE": "Пульс", "BLOOD_GLUCOSE": "Глюкоза крови", - "BLOOD_KETONES": "Кетоны крови", + "BLOOD_KETONES": "Кетоны в крови", "OXYGEN_SATURATION": "Насыщение кислородом", "BODY_FAT": "Процент жировой массы", "BODY_TEMPERATURE": "Температура тела", @@ -10292,7 +10292,7 @@ "pushBody": "Пора: {label}", "pushLocation": "(в {location})", "edit": "Изменить", - "originCoach": "Тренер", + "originCoach": "Коуч", "until": "До {date}", "selfPlanned": "Запланировано самостоятельно", "captureValue": "Записать значение", diff --git a/src/components/charts/trend-card.tsx b/src/components/charts/trend-card.tsx index e98bd6401..d2991d208 100644 --- a/src/components/charts/trend-card.tsx +++ b/src/components/charts/trend-card.tsx @@ -459,7 +459,7 @@ export function TrendCard({ deltaColor, )} data-slot="trend7-delta" - aria-label={`7-day trend ${formatDelta(trend7Delta)}`} + aria-label={`${t("charts.trend7dShort")} ${formatDelta(trend7Delta)}`} > ({formatDelta(trend7Delta)})