Words Preloader
Themeable line preloader — product lines clip up with SlideUpText, optional last-beat mark, then a curved lip flattens as the panel slides up.
Import
tsx
import { WordsPreloader } from "@cronus-ui/ui";
bash
npx cronus-ui add words-preloader
Examples
.cronus
No audit fixture declares this family in .cronus yet.
API Reference
Generated from the component's exported types.
WordsPreloaderLabels
| Prop | Type | Default | Description |
|---|---|---|---|
status* | string | — | Accessible name for the loading status. |
WordsPreloaderProps
Extends Omit< ComponentPropsWithoutRef<"div">, "children" | "onAnimationStart" | "onAnimationEnd" | "onDrag" | "onDragStart" | "onDragEnd" >, VariantProps<typeof wordsPreloaderVariants>
| Prop | Type | Default | Description |
|---|---|---|---|
ref | Ref<HTMLDivElement> | — | Ref forwarded to the underlying DOM node. |
words | readonly string[] | — | Lines cycled before the curve exits. Product lines by default. |
firstDelayMs | number | FIRST_DELAY_MS | Hold after the first line has revealed, in ms. |
stepDelayMs | number | STEP_DELAY_MS | Hold after each following line has revealed, in ms. |
lastHoldMs | number | LAST_HOLD_MS | Extra hold on the last beat before `onComplete`, in ms. |
end | ReactNode | — | Optional last beat — typically a brand mark — after the copy. |
onComplete | () => void | — | Fired after the last beat has been held. Unmount inside `AnimatePresence`. |
labels | Partial<WordsPreloaderLabels> | — | Override default English strings. |
layout | "page" | "contained" | "page" | One of "page" | "contained". |
asChild | boolean | — | Render as the child element via Slot. |
className | string | — | Additional class names merged onto the root. |
id | string | — | DOM id of the root element. |