import { createPortal } from 'react-dom' import { useState, useEffect } from 'react' import { useSelector } from 'react-redux' import PropTypes from 'prop-types' import { Dialog, DialogContent, DialogTitle } from '@mui/material' import ReactJson from 'react-json-view' const SourceDocDialog = ({ show, dialogProps, onCancel }) => { const portalElement = document.getElementById('portal') const customization = useSelector((state) => state.customization) const [data, setData] = useState({}) useEffect(() => { if (dialogProps.data) setData(dialogProps.data) return () => { setData({}) } }, [dialogProps]) const component = show ? ( Source Document ) : null return createPortal(component, portalElement) } SourceDocDialog.propTypes = { show: PropTypes.bool, dialogProps: PropTypes.object, onCancel: PropTypes.func } export default SourceDocDialog