import Stack from '@mui/material/Stack'; import IconButton from '@mui/material/IconButton'; import PersonAddAltIcon from '@mui/icons-material/PersonAddAlt'; import EditIcon from '@mui/icons-material/Edit'; import CloseIcon from '@mui/icons-material/Close'; import { makeStyles, Typography } from '@material-ui/core' import { useDispatch, useSelector } from 'react-redux'; import { useState,useEffect } from 'react'; import { actionIsOpen } from '../../../../../../../redux/control/action' import { getContacts } from '../../../../../../../redux/contacts/selector' import { getChat } from '../../../../../../../redux/chat/selector' import { asyncGetContacts,asyncAddContact } from '../../../../../../../redux/contacts/operations'; const useStyles = makeStyles({ container: { borderLeft: 'solid 0.5px #9c9c9c', paddingLeft: 10, paddingBottom: 3, width: 482, display: 'flex', alignContent: 'center', alignItems: 'center', }, }) const ToolBar = () => { const dispatch = useDispatch() const classes = useStyles() const contacts = useSelector(getContacts) const { number } = useSelector(getChat) const [isContact, setIsContact] = useState(false) useEffect(() => { dispatch(asyncGetContacts()) }, [dispatch]) useEffect(() => { const isExist = contacts.some((el) => el.number === number) isExist&&setIsContact(true) }, [contacts,number]) return ( dispatch(actionIsOpen(''))} aria-label="delete" size="medium"> Profile {isContact ? dispatch(actionIsOpen('edit'))} fontSize='medium' /> : dispatch(asyncAddContact(number))} fontSize='medium' />} ) } export default ToolBar