start splitting up event list

This commit is contained in:
elisejakob
2024-05-11 02:23:20 +02:00
parent 4a5ae2d7bc
commit bb4a9f4eb2
8 changed files with 89 additions and 8 deletions

View File

@ -1,7 +1,7 @@
import { graphql } from "@/gql"; import { graphql } from "@/gql";
import { EventFragment } from "@/gql/graphql"; import { EventFragment } from "@/gql/graphql";
import { getClient } from "@/app/client"; import { getClient } from "@/app/client";
import { EventList } from "@/components/events/EventList"; import { FeaturedEvents } from "@/components/events/FeaturedEvents";
import { Body } from "@/components/general/Body"; import { Body } from "@/components/general/Body";
import Image from "next/image"; import Image from "next/image";
import { PersonList } from "@/components/people/PersonList"; import { PersonList } from "@/components/people/PersonList";
@ -21,7 +21,7 @@ export default async function Home() {
return ( return (
<main className="site-main" id="main"> <main className="site-main" id="main">
<div> <div>
<EventList events={events} /> <FeaturedEvents events={events} />
<blockquote>«Hvor Glæden hersker, er alltid Fest»</blockquote> <blockquote>«Hvor Glæden hersker, er alltid Fest»</blockquote>
<NewsList /> <NewsList />
<div> <div>

View File

@ -0,0 +1,20 @@
import styles from "./eventFilter.module.scss";
export const EventFilter = () => {
return (
<div className={styles.eventFilter}>
<span>Filter</span>
<ul>
<li>
<button>Kategori</button>
</li>
<li>
<button>Kategori</button>
</li>
<li>
<button>Kategori</button>
</li>
</ul>
</div>
);
};

View File

@ -1,13 +1,23 @@
import { EventFragment } from "@/gql/graphql"; import { EventFragment } from "@/gql/graphql";
import { EventItem } from "./EventItem"; import { EventItem } from "./EventItem";
import styles from "./eventList.module.scss"; import styles from "./eventList.module.scss";
import { EventFilter } from "./EventFilter";
export const EventList = ({ events }: { events: EventFragment[] }) => { export const EventList = ({ events }: { events: EventFragment[] }) => {
return ( return (
<ul className={styles.eventList}> <div className={styles.events}>
{events.map((event) => ( <EventFilter />
<EventItem key={event.id} event={event} /> <div className={styles.eventWrapper}>
))} <div className={styles.displayOptions}>
</ul> <button>Vis liste</button>
<button>Vis kalender</button>
</div>
<ul className={styles.eventList}>
{events.map((event) => (
<EventItem key={event.id} event={event} />
))}
</ul>
</div>
</div>
); );
}; };

View File

@ -0,0 +1,13 @@
import { EventFragment } from "@/gql/graphql";
import { EventItem } from "./EventItem";
import styles from "./featuredEvents.module.scss";
export const FeaturedEvents = ({ events }: { events: EventFragment[] }) => {
return (
<ul className={styles.eventList}>
{events.map((event) => (
<EventItem key={event.id} event={event} />
))}
</ul>
);
};

View File

@ -0,0 +1,14 @@
.eventFilter {
display: flex;
align-items: center;
gap: 1rem;
background: var(--color-background-secondary);
margin: var(--spacing-sitepadding) calc(var(--spacing-sitepadding)*-1);
padding: 1rem var(--spacing-sitepadding);
ul {
list-style: none;
display: flex;
gap: .5rem;
}
}

View File

@ -1,7 +1,24 @@
.eventWrapper {
background: #ccc;
margin: calc(var(--spacing-sitepadding)*-1) calc(var(--spacing-sitepadding)*-1);
padding: var(--spacing-sitepadding);
}
.eventList { .eventList {
display: grid; display: grid;
grid-template-columns: repeat(3, 1fr); grid-template-columns: repeat(3, 1fr);
column-gap: var(--spacing-gap-column); column-gap: var(--spacing-gap-column);
row-gap: var(--spacing-gap-row); row-gap: var(--spacing-gap-row);
padding-bottom: var(--spacing-section-bottom); padding-bottom: var(--spacing-section-bottom);
}
.displayOptions {
display: grid;
grid-template-columns: 1fr 1fr;
gap: var(--spacing-gap-column);
margin-bottom: var(--spacing-sitepadding);
button {
border-radius: 0;
}
} }

View File

@ -0,0 +1,7 @@
.eventList {
display: grid;
grid-template-columns: repeat(3, 1fr);
column-gap: var(--spacing-gap-column);
row-gap: var(--spacing-gap-row);
padding-bottom: var(--spacing-section-bottom);
}

View File

@ -85,7 +85,7 @@ button {
background: var(--color-cta); background: var(--color-cta);
color: var(--color-text); color: var(--color-text);
border: none; border: none;
padding: 1rem 1.5rem; padding: .5rem 1rem;
font-family: inherit; font-family: inherit;
font-size: var(--font-size-body); font-size: var(--font-size-body);
font-weight: 500; font-weight: 500;