sheengemologic ui
All components

DatePicker

A typed date input with a responsive calendar mounted in the nearest theme portal.@gemologic/sheen-date · date and time

Playground

This example has no scalar controls. Its validated source remains interactive below.
<DatePicker label="Settlement date" name="settlesAt" defaultValue={createCalendarDate(2026, 9, 10)} defaultVisibleDate={createCalendarDate(2026, 9, 1)} />

Variant matrix

Settlement date

Anatomy

Package
@gemologic/sheen-date
Source
packages/date/src/DatePicker.tsx
Tokens
  • --sheen-color-bg-raised
  • --sheen-color-border-control
  • --sheen-color-focus-ring

Accessibility

Role: textbox and calendar dialogKeyboard: Tab, Enter, Space, Escape, Arrow keys, PageUp, PageDown, Home, End

Do

  • Keep the picker inside ThemeProvider so its overlay inherits the effective scope.

Do not

  • Do not replace accepted content while date constraints refresh.

Generated props

NameTypeDefaultDescription
valueCalendarDate | nullApp-owned Sheen CalendarDate, or null.
defaultValueCalendarDate | nullInitial uncontrolled value.
onValueChange(value: CalendarDate | null) => voidReceives complete valid dates and clearing.
presetsreadonly DatePreset[]Deterministic labeled Sheen date shortcuts.
label *stringRequired visible field label.
minValueCalendarDateEarliest selectable date.
maxValueCalendarDateLatest selectable date.
isDateUnavailable(value: CalendarDate) => booleanMarks dates unavailable with a Sheen value callback.
defaultVisibleDateCalendarDateDeterministic initially visible month.
localestringExplicit BCP 47 locale, defaulting to theme context.
calendarstringOptional presentation calendar identifier.
namestringNative form name for YYYY-MM-DD.
formstringOptional external form owner.
descriptionstringAssociated instructions.
errorstringAssociated app validation error.
placeholderstringText input placeholder.
requiredbooleanfalseMarks the picker required.
disabledbooleanfalseDisables input, trigger, and projection.
readOnlybooleanfalseAllows inspection while rejecting changes.
Native Solid/HTML attributes remain available and are omitted from this authored-prop view.