screens/DSCalendarView

DSCalendarView

screens
since v2.0

Monthly calendar grid with event dots, selected date highlight, and swipe-to-navigate months.

iOS 17+macOS 14+

Purpose

Scheduling screens, booking calendars, and habit trackers.

Props

PropTypeDefaultDescription
selectedDatereqBinding<Date>โ€”Currently selected date.
events[DSCalendarEvent][]Events to mark with dots on the calendar.
displayedMonthBinding<Date>?nilExternally controlled month. nil = self-managed.
onDateSelect((Date) -> Void)?nilCalled when a date cell is tapped.
todayHighlightBooltrueHighlights today with a ring.

Examples

Event scheduler

Calendar with event dots and a list below.

swift
VStack(spacing: 0) {
    DSCalendarView(
        selectedDate: $selectedDate,
        events: viewModel.events,
        onDateSelect: { date in viewModel.loadEvents(for: date) }
    )
    DSDivider()
    EventListView(events: viewModel.eventsForSelectedDate)
}

Related Components