UNPKG

@plteam/chat-ui

Version:

CUI Kit is a free and open-source library for creating AI assistant chat interfaces, built with React, Material UI, and TypeScript

25 lines (24 loc) 1.33 kB
import * as React from 'react'; import Tooltip from '@mui/material/Tooltip'; import { useChatSlots } from '../../../core/ChatSlotsContext'; const MessageFeedbackButton = ({ type, activeType, onClick, tooltip }) => { const { slotProps, slots } = useChatSlots(); const isActive = type === activeType; const icon = { like: { active: React.createElement(slots.messageLikeFilledIcon, null), default: React.createElement(slots.messageLikeOutlinedIcon, null), }, dislike: { active: React.createElement(slots.messageDislikeFilledIcon, null), default: React.createElement(slots.messageDislikeOutlinedIcon, null), }, }; return (React.createElement(Tooltip, { title: tooltip }, React.createElement(slots.messageRatingButton, { size: 'small', sx: { color: (theme) => isActive ? theme.palette.text.secondary : undefined, backgroundColor: (theme) => isActive ? theme.palette.action.selected : undefined, ':hover': { backgroundColor: (theme) => isActive ? theme.palette.action.hover : undefined }, }, onClick: () => onClick(type), ...slotProps.messageRatingButton }, icon[type][isActive ? 'active' : 'default']))); }; export default MessageFeedbackButton;