Skip to content

Commit 7910abf

Browse files
committed
code improvement
Signed-off-by: Yi Cai <yicai@redhat.com>
1 parent db0acec commit 7910abf

2 files changed

Lines changed: 26 additions & 17 deletions

File tree

workspaces/lightspeed/plugins/lightspeed/src/components/LightSpeedChat.tsx

Lines changed: 19 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1112,33 +1112,37 @@ export const LightspeedChat = ({
11121112
</>
11131113
);
11141114

1115-
let mainPanelContent = <>{chatMainContent}</>;
1115+
const mcpSettingsPanel = (
1116+
<McpServersSettings onClose={() => setIsMcpSettingsOpen(false)} />
1117+
);
1118+
1119+
const mainPanelContent = (() => {
1120+
if (!isMcpSettingsOpen) {
1121+
return <>{chatMainContent}</>;
1122+
}
11161123

1117-
if (isMcpSettingsOpen && isFullscreenMode) {
1118-
mainPanelContent = (
1119-
<div className={classes.mcpFullscreenLayout}>
1120-
<div className={classes.mcpChatPane}>{chatMainContent}</div>
1121-
<div className={classes.mcpSettingsPane}>
1122-
<McpServersSettings onClose={() => setIsMcpSettingsOpen(false)} />
1124+
if (isFullscreenMode) {
1125+
return (
1126+
<div className={classes.mcpFullscreenLayout}>
1127+
<div className={classes.mcpChatPane}>{chatMainContent}</div>
1128+
<div className={classes.mcpSettingsPane}>{mcpSettingsPanel}</div>
11231129
</div>
1124-
</div>
1125-
);
1126-
} else if (isMcpSettingsOpen) {
1127-
mainPanelContent = (
1130+
);
1131+
}
1132+
1133+
return (
11281134
<Settings
11291135
className={classes.settingsFlat}
11301136
fields={[
11311137
{
11321138
id: 'mcp-servers-settings',
11331139
label: '',
1134-
field: (
1135-
<McpServersSettings onClose={() => setIsMcpSettingsOpen(false)} />
1136-
),
1140+
field: mcpSettingsPanel,
11371141
},
11381142
]}
11391143
/>
11401144
);
1141-
}
1145+
})();
11421146

11431147
let drawerPanelStyle: { [key: string]: string | number } | undefined;
11441148
if (!isFullscreenMode) {

workspaces/lightspeed/plugins/lightspeed/src/components/McpServersSettings.tsx

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
* limitations under the License.
1515
*/
1616

17-
import { useCallback, useEffect, useMemo, useState } from 'react';
17+
import { MouseEvent, useCallback, useEffect, useMemo, useState } from 'react';
1818

1919
import { configApiRef, fetchApiRef, useApi } from '@backstage/core-plugin-api';
2020

@@ -345,6 +345,11 @@ export const McpServersSettings = ({ onClose }: McpServersSettingsProps) => {
345345
return next;
346346
}, [servers, sortAsc]);
347347

348+
const onEditClick = useCallback((event: MouseEvent) => {
349+
// Intentionally no-op in this branch; follow-up branch will wire edit flow.
350+
event.preventDefault();
351+
}, []);
352+
348353
return (
349354
<div className={classes.root}>
350355
<div className={classes.headerRow}>
@@ -475,7 +480,7 @@ export const McpServersSettings = ({ onClose }: McpServersSettingsProps) => {
475480
icon={<ModeEditOutlineOutlinedIcon fontSize="small" />}
476481
variant="plain"
477482
className={classes.actionButton}
478-
isDisabled
483+
onClick={onEditClick}
479484
/>
480485
</Td>
481486
</Tr>

0 commit comments

Comments
 (0)