"use client"; import styles from "./eventItem.module.scss"; import Link from "next/link"; import Image from "../general/Image"; import { SingularEvent, EventFragment, getClosestOccurrence, } from "@/lib/event"; import { toLocalTime, formatDate, commonDateFormat } from "@/lib/date"; export const EventItem = ({ event, mode, size, }: { event: SingularEvent | EventFragment; mode: "list" | "calendar"; size?: "small" | "medium" | "large"; }) => { const nextOccurrence = getClosestOccurrence(event); const numOccurrences = event?.occurrences?.length ?? 0; return (
  • {event.featuredImage && ( )}

    {event.title}

    {mode === "list" && nextOccurrence && (

    {numOccurrences === 1 && nextOccurrence?.start && formatDate(nextOccurrence.start, commonDateFormat)} {numOccurrences > 1 && nextOccurrence?.start && ( Neste:{" "} {formatDate(nextOccurrence.start, commonDateFormat)} )}

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

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

    )}
    Mer om arrangementet {event.title}
  • ); };