Meeting Detail Card

Data Display
Dashboard

Detailed meeting information card with attendees, location, and action buttons.

Preview

Meeting details with full information

Weekly Team Sync

10:00 AM - 11:00 AM

Recurring
Zoom Meeting
JD
MK
+3

Props

Component API reference

PropTypeDefaultDescription
title*stringMeeting title
time*stringTime range (e.g., "10:00 AM - 11:00 AM")
locationstringMeeting location or platform
isRecurringbooleanfalseShow recurring badge
attendeesAttendee[]List of meeting attendees
videoLinkstringVideo meeting link
onJoin() => voidCallback for join button
onEdit() => voidCallback for edit button
onDelete() => voidCallback for delete action
reminderstringReminder time setting
classNamestringAdditional CSS classes

Usage

Import and implementation examples

import { MeetingDetailCard } from '@/components/ui/meeting-detail-card'

<MeetingDetailCard
  title="Weekly Team Sync"
  time="10:00 AM - 11:00 AM"
  location="Zoom Meeting"
  isRecurring={true}
  attendees={[
    { id: 1, name: 'John Doe', initials: 'JD' },
    { id: 2, name: 'Mary Kim', initials: 'MK' },
    { id: 3, name: 'Alice Lee', initials: 'AL' },
  ]}
  videoLink="https://zoom.us/j/123456789"
  reminder="15 minutes before"
  onJoin={() => window.open(videoLink)}
  onEdit={() => openEditModal()}
  onDelete={() => confirmDelete()}
/>
This block is self-contained (no UI component dependencies)

Features

Built-in functionality

  • Full details: Complete meeting information at a glance
  • Attendees: Avatar list with overflow indicator
  • Video link: Quick join button for video meetings
  • Recurrence: Badge indicator for recurring meetings
  • Reminders: Display reminder settings
  • Action buttons: Join, edit, and delete actions
  • Dark mode: Full dark mode support

Accessibility

Accessibility considerations

ARIA Attributes

role="article" for card containeraria-label for action buttonsaria-describedby for meeting details

Keyboard Navigation

KeyAction
TabNavigate between action buttons
EnterActivate focused button

Notes

  • Screen readers announce meeting details
  • Attendee count is accessible
  • Action buttons have clear labels