Date Range Picker

A field that opens a range calendar: pick a start, then an end.
Stable
Web
iOS
Android
@advui/core
Source

Basic

Installation

pnpm
pnpm add @advui/core
npm
npm install @advui/core

Usage

import { DateRangePicker, Field } from '@advui/core'

<Field label="Stay">
  <DateRangePicker value={stay} onValueChange={setStay} min={new Date()} />
</Field>

API reference

DateRangePicker

Takes the same props as Date Picker, except the value is a range.
PropTypeDefaultDescription
value{ start: Date | null; end: Date | null }—The picked range.
defaultValue{ start: Date | null; end: Date | null }—Starting `value` when uncontrolled.
onValueChange(value: DateRange) => void—Called on each press; the panel closes once both ends are picked.
placeholderstring'Pick dates'Shown while empty.
titlestring'Choose dates'Title of the panel.

Accessibility

  • As Date Picker: a labelled button that opens a titled dialog, described by the picked range.
  • Every day in the range has aria-selected, so screen readers say which days are included.

Platform notes

iOS
Opens as a bottom sheet.
Android
Opens as a bottom sheet; the back button closes it.
Since v0.5.0Last updated Nov 2, 2026Edit this page on GitHub