@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
27 lines (26 loc) • 1.36 kB
JavaScript
import * as React from 'react';
import { CodeIcon, HtmlIcon } from '../../../icons';
import { messageToHtml } from './messageToHtml';
import { useChatSlots } from '../../core/ChatSlotsContext';
import { useChatContext } from '../../core/ChatGlobalContext';
import { useLocalizationContext } from '../../core/LocalizationContext';
const MessageCopyMenuItems = ({ handleClose, text, short }) => {
const { snackbar } = useChatContext();
const { coreSlots } = useChatSlots();
const locale = useLocalizationContext();
const handleCopyMarkdown = () => {
navigator.clipboard.writeText(text)
.then(() => snackbar.show(locale.messageCopiedToClipboard, 'info'));
handleClose();
};
const handleCopyHTML = () => {
const html = messageToHtml(text);
navigator.clipboard.writeText(html)
.then(() => snackbar.show(locale.messageCopiedToClipboard, 'info'));
handleClose();
};
return (React.createElement(React.Fragment, null,
React.createElement(coreSlots.menuItem, { startIcon: CodeIcon, onClick: handleCopyMarkdown }, short ? 'Markdown' : locale.messageCopyMarkdown),
React.createElement(coreSlots.menuItem, { startIcon: HtmlIcon, onClick: handleCopyHTML }, short ? 'HTML' : locale.messageCopyHTML)));
};
export default MessageCopyMenuItems;