import React from 'react'; import { Button, Tooltip, theme } from 'antd'; import { EditOutlined } from '@ant-design/icons'; interface PartialRegenerateToolbarProps { visible: boolean; position: { top: number; left: number }; onRegenerate: () => void; selectedText: string; } /** * 局部重写浮动工具栏 * 当用户在章节内容编辑器中选中文本时显示 */ export const PartialRegenerateToolbar: React.FC = ({ visible, position, onRegenerate, selectedText }) => { const { token } = theme.useToken(); if (!visible || !selectedText) return null; // 限制显示的选中文本长度 const displayText = selectedText.length > 20 ? selectedText.substring(0, 20) + '...' : selectedText; return (
已选 {selectedText.length} 字
); }; // 添加动画样式 const style = document.createElement('style'); style.textContent = ` @keyframes fadeIn { from { opacity: 0; transform: translateY(-4px); } to { opacity: 1; transform: translateY(0); } } `; if (!document.head.querySelector('style[data-partial-regenerate-toolbar]')) { style.setAttribute('data-partial-regenerate-toolbar', 'true'); document.head.appendChild(style); } export default PartialRegenerateToolbar;