diff --git a/apps/mana/apps/web/src/lib/modules/dreams/views/SymbolDetailView.svelte b/apps/mana/apps/web/src/lib/modules/dreams/views/SymbolDetailView.svelte
index 9f23b99f2..b2b25f11a 100644
--- a/apps/mana/apps/web/src/lib/modules/dreams/views/SymbolDetailView.svelte
+++ b/apps/mana/apps/web/src/lib/modules/dreams/views/SymbolDetailView.svelte
@@ -12,7 +12,8 @@
useAllDreamSymbols,
} from '../queries';
import { dreamsStore } from '../stores/dreams.svelte';
- import { MOOD_COLORS, MOOD_LABELS, type Dream, type DreamMood } from '../types';
+ import { MOOD_COLORS, type Dream, type DreamMood } from '../types';
+ import { _ } from 'svelte-i18n';
let {
symbolId,
@@ -107,7 +108,7 @@
async function handleDelete() {
if (!symbol) return;
const ok = confirm(
- `Symbol "${symbol.name}" wirklich löschen? Es wird aus allen Träumen entfernt.`
+ $_('dreams.symbol_detail.confirm_delete', { values: { name: symbol.name } })
);
if (!ok) return;
await dreamsStore.deleteSymbol(symbol.id);
@@ -119,7 +120,9 @@
const target = symbols.find((s) => s.id === mergeTargetId);
if (!target) return;
const ok = confirm(
- `"${symbol.name}" in "${target.name}" zusammenführen? Alle Träume werden umgeschrieben.`
+ $_('dreams.symbol_detail.confirm_merge', {
+ values: { source: symbol.name, target: target.name },
+ })
);
if (!ok) return;
await dreamsStore.mergeSymbols(symbol.id, mergeTargetId);
@@ -139,45 +142,54 @@
}
function moodLabel(mood: string): string {
- if (mood in MOOD_LABELS) return MOOD_LABELS[mood as DreamMood];
- return 'Unbekannt';
+ const valid: DreamMood[] = ['angenehm', 'neutral', 'unangenehm', 'albtraum'];
+ if (valid.includes(mood as DreamMood)) return $_('dreams.moods.' + mood);
+ return $_('dreams.symbol_detail.mood_unknown');
}
{#if mergeOpen && symbol}
- "{symbol.name}" zusammenführen mit:
+ {$_('dreams.symbol_detail.merge_label', { values: { name: symbol.name } })}
-
+
{$_('dreams.symbol_detail.merge_cancel')}
{/if}
{#if !symbol}
-
Symbol nicht gefunden.
+
{$_('dreams.symbol_detail.empty_not_found')}
{:else}
@@ -199,18 +216,18 @@
class:active={editColor === color}
style="background: {color}"
onclick={() => (editColor = color)}
- aria-label={`Farbe ${color}`}
+ aria-label={$_('dreams.symbol_detail.color_aria', { values: { color } })}
>
{/each}
- Meine Bedeutung
+ {$_('dreams.symbol_detail.label_meaning')}
@@ -218,7 +235,7 @@
{#if moodDist.length > 0}
-
Stimmungs-Verteilung
+
{$_('dreams.symbol_detail.label_mood_dist')}
{#each moodDist as m}
@@ -239,13 +256,13 @@
{#if cooccurring.length > 0}
-
Häufig zusammen mit
+
{$_('dreams.symbol_detail.label_cooccurring')}
{#each cooccurring as c}
@@ -257,7 +274,7 @@
{#if dreamsWithSymbol.length > 0}
-
Träume mit diesem Symbol
+
{$_('dreams.symbol_detail.label_dream_list')}
{#each dreamsWithSymbol as d (d.id)}
diff --git a/scripts/i18n-hardcoded-baseline.json b/scripts/i18n-hardcoded-baseline.json
index 891a8750a..7fd9c1c74 100644
--- a/scripts/i18n-hardcoded-baseline.json
+++ b/scripts/i18n-hardcoded-baseline.json
@@ -110,7 +110,6 @@
"apps/mana/apps/web/src/lib/modules/core/widgets/RecentContactsWidget.svelte": 2,
"apps/mana/apps/web/src/lib/modules/core/widgets/TasksTodayWidget.svelte": 1,
"apps/mana/apps/web/src/lib/modules/core/widgets/UpcomingEventsWidget.svelte": 1,
- "apps/mana/apps/web/src/lib/modules/dreams/views/SymbolDetailView.svelte": 8,
"apps/mana/apps/web/src/lib/modules/drink/ListView.svelte": 5,
"apps/mana/apps/web/src/lib/modules/finance/ListView.svelte": 6,
"apps/mana/apps/web/src/lib/modules/goals/ListView.svelte": 1,
diff --git a/scripts/i18n-missing-baseline.json b/scripts/i18n-missing-baseline.json
index e4f441b2c..d8c6c8740 100644
--- a/scripts/i18n-missing-baseline.json
+++ b/scripts/i18n-missing-baseline.json
@@ -10,6 +10,7 @@
"apps/mana/apps/web/src/lib/modules/broadcast/views/DetailView.svelte": 1,
"apps/mana/apps/web/src/lib/modules/credits/ListView.svelte": 1,
"apps/mana/apps/web/src/lib/modules/dreams/ListView.svelte": 1,
+ "apps/mana/apps/web/src/lib/modules/dreams/views/SymbolDetailView.svelte": 1,
"apps/mana/apps/web/src/lib/modules/firsts/ListView.svelte": 2,
"apps/mana/apps/web/src/lib/modules/invoices/components/StatusBadge.svelte": 1,
"apps/mana/apps/web/src/lib/modules/invoices/constants.ts": 1,