Skip to content
Velkin LogoVelkin Logo
Velkin
VELKIN/UI

Modern UI components for product teams and their AI agents. Lit core, typed wrappers, live MCP.

sales@velkinui.com

Product

  • Docs
  • Components
  • Studio
  • Pricing

Resources

  • Quick start
  • Blog
  • Changelog
  • Roadmap
  • Status

Project

  • About
  • Contact
  • License
  • Privacy
  • Terms

© 2026 Velkin. MIT core · Pro licenses available.

VELKIN

Date Picker

Pro

A date picker component with field input and optional calendar panel.

vu-date-picker · @velkin/react-pro/date-picker

Copy page

Import

React
npm i @velkin/react-pro

import { LicenseInfo } from "@velkin/license";
// Vite: import.meta.env.VITE_VELKIN_LICENSE_KEY
// Next: process.env.NEXT_PUBLIC_VELKIN_LICENSE_KEY
LicenseInfo.setLicenseKey(import.meta.env.VITE_VELKIN_LICENSE_KEY ?? process.env.NEXT_PUBLIC_VELKIN_LICENSE_KEY ?? "");

// @velkin-pro
import { VuDatePicker } from "@velkin/react-pro/date-picker";

Examples

API

Tables match the member selected under Import.

Props

PropTypeDefaultDescription
modeVuDatePickerMode"date"Selection mode (`date`, `range`, `time`, …). Default: `"date"`.
variantVuDatePickerVariant"default"Field chrome recipe. Default: `"default"`.
toneVuDatePickerTone"normal"Neutral surface weight. Default: `"normal"`.
sizeVuDatePickerSize"md"Control scale and corner radius. Default: `"md"`.
radiusVuDatePickerRadius"md"Corner preset (`none`/`sm`/`md`/`lg`/`full`). Default: `md`.
blockbooleanfalseStretches the field to the container width. Default: `false`.
compactbooleanfalseTighter label, hint, and error spacing. Default: `false`.
inlinebooleanfalseRenders the calendar panel inline (no popover). Default: `false`.
openbooleanfalsePopover panel open state. Default: `false`.
closeonselectbooleantrueCloses the panel after a complete selection. Default: `true`.
focusopenbooleanfalseOpens the panel when the field receives focus. Default: `false`.
colorstring"primary"Accent token for calendar and time chrome. Default: `"primary"`.
valuestring""Committed date/time string. Default: `""`.
formatstring""Display/wire pattern (`yyyy-MM-dd`, `dd/MM/yyyy HH:mm`, …). Default: `""`.
valueformatVuDatePickerValueFormat"local"Preset when `format` is empty. Default: `"local"`.
placeholderstring""Input placeholder; derived from `format` when empty.
labelstring""Plain-text label; `label` slot wins when assigned.
hintstring""Helper text; `hint` slot wins when assigned.
firstdayofweeknumber—Week start day index (0 = Sunday). Default: `1`.
calendarsnumber1Side-by-side month grids in the panel (1–3). Default: `1`.
mobilemodeVuDatePickerMobileMode"auto"Mobile shell strategy. Default: `"auto"`.
segmentedbooleanfalseSegmented format input (`mode="date"` only). Default: `false`.
adapternull | DateAdapternullOptional parse/format adapter; default engine when omitted.
sundayholidayboolean—Styles Sundays as non-interactive holidays. Default: `false`.
constraintsVuDatePickerConstraints{}Min/max and disabled matchers. Default: `{}`.
showerrorsboolean—Shows validation messages after `validationActive`. Default: `false`.
validationactiveboolean—Activates hint and error display. Default: `false`.
invalidbooleanfalseMarks the field invalid for assistive tech. Default: `false`.
arialabelstring—Accessible name when no visible label (`arialabel` attr).
namestring—Form field name for submit.
defaultvaluestring—Value restored on `<form reset>` (`defaultvalue` attr).
formidstring—External `<form>` id (`formid` attr).
disabledboolean—Non-interactive; blocks panel and input. Default: `false`.
readonlyboolean—Focusable but value cannot be edited. Default: `false`.
requiredboolean—Blocks valid submit when empty. Default: `false`.
requiredmessagestring—Custom `valueMissing` message (`requiredmessage` attr).
firstDayOfWeeknumber1Week start day index (0 = Sunday).
sundayHolidaybooleanfalseStyles Sundays as non-interactive holidays.
showErrorsbooleanfalseShows validation messages after `validationActive`.
validationActivebooleanfalseActivates hint and error display.
ariaLabelstring""Accessible name when no visible label is present.

