(tabId: string)
| 319 | } |
| 320 | |
| 321 | selectTab(tabId: string): void { |
| 322 | const tab = this.state.layout.rightPanelTabs.find(t => t.id === tabId); |
| 323 | if (!tab) { |
| 324 | throw new Error(`Tab not found: ${tabId}`); |
| 325 | } |
| 326 | |
| 327 | const newLayout = { |
| 328 | ...this.state.layout, |
| 329 | rightPanelActiveTabId: tabId, |
| 330 | rightPanelCollapsed: false |
| 331 | }; |
| 332 | |
| 333 | this.updateState({ layout: newLayout }); |
| 334 | |
| 335 | this.emitEvent({ |
| 336 | type: 'tab:selected', |
| 337 | payload: { tabId } |
| 338 | }); |
| 339 | } |
| 340 | |
| 341 | // Error handling |
| 342 | clearError(): void { |
nothing calls this directly
no test coverage detected