AutorÃa | Ultima modificación | Ver Log |
import React, { useEffect, useState } from 'react'import { axios } from '../../utils'import { Modal } from 'react-bootstrap'import { useSelector } from 'react-redux'const StartConversationModal = ({ show, setConversation, onClose }) => {const [inmailPersons, setInmailPersons] = useState([])const [search, setSearch] = useState('')const labels = useSelector(({ intl }) => intl.labels)const handleSearch = ({ target }) => {setSearch(target.value)}const searchUsers = async (value) => {try {const { data } = await axios.get('/helpers/search-people?search=' + value)if (data.success) setInmailPersons(data.data)} catch (error) {console.log('>>: error > ', error)}}const handleInmailPerson = (uuid) => {axios.get(`/inmail/${uuid}`).then(({ data }) => {if (data.success) {const newConversation = data.data.find((conversation) => conversation.uuid === uuid)setConversation(newConversation)}})onClose()}useEffect(() => {searchUsers(search)}, [search])return (<Modal show={show} onHide={onClose}><Modal.Header closeButton><Modal.Title>{labels.create_inmail}</Modal.Title></Modal.Header><Modal.Body><div className="form-group"><label htmlFor="search-people">{labels.write_name}</label><inputtype="email"className="form-control"aria-describedby="Buscador de personas"placeholder={labels.write_person_name}onChange={handleSearch}/></div><div className="container">{inmailPersons.map((person) => {return (<div className="row" key={person.value}><div className="col-8"><p>{person.text}</p></div><div className="col-4"><buttonclassName="btn btn-primary"onClick={() => handleInmailPerson(person.value)}><i className="fa fa-check" /></button></div></div>)})}</div></Modal.Body></Modal>)}export default StartConversationModal