{"version":3,"sources":["components/Chat/Chat.js","components/TextContainer/TextContainer.js","components/Messages/Message/Message.js","components/Messages/Messages.js","components/InfoBar/InfoBar.js","components/Input/Input.js","components/Join/Join.js","App.js","index.js","icons/onlineIcon.png","icons/closeIcon.png"],"names":["socket","TextContainer","users","className","map","name","key","charAt","toUpperCase","slice","alt","src","onlineIcon","Message","message","text","user","isSentByCurrentUser","trimmedName","trim","toLowerCase","ReactEmoji","emojify","Messages","messages","i","InfoBar","room","href","closeIcon","Input","setMessage","sendMessage","type","placeholder","value","onChange","target","onKeyPress","event","onClick","e","ENDPOINT","Chat","location","useState","setName","setRoom","setUsers","setMessages","useEffect","queryString","parse","search","io","emit","error","alert","on","preventDefault","SignIn","to","App","path","exact","component","Join","ReactDOM","render","document","getElementById","module","exports"],"mappings":"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","file":"static/js/main.85cb80d7.chunk.js","sourcesContent":["import React, { useState, useEffect } from \"react\";\nimport queryString from 'query-string';\nimport io from \"socket.io-client\";\n\nimport TextContainer from '../TextContainer/TextContainer';\nimport Messages from '../Messages/Messages';\nimport InfoBar from '../InfoBar/InfoBar';\nimport Input from '../Input/Input';\n\nimport './Chat.css';\n\nconst ENDPOINT = 'https://react-chat-application-akash.herokuapp.com/';\n\nlet socket;\n\nconst Chat = ({ location }) => {\n const [name, setName] = useState('');\n const [room, setRoom] = useState('');\n const [users, setUsers] = useState('');\n const [message, setMessage] = useState('');\n const [messages, setMessages] = useState([]);\n\n useEffect(() => {\n const { name, room } = queryString.parse(location.search);\n \n socket = io(ENDPOINT);\n\n setRoom(room);\n setName(name)\n\n socket.emit('join', { name, room }, (error) => {\n if(error) {\n alert(error);\n }\n });\n }, [ENDPOINT, location.search]);\n \n useEffect(() => {\n socket.on('message', message => {\n setMessages(messages => [ ...messages, message ]);\n });\n \n socket.on(\"roomData\", ({ users }) => {\n setUsers(users);\n });\n}, []);\n\n const sendMessage = (event) => {\n event.preventDefault();\n\n if(message) {\n socket.emit('sendMessage', message, () => setMessage(''));\n }\n }\n\n return (\n
{trimmedName}
\n{ReactEmoji.emojify(text)}
\n{ReactEmoji.emojify(text)}
\n{user}
\n