import { keyframes } from "@emotion/react"; import { Center, Text, Flex, Avatar, Accordion, Box, Stack, Container, Divider } from "@mantine/core"; import React from "react"; import CodeBlock from "./CodeBlock"; // @ts-ignore import SvgAvatarDevChat from './avatar_devchat.svg'; // @ts-ignore import SvgAvatarUser from './avatar_spaceman.png'; const MessageContainer = (props: any) => { const { generating, messages, width, responsed } = props; const DefaultMessage = (
No messages yet
); const MessageAvatar = (props: any) => { const { type } = props; return ( { type === 'bot' ? : } {type === 'bot' ? 'DevChat' : 'User'} ); }; const MessageContext = (props: any) => { const { contexts } = props; return (contexts && { contexts?.map((item: any, index: number) => { const { context } = item; return ( {'command' in context ? context.command : context.path} { context.content ?
{context.content}
:
No content
}
); }) }
); }; const MessageBlink = (props: any) => { const { generating, messageType, lastMessage } = props; const blink = keyframes({ '50%': { opacity: 0 }, }); return (generating && messageType === 'bot' && lastMessage ? | : <>); }; const messageList = messages.map((item: any, index: number) => { const { message: messageText, type: messageType, contexts } = item; // setMessage(messageText); return (<> {index !== messages.length - 1 && } ); }); return (messageList.length > 0 ? messageList : DefaultMessage); }; export default MessageContainer;