Skip to content
UI

Date Picker

Single, multiple, and range date selection calendar. Anchored popup with adaptive viewport transitions. Button with variants, sizes, rendering composition, and loading state.

Overview

Copy the source into your project, then import the parts you need. Styles use local StyleX declarations and shared theme tokens. You can change the source without wrapping or replacing a package.

Installation

Run bunx @yopem-ui/cli init from your project root first. The CLI configures StyleX and installs shared files and dependencies.

Run from your project root. The CLI installs required components, shared files, and packages. Previews may need additional components. Existing files are preserved. To refresh installed source, use update; locally edited files need an explicit --force to overwrite.

Preview

Popover calendar selection

Usage

Use Calendar with mode="single", "multiple" or "range", matching selected and onSelect to that mode.

The default mode is single and outside days are visible. disabled blocks dates; startMonth and endMonth constrain navigation. classNames and components merge with Yopem defaults.

Selection props form a union. A property can be required in one mode even when the combined table marks it optional. Read the branch signatures for the selected mode.

Compose PopoverTrigger and PopoverPopup inside Popover. Add PopoverTitle, PopoverDescription and PopoverClose as needed.

Popup includes the portal and positioner. side, align and offsets control placement. Use a dialog when the content must block interaction outside.

Use Button for an action. Set type="submit" inside a form when it should submit.

loading displays Spinner and disables the native button. Use an accessible label for icon-only sizes. Use render with a link for navigation; custom elements must handle disabled interaction themselves because an anchor does not honor the disabled attribute.

Import from the local file installed by the CLI.

API reference

Generated from canonical TypeScript source. Only component and Base UI props appear below. Required marks a required property, not a required component.

View API reference