- ${this.plugins.getWorkspacePanels().map((panel) => html`
+ ${this.visibleWorkspacePanels().map((panel) => html`
`)}
diff --git a/src/client/src/components/WorkspacePanel.ts b/src/client/src/components/WorkspacePanel.ts
index 030cdd7..9b1b315 100644
--- a/src/client/src/components/WorkspacePanel.ts
+++ b/src/client/src/components/WorkspacePanel.ts
@@ -28,11 +28,12 @@ export class WorkspacePanel extends LitElement {
override render() {
if (!this.workspace) return html``;
- const selectedPanel = this.panels.find((panel) => panel.id === this.tool) ?? this.panels[0];
+ const visiblePanels = this.panels.filter((panel) => panel.visible?.(this.workspace as Workspace) ?? true);
+ const selectedPanel = visiblePanels.find((panel) => panel.id === this.tool) ?? visiblePanels[0];
return html`