caliper uidocs

Time dial

Pro

A circular control for choosing a time.

Installs components/ui/time-dial.tsxDepends on none beyond ReactMotion none in component source
pnpm dlx shadcn@latest add @caliper/time-dial
121234567891011

Choose the hour

When to use #

Use it for

  • Setting an alarm or a window.

Skip it when

  • Precise typing is faster.

Installation #

terminal
pnpm dlx shadcn@latest add @caliper/time-dial

Adds its 2 files to components/ui/, each with its own stylesheet, and installs their packages. Pro installs with your access token, set up once per project. See Pro access. The first part also adds Caliper UI’s tokens; import them once as in Installation.

Usage #

Import it from your copy of the source. The example behind the preview comes with the source.

example.tsx
import { TimeDial } from "@/components/ui/time-dial"

The worked example comes with Pro

The 10-line example behind the preview opens here with a Pro or Team licence.

Checking your licence…

API reference #

TimeDial

component
PropTypeDefaultDescription
value *string—
onValueChange *(value: string) => void—
labelstring"Time"
stepnumber5Minutes between choices.
classNamestring—

Accessibility #

It exposes group and slider semantics, with aria-label, aria-pressed, aria-hidden, aria-valuemin, aria-valuemax and aria-valuenow kept in step with state.

KeyBehaviour
↑Moves to the previous item or value.
→Moves to the next item or value.
↓Moves to the next item or value.
←Moves to the previous item or value.
EnterActivates the focused control.

Motion #

It declares no animation in its component source. Any transition comes from its stylesheet, which uses the duration tokens that collapse to instant under prefers-reduced-motion.