import React from 'react' import type { FDTeamBlock as FDTeamBlockProps, Media } from '@/payload-types' import { FDImage } from '@/components/FDImage' const sectionBgMap: Record = { white: 'bg-white', gray: 'bg-[#e5e5e5]', navy: 'bg-fd-navy', } const cardMap: Record = { navy: { bg: 'bg-fd-navy', name: 'text-fd-yellow', role: 'text-white/70', bio: 'text-white/60', icon: 'text-white/40 hover:text-fd-yellow' }, white: { bg: 'bg-white', name: 'text-fd-navy', role: 'text-fd-navy/60', bio: 'text-fd-navy/60', icon: 'text-fd-navy/40 hover:text-fd-navy' }, gray: { bg: 'bg-[#e5e5e5]', name: 'text-fd-navy', role: 'text-fd-navy/60', bio: 'text-fd-navy/60', icon: 'text-fd-navy/40 hover:text-fd-navy' }, } const colsMap: Record = { '2': 'sm:grid-cols-2', '3': 'sm:grid-cols-2 lg:grid-cols-3', '4': 'sm:grid-cols-2 lg:grid-cols-4', } export const FDTeamBlockComponent: React.FC = ({ heading, subheading, members, columns = '3', cardStyle = 'navy', sectionBackground = 'white', }) => { const sectionBg = sectionBgMap[sectionBackground] || sectionBgMap.white const card = cardMap[cardStyle] || cardMap.navy const gridCols = colsMap[columns] || colsMap['3'] const isNavySection = sectionBackground === 'navy' return (
{/* Header */} {(heading || subheading) && (
{heading && (

{heading}

)} {subheading && (

{subheading}

)}
)} {/* Grid */}
{members?.map((member, i) => { const photo = member.photo as Media | undefined return (
{/* Photo */}
{photo?.url ? ( ) : ( // Placeholder when no photo
)}
{/* Info */}

{member.name}

{member.role}

{member.bio && (

{member.bio}

)} {/* Links */} {(member.email || member.linkedin) && (
{member.email && ( {/* Email icon */} )} {member.linkedin && ( {/* LinkedIn icon */} )}
)}
) })}
) }