Skip to content

Commit

Permalink
Fix undefined errors on officer cards
Browse files Browse the repository at this point in the history
  • Loading branch information
Brian-Magnuson committed Nov 27, 2023
1 parent a5e899a commit 97ef7dc
Show file tree
Hide file tree
Showing 2 changed files with 31 additions and 23 deletions.
2 changes: 1 addition & 1 deletion src/app/about/officer-data.ts
Original file line number Diff line number Diff line change
Expand Up @@ -219,7 +219,7 @@ export const officerData: { [key: string]: OfficerCardProps } = {
};

export const positionData: {
[key: string]: { [key: string]: OfficerCardProps };
[key: string]: { [key: string]: OfficerCardProps | undefined };
} = {
"Fall 2023": {
President: officerData.yonas_bahre,
Expand Down
52 changes: 30 additions & 22 deletions src/app/about/page.tsx
Original file line number Diff line number Diff line change
@@ -1,39 +1,46 @@
import React from "react";
import Image from "next/image";
import styles from "./About.module.css";

import OfficerCard from "./officer-card";
import officerCardData, { officerData, positionData } from "./officer-data";

export default function About() {
const officerCards = officerCardData.map((cardData) => (
<OfficerCard
key={cardData.position}
position={cardData.position}
image={cardData.image}
name={cardData.name}
socialLinksData={cardData.socialLinksData}
/>
));
// const officerCards = officerCardData.map((cardData) => (
// <OfficerCard
// key={cardData.position}
// position={cardData.position}
// image={cardData.image}
// name={cardData.name}
// socialLinksData={cardData.socialLinksData}
// />
// ));

const officerCardSection = Object.entries(positionData).map(
([semester, officers]) => {
const officerCards = Object.entries(officers).map(
([position, officer]) => (
<OfficerCard
key={`${semester} ${position}`}
position={position}
image={officer.image}
name={officer.name}
socialLinksData={officer.socialLinksData}
/>
),
([position, officer]) => {
if (officer === undefined) {
return <div key={`${semester} ${position}`} />;
}

return (
<OfficerCard
key={`${semester} ${position}`}
position={position}
image={officer.image}
name={officer.name}
socialLinksData={officer.socialLinksData}
/>
);
},
);

return (
<>
<React.Fragment key={semester}>
<h2>{semester}</h2>
{officerCards}
</>
<div className={styles.cardContainer}>{officerCards}</div>
</React.Fragment>
);
},
);
Expand Down Expand Up @@ -64,7 +71,8 @@ export default function About() {
<section className={styles.officers}>
<div className={styles.container}>
<h2>Officers</h2>
<div className={styles.cardContainer}>{officerCards}</div>
{/* <div className={styles.cardContainer}>{officerCards}</div> */}
{officerCardSection}
</div>
</section>
</main>
Expand Down

0 comments on commit 97ef7dc

Please sign in to comment.