import AccountCircleIcon from '@material-ui/icons/AccountCircle'; import { useContext } from 'react'; import { CarpoolContext } from './Carpool'; function MemberRow({ member }: { member: { id: number; name: string } }) { return (
{member.name}
); } function formatOthers(hiddenMemberCount: number) { if (hiddenMemberCount === 0) { return ''; } if (hiddenMemberCount === 1) { return '1 other...'; } return `${hiddenMemberCount} others...`; } const shownMembersCount = 2; export default function MemberList() { const { carpool } = useContext(CarpoolContext); const members = carpool.members; const membersToShow = members.slice(0, shownMembersCount); const hiddenMemberCount = members.length - membersToShow.length; return (

Members

{members.length > 0 ? (
{membersToShow.map((member) => ( ))} {formatOthers(hiddenMemberCount)}
) : ( 'This carpool has no members.' )}
); }