UNPKG

@ozen-ui/kit

Version:

React component library

29 lines (28 loc) 1.01 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.usePortalContainer = void 0; var tslib_1 = require("tslib"); var react_1 = require("react"); var environment_1 = require("../../constants/environment"); var isFunction_1 = require("../../utils/isFunction"); var react_2 = require("../../utils/react"); var usePortalContainer = function (container) { var _a = tslib_1.__read((0, react_1.useState)(false), 2), isMounted = _a[0], setIsMounted = _a[1]; (0, react_1.useEffect)(function () { setIsMounted(true); }, []); var baseContainer = (function () { if (environment_1.isServer || !isMounted) { return null; } if ((0, isFunction_1.isFunction)(container)) { return container(); } return container; })(); if (baseContainer && (0, react_2.isRef)(baseContainer)) { return baseContainer.current; } return baseContainer; }; exports.usePortalContainer = usePortalContainer;