simplify some type checks by fixing graphql schema
This commit is contained in:
@ -1,6 +1,6 @@
|
||||
"use client";
|
||||
|
||||
import { useQueryState, parseAsStringLiteral } from "nuqs";
|
||||
import { useQueryState, parseAsStringLiteral, parseAsString } from "nuqs";
|
||||
import { EventItem } from "./EventItem";
|
||||
import { EventFilter } from "./EventFilter";
|
||||
import {
|
||||
@ -32,22 +32,12 @@ export const EventContainer = ({
|
||||
);
|
||||
|
||||
const filterableCategories = eventCategories.filter((x) => x.showInFilters);
|
||||
const filterableCategorySlugs: string[] = filterableCategories
|
||||
.filter((x) => "slug" in x && typeof x.slug === "string")
|
||||
.map((x) => x.slug);
|
||||
|
||||
const [category, setCategory] = useQueryState(
|
||||
"category",
|
||||
parseAsStringLiteral(filterableCategorySlugs).withDefault(null)
|
||||
);
|
||||
const [category, setCategory] = useQueryState("category", parseAsString);
|
||||
|
||||
const filteredEvents = events.filter(
|
||||
(x) =>
|
||||
!category ||
|
||||
x.categories
|
||||
?.filter((x) => x !== null)
|
||||
.map((eventCategory: EventCategory) => eventCategory.slug)
|
||||
.includes(category)
|
||||
x.categories.map((eventCategory) => eventCategory.slug).includes(category)
|
||||
);
|
||||
|
||||
return (
|
||||
|
Reference in New Issue
Block a user