Rev 5498 | Autoría | Comparar con el anterior | Ultima modificación | Ver Log |
import React, { useRef, useEffect } from 'react'const ConfirmationBox = ({ show, onClose, onAccept }) => {const confirmationBoxRef = useRef()const clickOutsideConfirmationBoxHandler = (event) => {if (show) {if (!confirmationBoxRef.current.contains(event.target)) {onClose()}}}useEffect(() => {document.addEventListener('mousedown', clickOutsideConfirmationBoxHandler)return () => {document.removeEventListener('mousedown',clickOutsideConfirmationBoxHandler)}}, [show])return (<divclassName="popover confirmation fade bs-popover-top show"id="confirmation937427"style={{position: 'absolute',top: '-2.5rem',left: '50%',transform: 'translate(-50%, -100%)',width: '120px',display: show ? 'block' : 'none',}}ref={confirmationBoxRef}><div className="arrow" style={{ left: '46px' }}></div><p className="popover-header">¿Está seguro?</p><div className="popover-body"><p className="confirmation-content" style={{ display: 'none' }}></p><div className="confirmation-buttons text-center"><div className="btn-group"><buttontype="button"className="h-100 d-flex align-items-center btn btn-sm btn-primary"onClick={() => {onAccept()onClose()}}>Si</button><buttontype="button"className="h-100 d-flex align-items-center btn btn-sm btn-secondary"onClick={() => {onClose()}}>No</button></div></div></div></div>)}export default ConfirmationBox