ListOfUsers.jsx 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. import { ConstructorModal } from '../helpers'
  2. import React, { useState } from 'react'
  3. import LinkToUser from '../components/LinkToUser'
  4. export const ListOfUsers = ({ listUsers, text }) => {
  5. const [isModalVisible, setIsModalVisible] = useState(false)
  6. const showModal = () => {
  7. setIsModalVisible(true)
  8. }
  9. const handleCancel = () => {
  10. setIsModalVisible(false)
  11. }
  12. return (
  13. <>
  14. {listUsers?.length > 0 ? (
  15. <p
  16. style={{ cursor: 'pointer', marginLeft: '20px' }}
  17. onClick={showModal}
  18. >
  19. {listUsers.length} {text}{' '}
  20. </p>
  21. ) : (
  22. <p style={{ marginLeft: '20px' }}> 0 {text} </p>
  23. )}
  24. <ConstructorModal
  25. title={text[0].toUpperCase() + text.slice(1)}
  26. isModalVisible={isModalVisible}
  27. setIsModalVisible={setIsModalVisible}
  28. >
  29. <div className="">
  30. {listUsers?.map(({ _id, login, avatar }) => (
  31. <LinkToUser
  32. _id={_id}
  33. login={login}
  34. avatar={avatar}
  35. size={40}
  36. padding={'0px'}
  37. onClick={handleCancel}
  38. />
  39. ))}
  40. </div>
  41. </ConstructorModal>
  42. </>
  43. )
  44. }
  45. export default ListOfUsers