import { useState } from 'react' import { FormEventHandler } from 'react' import useAllChat from '../../hooks/useAllChat' import './Chat.css' import { FontAwesomeIcon } from '@fortawesome/react-fontawesome' import { faPaperPlane } from '@fortawesome/free-regular-svg-icons' import { getColorForUserName } from '../../background/style/colorednames' interface Props { sendMessage: Function } function Chat({ sendMessage }: Props) { const [chatInput, setChatInput] = useState('') const { chatMesages } = useAllChat() const onInput: React.ChangeEventHandler = (event) => { setChatInput(event.target.value) event.preventDefault() } const onSubmit: FormEventHandler = (event) => { event.preventDefault() sendMessage(JSON.stringify({ content: chatInput })) setChatInput('') } return (
{chatMesages .slice() .reverse() // reverse because of css, don't aks me .map((message) => { const nameStyle = { color: getColorForUserName(message.sender.name), } return (
{' '} {message.sender.name}
{' '}
{' '} {message.content}{' '}
) })}
) } export default Chat