@@ -47,28 +95,94 @@
{tasksStore.error}
- {:else if tasksStore.incompleteTasks.length === 0}
+ {:else if allEmpty}
-
đ„
-
Inbox ist leer
-
FĂŒge eine neue Aufgabe hinzu, um loszulegen.
+
+
+
+
Noch keine Aufgaben
+
Erstelle deine erste Aufgabe mit dem Eingabefeld oben.
{:else}
-
- {/if}
+
+
+ {#if overdueTasks.length > 0}
+
+
+
+ {/if}
- {#if viewStore.showCompleted && tasksStore.completedTasks.length > 0}
-
-
- Erledigt ({tasksStore.completedTasks.length})
-
-
+
+
+ {#if todayTasks.length === 0}
+
+
Keine Aufgaben fĂŒr heute
+
+ {:else}
+
+ {/if}
+
+
+
+
+ {#if upcomingCount === 0}
+
+
Keine anstehenden Aufgaben
+
+ {:else}
+
+ {#each groupedUpcomingTasks() as group}
+
+
+ {group.label} ({group.tasks.length})
+
+
+
+ {/each}
+
+ {/if}
+
+
+
+
+ {#if completedTasks.length === 0}
+
+
Noch keine erledigten Aufgaben
+
+ {:else}
+
+ {/if}
+
{/if}
diff --git a/apps/todo/apps/web/src/routes/(app)/completed/+page.svelte b/apps/todo/apps/web/src/routes/(app)/completed/+page.svelte
deleted file mode 100644
index acb9b6c03..000000000
--- a/apps/todo/apps/web/src/routes/(app)/completed/+page.svelte
+++ /dev/null
@@ -1,58 +0,0 @@
-
-
-
- Erledigt | Todo
-
-
-
-
- Erledigt
- Erledigte Aufgaben
-
-
- {#if isLoading || tasksStore.loading}
-
- {:else if tasksStore.error}
-
- {tasksStore.error}
-
- {:else if tasksStore.completedTasks.length === 0}
-
-
â
-
Noch nichts erledigt
-
Erledigte Aufgaben werden hier angezeigt.
-
- {:else}
-
- {/if}
-
-
-
diff --git a/apps/todo/apps/web/src/routes/(app)/settings/+page.svelte b/apps/todo/apps/web/src/routes/(app)/settings/+page.svelte
index 95679fd01..0d4e0209f 100644
--- a/apps/todo/apps/web/src/routes/(app)/settings/+page.svelte
+++ b/apps/todo/apps/web/src/routes/(app)/settings/+page.svelte
@@ -2,75 +2,215 @@
import { onMount } from 'svelte';
import { goto } from '$app/navigation';
import { authStore } from '$lib/stores/auth.svelte';
+ import { theme } from '$lib/stores/theme';
+ import { userSettings } from '$lib/stores/user-settings.svelte';
+ import { THEME_DEFINITIONS } from '@manacore/shared-theme';
+ import { ThemeColorPreview } from '@manacore/shared-theme-ui';
+ import {
+ SettingsPage,
+ SettingsSection,
+ SettingsCard,
+ SettingsRow,
+ SettingsToggle,
+ SettingsDangerZone,
+ SettingsDangerButton,
+ GlobalSettingsSection,
+ } from '@manacore/shared-ui';
- onMount(() => {
+ onMount(async () => {
if (!authStore.isAuthenticated) {
goto('/login');
+ return;
}
+
+ // Load user settings from server
+ await userSettings.load();
});
+
+ function toggleDarkMode() {
+ theme.toggleMode();
+ }
+
+ async function handleLogout() {
+ await authStore.signOut();
+ goto('/login');
+ }
Einstellungen | Todo
-
-
+
+
+
+ {#snippet icon()}
+
+ {/snippet}
-
-
-
- Konto
+
+
+ {#snippet icon()}
+
+ {/snippet}
+
-
-
-
-
E-Mail
-
- {authStore.user?.email || 'Nicht angemeldet'}
-
-
-
+
+ {#snippet icon()}
+
+ {/snippet}
+
+ Aktiv
+
+
+
+
-
-
+
+
+ {#snippet icon()}
+
+ {/snippet}
+
+
+
+ {#snippet icon()}
+
+ {/snippet}
+
+
+ goto('/themes')}
+ >
+ {#snippet icon()}
+
+ {/snippet}
+
+ Themes wÀhlen
+
+
+
+
+
Farbvorschau
+
+ So sieht die App mit dem aktuellen Theme aus
+
+
+
-
+
+
-
-
- Erscheinungsbild
+
+
-
- Theme-Einstellungen sind in der Navigation verfĂŒgbar.
-
-
+
+
+ {#snippet icon()}
+
+ {/snippet}
-
-
- Ăber
+
+
+ {#snippet icon()}
+
+ {/snippet}
+ 1.0.0
+
+
+
-
-
Todo App v1.0.0
-
Teil des ManaCore Ăkosystems
-
-
-
-
-
-
+
+
+
+ {#snippet icon()}
+
+ {/snippet}
+
+
+
diff --git a/apps/todo/apps/web/src/routes/(app)/today/+page.svelte b/apps/todo/apps/web/src/routes/(app)/today/+page.svelte
deleted file mode 100644
index 78a19b03d..000000000
--- a/apps/todo/apps/web/src/routes/(app)/today/+page.svelte
+++ /dev/null
@@ -1,91 +0,0 @@
-
-
-
- Heute | Todo
-
-
-
-
-
-
-
- {#if isLoading || tasksStore.loading}
-
- {:else if tasksStore.error}
-
- {tasksStore.error}
-
- {:else}
- {#if overdueTasks.length > 0}
-
-
-
- ĂberfĂ€llig ({overdueTasks.length})
-
-
-
- {/if}
-
- {#if todayTasks.length > 0}
-
-
- Heute ({todayTasks.length})
-
-
-
- {/if}
-
- {#if overdueTasks.length === 0 && todayTasks.length === 0}
-
-
đ
-
Alles erledigt!
-
Keine Aufgaben fĂŒr heute.
-
- {/if}
- {/if}
-
-
-
diff --git a/apps/todo/apps/web/src/routes/(app)/upcoming/+page.svelte b/apps/todo/apps/web/src/routes/(app)/upcoming/+page.svelte
deleted file mode 100644
index 64ffd66f2..000000000
--- a/apps/todo/apps/web/src/routes/(app)/upcoming/+page.svelte
+++ /dev/null
@@ -1,100 +0,0 @@
-
-
-
- DemnÀchst | Todo
-
-
-
-
-
- {#if isLoading || tasksStore.loading}
-
- {:else if tasksStore.error}
-
- {tasksStore.error}
-
- {:else if groupedTasks().length === 0}
-
-
đ
-
Keine anstehenden Aufgaben
-
Keine Aufgaben in den nÀchsten 7 Tagen geplant.
-
- {:else}
-
- {#each groupedTasks() as group}
-
-
- {group.label} ({group.tasks.length})
-
-
-
- {/each}
-
- {/if}
-
-
-