Badges and status
Small pieces that sit on an avatar.
UnreadBadge
Capped at 99+ so a runaway number cannot stretch the layout. The full count is still announced to assistive technology, so a reader is not told "ninety-nine plus" when the real number matters.
| Prop | Type | Default | Description |
|---|---|---|---|
count* | number | — | — |
className | string | — | — |
style | CSSProperties | — | — |
AvatarStatusDot
Eight tones. The first four are presence — online, busy, away, offline — and the other four are about the agent's work: working, attention, error, info. The two sets share one corner because an avatar that showed both at once would have nowhere to put the second; a roster shows whichever question matters on that screen.
The dot carries a ring in the page background colour so it reads against the avatar behind it. ring adds an expanding halo on top; it defaults to on for working and attention, the two tones that are asking to be noticed, and off for the rest. Pass label when the status is not also stated in text — without one the dot is aria-hidden, since colour alone is not an accessible signal.
| Prop | Type | Default | Description |
|---|---|---|---|
className | string | — | — |
label | string | — | — |
pulse | boolean | false | Slow pulse, for states that mean "something is happening". |
ring | boolean | — | Expanding halo around the dot. Defaults to on for `working` and `attention`, which are the two tones that are asking to be noticed. |
style | CSSProperties | — | — |
tone | StatusTone | 'offline' | — |
WorkingBadge
Three pulsing dots for an agent that is busy, sized to sit in the same corner as the status dot. Pair it with a working status tone rather than stacking the two on one avatar — the component and its props are documented on WorkingBadge.
Next
- WorkingBadge — three dots for a busy agent
- AgentAvatar — a stable face per id