import { Avatar, Button, ButtonGroup, TextField } from "@mui/material" import { useEffect, useState } from "react" import { connect } from "react-redux" import { actionFullEditChat, actionUserSearch } from "../actions" import { MemberList, UserSearch } from "./chatForm" import { ConnectDropzone } from "./dropzone" const ChatEditForm = ({ chat_id, chat, searchState, onUserSearch, onChangeChat }) => { let [edit, setEdit] = useState(false) let [newTitle, setNewTitle] = useState(chat.title || "") let [newAvatar, setNewAvatar] = useState([]) let [newMembers, setNewMembers] = useState(chat.members) useEffect(() => { setEdit(false) setNewTitle(chat.title) setNewAvatar([chat.avatar]) setNewMembers(chat.members) }, [chat]) let editChatHandler = () => { setEdit(!edit) setNewMembers(chat.members) } let userAddHandler = (user) => { setNewMembers([...newMembers, user]) } let memberDeleteHandler = (user) => { setNewMembers(newMembers.filter(member => member._id !== user._id)) } return (
{edit ?
Загрузите новый аватар
: chat.avatar && } {edit ? setNewTitle(e.target.value)} value={newTitle} placeholder="Сменить название чата" /> : Название чата: {chat.title}} {} {edit && } {edit && }
) } const ConnectChatEditForm = connect(state => ({ searchState: state.promise?.userSearch?.payload?.data?.UserFind }), { onUserSearch: actionUserSearch, onChangeChat: actionFullEditChat })(ChatEditForm) export default ConnectChatEditForm