intro
DateRangePicker
An organism for selecting a date range, composed of two DatePicker molecules.
The DateRangePicker organism follows the Curva & Concreto doctrine. It wraps two DatePicker molecules in a grid layout to facilitate start and end date selection while natively enforcing dynamic minimum and maximum bounds between the inputs.
Basic Usage
Selected range: 2026-05-01 to 2026-05-10
Min/Max Bounds (May 2026)
Validation (Error State)
Usage
<script> import { DateRangePicker } from 'cobogo';
let start = $state('2026-05-01'); let end = $state('2026-05-10');</script>
<DateRangePicker bind:start bind:end />Props
| Prop | Type | Default | Description |
|---|---|---|---|
start | string | undefined | Bindable start date (YYYY-MM-DD). |
end | string | undefined | Bindable end date (YYYY-MM-DD). |
min | string | undefined | Global minimum date. |
max | string | undefined | Global maximum date. |
disabled | boolean | false | Disables both inputs. |
invalid | boolean | false | Sets validation error styling. |
valid | boolean | false | Sets validation success styling. |
size | 'sm' | 'md' | 'lg' | 'md' | Sizing scale for the inputs. |
Dynamic Bounds
The DateRangePicker intrinsically limits choices to prevent illogical date ranges. If a start date is selected, the end date’s internal min attribute is set to that start date. If an end date is selected, the start date’s max is restricted.