Thinking Indicator
The universal "typing indicator" — three staggered dots next to real, visible text (not sr-only-only). role="status", the same polite live-region Toast uses for its non-urgent variants.
Examples
Default
The default label, "Thinking".
Thinking
Usage
<ThinkingIndicator />Custom label
Any in-progress status — search, generation, tool calls.
Generating
Usage
<ThinkingIndicator label="Generating" />Playground
Toggle every adjustable prop and watch the component — and the code — update live.
Thinking
Usage
<ThinkingIndicator /><kernel-thinking-indicator></kernel-thinking-indicator>Props
| Prop | Type | Default |
|---|---|---|
label | string | "Thinking" |
Accessibility
- The label is real visible text, announced via
role="status"— screen reader users get the same information as sighted users, not just a decorative animation. - The three dots are
aria-hidden— purely visual reinforcement of what the text already says. prefers-reduced-motion: reducefreezes the dots at a fixed opacity; the visible text keeps communicating the state either way.