import { createPortal } from 'react-dom' import { useState, useEffect } from 'react' import PropTypes from 'prop-types' import { Dialog, DialogContent } from '@mui/material' import PerfectScrollbar from 'react-perfect-scrollbar' import NodeInputHandler from 'views/canvas/NodeInputHandler' const AdditionalParamsDialog = ({ show, dialogProps, onCancel }) => { const portalElement = document.getElementById('portal') const [inputParams, setInputParams] = useState([]) const [data, setData] = useState({}) useEffect(() => { if (dialogProps.inputParams) setInputParams(dialogProps.inputParams) if (dialogProps.data) setData(dialogProps.data) return () => { setInputParams([]) setData({}) } }, [dialogProps]) const component = show ? ( {inputParams.map((inputParam, index) => ( ))} ) : null return createPortal(component, portalElement) } AdditionalParamsDialog.propTypes = { show: PropTypes.bool, dialogProps: PropTypes.object, onCancel: PropTypes.func } export default AdditionalParamsDialog