feat(05-01): settings shell, header link, and i18n keys for dashboard phase

- Create settings/layout.tsx with SettingsSidebar and back-to-dashboard link
- Create settings/page.tsx with redirect to /settings/dashboard
- Create settings-sidebar.tsx with Widgets and Calendar nav items, aria-current
- Add Settings link in header user dropdown (gear icon, before logout)
- Add settings namespace (DE+EN) with all category and action keys
- Add widgets namespace (DE+EN) with all widget names, descriptions, error states
- Add header.settings key ("Einstellungen"/"Settings")

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-06-24 11:23:47 +02:00
parent d5e1c42e64
commit 8a9c1ae6a9
6 changed files with 231 additions and 0 deletions
+43
View File
@@ -67,6 +67,7 @@
"breadcrumb": {
"home": "Home"
},
"settings": "Settings",
"logout": "Sign Out",
"role": {
"SUPER_ADMIN": "Super Admin",
@@ -98,6 +99,48 @@
"empty": "No active widgets",
"addWidget": "Add widget"
},
"settings": {
"link": "Settings",
"navLabel": "Settings",
"backToDashboard": "Back to Dashboard",
"categoryDashboard": "Dashboard",
"categoryWidgets": "Widgets",
"categoryCalendar": "Calendar",
"sourceDeleteConfirm": "Are you sure you want to delete this calendar source?",
"sourceDeleteCta": "Delete source",
"providerDeleteConfirm": "Are you sure you want to delete this search provider?",
"providerDeleteCta": "Delete provider",
"cancel": "Cancel"
},
"widgets": {
"emptyHeading": "No active widgets",
"emptyBody": "Click edit to add widgets to your dashboard.",
"addWidget": "Add widget",
"catalogTitle": "Add widget",
"deleteTooltip": "Remove widget",
"editMode": "Edit dashboard",
"saveChanges": "Save changes",
"layoutLoadError": "Could not load dashboard. Please reload the page.",
"widgetSaveError": "Could not save changes. Please try again.",
"clock.name": "Clock",
"clock.description": "Shows the current time",
"clock.dateHint": "Show date",
"search.name": "Search",
"search.description": "Quick web search",
"search.placeholder": "Search...",
"calendar.name": "Calendar",
"calendar.description": "Upcoming events",
"calendar.emptyNoSources": "No calendar sources configured",
"calendar.emptyNoEvents": "No upcoming events",
"calendar.connectionSuccess": "Connection successful",
"calendar.connectionError": "Connection failed. Please check the URL and credentials.",
"calendar.addSource": "Add source",
"calendar.sourceEmpty": "No calendar sources configured. Add a source to display events.",
"note.name": "Notes",
"note.description": "Free-text notes with Markdown",
"note.defaultTitle": "Note",
"note.autosaveError": "Save failed"
},
"admin": {
"users": {
"title": "User Management",