import React, { useState } from 'react'; import loadingSvg from '../icons/loading.svg?raw'; import sendSvg from '../icons/send.svg?raw'; import type { EditorProps } from './EditorProps'; /** * 默认编辑器组件,通用的 HTML 组件。 */ export const DefaultEditor: React.FC = ({ element, onSendPrompt }) => { const [prompt, setPrompt] = useState(''); const [isLoading, setIsLoading] = useState(false); const handleSendPrompt = async () => { if (!prompt.trim()) { return; } setIsLoading(true); try { await onSendPrompt(prompt, element); setIsLoading(false); } catch (error) { console.error('AI 请求失败:', error); setIsLoading(false); } }; const handleKeyDown = (e: React.KeyboardEvent) => { if (e.key === 'Enter' && !e.shiftKey) { e.preventDefault(); handleSendPrompt(); } }; return (