Rev 5499 | AutorÃa | Comparar con el anterior | Ultima modificación | Ver Log |
import React, { useState, useEffect } from 'react'
import parse from 'html-react-parser'
import EditIcon from '@mui/icons-material/Edit'
import DeleteIcon from '@mui/icons-material/Delete'
import IconButton from '@mui/material/IconButton'
import ConfirmModal from '../../../shared/confirm-modal/ConfirmModal'
const Experience = ({ experience, months = [], onDelete, onEdit, isEdit }) => {
const [isConfirmationBoxShow, setIsConfirmationBoxShow] = useState(false)
const [monthOptions, setMonthOptions] = useState({})
useEffect(() => {
setMonthOptions(
months.reduce((obj, item, i) => ({ ...obj, [i + 1]: item }), {})
)
}, [months, monthOptions])
const toggleConfirmModal = () =>
setIsConfirmationBoxShow(!isConfirmationBoxShow)
return (
<>
<div className="experience-item">
<div className="experience-item-header">
<h3>{experience.company}</h3>
{isEdit && (
<div className="icon-buttons-group">
<IconButton onClick={() => onEdit(experience.link_edit)}>
<EditIcon />
</IconButton>
<IconButton onClick={toggleConfirmModal}>
<DeleteIcon />
</IconButton>
</div>
)}
</div>
<h4>{experience.title}</h4>
<p>
{`${monthOptions[experience.from_month]} ${experience.from_year} - ${
experience.is_current === 'y'
? 'Actual'
: `${monthOptions[experience.to_month]} ${experience.to_year}`
}`}
</p>
<p>{`${experience.industry.name || experience.industry} / ${
experience.size
}`}</p>
<p>{experience.formatted_address}</p>
{experience.description && parse(experience.description)}
</div>
<ConfirmModal
show={isConfirmationBoxShow}
onClose={toggleConfirmModal}
onAccept={() => onDelete(experience.link_delete)}
/>
</>
)
}
export default Experience