diff --git a/src/components/Calendar.svelte b/src/components/Calendar.svelte
index bf81e315..478c0fd3 100644
--- a/src/components/Calendar.svelte
+++ b/src/components/Calendar.svelte
@@ -6,17 +6,27 @@
import { tweened } from 'svelte/motion';
import type { EventCalendarEntry } from '@data/events';
+ export let events: [EventCalendarEntry, EventCalendarEntry, EventCalendarEntry];
+
+ const TODAY = new Date();
+
+ function relativeDate(date: Date): 'Vorbei' | 'Demnächst' {
+ if (date < TODAY) {
+ return 'Vorbei';
+ }
+ return 'Demnächst';
+ }
+
+ const initialEvent: number = events.findIndex((e) => e.date >= TODAY);
// TODO: should this be the event itself instead of the index?
// Perhaps we should also just use embla
- let selectedEvent = 0;
+ let selectedEvent = initialEvent >= 0 ? initialEvent : 0; // findIndex returns -1 if not found
const ANIMATION_DURATION = 300;
- const location = tweened(0, { duration: ANIMATION_DURATION, easing: cubicOut });
+ const location = tweened(selectedEvent, { duration: ANIMATION_DURATION, easing: cubicOut });
$: location.set(selectedEvent);
$: currentEvent = events[selectedEvent];
-
- export let events: [EventCalendarEntry, EventCalendarEntry, EventCalendarEntry];
@@ -105,7 +115,7 @@
{event.date.getDate()}
{event.date.toLocaleString('de-DE', { month: 'long' })}
- {event.date <= new Date() ? 'Vorbei' : 'Demnächst'}
+ {relativeDate(event.date)}
diff --git a/tests/index.spec.ts-snapshots/index-page-screenshot-1-Mobile-Chrome-linux.png b/tests/index.spec.ts-snapshots/index-page-screenshot-1-Mobile-Chrome-linux.png
index 451412e9..d0cec96a 100644
Binary files a/tests/index.spec.ts-snapshots/index-page-screenshot-1-Mobile-Chrome-linux.png and b/tests/index.spec.ts-snapshots/index-page-screenshot-1-Mobile-Chrome-linux.png differ
diff --git a/tests/index.spec.ts-snapshots/index-page-screenshot-1-chromium-linux.png b/tests/index.spec.ts-snapshots/index-page-screenshot-1-chromium-linux.png
index db09f06b..ed8cd4a1 100644
Binary files a/tests/index.spec.ts-snapshots/index-page-screenshot-1-chromium-linux.png and b/tests/index.spec.ts-snapshots/index-page-screenshot-1-chromium-linux.png differ
diff --git a/tests/index.spec.ts-snapshots/index-page-screenshot-1-firefox-linux.png b/tests/index.spec.ts-snapshots/index-page-screenshot-1-firefox-linux.png
index 1ff60bc9..4b04537b 100644
Binary files a/tests/index.spec.ts-snapshots/index-page-screenshot-1-firefox-linux.png and b/tests/index.spec.ts-snapshots/index-page-screenshot-1-firefox-linux.png differ
diff --git a/tests/projects.spec.ts-snapshots/Projects-page-screenshot-1-Mobile-Chrome-linux.png b/tests/projects.spec.ts-snapshots/Projects-page-screenshot-1-Mobile-Chrome-linux.png
index 00fe33a1..e689720a 100644
Binary files a/tests/projects.spec.ts-snapshots/Projects-page-screenshot-1-Mobile-Chrome-linux.png and b/tests/projects.spec.ts-snapshots/Projects-page-screenshot-1-Mobile-Chrome-linux.png differ
diff --git a/tests/projects.spec.ts-snapshots/Projects-page-screenshot-1-chromium-linux.png b/tests/projects.spec.ts-snapshots/Projects-page-screenshot-1-chromium-linux.png
index bd5745a2..6e89c94e 100644
Binary files a/tests/projects.spec.ts-snapshots/Projects-page-screenshot-1-chromium-linux.png and b/tests/projects.spec.ts-snapshots/Projects-page-screenshot-1-chromium-linux.png differ
diff --git a/tests/projects.spec.ts-snapshots/Projects-page-screenshot-1-firefox-linux.png b/tests/projects.spec.ts-snapshots/Projects-page-screenshot-1-firefox-linux.png
index f4a2210c..60102b18 100644
Binary files a/tests/projects.spec.ts-snapshots/Projects-page-screenshot-1-firefox-linux.png and b/tests/projects.spec.ts-snapshots/Projects-page-screenshot-1-firefox-linux.png differ
diff --git a/tests/projects.spec.ts-snapshots/Reselect-for-all-1-Mobile-Chrome-linux.png b/tests/projects.spec.ts-snapshots/Reselect-for-all-1-Mobile-Chrome-linux.png
index 00fe33a1..e689720a 100644
Binary files a/tests/projects.spec.ts-snapshots/Reselect-for-all-1-Mobile-Chrome-linux.png and b/tests/projects.spec.ts-snapshots/Reselect-for-all-1-Mobile-Chrome-linux.png differ
diff --git a/tests/projects.spec.ts-snapshots/Reselect-for-all-1-chromium-linux.png b/tests/projects.spec.ts-snapshots/Reselect-for-all-1-chromium-linux.png
index bd5745a2..6e89c94e 100644
Binary files a/tests/projects.spec.ts-snapshots/Reselect-for-all-1-chromium-linux.png and b/tests/projects.spec.ts-snapshots/Reselect-for-all-1-chromium-linux.png differ
diff --git a/tests/projects.spec.ts-snapshots/Reselect-for-all-1-firefox-linux.png b/tests/projects.spec.ts-snapshots/Reselect-for-all-1-firefox-linux.png
index f4a2210c..60102b18 100644
Binary files a/tests/projects.spec.ts-snapshots/Reselect-for-all-1-firefox-linux.png and b/tests/projects.spec.ts-snapshots/Reselect-for-all-1-firefox-linux.png differ
diff --git a/tests/projects.spec.ts-snapshots/Select-members-only-1-Mobile-Chrome-linux.png b/tests/projects.spec.ts-snapshots/Select-members-only-1-Mobile-Chrome-linux.png
index 20c0308a..a20028d1 100644
Binary files a/tests/projects.spec.ts-snapshots/Select-members-only-1-Mobile-Chrome-linux.png and b/tests/projects.spec.ts-snapshots/Select-members-only-1-Mobile-Chrome-linux.png differ
diff --git a/tests/projects.spec.ts-snapshots/Select-members-only-1-chromium-linux.png b/tests/projects.spec.ts-snapshots/Select-members-only-1-chromium-linux.png
index 410c0887..22f7832f 100644
Binary files a/tests/projects.spec.ts-snapshots/Select-members-only-1-chromium-linux.png and b/tests/projects.spec.ts-snapshots/Select-members-only-1-chromium-linux.png differ
diff --git a/tests/projects.spec.ts-snapshots/Select-members-only-1-firefox-linux.png b/tests/projects.spec.ts-snapshots/Select-members-only-1-firefox-linux.png
index a4328515..96cf2962 100644
Binary files a/tests/projects.spec.ts-snapshots/Select-members-only-1-firefox-linux.png and b/tests/projects.spec.ts-snapshots/Select-members-only-1-firefox-linux.png differ