diff --git a/content/meet-the-team/systems-committee.json b/content/meet-the-team/systems-committee.json index 2e77136f..80923c63 100644 --- a/content/meet-the-team/systems-committee.json +++ b/content/meet-the-team/systems-committee.json @@ -5,11 +5,8 @@ }, { "name": "Andrew Wang", - "role": "Member" - }, - { - "name": "Bill Xiang", - "role": "Member" + "role": "Member", + "image": "/images/team/AndrewWang-Syscom.jpg" }, { "name": "Raymond Li", diff --git a/lib/team.ts b/lib/team.ts index 90ab46b9..62a80850 100644 --- a/lib/team.ts +++ b/lib/team.ts @@ -22,7 +22,9 @@ export async function getExecNames() { export async function getExec(fileName: string, convert = true) { const raw = await readFile(path.join(EXECS_PATH, `${fileName}${fileType}`)); const { content, data: metadata } = matter(raw); - const image = await getMemberImagePath(metadata.name); + const image = + (metadata.image as string | undefined) ?? + (await getMemberImagePath(metadata.name)); return { content: convert ? await serialize(content) : content, diff --git a/pages/about/team.tsx b/pages/about/team.tsx index fa1ee2eb..770b0e9e 100644 --- a/pages/about/team.tsx +++ b/pages/about/team.tsx @@ -110,10 +110,12 @@ function MembersList(props: MembersProps) { ); } -async function getTeamWithImages(team: Omit[]) { +type TeamMember = Omit & { image?: string }; + +async function getTeamWithImages(team: TeamMember[]) { return await Promise.all( team.map(async (member) => { - const image = await getMemberImagePath(member.name); + const image = member.image ?? (await getMemberImagePath(member.name)); return { ...member, image, diff --git a/public/images/team/AndrewWang-Syscom.jpg b/public/images/team/AndrewWang-Syscom.jpg new file mode 100644 index 00000000..26082ff8 Binary files /dev/null and b/public/images/team/AndrewWang-Syscom.jpg differ