| 206 | return acc; |
| 207 | } |
| 208 | async function findCurrentIDE(availableIDEs: DetectedIDEInfo[], dynamicMcpConfig?: Record<string, ScopedMcpServerConfig>): Promise<DetectedIDEInfo | null> { |
| 209 | const currentConfig = dynamicMcpConfig?.ide; |
| 210 | if (!currentConfig || currentConfig.type !== 'sse-ide' && currentConfig.type !== 'ws-ide') { |
| 211 | return null; |
| 212 | } |
| 213 | for (const ide of availableIDEs) { |
| 214 | if (ide.url === currentConfig.url) { |
| 215 | return ide; |
| 216 | } |
| 217 | } |
| 218 | return null; |
| 219 | } |
| 220 | type IDEOpenSelectionProps = { |
| 221 | availableIDEs: DetectedIDEInfo[]; |
| 222 | onSelectIDE: (ide?: DetectedIDEInfo) => void; |