chore: only pass enable tool to draft

This commit is contained in:
Joel
2026-01-28 14:51:14 +08:00
parent c88acf48bf
commit 680b238a36

View File

@ -91,30 +91,34 @@ const ReferenceToolConfig: FC<ReferenceToolConfigProps> = ({
&& setting.provider === tool.provider && setting.provider === tool.provider
&& setting.tool_name === tool.tool_name, && setting.tool_name === tool.tool_name,
) )
return matched?.enabled ?? true return matched?.enabled !== false
}, [toolSettings]) }, [toolSettings])
const handleToolEnabledChange = useCallback((tool: ToolDependency, isEnabled: boolean) => { const handleToolEnabledChange = useCallback((tool: ToolDependency, isEnabled: boolean) => {
const nextSettings = [...(toolSettings ?? [])] const nextSettings = (toolSettings ?? []).filter(setting => setting.enabled === false)
const index = nextSettings.findIndex(setting => const index = nextSettings.findIndex(setting =>
setting.type === tool.type setting.type === tool.type
&& setting.provider === tool.provider && setting.provider === tool.provider
&& setting.tool_name === tool.tool_name, && setting.tool_name === tool.tool_name,
) )
if (index >= 0) { if (isEnabled) {
if (index >= 0)
nextSettings.splice(index, 1)
}
else if (index >= 0) {
nextSettings[index] = { nextSettings[index] = {
...nextSettings[index], ...nextSettings[index],
enabled: isEnabled, enabled: false,
} }
} }
else { else {
nextSettings.push({ nextSettings.push({
...tool, ...tool,
enabled: isEnabled, enabled: false,
}) })
} }
handleNodeDataUpdate({ handleNodeDataUpdate({
tool_settings: nextSettings, tool_settings: nextSettings.length ? nextSettings : [],
}) })
}, [handleNodeDataUpdate, toolSettings]) }, [handleNodeDataUpdate, toolSettings])