You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
28 lines
843 B
28 lines
843 B
/* eslint-disable react/no-danger */ |
|
import { Highlight } from 'react-highlighter-ts'; |
|
import { FC } from 'react'; |
|
import cn from 'classnames'; |
|
import { ChatMessage } from '../../../interfaces/chat-message.model'; |
|
import styles from './ChatSystemMessage.module.scss'; |
|
|
|
export type ChatSystemMessageProps = { |
|
message: ChatMessage; |
|
highlightString: string; |
|
}; |
|
|
|
export const ChatSystemMessage: FC<ChatSystemMessageProps> = ({ |
|
message: { |
|
body, |
|
user: { displayName }, |
|
}, |
|
highlightString, |
|
}) => ( |
|
<div className={cn([styles.chatSystemMessage, 'chat-message_system'])}> |
|
<div className={styles.user}> |
|
<span className={styles.userName}>{displayName}</span> |
|
</div> |
|
<Highlight search={highlightString}> |
|
<div className={styles.message} dangerouslySetInnerHTML={{ __html: body }} /> |
|
</Highlight> |
|
</div> |
|
);
|
|
|