import Link from "next/link"; import { DateTime } from "luxon"; import { DateRange } from "../components/Snippets"; import { generateDisplayDate, generateRealtimeDate } from "../lib/lib"; import classNames from "classnames"; export default function EventPreview({ event, className, big }) { // Event tiles have a 'dark mode' used when their background images are dark and white text is needed for legibility. const grayText = event?.dark ? "text-washedWhite" : "text-wall-400"; const blackText = event?.dark ? "text-white" : "text-wall-600"; const starts = generateDisplayDate(event.starts, event.timezone); const ends = generateDisplayDate(event.ends, event.timezone); const inFuture = generateRealtimeDate(starts) > DateTime.now(); const happeningNow = generateRealtimeDate(event.starts) > DateTime.now() && !inFuture; return (

{event.title}

{event.description}

{event.location}

{inFuture && event.registration_url ? (
e.stopPropagation()} target="_blank" > RSVP
) : event.youtube ? (
e.stopPropagation()} target="_blank" > ▶ Watch
) : null}
); }