add upcoming events component
This commit is contained in:
@ -7,6 +7,7 @@ import Image from "next/image";
|
|||||||
import { PersonList } from "@/components/people/PersonList";
|
import { PersonList } from "@/components/people/PersonList";
|
||||||
import { NewsList } from "@/components/news/NewsList";
|
import { NewsList } from "@/components/news/NewsList";
|
||||||
import { PersonSection } from "@/components/people/PersonSection";
|
import { PersonSection } from "@/components/people/PersonSection";
|
||||||
|
import { UpcomingEvents } from "@/components/events/UpcomingEvents";
|
||||||
|
|
||||||
export default async function Home() {
|
export default async function Home() {
|
||||||
const homeQuery = graphql(`
|
const homeQuery = graphql(`
|
||||||
@ -23,6 +24,7 @@ export default async function Home() {
|
|||||||
<main className="site-main" id="main">
|
<main className="site-main" id="main">
|
||||||
<div>
|
<div>
|
||||||
<FeaturedEvents events={events} />
|
<FeaturedEvents events={events} />
|
||||||
|
<UpcomingEvents events={events} />
|
||||||
<blockquote>«Hvor Glæden hersker, er alltid Fest»</blockquote>
|
<blockquote>«Hvor Glæden hersker, er alltid Fest»</blockquote>
|
||||||
<PersonSection heading="Styret" />
|
<PersonSection heading="Styret" />
|
||||||
<PersonSection heading="Administrasjonen" />
|
<PersonSection heading="Administrasjonen" />
|
||||||
|
20
web/src/components/events/UpcomingEvents.tsx
Normal file
20
web/src/components/events/UpcomingEvents.tsx
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
import { EventFragment } from "@/gql/graphql";
|
||||||
|
import { EventItem } from "./EventItem";
|
||||||
|
import styles from "./upcomingEvents.module.scss";
|
||||||
|
import Link from "next/link";
|
||||||
|
|
||||||
|
export const UpcomingEvents = ({ events }: { events: EventFragment[] }) => {
|
||||||
|
return (
|
||||||
|
<section className={styles.upcomingWrapper}>
|
||||||
|
<h2 className="suphead">Denne uka på Chateau Neuf</h2>
|
||||||
|
<ul className={styles.eventList}>
|
||||||
|
{events.map((event) => (
|
||||||
|
<EventItem key={event.id} event={event} mode="list" size="medium" />
|
||||||
|
))}
|
||||||
|
<li>
|
||||||
|
<Link href="/arrangementer">Vis kalender →</Link>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</section>
|
||||||
|
);
|
||||||
|
};
|
@ -9,6 +9,17 @@
|
|||||||
font-size: 1rem;
|
font-size: 1rem;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
&.medium {
|
||||||
|
display: grid;
|
||||||
|
grid-template-columns: 1fr 2fr;
|
||||||
|
column-gap: .6rem;
|
||||||
|
|
||||||
|
.title,
|
||||||
|
.details {
|
||||||
|
font-size: 1rem;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.image {
|
.image {
|
||||||
|
21
web/src/components/events/upcomingEvents.module.scss
Normal file
21
web/src/components/events/upcomingEvents.module.scss
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
.upcomingWrapper {
|
||||||
|
background: var(--color-deepBrick);
|
||||||
|
color: var(--color-betongGray);
|
||||||
|
margin: 0 calc(var(--spacing-sitepadding)*-1);
|
||||||
|
padding: var(--spacing-sitepadding);
|
||||||
|
|
||||||
|
h2 {
|
||||||
|
margin-bottom: 1rem;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.eventList {
|
||||||
|
display: grid;
|
||||||
|
grid-template-columns: repeat(4, 1fr);
|
||||||
|
list-style: none;
|
||||||
|
|
||||||
|
li {
|
||||||
|
border-right: var(--border);
|
||||||
|
margin-right: .6rem;
|
||||||
|
}
|
||||||
|
}
|
@ -40,4 +40,6 @@
|
|||||||
|
|
||||||
// animations
|
// animations
|
||||||
--transition-easing: .3s ease;
|
--transition-easing: .3s ease;
|
||||||
|
|
||||||
|
--border: 1px solid var(--color-neufPink);
|
||||||
}
|
}
|
Reference in New Issue
Block a user