From 637a918dd8ef24ffad1287dd5d22de43dbb12e84 Mon Sep 17 00:00:00 2001 From: Alexander Bocken Date: Fri, 10 Apr 2026 08:36:31 +0200 Subject: [PATCH] feat: replace all native date inputs with custom DatePicker component Add theme-aware DatePicker with pill display, calendar dropdown, prev/next day arrows, bilingual month/weekday names, and min/max support. Replace all 15 native elements across fitness, tasks, and cospend. --- package.json | 2 +- src/lib/components/DatePicker.svelte | 354 ++++++++++++++++++ .../components/fitness/PeriodTracker.svelte | 13 +- src/lib/components/tasks/TaskForm.svelte | 3 +- .../payments/add/+page.svelte | 28 +- .../payments/edit/[id]/+page.svelte | 18 +- .../recurring/edit/[id]/+page.svelte | 14 +- .../[id]/+page.svelte | 3 +- .../[measure=fitnessMeasure]/+page.svelte | 17 +- .../edit/[id]/+page.svelte | 3 +- 10 files changed, 391 insertions(+), 64 deletions(-) create mode 100644 src/lib/components/DatePicker.svelte diff --git a/package.json b/package.json index d8875d7..2202c43 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "homepage", - "version": "1.23.4", + "version": "1.23.5", "private": true, "type": "module", "scripts": { diff --git a/src/lib/components/DatePicker.svelte b/src/lib/components/DatePicker.svelte new file mode 100644 index 0000000..5d62c4f --- /dev/null +++ b/src/lib/components/DatePicker.svelte @@ -0,0 +1,354 @@ + + +
+
+ + + +
+ + {#if open} +
+
+ + {months[viewMonth]} {viewYear} + +
+ +
+ {#each weekdays as wd (wd)} + {wd} + {/each} +
+ +
+ {#each calendarDays as day (day.date)} + + {/each} +
+ + {#if value !== todayStr} + + {/if} +
+ {/if} +
+ + diff --git a/src/lib/components/fitness/PeriodTracker.svelte b/src/lib/components/fitness/PeriodTracker.svelte index 006ea3d..ad8f478 100644 --- a/src/lib/components/fitness/PeriodTracker.svelte +++ b/src/lib/components/fitness/PeriodTracker.svelte @@ -1,6 +1,7 @@