filter on future events when fetching for home page / event index

This commit is contained in:
2024-05-20 22:00:02 +02:00
parent 10227ff8e3
commit 856f39bb58
6 changed files with 83 additions and 43 deletions

View File

@@ -1,7 +1,7 @@
import { getClient } from "@/app/client";
import { EventContainer } from "@/components/events/EventContainer";
import {
allEventsQuery,
futureEventsQuery,
EventFragment,
EventCategory,
EventOccurrence,
@@ -10,8 +10,8 @@ import { PageHeader } from "@/components/general/PageHeader";
import { Suspense } from "react";
export default async function Page() {
const { data, error } = await getClient().query(allEventsQuery, {});
const events = (data?.events ?? []) as EventFragment[];
const { data, error } = await getClient().query(futureEventsQuery, {});
const events = (data?.events?.futureEvents ?? []) as EventFragment[];
const eventCategories = (data?.eventCategories ?? []) as EventCategory[];
return (

View File

@@ -19,8 +19,14 @@ const HomeFragmentDefinition = graphql(`
export default async function Home() {
const homeQuery = graphql(`
query home {
events: pages(contentType: "events.EventPage") {
...Event
events: eventIndex {
... on EventIndex {
futureEvents {
... on EventPage {
...Event
}
}
}
}
home: page(contentType: "home.HomePage", urlPath: "/home/") {
... on HomePage {
@@ -30,7 +36,7 @@ export default async function Home() {
}
`);
const { data, error } = await getClient().query(homeQuery, {});
const events = (data?.events ?? []) as EventFragment[];
const events = (data?.events?.futureEvents ?? []) as EventFragment[];
const home = (data?.home ?? []) as HomeFragment;
const featuredEventIds = home.featuredEvents.map((x) => x.id);