mirror of
https://github.com/MBombeck/HealthLog.git
synced 2026-11-08 20:42:43 +00:00
i18n(achievements,admin): drop redundant labels and grammar nits
A few small quality wins bundled together:
- The 1-day achievement descriptions read "for 1 consecutive
days" / "1 Tage in Folge" — singular/plural mismatch that
was awkward in both languages. Hand-tuned the five 1-day
variants to "for 1 day" / "an einem Tag"; 7d / 30d copies
unchanged.
- The two "Two hundred …" / "Zweihundert …" badges now use
the numeral 200 to match every other count-based badge.
- /admin/integrations toggle rows ("Umami" / "GlitchTip" lines
that duplicated the card header) drop the literal product
name and just show the action: the existing
`umamiEnabled` / `glitchtipEnabled` description copy is
promoted to the toggle's primary label. SettingsToggle's
description prop becomes optional to support that.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
1 parent
70ebe32b27
commit
98cd13c8e0
5 files changed
+20
-20
No files matched your search
+7
-7
@@ -2048,23 +2048,23 @@
|
||||
},
|
||||
"onTimePerfect1": {
|
||||
"title": "Zeitfenster 1T",
|
||||
"description": "Nimm 1 Tage in Folge alle Medikamente im Zeitfenster ein."
|
||||
"description": "Nimm an einem Tag alle Medikamente im Zeitfenster ein."
|
||||
},
|
||||
"compliance801": {
|
||||
"title": "Treue 80% · 1T",
|
||||
"description": "Erreiche 1 Tage in Folge eine 30-Tage-Einnahmetreue von mindestens 80%."
|
||||
"description": "Erreiche an einem Tag eine 30-Tage-Einnahmetreue von mindestens 80%."
|
||||
},
|
||||
"bmiGreen1": {
|
||||
"title": "BMI im Grün · 1T",
|
||||
"description": "Halte deinen BMI 1 Tage in Folge im Normalbereich."
|
||||
"description": "Halte deinen BMI an einem Tag im Normalbereich."
|
||||
},
|
||||
"bpGreen1": {
|
||||
"title": "Blutdruck im Grün · 1T",
|
||||
"description": "Halte deinen Blutdruck 1 Tage in Folge im Normalbereich."
|
||||
"description": "Halte deinen Blutdruck an einem Tag im Normalbereich."
|
||||
},
|
||||
"pulseGreen1": {
|
||||
"title": "Puls im Grün · 1T",
|
||||
"description": "Halte deinen Ruhepuls 1 Tage in Folge im Normalbereich."
|
||||
"description": "Halte deinen Ruhepuls an einem Tag im Normalbereich."
|
||||
},
|
||||
"onTimePerfect7": {
|
||||
"title": "Zeitfenster 7T",
|
||||
@@ -2171,7 +2171,7 @@
|
||||
"description": "Erfasse 50 Gewichtsmessungen."
|
||||
},
|
||||
"weight200": {
|
||||
"title": "Zweihundert Wiegungen",
|
||||
"title": "200 Wiegungen",
|
||||
"description": "Erfasse 200 Gewichtsmessungen."
|
||||
},
|
||||
"bpFirst": {
|
||||
@@ -2183,7 +2183,7 @@
|
||||
"description": "Erfasse 50 Blutdruckmessungen."
|
||||
},
|
||||
"bp200": {
|
||||
"title": "Zweihundert Blutdruckmessungen",
|
||||
"title": "200 Blutdruckmessungen",
|
||||
"description": "Erfasse 200 Blutdruckmessungen."
|
||||
},
|
||||
"pulseFirst": {
|
||||
|
||||
+7
-7
@@ -2048,23 +2048,23 @@
|
||||
},
|
||||
"onTimePerfect1": {
|
||||
"title": "On-time 1d",
|
||||
"description": "Take all medications on time for 1 consecutive days."
|
||||
"description": "Take all medications on time for 1 day."
|
||||
},
|
||||
"compliance801": {
|
||||
"title": "80% adherence · 1d",
|
||||
"description": "Reach at least 80% 30-day adherence for 1 consecutive days."
|
||||
"description": "Reach at least 80% 30-day adherence for 1 day."
|
||||
},
|
||||
"bmiGreen1": {
|
||||
"title": "BMI green · 1d",
|
||||
"description": "Keep your BMI in the normal range for 1 consecutive days."
|
||||
"description": "Keep your BMI in the normal range for 1 day."
|
||||
},
|
||||
"bpGreen1": {
|
||||
"title": "BP green · 1d",
|
||||
"description": "Keep your blood pressure in the normal range for 1 consecutive days."
|
||||
"description": "Keep your blood pressure in the normal range for 1 day."
|
||||
},
|
||||
"pulseGreen1": {
|
||||
"title": "Pulse green · 1d",
|
||||
"description": "Keep your resting pulse in the normal range for 1 consecutive days."
|
||||
"description": "Keep your resting pulse in the normal range for 1 day."
|
||||
},
|
||||
"onTimePerfect7": {
|
||||
"title": "On-time 7d",
|
||||
@@ -2171,7 +2171,7 @@
|
||||
"description": "Record 50 weight measurements."
|
||||
},
|
||||
"weight200": {
|
||||
"title": "Two hundred weigh-ins",
|
||||
"title": "200 weigh-ins",
|
||||
"description": "Record 200 weight measurements."
|
||||
},
|
||||
"bpFirst": {
|
||||
@@ -2183,7 +2183,7 @@
|
||||
"description": "Record 50 blood-pressure measurements."
|
||||
},
|
||||
"bp200": {
|
||||
"title": "Two hundred BP readings",
|
||||
"title": "200 BP readings",
|
||||
"description": "Record 200 blood-pressure measurements."
|
||||
},
|
||||
"pulseFirst": {
|
||||
|
||||
@@ -179,7 +179,7 @@ export function SettingsToggle({
|
||||
disabled,
|
||||
}: {
|
||||
label: string;
|
||||
description: string;
|
||||
description?: string;
|
||||
icon?: React.ComponentType<{ className?: string }>;
|
||||
checked: boolean;
|
||||
onCheckedChange: (checked: boolean) => void;
|
||||
@@ -191,7 +191,9 @@ export function SettingsToggle({
|
||||
{Icon && <Icon className="text-muted-foreground h-4 w-4" />}
|
||||
<div>
|
||||
<p className="text-sm font-medium">{label}</p>
|
||||
<p className="text-muted-foreground text-xs">{description}</p>
|
||||
{description && (
|
||||
<p className="text-muted-foreground text-xs">{description}</p>
|
||||
)}
|
||||
</div>
|
||||
</div>
|
||||
<Switch
|
||||
|
||||
@@ -92,8 +92,7 @@ export function GlitchtipSection() {
|
||||
|
||||
<div className="mt-4 space-y-3">
|
||||
<SettingsToggle
|
||||
label="GlitchTip"
|
||||
description={t("admin.glitchtipEnabled")}
|
||||
label={t("admin.glitchtipEnabled")}
|
||||
icon={AlertTriangle}
|
||||
checked={settings?.glitchtipEnabled ?? false}
|
||||
onCheckedChange={(checked) =>
|
||||
|
||||
@@ -95,8 +95,7 @@ export function UmamiSection() {
|
||||
|
||||
<div className="mt-4 space-y-3">
|
||||
<SettingsToggle
|
||||
label="Umami"
|
||||
description={t("admin.umamiEnabled")}
|
||||
label={t("admin.umamiEnabled")}
|
||||
icon={Activity}
|
||||
checked={settings?.umamiEnabled ?? false}
|
||||
onCheckedChange={(checked) =>
|
||||
|
||||
Reference in new issue
Block a user