Member Junction
    Preparing search index...

    The call overlay's UNIFIED APP-BAR (per Redesign A — plans/realtime/mockups/redesign-a.html): ONE header that owns identity, state, and every session action.

    • LEFT: the glowing agent orb (motion = turn-state), agent name + "Co-Agent" badge, "speaking as" subline (+ subtle realtime-model suffix), and the state pill that swaps between a waveform (speaking/listening) and a spinner (connecting/thinking).
    • RIGHT (live): STATE + WINDOW-CHROME only — the gear (level 2+, opens a popover hosting the Simple/Standard/Pro/Auto INTERFACE DENSITY control — the progressive-disclosure escape hatch, where Simple IS the pure-audio surface — plus the developer-links toggle) and Minimize (hide the call view, call stays live). Call actions (Mute / Captions / Details / Type / End) live in the bottom dock, the single home for each; Captions & End used to duplicate here and were removed, and the standalone pure-audio headphones was folded into the gear's Density = Simple.
    • RIGHT (review): "Start live session" (resume, affirmative leads) + Close — the review session's exit lives up here in the header bar, not floating in the body.

    Which controls render is decided by the OVERLAY (it owns the disclosure model) and passed down as booleans — this component stays purely presentational.

    Index

    Constructors

    Properties

    AgentName: string = 'the agent'

    Display name of the agent the voice session fronts (e.g. "Sage").

    CloseRequested: EventEmitter<void> = ...

    Review only: the user asked to close the review and return to the conversation.

    Compact: boolean = false

    COMPACT (orb/overlay) presentation: collapse the app-bar to a minimal identity + state row. The duplicate orb, the redundant state pill, and the headphones / gear / expand controls are dropped — the body already shows the big orb + name + state, and the lean bottom dock (Mute / End / •••) owns the session actions. Minimize stays reachable so the user can hide the call without ending it. Fed from the overlay's resolved Ui.compact. Default false (the full console banner is unchanged).

    Densities: readonly { Key: RealtimeUxDensity; Label: string }[] = ...

    The density choices the gear popover offers, in display order.

    Density: RealtimeUxDensity = 'auto'

    The user's current interface-density override (selected state in the gear popover).

    DensityChanged: EventEmitter<RealtimeUxDensity> = ...

    Emitted when the user picks an interface density in the gear popover.

    DevMode: boolean = false

    Whether developer affordances (the "Open session" link) are revealed (gear-gated).

    DevModeToggled: EventEmitter<boolean> = ...

    Emitted when the user toggles developer links from the gear popover.

    GearOpen: boolean = false

    Whether the gear popover is open (closed by any outside click).

    MinimizeRequested: EventEmitter<void> = ...

    Emitted when the user minimizes the call view (the call stays live).

    ModelName: string | null = null

    Display name of the realtime model the live session runs on (e.g. "GPT Realtime 2"). Rendered as a subtle suffix in the identity line; hidden when null/empty.

    OpenSessionRequested: EventEmitter<string> = ...

    Emitted with the session record's ID when the dev "Open session" link is clicked.

    ReviewClosedAt: Date | null = null

    When reviewing: when the past session closed (null while it is still open).

    ReviewCloseReason: string | null = null

    When reviewing: why the past session closed (Explicit | Janitor | Shutdown | Error), when known.

    ReviewMode: boolean = false

    SESSION REVIEW presentation: the banner shows the past session's identity (review badge, started→closed range, close-reason chip) instead of live turn-state, and the action cluster swaps to Start-live + Close.

    ReviewStartedAt: Date | null = null

    When reviewing: when the past session started (__mj_CreatedAt).

    SessionID: string | null = null

    ID of the server-side agent session record (MJ: AI Agent Sessions), when known.

    ShowDensityPicker: boolean = true

    Whether the interface-density segmented control renders inside the gear popover. Default true (historical behaviour); a host may hide it via the overlay's [ShowDensityPicker] input. The gear itself (and its developer-links toggle) still renders when ShowGear is true even if the density picker is hidden.

    ShowGear: boolean = false

    Whether the gear (density escape hatch + dev toggle) renders (disclosure level 2+).

    ShowMinimize: boolean = false

    Whether the Minimize control renders (live sessions only).

    StartLiveRequested: EventEmitter<void> = ...

    Review only: the user asked to RESUME the reviewed session as a new live call.

    Current connection / turn state — drives the orb animation + state label.

    Accessors

    Methods