When true, the leave button becomes a Zoom/Teams-style split that opens a menu offering Leave
(you disconnect, the meeting continues) vs. End meeting for everyone (the host tears it down).
When false (default), the button is a plain Leave — the parent decides whether ending-for-all is
even possible (this generic component knows nothing about agents/MJ; it only emits EndForAll).
Whether the chat panel is currently open (highlights the chat button).
Show the camera toggle.
Show the chat toggle.
Show the device-settings button.
Show the layout-switcher button.
Show the leave button.
Show the microphone toggle.
Show the participants toggle.
Show the recording toggle (server-authorized; the host wires the actual egress call).
Show the screen-share toggle.
Show the whiteboard toggle.
The user chose "End meeting for everyone" from the split-leave menu (only reachable when CanEndForAll).
Whether a recording is currently in progress.
The user clicked leave (they disconnect; any meeting continues for everyone else).
Whether the Zoom-style leave menu (Leave vs. End for everyone) is open.
The current local-media toggle state, to render the mic/cam/screen button states.
The user clicked the device-settings button.
Participant count, shown as a badge on the participants button.
Whether the participants panel is currently open.
The user clicked the camera toggle.
The user clicked the chat toggle.
The user clicked the layout-switcher button.
The user clicked the microphone toggle.
The user clicked the participants toggle.
The user clicked the recording toggle.
The user clicked the screen-share toggle.
The user clicked the whiteboard toggle.
Unread chat message count, shown as a badge on the chat button.
Whether the whiteboard surface is currently active.
The room control bar: microphone / camera / screen-share toggles, a chat toggle, a participants toggle, a device-settings button, and a leave button. Every control is individually gated by an
@Input; the bar only emits intent — the host component drives the LiveKitRoomController.