KQ-908 · MUTE/ALL

Mute All

Everyone, quiet — and a way back. Mute all commits every open microphone at once, because the state must never lag the promise, while each slash draws its pathLength on flick at a cascade() delay by row and a cobalt wash sweeps the list top to bottom. Undo restores exactly the microphones that sweep took, running the cascade bottom to top, so a mic somebody closed by hand stays closed. Down and Up step the mics under a roving tabindex and Space toggles one.

KQ-908 · MUTE/ALL
1 of 5 muted
  1. Ines Moreau
  2. Marta Ferreira
  3. Rui Baptista
  4. Noor Haddad
  5. Tomas Lindqvist

5 on the call · 1 muted · rui baptista muted

Install

One command — the source lands in your repo. Or copy it from the Code tab.

$ pnpm dlx shadcn@latest add @kinetiq/mute-all

Props

participants
MuteParticipant[]
default
The people on the call as { id, name, role? }, in the caller's order.
mutedIds / defaultMutedIds
string[]
default []
The muted set, controlled or initial.
onMutedIdsChange
(ids: string[]) => void
default
Fires from the sweep, the undo, and every row toggle.
onMuteAll
(count: number) => void
default
Fires after a sweep with the number of microphones it muted.
onUndo
(count: number) => void
default
Fires after an undo with the number it unmuted.
onAnnounce
(sentence: string) => void
default
Fires once per frozen change sentence, such as "Muted 4 microphones".
label
string
default
Names the roster for assistive technology.