components/Modals/SuccessModal.js

import React from 'react';

/**
 * @module Modals/SuccessModal
 */

/**
 * @typedef {object} props
 * @property {object} user
 * @property {object} modalData
 * @property {string} modalData.heading
 * @property {string} modalData.modal
 * @property {string} modalData.message
 * @property {string} [modalData.additionalMessage]
 * @property {string} [modalData.email]
 * @property {Function} setOpenModal
 */

/**
 * @param {props} props
 * @returns {view}
 */
const SuccessModal = (props) => (
  <div className="dialog open">
    <div className="p-30 text-center">
      <span className="icon-success mb-20" />
      <h2>Success !</h2>
      <p>
        {props.modalData.additionalMessage ? <strong>{props.modalData.message}</strong> : props.modalData.message}
        {props.modalData.user && (
          <strong>
            <br />
            {props.modalData.user.username}
          </strong>
        )}
        <br />
        {props.modalData.additionalMessage || null}
        {props.modalData.email && (
          <strong>
            <br />
            {props.modalData.user.email}
          </strong>
        )}
      </p>
    </div>
    <div
      className="dialog__btn"
      onClick={() => {
        if (props.modalData && props.modalData.callback) {
          props.modalData.callback();
        }
        props.setOpenModal({ modal: '' });
      }}
    >
      Continue
    </div>
  </div>
);

export default SuccessModal;