From 794818db13cddaa7a18ab34550e41b2bfab85807 Mon Sep 17 00:00:00 2001 From: Jonas Braathen Date: Mon, 13 May 2024 00:08:11 +0200 Subject: [PATCH] fix more type things --- web/src/components/events/EventItem.tsx | 18 +++++++++++------- web/src/components/events/FeaturedEvents.tsx | 2 +- web/src/lib/event.ts | 4 ++-- 3 files changed, 14 insertions(+), 10 deletions(-) diff --git a/web/src/components/events/EventItem.tsx b/web/src/components/events/EventItem.tsx index 176c59f..ab67009 100644 --- a/web/src/components/events/EventItem.tsx +++ b/web/src/components/events/EventItem.tsx @@ -20,6 +20,7 @@ export const EventItem = ({ size?: "small" | "medium" | "large"; }) => { const nextOccurrence = getClosestOccurrence(event); + const numOccurrences = event?.occurrences?.length ?? 0; return (
  • {event.title} {mode === "list" && nextOccurrence && (

    - {event.occurrences.length === 1 && + {numOccurrences === 1 && + nextOccurrence?.start && formatDate(nextOccurrence.start, commonDateFormat)} - {event.occurrences.length > 1 && nextOccurrence && ( + {numOccurrences > 1 && nextOccurrence?.start && ( Neste:{" "} {formatDate(nextOccurrence.start, commonDateFormat)} @@ -52,11 +54,13 @@ export const EventItem = ({ )}

    )} - {mode === "calendar" && event.occurrence?.start && ( -

    - {formatDate(event.occurrence?.start, "'kl.' HH:mm")} -

    - )} + {mode === "calendar" && + "occurrence" in event && + event.occurrence?.start && ( +

    + {formatDate(event.occurrence?.start, "'kl.' HH:mm")} +

    + )} Mer om arrangementet {event.title} diff --git a/web/src/components/events/FeaturedEvents.tsx b/web/src/components/events/FeaturedEvents.tsx index 471b5cd..6bc360a 100644 --- a/web/src/components/events/FeaturedEvents.tsx +++ b/web/src/components/events/FeaturedEvents.tsx @@ -6,7 +6,7 @@ export const FeaturedEvents = ({ events }: { events: EventFragment[] }) => { return ( ); diff --git a/web/src/lib/event.ts b/web/src/lib/event.ts index 9fb5c51..b0c64f8 100644 --- a/web/src/lib/event.ts +++ b/web/src/lib/event.ts @@ -95,8 +95,8 @@ function isDefined(val: T | undefined | null): val is T { interface EventsByDate { [yearMonth: string]: { - [week: number]: { - [day: number]: SingularEvent[]; + [week: string]: { + [day: string]: SingularEvent[]; }; }; }