From 3407753a77c5cd16cddeae2f1d2f801d71d43927 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Bombeck?= Date: Sun, 17 May 2026 17:15:40 +0200 Subject: [PATCH] i18n(measurements): translate medical labels and form copy into es/fr/it/pl Covers metric type names (weight, blood pressure, glucose, body composition, Apple Health audio exposure, walking metrics), glucose context options, source labels, form field labels, validation errors, empty states, and pagination controls. 62 keys per locale, preserving {count}/{unit}/{page}/{total} placeholders and the mmHg/bpm conventions common to each medical tradition. Co-Authored-By: Claude Opus 4.7 (1M context) --- messages/es.json | 116 +++++++++++++++++++++++----------------------- messages/fr.json | 112 ++++++++++++++++++++++---------------------- messages/it.json | 116 +++++++++++++++++++++++----------------------- messages/pl.json | 118 +++++++++++++++++++++++------------------------ 4 files changed, 231 insertions(+), 231 deletions(-) diff --git a/messages/es.json b/messages/es.json index 6f0aa4cc0..812170746 100644 --- a/messages/es.json +++ b/messages/es.json @@ -292,86 +292,86 @@ } }, "measurements": { - "title": "Measurements", - "subtitle": "Weight, blood pressure, pulse and more", + "title": "Mediciones", + "subtitle": "Peso, tensión arterial, pulso y más", "addMeasurement": "Añadir", - "editMeasurement": "Edit measurement", + "editMeasurement": "Editar medición", "type": "Tipo", "value": "Valor", "date": "Fecha", - "source": "Source", + "source": "Fuente", "notes": "Notas", "typeWeight": "Peso", "typeBloodPressure": "Presión arterial", - "typeBpSys": "Sys", + "typeBpSys": "Sis", "typeBpDia": "Dia", "typePulse": "Pulso", "typeBodyFat": "Grasa corporal", "typeSleep": "Sueño", "typeSteps": "Pasos", - "typeBloodGlucose": "Blood glucose", - "typeTotalBodyWater": "Total body water", - "typeBoneMass": "Bone mass", - "typeOxygenSaturation": "Oxygen saturation", - "typeHeartRateVariability": "Heart-rate variability", + "typeBloodGlucose": "Glucemia", + "typeTotalBodyWater": "Agua corporal total", + "typeBoneMass": "Masa ósea", + "typeOxygenSaturation": "Saturación de oxígeno", + "typeHeartRateVariability": "Variabilidad de la frecuencia cardiaca", "typeRestingHeartRate": "Frecuencia cardíaca en reposo", - "typeActiveEnergyBurned": "Active energy", - "typeFlightsClimbed": "Flights climbed", - "typeWalkingRunningDistance": "Walking + running distance", - "typeVo2Max": "VO₂ max", - "typeBodyTemperature": "Body temperature", - "typeFatFreeMass": "Fat-free mass", - "typeFatMass": "Fat mass", - "typeMuscleMass": "Muscle mass", - "typeSkinTemperature": "Skin temperature", - "typePulseWaveVelocity": "Pulse-wave velocity", - "typeVascularAge": "Vascular age", - "typeVisceralFat": "Visceral fat", - "typeAudioExposureEnv": "Audio Exposure (Environment)", - "typeAudioExposureHeadphone": "Audio Exposure (Headphones)", - "typeTimeInDaylight": "Time in Daylight", - "typeWalkingSteadiness": "Walking Steadiness", - "typeAudioExposureEvent": "Loud-Listening Event", - "glucoseContext": "Context", - "glucoseContextFasting": "Fasting (≥8h without food)", - "glucoseContextPostprandial": "Post-meal (2h after eating)", - "glucoseContextRandom": "Random / casual", - "glucoseContextBedtime": "Before bed", - "unitHours": "hours", + "typeActiveEnergyBurned": "Energía activa", + "typeFlightsClimbed": "Escaleras", + "typeWalkingRunningDistance": "Distancia a pie y corriendo", + "typeVo2Max": "VO₂ máx", + "typeBodyTemperature": "Temperatura corporal", + "typeFatFreeMass": "Masa libre de grasa", + "typeFatMass": "Masa grasa", + "typeMuscleMass": "Masa muscular", + "typeSkinTemperature": "Temperatura de la piel", + "typePulseWaveVelocity": "Velocidad de la onda de pulso", + "typeVascularAge": "Edad vascular", + "typeVisceralFat": "Grasa visceral", + "typeAudioExposureEnv": "Exposición al ruido (ambiente)", + "typeAudioExposureHeadphone": "Exposición al ruido (auriculares)", + "typeTimeInDaylight": "Tiempo a la luz del día", + "typeWalkingSteadiness": "Estabilidad al caminar", + "typeAudioExposureEvent": "Evento de escucha alta", + "glucoseContext": "Contexto", + "glucoseContextFasting": "En ayunas (≥8 h sin comer)", + "glucoseContextPostprandial": "Posprandial (2 h tras comer)", + "glucoseContextRandom": "Cualquiera / sin contexto", + "glucoseContextBedtime": "Antes de acostarse", + "unitHours": "Horas", "unitSteps": "Pasos", "sourceManual": "Manual", "sourceWithings": "Withings", "sourceImport": "Importar", "sourceAppleHealth": "Apple Health", - "systolicLabel": "Systolic (mmHg)", - "diastolicLabel": "Diastolic (mmHg)", - "pulseLabel": "Pulse (bpm)", - "valueWithUnit": "Value ({unit})", + "systolicLabel": "Sistólica (mmHg)", + "diastolicLabel": "Diastólica (mmHg)", + "pulseLabel": "Pulso (lpm)", + "valueWithUnit": "Valor ({unit})", "timestamp": "Hora", - "notesPlaceholder": "e.g. after a meal", - "formReset": "Reset form", - "saveError": "Error saving", + "notesPlaceholder": "p. ej. después de comer", + "formReset": "Restablecer formulario", + "saveError": "Error al guardar", "duplicateTimestamp": "Ya existe una medición de este tipo en la marca de tiempo seleccionada.", - "deleteError": "Error deleting", - "invalidValue": "Please enter a valid value.", - "invalidTimestamp": "Please select a valid time.", - "loginRequired": "Please sign in to view measurements.", - "allTypes": "All types", - "filterByType": "Filter by type", - "measurementCount": "{count} measurements", - "emptyTitle": "No measurements yet", - "emptyDescription": "Log your weight, blood pressure, pulse, or other vitals to start tracking trends.", - "emptyFilteredTitle": "No measurements match this filter", - "emptyFilteredDescription": "Try a different type or clear the filter to see all measurements.", - "emptyAddFirst": "Add your first measurement", - "emptyResetFilter": "Show all types", - "comment": "Comment", + "deleteError": "Error al eliminar", + "invalidValue": "Introduce un valor válido.", + "invalidTimestamp": "Selecciona una fecha y hora válidas.", + "loginRequired": "Inicia sesión para ver las mediciones.", + "allTypes": "Todos los tipos", + "filterByType": "Filtrar por tipo", + "measurementCount": "{count} mediciones", + "emptyTitle": "Aún no hay mediciones", + "emptyDescription": "Registra peso, tensión arterial, pulso u otros valores para detectar tendencias.", + "emptyFilteredTitle": "Ninguna medición coincide con el filtro", + "emptyFilteredDescription": "Elige otro tipo o quita el filtro para ver todas las mediciones.", + "emptyAddFirst": "Registrar la primera medición", + "emptyResetFilter": "Mostrar todos los tipos", + "comment": "Comentario", "actions": "Acciones", - "deleteConfirmTitle": "Delete measurement?", - "deleteConfirmDescription": "This measurement will be permanently deleted.", + "deleteConfirmTitle": "¿Eliminar medición?", + "deleteConfirmDescription": "Esta medición se eliminará de forma permanente.", "pageInfo": "Página {page} de {total}", - "previousPage": "Previous page", - "nextPage": "Next page", + "previousPage": "Página anterior", + "nextPage": "Página siguiente", "dailyTotalCaption": "({count} muestras)", "expandDay": "Mostrar las muestras de este día", "collapseDay": "Ocultar las muestras de este día" diff --git a/messages/fr.json b/messages/fr.json index ebfd7ad73..9d3832f6b 100644 --- a/messages/fr.json +++ b/messages/fr.json @@ -292,10 +292,10 @@ } }, "measurements": { - "title": "Measurements", - "subtitle": "Weight, blood pressure, pulse and more", + "title": "Mesures", + "subtitle": "Poids, tension artérielle, pouls et plus", "addMeasurement": "Ajouter", - "editMeasurement": "Edit measurement", + "editMeasurement": "Modifier la mesure", "type": "Type", "value": "Valeur", "date": "Date", @@ -309,69 +309,69 @@ "typeBodyFat": "Masse grasse", "typeSleep": "Sommeil", "typeSteps": "Pas", - "typeBloodGlucose": "Blood glucose", - "typeTotalBodyWater": "Total body water", - "typeBoneMass": "Bone mass", - "typeOxygenSaturation": "Oxygen saturation", - "typeHeartRateVariability": "Heart-rate variability", + "typeBloodGlucose": "Glycémie", + "typeTotalBodyWater": "Eau corporelle totale", + "typeBoneMass": "Masse osseuse", + "typeOxygenSaturation": "Saturation en oxygène", + "typeHeartRateVariability": "Variabilité de la fréquence cardiaque", "typeRestingHeartRate": "Fréquence cardiaque au repos", - "typeActiveEnergyBurned": "Active energy", - "typeFlightsClimbed": "Flights climbed", - "typeWalkingRunningDistance": "Walking + running distance", + "typeActiveEnergyBurned": "Énergie active", + "typeFlightsClimbed": "Étages", + "typeWalkingRunningDistance": "Distance à pied et en course", "typeVo2Max": "VO₂ max", - "typeBodyTemperature": "Body temperature", - "typeFatFreeMass": "Fat-free mass", - "typeFatMass": "Fat mass", - "typeMuscleMass": "Muscle mass", - "typeSkinTemperature": "Skin temperature", - "typePulseWaveVelocity": "Pulse-wave velocity", - "typeVascularAge": "Vascular age", - "typeVisceralFat": "Visceral fat", - "typeAudioExposureEnv": "Audio Exposure (Environment)", - "typeAudioExposureHeadphone": "Audio Exposure (Headphones)", - "typeTimeInDaylight": "Time in Daylight", - "typeWalkingSteadiness": "Walking Steadiness", - "typeAudioExposureEvent": "Loud-Listening Event", - "glucoseContext": "Context", - "glucoseContextFasting": "Fasting (≥8h without food)", - "glucoseContextPostprandial": "Post-meal (2h after eating)", - "glucoseContextRandom": "Random / casual", - "glucoseContextBedtime": "Before bed", - "unitHours": "hours", + "typeBodyTemperature": "Température corporelle", + "typeFatFreeMass": "Masse maigre", + "typeFatMass": "Masse grasse", + "typeMuscleMass": "Masse musculaire", + "typeSkinTemperature": "Température cutanée", + "typePulseWaveVelocity": "Vitesse de l’onde de pouls", + "typeVascularAge": "Âge vasculaire", + "typeVisceralFat": "Graisse viscérale", + "typeAudioExposureEnv": "Exposition au bruit (environnement)", + "typeAudioExposureHeadphone": "Exposition au bruit (écouteurs)", + "typeTimeInDaylight": "Temps à la lumière du jour", + "typeWalkingSteadiness": "Stabilité à la marche", + "typeAudioExposureEvent": "Événement d’écoute forte", + "glucoseContext": "Contexte", + "glucoseContextFasting": "À jeun (≥8 h sans repas)", + "glucoseContextPostprandial": "Postprandial (2 h après le repas)", + "glucoseContextRandom": "Indifférent / sans contexte", + "glucoseContextBedtime": "Avant le coucher", + "unitHours": "Heures", "unitSteps": "Pas", - "sourceManual": "Manual", + "sourceManual": "Manuelle", "sourceWithings": "Withings", "sourceImport": "Importer", "sourceAppleHealth": "Apple Health", - "systolicLabel": "Systolic (mmHg)", - "diastolicLabel": "Diastolic (mmHg)", - "pulseLabel": "Pulse (bpm)", - "valueWithUnit": "Value ({unit})", + "systolicLabel": "Systolique (mmHg)", + "diastolicLabel": "Diastolique (mmHg)", + "pulseLabel": "Pouls (bpm)", + "valueWithUnit": "Valeur ({unit})", "timestamp": "Heure", - "notesPlaceholder": "e.g. after a meal", - "formReset": "Reset form", - "saveError": "Error saving", + "notesPlaceholder": "p. ex. après le repas", + "formReset": "Réinitialiser le formulaire", + "saveError": "Erreur lors de l’enregistrement", "duplicateTimestamp": "Une mesure de ce type existe déjà à cet horodatage.", - "deleteError": "Error deleting", - "invalidValue": "Please enter a valid value.", - "invalidTimestamp": "Please select a valid time.", - "loginRequired": "Please sign in to view measurements.", - "allTypes": "All types", - "filterByType": "Filter by type", - "measurementCount": "{count} measurements", - "emptyTitle": "No measurements yet", - "emptyDescription": "Log your weight, blood pressure, pulse, or other vitals to start tracking trends.", - "emptyFilteredTitle": "No measurements match this filter", - "emptyFilteredDescription": "Try a different type or clear the filter to see all measurements.", - "emptyAddFirst": "Add your first measurement", - "emptyResetFilter": "Show all types", - "comment": "Comment", + "deleteError": "Erreur lors de la suppression", + "invalidValue": "Saisis une valeur valide.", + "invalidTimestamp": "Choisis une date et une heure valides.", + "loginRequired": "Connecte-toi pour voir tes mesures.", + "allTypes": "Tous les types", + "filterByType": "Filtrer par type", + "measurementCount": "{count} mesures", + "emptyTitle": "Aucune mesure pour l’instant", + "emptyDescription": "Saisis du poids, de la tension, du pouls ou d’autres valeurs pour repérer les tendances.", + "emptyFilteredTitle": "Aucune mesure ne correspond au filtre", + "emptyFilteredDescription": "Choisis un autre type ou supprime le filtre pour voir toutes les mesures.", + "emptyAddFirst": "Saisir la première mesure", + "emptyResetFilter": "Afficher tous les types", + "comment": "Commentaire", "actions": "Actions", - "deleteConfirmTitle": "Delete measurement?", - "deleteConfirmDescription": "This measurement will be permanently deleted.", + "deleteConfirmTitle": "Supprimer la mesure ?", + "deleteConfirmDescription": "Cette mesure sera supprimée définitivement.", "pageInfo": "Page {page} sur {total}", - "previousPage": "Previous page", - "nextPage": "Next page", + "previousPage": "Page précédente", + "nextPage": "Page suivante", "dailyTotalCaption": "({count} échantillons)", "expandDay": "Afficher les échantillons de ce jour", "collapseDay": "Masquer les échantillons de ce jour" diff --git a/messages/it.json b/messages/it.json index 699298aab..f9753d66a 100644 --- a/messages/it.json +++ b/messages/it.json @@ -292,86 +292,86 @@ } }, "measurements": { - "title": "Measurements", - "subtitle": "Weight, blood pressure, pulse and more", + "title": "Misurazioni", + "subtitle": "Peso, pressione arteriosa, pulsazioni e altro", "addMeasurement": "Aggiungi", - "editMeasurement": "Edit measurement", + "editMeasurement": "Modifica misurazione", "type": "Tipo", "value": "Valore", "date": "Data", - "source": "Source", + "source": "Sorgente", "notes": "Note", "typeWeight": "Peso", "typeBloodPressure": "Pressione arteriosa", - "typeBpSys": "Sys", + "typeBpSys": "Sis", "typeBpDia": "Dia", "typePulse": "Polso", "typeBodyFat": "Massa grassa", "typeSleep": "Sonno", "typeSteps": "Passi", - "typeBloodGlucose": "Blood glucose", - "typeTotalBodyWater": "Total body water", - "typeBoneMass": "Bone mass", - "typeOxygenSaturation": "Oxygen saturation", - "typeHeartRateVariability": "Heart-rate variability", + "typeBloodGlucose": "Glicemia", + "typeTotalBodyWater": "Acqua corporea totale", + "typeBoneMass": "Massa ossea", + "typeOxygenSaturation": "Saturazione di ossigeno", + "typeHeartRateVariability": "Variabilità della frequenza cardiaca", "typeRestingHeartRate": "Frequenza cardiaca a riposo", - "typeActiveEnergyBurned": "Active energy", - "typeFlightsClimbed": "Flights climbed", - "typeWalkingRunningDistance": "Walking + running distance", + "typeActiveEnergyBurned": "Energia attiva", + "typeFlightsClimbed": "Piani saliti", + "typeWalkingRunningDistance": "Distanza a piedi e di corsa", "typeVo2Max": "VO₂ max", - "typeBodyTemperature": "Body temperature", - "typeFatFreeMass": "Fat-free mass", - "typeFatMass": "Fat mass", - "typeMuscleMass": "Muscle mass", - "typeSkinTemperature": "Skin temperature", - "typePulseWaveVelocity": "Pulse-wave velocity", - "typeVascularAge": "Vascular age", - "typeVisceralFat": "Visceral fat", - "typeAudioExposureEnv": "Audio Exposure (Environment)", - "typeAudioExposureHeadphone": "Audio Exposure (Headphones)", - "typeTimeInDaylight": "Time in Daylight", - "typeWalkingSteadiness": "Walking Steadiness", - "typeAudioExposureEvent": "Loud-Listening Event", - "glucoseContext": "Context", - "glucoseContextFasting": "Fasting (≥8h without food)", - "glucoseContextPostprandial": "Post-meal (2h after eating)", - "glucoseContextRandom": "Random / casual", - "glucoseContextBedtime": "Before bed", - "unitHours": "hours", + "typeBodyTemperature": "Temperatura corporea", + "typeFatFreeMass": "Massa magra", + "typeFatMass": "Massa grassa", + "typeMuscleMass": "Massa muscolare", + "typeSkinTemperature": "Temperatura cutanea", + "typePulseWaveVelocity": "Velocità dell’onda di polso", + "typeVascularAge": "Età vascolare", + "typeVisceralFat": "Grasso viscerale", + "typeAudioExposureEnv": "Esposizione al rumore (ambiente)", + "typeAudioExposureHeadphone": "Esposizione al rumore (cuffie)", + "typeTimeInDaylight": "Tempo alla luce del giorno", + "typeWalkingSteadiness": "Stabilità nel cammino", + "typeAudioExposureEvent": "Evento di ascolto forte", + "glucoseContext": "Contesto", + "glucoseContextFasting": "A digiuno (≥8 h senza cibo)", + "glucoseContextPostprandial": "Postprandiale (2 h dopo il pasto)", + "glucoseContextRandom": "Qualsiasi / senza contesto", + "glucoseContextBedtime": "Prima di coricarsi", + "unitHours": "Ore", "unitSteps": "Passi", - "sourceManual": "Manual", + "sourceManual": "Manuale", "sourceWithings": "Withings", "sourceImport": "Importa", "sourceAppleHealth": "Apple Health", - "systolicLabel": "Systolic (mmHg)", - "diastolicLabel": "Diastolic (mmHg)", - "pulseLabel": "Pulse (bpm)", - "valueWithUnit": "Value ({unit})", + "systolicLabel": "Sistolica (mmHg)", + "diastolicLabel": "Diastolica (mmHg)", + "pulseLabel": "Pulsazioni (bpm)", + "valueWithUnit": "Valore ({unit})", "timestamp": "Ora", - "notesPlaceholder": "e.g. after a meal", - "formReset": "Reset form", - "saveError": "Error saving", + "notesPlaceholder": "es. dopo il pasto", + "formReset": "Reimposta modulo", + "saveError": "Errore durante il salvataggio", "duplicateTimestamp": "Esiste già una misurazione di questo tipo a questa marca temporale.", - "deleteError": "Error deleting", - "invalidValue": "Please enter a valid value.", - "invalidTimestamp": "Please select a valid time.", - "loginRequired": "Please sign in to view measurements.", - "allTypes": "All types", - "filterByType": "Filter by type", - "measurementCount": "{count} measurements", - "emptyTitle": "No measurements yet", - "emptyDescription": "Log your weight, blood pressure, pulse, or other vitals to start tracking trends.", - "emptyFilteredTitle": "No measurements match this filter", - "emptyFilteredDescription": "Try a different type or clear the filter to see all measurements.", - "emptyAddFirst": "Add your first measurement", - "emptyResetFilter": "Show all types", - "comment": "Comment", + "deleteError": "Errore durante l’eliminazione", + "invalidValue": "Inserisci un valore valido.", + "invalidTimestamp": "Scegli una data e un’ora valide.", + "loginRequired": "Accedi per vedere le misurazioni.", + "allTypes": "Tutti i tipi", + "filterByType": "Filtra per tipo", + "measurementCount": "{count} misurazioni", + "emptyTitle": "Ancora nessuna misurazione", + "emptyDescription": "Registra peso, pressione, pulsazioni o altri valori per individuare i trend.", + "emptyFilteredTitle": "Nessuna misurazione corrisponde al filtro", + "emptyFilteredDescription": "Scegli un altro tipo o rimuovi il filtro per vedere tutte le misurazioni.", + "emptyAddFirst": "Registra la prima misurazione", + "emptyResetFilter": "Mostra tutti i tipi", + "comment": "Commento", "actions": "Azioni", - "deleteConfirmTitle": "Delete measurement?", - "deleteConfirmDescription": "This measurement will be permanently deleted.", + "deleteConfirmTitle": "Eliminare la misurazione?", + "deleteConfirmDescription": "Questa misurazione sarà eliminata in modo definitivo.", "pageInfo": "Pagina {page} di {total}", - "previousPage": "Previous page", - "nextPage": "Next page", + "previousPage": "Pagina precedente", + "nextPage": "Pagina successiva", "dailyTotalCaption": "({count} campioni)", "expandDay": "Mostra i campioni di questa giornata", "collapseDay": "Nascondi i campioni di questa giornata" diff --git a/messages/pl.json b/messages/pl.json index 59c51a8ee..2869d7af1 100644 --- a/messages/pl.json +++ b/messages/pl.json @@ -292,86 +292,86 @@ } }, "measurements": { - "title": "Measurements", - "subtitle": "Weight, blood pressure, pulse and more", + "title": "Pomiary", + "subtitle": "Waga, ciśnienie tętnicze, tętno i więcej", "addMeasurement": "Dodaj", - "editMeasurement": "Edit measurement", + "editMeasurement": "Edytuj pomiar", "type": "Typ", "value": "Wartość", "date": "Data", - "source": "Source", + "source": "Źródło", "notes": "Notatki", "typeWeight": "Waga", "typeBloodPressure": "Ciśnienie krwi", - "typeBpSys": "Sys", - "typeBpDia": "Dia", + "typeBpSys": "Skur", + "typeBpDia": "Rozk", "typePulse": "Tętno", "typeBodyFat": "Tkanka tłuszczowa", "typeSleep": "Sen", "typeSteps": "Kroki", - "typeBloodGlucose": "Blood glucose", - "typeTotalBodyWater": "Total body water", - "typeBoneMass": "Bone mass", - "typeOxygenSaturation": "Oxygen saturation", - "typeHeartRateVariability": "Heart-rate variability", + "typeBloodGlucose": "Glikemia", + "typeTotalBodyWater": "Całkowita woda w organizmie", + "typeBoneMass": "Masa kostna", + "typeOxygenSaturation": "Saturacja tlenem", + "typeHeartRateVariability": "Zmienność rytmu serca", "typeRestingHeartRate": "Tętno spoczynkowe", - "typeActiveEnergyBurned": "Active energy", - "typeFlightsClimbed": "Flights climbed", - "typeWalkingRunningDistance": "Walking + running distance", + "typeActiveEnergyBurned": "Aktywna energia", + "typeFlightsClimbed": "Pokonane piętra", + "typeWalkingRunningDistance": "Dystans marszu i biegu", "typeVo2Max": "VO₂ max", - "typeBodyTemperature": "Body temperature", - "typeFatFreeMass": "Fat-free mass", - "typeFatMass": "Fat mass", - "typeMuscleMass": "Muscle mass", - "typeSkinTemperature": "Skin temperature", - "typePulseWaveVelocity": "Pulse-wave velocity", - "typeVascularAge": "Vascular age", - "typeVisceralFat": "Visceral fat", - "typeAudioExposureEnv": "Audio Exposure (Environment)", - "typeAudioExposureHeadphone": "Audio Exposure (Headphones)", - "typeTimeInDaylight": "Time in Daylight", - "typeWalkingSteadiness": "Walking Steadiness", - "typeAudioExposureEvent": "Loud-Listening Event", - "glucoseContext": "Context", - "glucoseContextFasting": "Fasting (≥8h without food)", - "glucoseContextPostprandial": "Post-meal (2h after eating)", - "glucoseContextRandom": "Random / casual", - "glucoseContextBedtime": "Before bed", - "unitHours": "hours", + "typeBodyTemperature": "Temperatura ciała", + "typeFatFreeMass": "Masa beztłuszczowa", + "typeFatMass": "Masa tłuszczu", + "typeMuscleMass": "Masa mięśniowa", + "typeSkinTemperature": "Temperatura skóry", + "typePulseWaveVelocity": "Prędkość fali tętna", + "typeVascularAge": "Wiek naczyniowy", + "typeVisceralFat": "Tłuszcz trzewny", + "typeAudioExposureEnv": "Ekspozycja na hałas (otoczenie)", + "typeAudioExposureHeadphone": "Ekspozycja na hałas (słuchawki)", + "typeTimeInDaylight": "Czas w świetle dziennym", + "typeWalkingSteadiness": "Stabilność chodu", + "typeAudioExposureEvent": "Zdarzenie głośnego słuchania", + "glucoseContext": "Kontekst", + "glucoseContextFasting": "Na czczo (≥8 godz. bez jedzenia)", + "glucoseContextPostprandial": "Po posiłku (2 godz. po jedzeniu)", + "glucoseContextRandom": "Dowolny / bez kontekstu", + "glucoseContextBedtime": "Przed snem", + "unitHours": "Godziny", "unitSteps": "Kroki", - "sourceManual": "Manual", + "sourceManual": "Ręcznie", "sourceWithings": "Withings", "sourceImport": "Importuj", "sourceAppleHealth": "Apple Health", - "systolicLabel": "Systolic (mmHg)", - "diastolicLabel": "Diastolic (mmHg)", - "pulseLabel": "Pulse (bpm)", - "valueWithUnit": "Value ({unit})", + "systolicLabel": "Skurczowe (mmHg)", + "diastolicLabel": "Rozkurczowe (mmHg)", + "pulseLabel": "Tętno (uderz./min)", + "valueWithUnit": "Wartość ({unit})", "timestamp": "Czas", - "notesPlaceholder": "e.g. after a meal", - "formReset": "Reset form", - "saveError": "Error saving", + "notesPlaceholder": "np. po jedzeniu", + "formReset": "Resetuj formularz", + "saveError": "Błąd zapisu", "duplicateTimestamp": "Pomiar tego typu już istnieje dla wybranej daty.", - "deleteError": "Error deleting", - "invalidValue": "Please enter a valid value.", - "invalidTimestamp": "Please select a valid time.", - "loginRequired": "Please sign in to view measurements.", - "allTypes": "All types", - "filterByType": "Filter by type", - "measurementCount": "{count} measurements", - "emptyTitle": "No measurements yet", - "emptyDescription": "Log your weight, blood pressure, pulse, or other vitals to start tracking trends.", - "emptyFilteredTitle": "No measurements match this filter", - "emptyFilteredDescription": "Try a different type or clear the filter to see all measurements.", - "emptyAddFirst": "Add your first measurement", - "emptyResetFilter": "Show all types", - "comment": "Comment", + "deleteError": "Błąd usuwania", + "invalidValue": "Wprowadź poprawną wartość.", + "invalidTimestamp": "Wybierz poprawną datę i godzinę.", + "loginRequired": "Zaloguj się, aby zobaczyć pomiary.", + "allTypes": "Wszystkie typy", + "filterByType": "Filtruj według typu", + "measurementCount": "{count} pomiarów", + "emptyTitle": "Brak pomiarów", + "emptyDescription": "Zarejestruj wagę, ciśnienie, tętno lub inne wartości, aby zauważyć trendy.", + "emptyFilteredTitle": "Żaden pomiar nie pasuje do filtra", + "emptyFilteredDescription": "Wybierz inny typ lub usuń filtr, aby zobaczyć wszystkie pomiary.", + "emptyAddFirst": "Zarejestruj pierwszy pomiar", + "emptyResetFilter": "Pokaż wszystkie typy", + "comment": "Komentarz", "actions": "Akcje", - "deleteConfirmTitle": "Delete measurement?", - "deleteConfirmDescription": "This measurement will be permanently deleted.", + "deleteConfirmTitle": "Usunąć pomiar?", + "deleteConfirmDescription": "Ten pomiar zostanie nieodwracalnie usunięty.", "pageInfo": "Strona {page} z {total}", - "previousPage": "Previous page", - "nextPage": "Next page", + "previousPage": "Poprzednia strona", + "nextPage": "Następna strona", "dailyTotalCaption": "({count} pomiarów)", "expandDay": "Pokaż pomiary z tego dnia", "collapseDay": "Ukryj pomiary z tego dnia"