UNPKG

@shopify/polaris

Version:

Shopify’s admin product component library

30 lines (23 loc) 1.13 kB
'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); var React = require('react'); var context = require('../../utilities/portals/context.js'); var PortalsContainer = require('./components/PortalsContainer/PortalsContainer.js'); function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; } var React__default = /*#__PURE__*/_interopDefaultLegacy(React); function PortalsManager({ children, container }) { const [portalContainerElement, setPortalContainerElement] = React.useState(null); const currentContainer = container !== null && container !== void 0 ? container : portalContainerElement; const contextValue = React.useMemo(() => ({ container: currentContainer }), [currentContainer]); return /*#__PURE__*/React__default["default"].createElement(context.PortalsManagerContext.Provider, { value: contextValue }, children, container ? null : /*#__PURE__*/React__default["default"].createElement(PortalsContainer.PortalsContainer, { ref: setPortalContainerElement })); } exports.PortalsManager = PortalsManager;