mirror of
https://github.com/claude-code-best/claude-code.git
synced 2026-06-18 14:25:51 +00:00
删除未使用的文件(BuiltinStatusLine.tsx、4 个重复的 .ts stub)、 移除约 55 个文件中未使用的 React 导入、 清理约 50 处未使用的导入/变量/参数。 净减少 ~296 行代码,precheck 4077 测试全部通过。 Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
41 lines
1.5 KiB
TypeScript
41 lines
1.5 KiB
TypeScript
import { type ReactNode } from 'react';
|
|
import type { Tools } from '../../../../Tool.js';
|
|
import { Byline, KeyboardShortcutHint } from '@anthropic/ink';
|
|
import { ConfigurableShortcutHint } from '../../../ConfigurableShortcutHint.js';
|
|
import { useWizard } from '../../../wizard/index.js';
|
|
import { WizardDialogLayout } from '../../../wizard/WizardDialogLayout.js';
|
|
import { ToolSelector } from '../../ToolSelector.js';
|
|
import type { AgentWizardData } from '../types.js';
|
|
|
|
type Props = {
|
|
tools: Tools;
|
|
};
|
|
|
|
export function ToolsStep({ tools }: Props): ReactNode {
|
|
const { goNext, goBack, updateWizardData, wizardData } = useWizard<AgentWizardData>();
|
|
|
|
const handleComplete = (selectedTools: string[] | undefined): void => {
|
|
updateWizardData({ selectedTools });
|
|
goNext();
|
|
};
|
|
|
|
// Pass through undefined to preserve "all tools" semantic
|
|
// ToolSelector will expand it internally for display purposes
|
|
const initialTools = wizardData.selectedTools;
|
|
|
|
return (
|
|
<WizardDialogLayout
|
|
subtitle="Select tools"
|
|
footerText={
|
|
<Byline>
|
|
<KeyboardShortcutHint shortcut="Enter" action="toggle selection" />
|
|
<KeyboardShortcutHint shortcut="↑↓" action="navigate" />
|
|
<ConfigurableShortcutHint action="confirm:no" context="Confirmation" fallback="Esc" description="go back" />
|
|
</Byline>
|
|
}
|
|
>
|
|
<ToolSelector tools={tools} initialTools={initialTools} onComplete={handleComplete} onCancel={goBack} />
|
|
</WizardDialogLayout>
|
|
);
|
|
}
|