@nex-ui/react
Version:
🎉 A beautiful, modern, and reliable React component library.
25 lines (21 loc) • 623 B
JavaScript
"use client";
;
var reactDom = require('react-dom');
var react = require('react');
var utils = require('@nex-ui/utils');
const Portal = (props)=>{
const { children, container } = props;
const [mountNode, setMountNode] = react.useState(null);
react.useEffect(()=>{
let node = container;
if (utils.isFunction(node)) {
node = node();
}
setMountNode(node || document.body);
}, [
container
]);
return mountNode ? /*#__PURE__*/ reactDom.createPortal(children, mountNode) : null;
};
Portal.displayName = 'Portal';
exports.Portal = Portal;