feat(todo): add comprehensive settings page with 20+ preferences

- Add global settings: confirmOnDelete, keyboardShortcutsEnabled
- Create Todo-specific settings store with localStorage persistence
- Add new shared-ui components: SettingsSelect, SettingsNumberInput, SettingsTimeInput
- Redesign settings page with 6 new sections:
  - Task behavior (priority, due time, auto-archive, quick-add project)
  - View & display (default view, compact mode, task counts, subtask progress)
  - Kanban board (card size, labels, WIP limit)
  - Notifications (reminders, daily digest, overdue alerts)
  - Productivity (focus mode, pomodoro, daily goal, streak)
  - Keyboard shortcuts

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
Till-JS 2025-12-09 13:30:02 +01:00
parent 00dadc97d1
commit 863dd621f5
8 changed files with 1570 additions and 2 deletions

View file

@ -244,6 +244,10 @@ export interface GeneralSettings {
weekStartsOn: WeekStartDay;
/** Master toggle for all app sounds */
soundsEnabled: boolean;
/** Show confirmation dialog before deleting items */
confirmOnDelete: boolean;
/** Enable keyboard shortcuts globally */
keyboardShortcutsEnabled: boolean;
}
/**
@ -290,6 +294,8 @@ export const DEFAULT_GENERAL_SETTINGS: GeneralSettings = {
startPages: {}, // Empty = use app defaults
weekStartsOn: 'monday',
soundsEnabled: true,
confirmOnDelete: true,
keyboardShortcutsEnabled: true,
};
/**