Rev 1259 | Ir a la última revisión | Autoría | Comparar con el anterior | Ultima modificación | Ver Log |
import React, { useRef, useEffect } from "react";const ConfirmationBox = (props) => {// props destructuringconst { show, onClose, onAccept } = props;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"x-placement="top"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;