UNPKG

@styleless-ui/react

Version:

Completely unstyled, headless and accessible React UI components.

1 lines 1.59 kB
"use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(e,t,r,i){void 0===i&&(i=r);var n=Object.getOwnPropertyDescriptor(t,r);n&&!("get"in n?!t.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,i,n)}:function(e,t,r,i){void 0===i&&(i=r),e[i]=t[r]}),__setModuleDefault=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),__importStar=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&__createBinding(t,e,r);return __setModuleDefault(t,e),t},__importDefault=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,"__esModule",{value:!0});var jsx_runtime_1=require("react/jsx-runtime"),React=__importStar(require("react")),ReactDOM=__importStar(require("react-dom")),usePortalConfig_1=__importDefault(require("../PortalConfigProvider/usePortalConfig")),utils_1=require("../utils"),getContainer=function(e){return e?document.querySelector(e):document.body},Portal=function(e){var t=e.containerQuerySelector,r=e.children,i=e.disabled,n=void 0!==i&&i,u=(0,usePortalConfig_1.default)().destinationQuery,o=(0,utils_1.useIsServerHandoffComplete)(),a=t||u,l=React.useMemo((function(){return o?getContainer(a):null}),[a,o]);return n?(0,jsx_runtime_1.jsx)(jsx_runtime_1.Fragment,{children:r}):l?ReactDOM.createPortal(r,l):null};exports.default=Portal;