diff options
Diffstat (limited to 'client/utils')
-rw-r--r-- | client/utils/use_chat.js (renamed from client/utils/use_messages.js) | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/client/utils/use_messages.js b/client/utils/use_chat.js index e3a501e..d5250bf 100644 --- a/client/utils/use_messages.js +++ b/client/utils/use_chat.js @@ -2,9 +2,11 @@ import { useState, useContext, useEffect, useRef } from 'react'; import { AuthContext } from './auth_context'; import { io } from 'socket.io-client'; -export const useMessages = (chatRoom) => { +export const useChat = (chatRoom) => { const [messages, setMessages] = useState([]); + const [connections, setConnections] = useState([]); const messageRef = useRef([]); + const connectionsRef = useRef([]); const [socket, setSocket] = useState({}); const [authToken] = useContext(AuthContext); @@ -25,6 +27,10 @@ export const useMessages = (chatRoom) => { messageRef.current.push(message); setMessages([...messageRef.current]); }); + socket.on('userlist', ({ users }) => { + connectionsRef.current = users; + setConnections([...connectionsRef.current]); + }); return () => { socket.off('new-message'); socket.close(); @@ -38,5 +44,5 @@ export const useMessages = (chatRoom) => { } }; - return [messages, sendMessage]; + return [connections, messages, sendMessage]; }; |