Proyectos de Subversion LeadersLinked - Antes de SPA

Rev

Rev 3723 | Rev 5070 | Ir a la última revisión | | Comparar con el anterior | Ultima modificación | Ver Log |

Rev Autor Línea Nro. Línea
3721 stevensc 1
/* eslint-disable react/prop-types */
1270 stevensc 2
import React from "react";
4945 stevensc 3
import Modal from "react-bootstrap/Modal";
4
import Button from "react-bootstrap/Button";
1 www 5
import styled from "styled-components";
6
import Spinner from "../loading-spinner/Spinner";
7
import "../../css/shared/global.scss";
8
 
9
const StyledModalBody = styled.div`
10
  width: 100%;
11
  height: 100%;
12
  display: flex;
13
  justify-content: space-evenly;
14
  align-items: center;
15
  margin-top: 1rem;
16
`;
17
 
18
const StyledModal = styled.div`
19
  .modal {
20
    width: 200px;
21
  }
22
`;
23
 
24
const ConfirmModal = (props) => {
25
  // props destructuring
26
  const {
27
    show,
28
    onClose,
3723 stevensc 29
    title = "¿Estás seguro?",
1 www 30
    loading,
31
    onAccept,
32
    message,
33
    acceptLabel = "Enviar",
34
  } = props;
35
 
36
  return (
37
    <StyledModal>
38
      <Modal
39
        size="sm"
40
        show={show}
385 geraldo 41
        onHide={onClose}
1 www 42
        style={{ overflowY: "scroll" }}
43
      >
44
        <Modal.Header closeButton>
45
          <Modal.Title>{title}</Modal.Title>
46
        </Modal.Header>
47
        <Modal.Body>
48
          {message && message}
49
          <StyledModalBody>
3721 stevensc 50
            <Button
1 www 51
              size="lg"
385 geraldo 52
              onClick={onClose}
1 www 53
            >
54
              Cancelar
55
            </Button>
385 geraldo 56
            <Button size="lg" type="submit" onClick={onAccept}>
57
              {acceptLabel}
58
            </Button>
1 www 59
          </StyledModalBody>
60
        </Modal.Body>
3721 stevensc 61
        {loading &&
1 www 62
          <div className="spinner-container">
63
            <Spinner />
64
          </div>
3721 stevensc 65
        }
1 www 66
      </Modal>
67
    </StyledModal>
68
  );
69
};
70
 
71
export default ConfirmModal;