primereact
Version:
PrimeReact is an open source UI library for React featuring a rich set of 80+ components, a theme designer, various theme alternatives such as Material, Bootstrap, Tailwind, premium templates and professional support. In addition, it integrates with Prime
2 lines (1 loc) • 2.16 kB
JavaScript
;Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),t=require("react-dom"),r=require("primereact/api"),n=require("primereact/hooks"),o=require("primereact/utils");function u(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function a(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(r){if("default"!==r){var n=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,n.get?n:{enumerable:!0,get:function(){return e[r]}})}})),t.default=e,Object.freeze(t)}var l=a(e),i=u(t),c=u(r);function f(e){if(Array.isArray(e))return e}function d(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,u=[],a=!0,l=!1;try{for(r=r.call(e);!(a=(n=r.next()).done)&&(u.push(n.value),!t||u.length!==t);a=!0);}catch(e){l=!0,o=e}finally{try{a||null==r.return||r.return()}finally{if(l)throw o}}return u}}function s(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function p(e,t){if(e){if("string"==typeof e)return s(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?s(e,t):void 0}}function m(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var y=l.memo((function(e){var t,r,u=l.useState(e.visible&&o.DomHandler.hasDOM()),a=(r=2,f(t=u)||d(t,r)||p(t,r)||m()),s=a[0],y=a[1];n.useMountEffect((function(){o.DomHandler.hasDOM()&&!s&&(y(!0),e.onMounted&&e.onMounted())})),n.useUpdateEffect((function(){e.onMounted&&e.onMounted()}),[s]),n.useUnmountEffect((function(){e.onUnmounted&&e.onUnmounted()}));var b=e.element||e.children;if(b&&s){var v=e.appendTo||c.default.appendTo||document.body;return"self"===v?b:i.default.createPortal(b,v)}return null}));y.displayName="Portal",y.defaultProps={__TYPE:"Portal",element:null,appendTo:null,visible:!1,onMounted:null,onUnmounted:null},exports.Portal=y;