feat: Dark Mode Toggle + RRULE UI für wiederkehrende Aufgaben/Termine
Dark Mode: Manueller Theme-Switch (System/Hell/Dunkel) in Einstellungen mit localStorage-Persistenz und Flash-Prevention via data-theme Attribut. RRULE UI: Wiederholungs-Formular in Aufgaben- und Kalender-Modals mit Frequenz (Täglich/Wöchentlich/Monatlich), Intervall, Wochentag-Auswahl und optionalem Enddatum. Backend-Routen für is_recurring/recurrence_rule in POST/PUT erweitert. Repeat-Icon auf wiederkehrenden Einträgen. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -19,6 +19,7 @@
|
||||
<!-- Preload: kritische ES-Module (modulepreload ist korrekt für type="module") -->
|
||||
<link rel="modulepreload" href="/api.js" />
|
||||
<link rel="modulepreload" href="/router.js" />
|
||||
<link rel="modulepreload" href="/rrule-ui.js" />
|
||||
|
||||
<!-- Styles -->
|
||||
<link rel="stylesheet" href="/styles/tokens.css" />
|
||||
@@ -35,6 +36,14 @@
|
||||
<link rel="stylesheet" href="/styles/budget.css" />
|
||||
<link rel="stylesheet" href="/styles/settings.css" />
|
||||
|
||||
<!-- Theme: Vor CSS-Rendering anwenden (Flash-Prevention) -->
|
||||
<script>
|
||||
(function() {
|
||||
var t = localStorage.getItem('oikos-theme');
|
||||
if (t === 'light' || t === 'dark') document.documentElement.setAttribute('data-theme', t);
|
||||
})();
|
||||
</script>
|
||||
|
||||
<!-- Lucide Icons (lokal, v0.469.0) -->
|
||||
<script src="/lucide.min.js"></script>
|
||||
</head>
|
||||
|
||||
Reference in New Issue
Block a user