import React from 'react'; import { makeStyles } from '@material-ui/core/styles'; import { Card, CardHeader, CardContent, CardActions, Button } from '@material-ui/core'; import { Event } from '../../types'; import requests from '../../requests'; interface PropTypes { event: Event; mutate: () => void; } const useStyles = makeStyles(theme => ({ actions: { display: 'flex', justifyContent: 'space-between' } })); const EventCard: React.FC = ({ event, mutate }) => { const classes = useStyles(); const { data: { name, date, participants, conferenceId, attendanceId } } = event; const handleJoin = () => { // TODO: add your username to participants list const update = { data: { participants: [...participants, Math.random()] }} return requests .patch(`/events/${event._id}`, update) .then(() => mutate()); }; const handleRemove = () => { return requests .delete(`/events/${event._id}`) .then(() => mutate()); }; return ( {conferenceId &&
ConferenceID: {conferenceId}
} {attendanceId &&
AttendanceID: {attendanceId}
}
Participants ({participants?.length || 0} / 3)
    {participants?.map(username => (
  • {username}
  • ))}
{(participants?.length || 0) < 3 && ( )}
); }; export default EventCard;