@onwave/ui
Version:
onwave ui library
21 lines • 785 B
JavaScript
import { useEffect } from "react";
import ReactDOM from "react-dom";
import { useDom } from "../../../utils/useDom";
export var Portal = function (_a) {
var children = _a.children, container = _a.container;
var tempElement = document.createElement("div");
var canUseDom = useDom();
tempElement.className = "portal";
useEffect(function () {
if (!container && canUseDom) {
document.body.appendChild(tempElement);
}
return function () {
if (!container && canUseDom) {
document.body.removeChild(tempElement);
}
};
}, [canUseDom]);
return ReactDOM.createPortal(children, container !== null && container !== void 0 ? container : tempElement);
};
//# sourceMappingURL=index.js.map