The agent's display name (legend / chips / agent toast on the board).
Emits a JSON board snapshot to broadcast when the local board changes.
The board title shown in the whiteboard header.
Forwards the whiteboard's debounced scene-delta (agent-perception feed).
ReadonlyStateThe shared board state engine. One per surface instance.
Debounce (ms) before broadcasting a board snapshot after local changes.
Applies a remote board snapshot received over the data channel, suppressing the echo that would otherwise re-broadcast it.
The JSON board snapshot from another participant.
A callback method that performs custom clean-up, invoked immediately before a directive, pipe, or service instance is destroyed.
A callback method that is invoked immediately after the default change detector has checked the directive's data-bound properties for the first time, and before any of the view or content children have been checked. It is invoked only once when the directive is instantiated.
mj-livekit-whiteboard-surface— hosts the reusable@memberjunction/ng-whiteboardboard inside the LiveKit room and syncs it across participants over the room's data channel (last-writer-wins board snapshots, debounced). The same board model (WhiteboardState) and agent tool API the conversations realtime stack uses — so improvements to the whiteboard benefit both surfaces, and an agent in a LiveKit realtime session can co-author the board (its tool calls are applied server-side and broadcast here).The component owns the
WhiteboardStateand is transport-agnostic: it emits BoardChanged (a JSON snapshot) when the local board changes, and the host wires that tocontroller.SendData(..., topic); inbound snapshots arrive via ApplyRemote. Echo is suppressed while a remote snapshot is applied.