# Nova SDK Tools - 组件替换总结 ## ✅ 已完成工作 ### 1. 清理和简化 - ✅ 删除了所有 API 相关组件(api-form, form-components) - ✅ 删除了列表查看功能(custom-list-view, tool-item, tool-type-badge) - ✅ 删除了示例功能(useExampleList, example-popover) - ✅ 删除了所有 localize 相关代码 ### 2. 只保留 SKILL 和 MCP 组件 **剩余文件(6个):** ``` tools/ ├── components/ │ ├── skill-form.tsx ✅ 已替换为 shadcn + lucide-react │ ├── mcp-json-editor.tsx ✅ 已替换为 shadcn + lucide-react │ └── message-mcp.tsx 🔄 待替换 ├── settings/ │ ├── mcp-editor-modal.tsx 🔄 待替换 │ ├── ai-parse-config.tsx 🔄 待替换 │ └── mcp-store-popover.tsx 🔄 待替换 └── index.ts ``` ### 3. UI 框架替换进度 **已完成(2/6):** - ✅ skill-form.tsx - Button, Input, Textarea, Label, toast (shadcn) + Inbox (lucide-react) - ✅ mcp-json-editor.tsx - Button, Textarea, toast (shadcn) **待完成(4/6):** - 🔄 message-mcp.tsx - 需替换 Spin, Button - 🔄 mcp-editor-modal.tsx - 需替换 Button, Form, Input, message, Select, Tooltip - 🔄 ai-parse-config.tsx - 需替换 Button, Form, Input, message, Popover, Tooltip - 🔄 mcp-store-popover.tsx - 需替换 Popover, Tooltip ## 📋 替换方案 ### antd → shadcn/ui 映射表 | antd | shadcn/ui | |------|-----------| | Button | Button | | Input | Input | | Input.TextArea | Textarea | | Form | Label + Input/Textarea + 自定义验证 | | Select | Select | | message | toast (from @/hooks/use-toast) | | Popover | Popover | | Tooltip | Tooltip | | Spin | Loader2 (from lucide-react) | | Upload | 自定义文件上传 | ### @ant-design/icons → lucide-react 映射表 | antd icons | lucide-react | |------------|--------------| | InboxOutlined | Inbox | | 其他图标 | 相应的 lucide-react 图标 | ## 🎯 下一步 继续替换剩余 4 个文件中的 antd 组件为 shadcn/ui