DateTimePicker
v1.0.7Updated 27 Aug 2026Combined date + time-of-day picker: a Popover calendar with an Hour/Minute Select row beneath it, merging both into one Date value. Minute options are step-filtered via `minuteStep` (default 5), and an off-grid current minute (e.g. :37 on a 5-minute step) is spliced in so the control never misrepresents the stored time. Supports Buddhist Era (พ.ศ.) and Thai locale labels.
Preview
Live · 7 stories▸Why this is recommendeddatetimedatetimedatetimepicker+6
DateTimePicker — date time.
- ✓Scheduling a meeting start time
- ✓Setting an appointment date and time
- ✓Choosing a send/publish timestamp
- ✓Booking a slot with a specific time
- ✓Setting a reminder date and time
- ✓Recording an event date and time in a form
- Date and time-of-day in a single Popover
- Hour + minute Select dropdowns
- minuteStep filtering (default 5) with off-grid minute preserved
- Seconds and milliseconds zeroed on time change
- Controlled (date) or uncontrolled (defaultDate)
- Thai Buddhist Era calendar + Thai locale labels
- BE/CE era toggle chip
- i18n: calendar month/weekday names and year digits follow the app LocaleProvider (useB69Locale) for non-Thai locales
- ✕Date-only selection (use DatePicker — it avoids loading Select)
- ✕Selecting a date range (use DateRangePicker)
- ✕Time-only entry with no date (use TimePicker)
- ✕Fast keyboard-only entry of precise times (use a text time field)
Install
Ask your agent, or call the MCP tool directly. The resolved bundle is written into your project.
Usage
Tick variants in the left menu — each adds a tab with that variant’s real story source, the same code the preview above renders.
Props
dateSelected date + time (controlled)
—onDateChangeSelection callback
—defaultDateInitial value for uncontrolled usage (ignored when `date` is provided)
—minuteStepMinute granularity in the dropdown (default 5)
—placeholderTrigger text when nothing is selected (default "Pick a date & time")
—formatStrdate-fns format string (default "MMM d, yyyy 'at' HH:mm")
—alignPopover alignment
—calendarCalendar system; "buddhist" renders พ.ศ. years
—localeLocale for labels and formatting. `locale="th"` now also supplies the Thai BUILT-IN strings (placeholder, era chip พ.ศ./ค.ศ., and for DateRangePicker the whole quick-range rail) — previously the grid localised but the trigger stayed English, which only showed on an EMPTY field. An explicit `labels` (or `placeholder`) still wins, and locale="en" is unchanged. MCP feedback fb_3adc3df4.
—disabledDisables the trigger
—