caliper uidocs

Morph loader

Pro

A loader whose shape morphs between forms while waiting.

Installs components/ui/morph-loader.tsxDepends on lucide-reactMotion none in component source
pnpm dlx shadcn@latest add @caliper/morph-loader

When to use #

Use it for

  • A brand moment during a longer wait.

Skip it when

  • The wait is short.
  • Space is tight; use a spinner.

Installation #

terminal
pnpm dlx shadcn@latest add @caliper/morph-loader

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 { MorphLoader } from "@/components/ui/morph-loader"

The worked example comes with Pro

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

Checking your licence…

API reference #

MorphLoader

component
PropTypeDefaultDescription
status *MorphStatus—
labelstring—What is happening, announced and shown beside the shape when given.
sizenumber40
classNamestring—

Accessibility #

It exposes status semantics, with aria-hidden kept in step with state. Changes that matter are announced through a live region.

No custom key handling; Tab and the native activation keys do the work.

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.