Date Range Picker
Live preview and documentation for the Date Range Picker component.
Preview
componentPreview.loading
About
There's no separate KasyDateRangePicker widget: "DateRangePicker" is just KasyDatePicker (kasy_date_picker.dart) used with selectionMode: KasyDateSelectionMode.range. All the range logic (two taps for start/end) already lives in KasyDatePicker/KasyCalendar — this is just the usage mode.
KasyDatePicker(
label: 'Trip dates',
placeholder: 'Select a range',
selectionMode: KasyDateSelectionMode.range,
range: _range,
onRangeChanged: (KasyDateRange r) => setState(() => _range = r),
)range(KasyDateRange): astart/endpair; either can benullwhile the user is still picking.onRangeChanged: fires twice — first with juststart(after the first tap), then with both ends set (after the second tap, closing the overlay).minDate/maxDate,presentation,dateFormat/formatDate,locale,monthsToShow,variant: same props asKasyDatePicker— see the Date Picker page.- In the field, the displayed text shows
"start - end"once complete, or"start - ..."while the second end hasn't been picked yet.
Last updated on 08/23/2026

