omverse-ui

Menu

ComponentsExamplesGitHub

Getting started

IntroductionInstallationThemingDesign tokensDark mode

Form

ButtonInputSelectCheckboxRadioSwitchSlidernewDatePickernew

Display

AvatarBadgeCardChipAccordionProgressDivider

Navigation

NavbarBreadcrumbTabsPaginationStepper

Overlay

DialogTooltipToast

Other

IconIconButtonSpinner
ComponentsFormDatePicker

DatePicker

Calendar · DatePicker input · DateRangePicker · 4 variants · presets · time picker

Calendar variantsPresetsDatePickerSizesStatesDate+timeDateRangePickerDual month

Calendar variants

Live preview

Four visual styles: default, dark, gradient, and minimal

default

May 2026
Su
Mo
Tu
We
Th
Fr
Sa

dark

May 2026
Su
Mo
Tu
We
Th
Fr
Sa

gradient

May 2026
Su
Mo
Tu
We
Th
Fr
Sa

minimal

May 2026
Su
Mo
Tu
We
Th
Fr
Sa
App.tsx
tsx
1import { Calendar } from 'omverse-ui'
2 
3<Calendar variant="default" value={date} onChange={setDate} />
4<Calendar variant="dark" value={date} onChange={setDate} />
5<Calendar variant="gradient" value={date} onChange={setDate} />
6<Calendar variant="minimal" value={date} onChange={setDate} />

With quick presets

Live preview

quickPresets adds shortcut buttons beside the calendar

May 2026
Su
Mo
Tu
We
Th
Fr
Sa
App.tsx
tsx
1<Calendar value={date} onChange={setDate} presets />

DatePicker input

Live preview

Dropdown-based date picker — with helper text, error, required, and disabled states

Select the project start date

Please select a due date

App.tsx
tsx
1import { DatePicker } from 'omverse-ui'
2 
3const [date, setDate] = useState<Date | null>(null)
4 
5{/* Default */}
6<DatePicker label="Date" value={date} onChange={setDate} />
7 
8{/* With helper text */}
9<DatePicker label="Start date" helperText="Select the project start date" value={date} onChange={setDate} />
10 
11{/* With error */}
12<DatePicker
13 label="Due date"
14 error={!date}
15 errorText="Please select a due date"
16 value={date}
17 onChange={setDate}
18/>
19 
20{/* Disabled */}
21<DatePicker label="Locked date" disabled value={date} onChange={setDate} />

DatePicker with presets

Live preview

quickPresets prop adds shortcut buttons inside the dropdown

App.tsx
tsx
1<DatePicker label="Date" value={date} onChange={setDate} presets />

Sizes

Live preview

sm, md (default), and lg trigger heights

App.tsx
tsx
1<DatePicker label="Small" size="sm" value={date} onChange={setDate} />
2<DatePicker label="Medium (default)" size="md" value={date} onChange={setDate} />
3<DatePicker label="Large" size="lg" value={date} onChange={setDate} />

States

Live preview

Default, error, disabled, disable weekends, and min date

Invalid date

App.tsx
tsx
1{/* Default */}
2<DatePicker label="Date" value={date} onChange={setDate} />
3 
4{/* Error */}
5<DatePicker label="Date" error errorText="Invalid date" value={date} onChange={setDate} />
6 
7{/* Disabled */}
8<DatePicker label="Date" disabled value={date} onChange={setDate} />
9 
10{/* Disable weekends */}
11<DatePicker label="Weekdays only" disableWeekends value={date} onChange={setDate} />
12 
13{/* Min date */}
14<DatePicker label="From today" minDate={new Date()} value={date} onChange={setDate} />

Date + time

Live preview

showTime adds a time picker below the calendar grid

App.tsx
tsx
1<DatePicker label="Date & time" showTime value={date} onChange={setDate} />

Date range picker

Live preview

DateRangePicker for selecting a start and end date — dualMonth shows two months

Start dateEnd date
Start dateEnd date
App.tsx
tsx
1import { DateRangePicker } from 'omverse-ui'
2 
3const [range, setRange] = useState<[Date | null, Date | null]>([null, null])
4 
5<DateRangePicker label="Date range" value={range} onChange={setRange} />
6<DateRangePicker label="Dual month view" value={range} onChange={setRange} dualMonth />

Calendar props

Props

PropTypeDefaultDescription
valueDate | nullControlled selected date
onChange(date: Date) => voidCallback fired when a date is selected
variant'default' | 'dark' | 'gradient' | 'minimal''default'Visual style of the calendar
presetsbooleanfalseShows preset shortcut buttons beside the calendar
disableWeekendsbooleanfalseMakes Saturday and Sunday unselectable
minDateDateEarliest selectable date
maxDateDateLatest selectable date
showTimebooleanfalseAdds a time picker below the calendar grid

DatePicker props

Props

PropTypeDefaultDescription
valueDate | nullControlled selected date
onChange(date: Date | null) => voidCallback fired when a date is selected
labelstringLabel shown above the input
placeholderstringPlaceholder text
helperTextstringHelper text shown below the input
errorbooleanfalseError state
errorTextstringError message
size'sm' | 'md' | 'lg''md'Trigger input height
disabledbooleanfalseDisables the picker
presetsbooleanfalseShows preset shortcut buttons in the dropdown
disableWeekendsbooleanfalseMakes Saturday and Sunday unselectable
minDateDateEarliest selectable date
maxDateDateLatest selectable date
showTimebooleanfalseAdds a time picker below the calendar

DateRangePicker props

Props

PropTypeDefaultDescription
value[Date | null, Date | null]Controlled date range
onChange(range: [Date | null, Date | null]) => voidCallback fired when the range changes
labelstringLabel shown above the input
size'sm' | 'md' | 'lg''md'Trigger input height
disabledbooleanfalseDisables the range picker
presetsbooleanfalseShows preset shortcut buttons in the dropdown
dualMonthbooleanfalseShows two months side by side
disableWeekendsbooleanfalseMakes Saturday and Sunday unselectable
minDateDateEarliest selectable date
maxDateDateLatest selectable date