Skip to content

Commit 124531f

Browse files
fix: Refactor sponsor entries mapping to use reduce for improved readability and performance
1 parent b8ecabb commit 124531f

File tree

1 file changed

+20
-21
lines changed

1 file changed

+20
-21
lines changed

src/components/Sponsors/Sponsors.tsx

Lines changed: 20 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -125,27 +125,26 @@ function SponsorsMarquee() {
125125
generalmotors: "General Motors",
126126
};
127127

128-
const sponsorEntries: SponsorEntry[] = sponsors
129-
.map((entry) => {
130-
const name = entry.name as SponsorLogo;
131-
const src = logoMap[name];
132-
const Icon = iconMap[name];
133-
const url = urlMap[name];
134-
const label = labelMap[name];
135-
136-
if (!src || !url || !label) {
137-
return null;
138-
}
139-
140-
return {
141-
name,
142-
src,
143-
url,
144-
label,
145-
Icon,
146-
};
147-
})
148-
.filter((entry): entry is SponsorEntry => entry !== null);
128+
const sponsorEntries = sponsors.reduce<SponsorEntry[]>((acc, entry) => {
129+
const name = entry.name as SponsorLogo;
130+
const src = logoMap[name];
131+
const Icon = iconMap[name];
132+
const url = urlMap[name];
133+
const label = labelMap[name];
134+
135+
if (!src || !url || !label) {
136+
return acc;
137+
}
138+
139+
acc.push({
140+
name,
141+
src,
142+
url,
143+
label,
144+
Icon,
145+
});
146+
return acc;
147+
}, []);
149148

150149
const duplicatedSponsors = [...sponsorEntries, ...sponsorEntries];
151150

0 commit comments

Comments
 (0)