- building the base modal trigger architecture

This commit is contained in:
Amruth Pillai
2020-07-03 15:48:55 +05:30
parent 70ef926b70
commit 336fd22150
9 changed files with 341 additions and 9 deletions

37
src/modals/BaseModal.js Normal file
View File

@ -0,0 +1,37 @@
import React from "react";
import Modal from "@material-ui/core/Modal";
import { MdClose } from "react-icons/md";
import styles from "./BaseModal.module.css";
import Button from "../components/shared/Button";
const BaseModal = ({ title, state, children, action }) => {
const [isOpen, setOpen] = state;
const handleClose = () => setOpen(false);
return (
<Modal open={isOpen} onClose={handleClose} className={styles.root}>
<div className={styles.modal}>
<div className={styles.title}>
<h2>{title}</h2>
<MdClose size="18" onClick={handleClose} />
</div>
<div className={styles.body}>{children}</div>
<div className={styles.actions}>
<Button
outline
title="Cancel"
className="mr-8"
onClick={handleClose}
/>
{action}
</div>
</div>
</Modal>
);
};
export default BaseModal;