UNPKG

@douyinfe/semi-ui

Version:

A modern, comprehensive, flexible design system and UI library. Connect DesignOps & DevOps. Quickly build beautiful React apps. Maintained by Douyin-fe team.

37 lines 912 B
import React, { useMemo } from 'react'; import Avatar from '../../avatar'; import { cssClasses } from '@douyinfe/semi-foundation/lib/es/chat/constants'; import cls from 'classnames'; const { PREFIX_CHAT_BOX } = cssClasses; const ChatBoxAvatar = /*#__PURE__*/React.memo(props => { const { role, customRenderFunc, continueSend, message } = props; const node = useMemo(() => { const { avatar, color } = role; return /*#__PURE__*/React.createElement(Avatar, { className: cls(`${PREFIX_CHAT_BOX}-avatar`, { [`${PREFIX_CHAT_BOX}-avatar-hidden`]: continueSend }), src: avatar, size: "extra-small" }); }, [role]); if (customRenderFunc && typeof customRenderFunc === 'function') { return customRenderFunc({ role, defaultAvatar: node, message: message }); } return node; }); export default ChatBoxAvatar;