Search...

Search documentation...

Date Time Range Picker

Date Time Range Picker

A range picker for appointments, filters, and reporting periods. It combines a range calendar with independent start and end time columns. Changes are staged locally and committed only with Apply; Cancel discards the draft.

import { DateTimeRangePicker } from "@pompeitech/vesuvius-ui";

Default

With a default range

24-hour format with seconds

API

DateTimeRangePicker

PropTypeDefaultDescription
value / defaultValue{ from?: Date; to?: Date }Controlled/uncontrolled selected range, including each endpoint's time.
onChange(range: DateRange | undefined) => voidCalled only after Apply.
placeholderstring"Pick a date and time range"Trigger text when no range is selected.
dateFormatstringdate-fns format used for both endpoints.
hourFormat"12" | "24""12"Hour column format.
minuteStepnumber5Minute column granularity.
showSecondsbooleanfalseAdds seconds to both endpoints.
numberOfMonthsnumber2Number of calendar months shown.
disabledbooleanfalseDisables the trigger.
fromYear / toYearnumberBounds for the year dropdown.
confirmLabel / cancelLabelstring"Apply" / "Cancel"Footer action labels.

Accessibility

The trigger is a real button. The calendar keeps the keyboard behavior of react-day-picker, while each time column exposes a labeled listbox with keyboard-focusable options. The committed value does not change until Apply is activated.