ReadonlyidHost identifier, for diagnostics and idempotent re-registration.
Optional ReadonlypriorityOrder of consultation among live hosts. Lower is asked first.
0
🛑 Explicit, because registration order is NOT something either host controls. It
had been left implicit, with a comment asserting the desktop panel registered first —
and the comment was simply false: hosts register when their module is imported, and
globals.ui.ts imports the mobile toolbar before the desktop panel. Measured in a real
browser at 1600px: openPane answered true and getOpenPanel() answered null,
because the full-screen sheet had opened over a desktop that has a side panel.
Whether this host is currently live — the desktop panel is not, below its breakpoint.
Shows the pane. Returns false when this host does not know it.
Closes whatever this host is showing.
OptionalsyncRebuilds this host from the current pane list.
⚠️ Optional but load-bearing: a plugin may register its pane AFTER the host was built — the bundle load order is not something either side controls. Without this, such a pane would exist in the registry and nowhere on screen, silently.
A surface able to display a pane — the desktop panel, or the mobile sheet.