import React from "react"; import { MDXProvider } from "@mdx-js/react"; import { getExecContent, getExecNames, Metadata } from "../../lib/team"; import { MDXRemote, MDXRemoteSerializeResult } from "next-mdx-remote"; import { GetStaticProps } from "next"; import { Image } from "../../components/Image"; import { TeamMemberCard } from "../../components/TeamMemberCard"; import { TeamMember } from "../../components/TeamMember"; import { Link } from "../../components/Link"; import { Bubble } from "../../components/Bubble"; import ElectionContent from "../../content/meet-the-team/elections.mdx"; import programme from "../../content/meet-the-team/programme-committee.json"; import website from "../../content/meet-the-team/website-committee.json"; import systems from "../../content/meet-the-team/systems-committee.json"; import styles from "./team.module.css"; // TODO: get hotdog for elections interface SerializedExec { content: MDXRemoteSerializeResult; metadata: Metadata; } interface Props { execs: SerializedExec[]; } export default function MeetTheTeam({ execs }: Props) { return ( <> Meet the Team! The Executives Programme Committee Website Committee Systems Committee The Executives {execs.map((exec) => { return ( ); })} Programme Committee Website Committee Systems Committee Elections > ); } interface MembersProps { team: Array; } function MembersList(props: MembersProps) { return ( {props.team.map((member) => ( ))} ); } // interface MobileExecProps { // metadata: Metadata; // content: ComponentType; // } // interface Propup extends MobileExecProps { // handleClose: () => void; // } // function MobileExec(props: MobileExecProps) { // const [isOpen, setIsOpen] = useState(false); // const togglePopup = () => { // setIsOpen(!isOpen); // }; // return ( // <> // // // // {isOpen && ( // <> // // // > // )} // > // ); // } // function ExecPopup(props: Propup) { // return ( // // // // // // // // // // // // ); // } export const getStaticProps: GetStaticProps = async () => { const execNames = await getExecNames(); const execs = (await Promise.all( execNames.map((name) => getExecContent(name)) )) as SerializedExec[]; return { props: { execs }, }; };