fix: table resizing in mcp tool setting (#8057)

- remove sticky headers
- add missing i18n keys
This commit is contained in:
one 2025-07-13 23:02:13 +08:00 committed by GitHub
parent 53600175b9
commit 6952bea6e1
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
6 changed files with 32 additions and 25 deletions

View File

@ -1887,6 +1887,7 @@
"tools": {
"availableTools": "Available Tools",
"inputSchema": "Input Schema",
"inputSchema.enum.allowedValues": "Allowed Values",
"loadError": "Get tools Error",
"noToolsAvailable": "No tools available",
"enable": "Enable Tool",

View File

@ -1887,6 +1887,7 @@
"tools": {
"availableTools": "利用可能なツール",
"inputSchema": "入力スキーマ",
"inputSchema.enum.allowedValues": "許可された値",
"loadError": "ツール取得エラー",
"noToolsAvailable": "利用可能なツールなし",
"enable": "ツールを有効にする",

View File

@ -1887,6 +1887,7 @@
"tools": {
"availableTools": "Доступные инструменты",
"inputSchema": "Схема ввода",
"inputSchema.enum.allowedValues": "Допустимые значения",
"loadError": "Ошибка получения инструментов",
"noToolsAvailable": "Нет доступных инструментов",
"enable": "Включить инструмент",

View File

@ -1887,6 +1887,7 @@
"tools": {
"availableTools": "可用工具",
"inputSchema": "输入模式",
"inputSchema.enum.allowedValues": "允许的值",
"loadError": "获取工具失败",
"noToolsAvailable": "无可用工具",
"enable": "启用工具",

View File

@ -1887,6 +1887,7 @@
"tools": {
"availableTools": "可用工具",
"inputSchema": "輸入模式",
"inputSchema.enum.allowedValues": "允許的值",
"loadError": "獲取工具失敗",
"noToolsAvailable": "無可用工具",
"enable": "啟用工具",
@ -2448,4 +2449,4 @@
"visualization": "視覺化"
}
}
}
}

View File

@ -84,7 +84,9 @@ const MCPToolsSection = ({ tools, server, onToggleTool, onToggleAutoApprove }: M
)}
{prop.enum && (
<div style={{ marginTop: 4 }}>
<Typography.Text type="secondary">Allowed values: </Typography.Text>
<Typography.Text type="secondary">
{t('settings.mcp.tools.inputSchema.enum.allowedValues')}
</Typography.Text>
<div style={{ display: 'flex', flexWrap: 'wrap', gap: 4, marginTop: 4 }}>
{prop.enum.map((value: string, idx: number) => (
<Tag key={idx}>{value}</Tag>
@ -111,17 +113,22 @@ const MCPToolsSection = ({ tools, server, onToggleTool, onToggleAutoApprove }: M
onFilter: (value, record) => record.name === value,
filterSearch: true,
render: (_, tool) => (
<Flex vertical align="flex-start">
<Flex align="center" gap={4} style={{ width: '100%' }}>
<Typography.Text strong>{tool.name}</Typography.Text>
<Flex vertical align="flex-start" gap={4}>
<Flex align="center" gap={4}>
<Typography.Text strong ellipsis={{ tooltip: tool.name }}>
{tool.name}
</Typography.Text>
<Tooltip title={`ID: ${tool.id}`} mouseEnterDelay={0}>
<Info size={14} />
</Tooltip>
</Flex>
{tool.description && (
<Typography.Text type="secondary" style={{ fontSize: '13px', marginTop: 4 }}>
{tool.description.length > 100 ? `${tool.description.substring(0, 100)}...` : tool.description}
</Typography.Text>
<Typography.Paragraph
type="secondary"
style={{ fontSize: '13px' }}
ellipsis={{ rows: 1, expandable: true }}>
{tool.description}
</Typography.Paragraph>
)}
</Flex>
)
@ -171,23 +178,18 @@ const MCPToolsSection = ({ tools, server, onToggleTool, onToggleAutoApprove }: M
}
]
return (
<>
{tools.length > 0 ? (
<Table
rowKey="id"
columns={columns}
dataSource={tools}
pagination={false}
sticky={{ offsetHeader: -55 }}
expandable={{
expandedRowRender: (tool) => renderToolProperties(tool)
}}
/>
) : (
<Empty description={t('settings.mcp.tools.noToolsAvailable')} image={Empty.PRESENTED_IMAGE_SIMPLE} />
)}
</>
return tools.length > 0 ? (
<Table
rowKey="id"
columns={columns}
dataSource={tools}
pagination={false}
expandable={{
expandedRowRender: (tool) => renderToolProperties(tool)
}}
/>
) : (
<Empty description={t('settings.mcp.tools.noToolsAvailable')} image={Empty.PRESENTED_IMAGE_SIMPLE} />
)
}