diff options
author | Vitaly Takmazov | 2019-05-04 21:13:12 +0300 |
---|---|---|
committer | Vitaly Takmazov | 2023-01-13 10:37:54 +0300 |
commit | f470636a70943a8ecad8bddc791a1c2dddd28e1e (patch) | |
tree | c43d109d88adbde9a696084070cdd92c6b9a004b /vnext/src/ui/Contacts.js | |
parent | 3d7d213e3ddc5bf4f71d536f31677b768aa3b7c0 (diff) |
Components -> UI
Diffstat (limited to 'vnext/src/ui/Contacts.js')
-rw-r--r-- | vnext/src/ui/Contacts.js | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/vnext/src/ui/Contacts.js b/vnext/src/ui/Contacts.js new file mode 100644 index 00000000..3852b26f --- /dev/null +++ b/vnext/src/ui/Contacts.js @@ -0,0 +1,49 @@ +import React, { useEffect, useState } from 'react'; + +import { getChats } from '../api'; + + +import Contact from './Contact.js'; +import { ChatSpinner } from './Spinner'; + +export default function Contacts(props) { + const [pms, setPms] = useState([]); + useEffect(() => { + getChats() + .then(response => { + setPms(response.data.pms); + }); + }, []); + return ( + <div className="msg-cont"> + <div style={chatListStyle}> + { + pms.length ? pms.map((chat) => + <Contact key={chat.uname} user={chat} style={chatTitleStyle} /> + ) : <><ChatSpinner /><ChatSpinner /><ChatSpinner /><ChatSpinner /><ChatSpinner /></> + } + </div> + </div> + ); +} + +const wrapperStyle = { + display: 'flex', + backgroundColor: '#fff' +}; + +const chatListStyle = { + display: 'flex', + flexDirection: 'column', + width: '100%', + padding: '12px' +}; + +const chatTitleStyle = { + width: '100%', + padding: '12px', + textAlign: 'left', + background: '#fff', + color: '#222', + borderBottom: '1px solid #eee' +}; |