index.tsx 1.2 KB

123456789101112131415161718192021222324252627282930
  1. import ListItemButton from '@mui/material/ListItemButton';
  2. import Avatar from '@mui/material/Avatar';
  3. import ListItemText from '@mui/material/ListItemText';
  4. import ListItemIcon from '@mui/material/ListItemIcon';
  5. import { useDispatch,useSelector } from 'react-redux';
  6. import { actionIsOpen } from '../../../../../redux/controlApp/action'
  7. import { getChat } from '../../../../../redux/chats/selector'
  8. import { firstLetter,slicedWord,timeStamp } from '../../../../../helpers'
  9. const Credentials = () => {
  10. const dispatch = useDispatch()
  11. const chat = useSelector(getChat)
  12. const { name,lastName,avatarUrl,color,updatedAt } = chat
  13. return (
  14. <ListItemButton onClick={() => dispatch(actionIsOpen('credentials'))}>
  15. <ListItemIcon >
  16. <Avatar alt={name} src={avatarUrl?`http://localhost:3000/${avatarUrl}`:undefined}
  17. sx={{ background: color, width: 44, height: 44 }}>
  18. {!avatarUrl&&`${firstLetter(name)}${firstLetter(lastName)}`}
  19. </Avatar>
  20. </ListItemIcon>
  21. <ListItemText primary={`${firstLetter(name)}${slicedWord(name, 15, 1)}
  22. ${firstLetter(lastName)}${slicedWord(lastName, 15, 1)}`}
  23. secondary={`last seen ${timeStamp(updatedAt)}`} />
  24. </ListItemButton>
  25. )
  26. }
  27. export default Credentials