import { useState, useEffect } from 'react'; import { createPortal } from 'react-dom'; export default function withNextPortalWrapper>( Component: React.ComponentType, ) { return function (props: T) { const [mounted, setMounted] = useState(false); useEffect(() => { setMounted(true); }, [setMounted]); return mounted ? createPortal(, document.body) : null; }; }