2025-05-30 19:24:17 +08:00
|
|
|
import React from 'react';
|
|
|
|
|
|
|
|
|
|
const CustomInputRender = (props) => {
|
|
|
|
|
const { detailProps } = props;
|
|
|
|
|
const { clearContextNode, uploadNode, inputNode, sendNode, onClick } = detailProps;
|
|
|
|
|
|
2025-06-03 01:18:08 +08:00
|
|
|
// 清空按钮
|
|
|
|
|
const styledClearNode = clearContextNode
|
|
|
|
|
? React.cloneElement(clearContextNode, {
|
|
|
|
|
className: `!rounded-full !bg-gray-100 hover:!bg-red-500 hover:!text-white flex-shrink-0 transition-all ${clearContextNode.props.className || ''}`,
|
|
|
|
|
style: {
|
|
|
|
|
...clearContextNode.props.style,
|
|
|
|
|
width: '32px',
|
|
|
|
|
height: '32px',
|
|
|
|
|
minWidth: '32px',
|
|
|
|
|
padding: 0,
|
|
|
|
|
display: 'flex',
|
|
|
|
|
alignItems: 'center',
|
|
|
|
|
justifyContent: 'center',
|
|
|
|
|
}
|
|
|
|
|
})
|
|
|
|
|
: null;
|
|
|
|
|
|
|
|
|
|
// 发送按钮
|
2025-05-30 19:24:17 +08:00
|
|
|
const styledSendNode = React.cloneElement(sendNode, {
|
2025-06-03 01:18:08 +08:00
|
|
|
className: `!rounded-full !bg-purple-500 hover:!bg-purple-600 flex-shrink-0 transition-all ${sendNode.props.className || ''}`,
|
|
|
|
|
style: {
|
|
|
|
|
...sendNode.props.style,
|
|
|
|
|
width: '32px',
|
|
|
|
|
height: '32px',
|
|
|
|
|
minWidth: '32px',
|
|
|
|
|
padding: 0,
|
|
|
|
|
display: 'flex',
|
|
|
|
|
alignItems: 'center',
|
|
|
|
|
justifyContent: 'center',
|
|
|
|
|
}
|
2025-05-30 19:24:17 +08:00
|
|
|
});
|
|
|
|
|
|
|
|
|
|
return (
|
|
|
|
|
<div className="p-2 sm:p-4">
|
|
|
|
|
<div
|
2025-06-03 01:18:08 +08:00
|
|
|
className="flex items-center gap-2 sm:gap-3 p-2 bg-gray-50 rounded-xl sm:rounded-2xl shadow-sm hover:shadow-md transition-shadow"
|
2025-05-30 19:24:17 +08:00
|
|
|
style={{ border: '1px solid var(--semi-color-border)' }}
|
|
|
|
|
onClick={onClick}
|
|
|
|
|
>
|
2025-06-03 01:18:08 +08:00
|
|
|
{/* 清空对话按钮 - 左边 */}
|
|
|
|
|
{styledClearNode}
|
2025-05-30 19:24:17 +08:00
|
|
|
<div className="flex-1">
|
|
|
|
|
{inputNode}
|
|
|
|
|
</div>
|
2025-06-03 01:18:08 +08:00
|
|
|
{/* 发送按钮 - 右边 */}
|
2025-05-30 19:24:17 +08:00
|
|
|
{styledSendNode}
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
);
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
export default CustomInputRender;
|