import React, { useState } from "react"; import { connect } from "react-redux"; import { useDropzone } from "react-dropzone"; import { Link, useParams } from "react-router-dom"; import Button from "react-bootstrap/esm/Button"; import { Input, InputDebounce } from "../helpers/UserSearch"; import { CUserSearch } from "../helpers/UserSearch"; import { removeUserChat } from "../actions"; import { CSearchByLogin } from '../helpers/UserSearch' import { actionSetChatInfo } from "../actions"; import { CChatAvatar } from "../components/Avatar"; const ChatEditing = ({ chatId, onChat, myProfile, create, onLeave }) => { let { _id } = useParams(); const [chat] = useState(); const [img, setImg] = useState(null); const [newTitle, setNewTitle] = useState(chatId[_id]?.title || ""); const [members, setMembers] = useState(chat?.members || [myProfile]); const { getRootProps, getInputProps, isDragActive } = useDropzone({ accept: "image/*", maxFiles: 1, onDrop: (acceptedFiles) => { setImg(acceptedFiles[0]); }, }); function prepareMembers(members) { const newMembers = []; for (const member of members) { if (create) { if (member._id !== myProfile?._id) { newMembers.push({ _id: member._id }); } } else { newMembers.push({ _id: member._id }); } } return newMembers; } return (
{isDragActive ? (

Drop the files here ...

) : ( )}
{ setNewTitle(e.target.value); }} />
Back to chat
); }; export const CChatEditing = connect( (state) => ({ myProfile: state.promise.myProfile?.payload || {}, chatId: state.chats, }), { onChat: actionSetChatInfo, onLeave: removeUserChat } )(ChatEditing);