|
|
|
@ -1,5 +1,4 @@ |
|
|
|
|
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"; |
|
|
|
@ -14,7 +13,8 @@ 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
|
|
|
|
|
// TODO: fix hotdog for elections
|
|
|
|
|
// change News link in elections to point to News page
|
|
|
|
|
|
|
|
|
|
interface SerializedExec { |
|
|
|
|
content: MDXRemoteSerializeResult; |
|
|
|
@ -27,57 +27,55 @@ interface Props { |
|
|
|
|
|
|
|
|
|
export default function MeetTheTeam({ execs }: Props) { |
|
|
|
|
return ( |
|
|
|
|
<MDXProvider components={{}}> |
|
|
|
|
<> |
|
|
|
|
<div className={styles.header_container}> |
|
|
|
|
<div className={styles.header_text_container}> |
|
|
|
|
<h1 className={styles.header}>Meet the Team!</h1> |
|
|
|
|
<div className={styles.nav}> |
|
|
|
|
<Link href="#execs">The Executives</Link> |
|
|
|
|
<Link href="#programme">Programme Committee</Link> |
|
|
|
|
<Link href="#website">Website Committee</Link> |
|
|
|
|
<Link href="#system">Systems Committee</Link> |
|
|
|
|
</div> |
|
|
|
|
<h2 |
|
|
|
|
className={styles.subheading} |
|
|
|
|
style={{ borderBottom: "none", margin: 0, padding: 0 }} |
|
|
|
|
> |
|
|
|
|
The Executives |
|
|
|
|
</h2> |
|
|
|
|
<> |
|
|
|
|
<div className={styles.header_container}> |
|
|
|
|
<div className={styles.header_text_container}> |
|
|
|
|
<h1 className={styles.header}>Meet the Team!</h1> |
|
|
|
|
<div className={styles.nav}> |
|
|
|
|
<Link href="#execs">The Executives</Link> |
|
|
|
|
<Link href="#programme">Programme Committee</Link> |
|
|
|
|
<Link href="#website">Website Committee</Link> |
|
|
|
|
<Link href="#system">Systems Committee</Link> |
|
|
|
|
</div> |
|
|
|
|
<Image src="images/team/team-codey.svg" className={styles.codey} /> |
|
|
|
|
</div> |
|
|
|
|
<div className={styles.execs} id="execs"> |
|
|
|
|
{execs.map((exec) => { |
|
|
|
|
return ( |
|
|
|
|
<div key={exec.metadata.name}> |
|
|
|
|
<TeamMemberCard {...exec.metadata}> |
|
|
|
|
<MDXRemote {...exec.content} /> |
|
|
|
|
</TeamMemberCard> |
|
|
|
|
</div> |
|
|
|
|
); |
|
|
|
|
})} |
|
|
|
|
</div> |
|
|
|
|
<div className={styles.programme} id="programme"> |
|
|
|
|
<h2 className={styles.subheading}>Programme Committee</h2> |
|
|
|
|
<MembersList team={programme} /> |
|
|
|
|
<h2 |
|
|
|
|
className={styles.subheading} |
|
|
|
|
style={{ borderBottom: "none", margin: 0, padding: 0 }} |
|
|
|
|
> |
|
|
|
|
The Executives |
|
|
|
|
</h2> |
|
|
|
|
</div> |
|
|
|
|
<div className={styles.website} id="website"> |
|
|
|
|
<h2 className={styles.subheading}>Website Committee</h2> |
|
|
|
|
<MembersList team={website} /> |
|
|
|
|
</div> |
|
|
|
|
<div className={styles.system} id="system"> |
|
|
|
|
<h2 className={styles.subheading}>Systems Committee</h2> |
|
|
|
|
<MembersList team={systems} /> |
|
|
|
|
<Image src="images/team/team-codey.svg" className={styles.codey} /> |
|
|
|
|
</div> |
|
|
|
|
<div className={styles.execs} id="execs"> |
|
|
|
|
{execs.map((exec) => { |
|
|
|
|
return ( |
|
|
|
|
<div key={exec.metadata.name}> |
|
|
|
|
<TeamMemberCard {...exec.metadata}> |
|
|
|
|
<MDXRemote {...exec.content} /> |
|
|
|
|
</TeamMemberCard> |
|
|
|
|
</div> |
|
|
|
|
); |
|
|
|
|
})} |
|
|
|
|
</div> |
|
|
|
|
<div className={styles.programme} id="programme"> |
|
|
|
|
<h2 className={styles.subheading}>Programme Committee</h2> |
|
|
|
|
<MembersList team={programme} /> |
|
|
|
|
</div> |
|
|
|
|
<div className={styles.website} id="website"> |
|
|
|
|
<h2 className={styles.subheading}>Website Committee</h2> |
|
|
|
|
<MembersList team={website} /> |
|
|
|
|
</div> |
|
|
|
|
<div className={styles.system} id="system"> |
|
|
|
|
<h2 className={styles.subheading}>Systems Committee</h2> |
|
|
|
|
<MembersList team={systems} /> |
|
|
|
|
</div> |
|
|
|
|
<Bubble> |
|
|
|
|
<div className={styles.elections}> |
|
|
|
|
<h2 className={styles.election_subheading}>Elections</h2> |
|
|
|
|
<ElectionContent /> |
|
|
|
|
</div> |
|
|
|
|
<Bubble> |
|
|
|
|
<div className={styles.elections}> |
|
|
|
|
<h2 className={styles.election_subheading}>Elections</h2> |
|
|
|
|
<ElectionContent /> |
|
|
|
|
</div> |
|
|
|
|
</Bubble> |
|
|
|
|
</> |
|
|
|
|
</MDXProvider> |
|
|
|
|
</Bubble> |
|
|
|
|
</> |
|
|
|
|
); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|