Events

EventDetailDescription
vu-changeVuDatePickerChangeDetailWhen the committed value changes.

Slots

SlotDescription
labelRich label markup; takes precedence over string `label` when assigned.
hintOptional helper copy (HTML); overrides string `hint` when assigned.
errorReplaces default validation message list when assigned.
startLeading affix inside the field container.
endTrailing affix inside the field container.
actionsFooter actions inside the calendar panel.
extraContent below the calendar inside the panel.

CSS parts

PartDescription
containerField chrome wrapping the input and trigger.
startLeading affix wrapper.
endTrailing affix wrapper.
inputText input or embedded segmented field.
triggerCalendar icon button opening the panel.
panelPopover panel hosting the layout.
sheetMobile bottom-sheet surface inside the panel.
sheet-headerMobile toolbar row (Cancel / title / OK).
sheet-titleMobile sheet heading.
sheet-actionMobile toolbar action button.
sheet-bodyScrollable calendar region in the mobile shell.
inline-panelInline layout region when `inline` is set.

Methods

MethodDescription
show- Opens the popover panel.
hide- Closes the popover panel.
toggle- Toggles the popover panel.
reset- Clears the value and draft selection.

Types

NameDefinition
DateAdapter | null
null | DateAdapter
VuDatePickerChangeDetail
{
  value: string;
  date?: string | null;
  range?: {
    start: string | null;
    end: string | null;
  };
  time?: string | null;
  timeRange?: {
    from: string | null;
    to: string | null;
  };
  rangeWithTime?: {
    start: string | null;
    end: string | null;
  };
  dates?: string[];
  week?: string | null;
}
VuDatePickerConstraints
{ [P in keyof T]?: T[P]; }
VuDatePickerMobileMode
"auto" | "popover" | "dialog"
VuDatePickerMode
"date"
| "range"
| "multi"
| "week"
| "datetime"
| "time"
| "datetime-range"
| "time-range"
VuDatePickerRadius
"sm" | "md" | "lg" | "none" | "full"
VuDatePickerSize
"sm" | "md" | "lg"
VuDatePickerTone
"subtle" | "normal" | "strong"
VuDatePickerValueFormat
"local" | "iso"
VuDatePickerVariant
"outline" | "default" | "underline"

Related

Companions

  • Date Calendar`vu-date-calendar`
  • Date Field`vu-date-field`
  • Date Month Year View`vu-date-month-year-view`
  • Date Picker Layout`vu-date-picker-layout`
  • Date Time View`vu-date-time-view`

Inputs

  • Advanced FilterAn advanced filter component with expression input and visual builder.
  • ButtonA clickable button component with multiple variants and states.
  • Button GroupA button group component with shared styling and optional selection.
  • CheckboxA checkbox component with label, hint, and validation.
  • Checkbox GroupA checkbox group component with shared label and validation.
  • Color AreaA two-dimensional color picker component for saturation and brightness.

Guides

  • Pro licenseLicenseInfo and Pro imports
  • FormsFormData, VuForm, and validation
  • EventsonVu* / v-model / e.detail
  • Appearancevariant, color, tone, size

Browse

  • Previous: CounterEarlier in the sidebar
  • Next: File PickerLater in the sidebar
  • All componentsBrowse the full index