diff --git a/lib/events.ts b/lib/events.ts index c73a4522..9acc15e7 100644 --- a/lib/events.ts +++ b/lib/events.ts @@ -6,15 +6,22 @@ import { MDXRemoteSerializeResult } from "next-mdx-remote"; import { serialize } from "next-mdx-remote/serialize"; const EVENTS_PATH = path.join("content", "events"); +const TERMS = ["winter", "spring", "fall"]; export async function getYears(): Promise { return (await fs.readdir(EVENTS_PATH, { withFileTypes: true })) .filter((dirent) => dirent.isDirectory()) - .map((dirent) => dirent.name); + .map((dirent) => dirent.name) + .sort(); } export async function getTermsByYear(year: string): Promise { - return await fs.readdir(path.join(EVENTS_PATH, year)); + 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 {