diff --git a/lib/events.ts b/lib/events.ts index bf61fe8f..612e1608 100644 --- a/lib/events.ts +++ b/lib/events.ts @@ -16,9 +16,12 @@ export async function getYears(): Promise { } export async function getTermsByYear(year: string): Promise { - return (await fs.readdir(path.join(EVENTS_PATH, year))).sort( - (a, b) => TERMS.indexOf(a) - TERMS.indexOf(b) - ); + return ( + await fs.readdir(path.join(EVENTS_PATH, year), { withFileTypes: true }) + ) + .filter((dirent) => dirent.isDirectory() && TERMS.includes(dirent.name)) + .map((dirent) => dirent.name) + .sort((a, b) => TERMS.indexOf(a) - TERMS.indexOf(b)); } interface Metadata { @@ -55,12 +58,7 @@ export async function getEventsByTerm( year: string, term: string ): Promise { - return ( - await fs.readdir(path.join(EVENTS_PATH, year, term), { - withFileTypes: true, - }) - ) - .map((dirent) => dirent.name) + return (await fs.readdir(path.join(EVENTS_PATH, year, term))) .filter((name) => name.endsWith(".md")) .map((name) => name.slice(0, -".md".length)); } diff --git a/pages/events/[year]/index.tsx b/pages/events/[year]/index.tsx index a14a8530..d7dd28bc 100644 --- a/pages/events/[year]/index.tsx +++ b/pages/events/[year]/index.tsx @@ -1,7 +1,9 @@ import React from "react"; + +import { Link } from "../../../components/Link"; import { getYears, getTermsByYear } from "../../../lib/events"; + import styles from "./year.module.css"; -import { Link } from "../../../components/Link"; export async function getStaticPaths(): Promise<{ paths: { @@ -55,7 +57,7 @@ const Year = (props: Props) => {
{props.terms.map((term) => ( - + {`${term.charAt(0).toUpperCase()}${term.slice(1)}`} ))}