New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

react-cool-portal

Package Overview
Dependencies
Maintainers
1
Versions
57
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

react-cool-portal - npm Package Compare versions

Comparing version 1.0.11 to 1.0.12

2

dist/index.esm.js

@@ -1,1 +0,1 @@

import{useRef,useEffect,useState,useCallback}from"react";import{createPortal as createPortal$1}from"react-dom";function _slicedToArray(e,t){return _arrayWithHoles(e)||_iterableToArrayLimit(e,t)||_unsupportedIterableToArray(e,t)||_nonIterableRest()}function _arrayWithHoles(e){if(Array.isArray(e))return e}function _iterableToArrayLimit(e,t){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e)){var r=[],n=!0,o=!1,a=void 0;try{for(var u,i=e[Symbol.iterator]();!(n=(u=i.next()).done)&&(r.push(u.value),!t||r.length!==t);n=!0);}catch(e){o=!0,a=e}finally{try{n||null==i.return||i.return()}finally{if(o)throw a}}return r}}function _unsupportedIterableToArray(e,t){if(e){if("string"==typeof e)return _arrayLikeToArray(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)?_arrayLikeToArray(e,t):void 0}}function _arrayLikeToArray(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 _nonIterableRest(){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 useLatest=function(e){var t=useRef(e);return useEffect((function(){t.current=e}),[e]),t},delay=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:100,r=setTimeout((function(){clearTimeout(r),e()}),t)},createEl=function(e){var t=document.createElement("div");return t.setAttribute("id",e),document.body.appendChild(t),t},createPortal=function(e,t,r,n){return function(o){var a=o.children,u=_slicedToArray(useState(null),2),i=u[0],c=u[1];return useEffect((function(){return c(document.getElementById(e)||createEl(e)),function(){i&&delay((function(){""===i.innerHTML&&i.remove()}))}}),[i]),useEffect((function(){if(t&&i){var e=function(e){i.contains(e.target)||r(e)},o=function(e){27===e.keyCode&&n(e)};return r&&document.addEventListener("click",e),n&&document.addEventListener("keydown",o),function(){r&&document.removeEventListener("click",e),n&&document.removeEventListener("keydown",o)}}}),[i]),t&&i&&createPortal$1(a,i)}},defaultContainerId="react-cool-portal",initShow=!0,usePortal=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.containerId,r=void 0===t?defaultContainerId:t,n=e.defaultShow,o=void 0===n?initShow:n,a=e.clickOutsideToHide,u=void 0===a||a,i=e.escToHide,c=void 0===i||i,l=e.internalShowHide,d=void 0===l||l,f=e.onShow,s=e.onHide,y=useState(o),m=_slicedToArray(y,2),v=m[0],b=m[1],h=useRef(!1),p=useLatest(f),A=useLatest(s),k=useRef(o),S=useCallback((function(){u&&(h.current=!0,delay((function(){h.current=!1})))}),[u]),T=useCallback((function(e){S(),k.current||(b(!0),k.current=!0,p.current&&p.current(e))}),[S]),w=useCallback((function(e){S(),k.current&&(b(!1),k.current=!1,A.current&&A.current(e))}),[S]),_=useCallback((function(e){k.current?w(e):T(e)}),[w,T]),C=useCallback((function(e){h.current||w(e)}),[w]),E=useCallback(createPortal(r,!d||v,u&&C,c&&C),[d&&v]);return{Portal:E,isShow:v,show:T,hide:w,toggle:_}};export default usePortal;export{defaultContainerId,initShow};
import{useRef,useEffect,useState,useCallback}from"react";import{createPortal as createPortal$1}from"react-dom";function _slicedToArray(e,t){return _arrayWithHoles(e)||_iterableToArrayLimit(e,t)||_unsupportedIterableToArray(e,t)||_nonIterableRest()}function _arrayWithHoles(e){if(Array.isArray(e))return e}function _iterableToArrayLimit(e,t){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e)){var r=[],n=!0,o=!1,a=void 0;try{for(var u,i=e[Symbol.iterator]();!(n=(u=i.next()).done)&&(r.push(u.value),!t||r.length!==t);n=!0);}catch(e){o=!0,a=e}finally{try{n||null==i.return||i.return()}finally{if(o)throw a}}return r}}function _unsupportedIterableToArray(e,t){if(e){if("string"==typeof e)return _arrayLikeToArray(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)?_arrayLikeToArray(e,t):void 0}}function _arrayLikeToArray(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 _nonIterableRest(){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 useLatest=function(e){var t=useRef(e);return useEffect((function(){t.current=e}),[e]),t},delay=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:100,r=setTimeout((function(){clearTimeout(r),e()}),t)},createEl=function(e){var t=document.createElement("div");return t.setAttribute("id",e),document.body.appendChild(t),t},createPortal=function(e,t,r,n){return function(o){var a=o.children,u=_slicedToArray(useState(null),2),i=u[0],c=u[1];return useEffect((function(){return t?(c(document.getElementById(e)||createEl(e)),function(){i&&delay((function(){""===i.innerHTML&&i.remove()}))}):function(){return null}}),[i]),useEffect((function(){if(!t||!i)return function(){return null};var e=function(e){i.contains(e.target)||r(e)},o=function(e){27===e.keyCode&&n(e)};return r&&document.addEventListener("click",e),n&&document.addEventListener("keydown",o),function(){r&&document.removeEventListener("click",e),n&&document.removeEventListener("keydown",o)}}),[i]),t&&i&&createPortal$1(a,i)}},defaultContainerId="react-cool-portal",initShow=!0,usePortal=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.containerId,r=void 0===t?defaultContainerId:t,n=e.defaultShow,o=void 0===n?initShow:n,a=e.clickOutsideToHide,u=void 0===a||a,i=e.escToHide,c=void 0===i||i,l=e.internalShowHide,d=void 0===l||l,f=e.onShow,s=e.onHide,y=useState(o),m=_slicedToArray(y,2),v=m[0],b=m[1],h=useRef(!1),p=useLatest(f),A=useLatest(s),k=useRef(o),S=useCallback((function(){u&&(h.current=!0,delay((function(){h.current=!1})))}),[u]),T=useCallback((function(e){S(),k.current||(b(!0),k.current=!0,p.current&&p.current(e))}),[S]),w=useCallback((function(e){S(),k.current&&(b(!1),k.current=!1,A.current&&A.current(e))}),[S]),_=useCallback((function(e){k.current?w(e):T(e)}),[w,T]),C=useCallback((function(e){h.current||w(e)}),[w]),E=useCallback(createPortal(r,!d||v,u&&C,c&&C),[d&&v]);return{Portal:E,isShow:v,show:T,hide:w,toggle:_}};export default usePortal;export{defaultContainerId,initShow};

@@ -1,1 +0,1 @@

"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),t=require("react-dom");function n(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){if("undefined"==typeof Symbol||!(Symbol.iterator in Object(e)))return;var n=[],r=!0,o=!1,u=void 0;try{for(var c,i=e[Symbol.iterator]();!(r=(c=i.next()).done)&&(n.push(c.value),!t||n.length!==t);r=!0);}catch(e){o=!0,u=e}finally{try{r||null==i.return||i.return()}finally{if(o)throw u}}return n}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return r(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return r(e,t)}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var o=function(t){var n=e.useRef(t);return e.useEffect((function(){n.current=t}),[t]),n},u=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:100,n=setTimeout((function(){clearTimeout(n),e()}),t)},c=function(r,o,c,i){return function(a){var l=a.children,f=n(e.useState(null),2),d=f[0],s=f[1];return e.useEffect((function(){return s(document.getElementById(r)||function(e){var t=document.createElement("div");return t.setAttribute("id",e),document.body.appendChild(t),t}(r)),function(){d&&u((function(){""===d.innerHTML&&d.remove()}))}}),[d]),e.useEffect((function(){if(o&&d){var e=function(e){d.contains(e.target)||c(e)},t=function(e){27===e.keyCode&&i(e)};return c&&document.addEventListener("click",e),i&&document.addEventListener("keydown",t),function(){c&&document.removeEventListener("click",e),i&&document.removeEventListener("keydown",t)}}}),[d]),o&&d&&t.createPortal(l,d)}};exports.default=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},r=t.containerId,i=void 0===r?"react-cool-portal":r,a=t.defaultShow,l=void 0===a||a,f=t.clickOutsideToHide,d=void 0===f||f,s=t.escToHide,v=void 0===s||s,m=t.internalShowHide,y=void 0===m||m,b=t.onShow,h=t.onHide,p=e.useState(l),S=n(p,2),g=S[0],k=S[1],w=e.useRef(!1),C=o(b),E=o(h),A=e.useRef(l),I=e.useCallback((function(){d&&(w.current=!0,u((function(){w.current=!1})))}),[d]),T=e.useCallback((function(e){I(),A.current||(k(!0),A.current=!0,C.current&&C.current(e))}),[I]),j=e.useCallback((function(e){I(),A.current&&(k(!1),A.current=!1,E.current&&E.current(e))}),[I]),x=e.useCallback((function(e){A.current?j(e):T(e)}),[j,T]),H=e.useCallback((function(e){w.current||j(e)}),[j]),L=e.useCallback(c(i,!y||g,d&&H,v&&H),[y&&g]);return{Portal:L,isShow:g,show:T,hide:j,toggle:x}},exports.defaultContainerId="react-cool-portal",exports.initShow=!0;
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),t=require("react-dom");function n(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){if("undefined"==typeof Symbol||!(Symbol.iterator in Object(e)))return;var n=[],r=!0,o=!1,u=void 0;try{for(var c,i=e[Symbol.iterator]();!(r=(c=i.next()).done)&&(n.push(c.value),!t||n.length!==t);r=!0);}catch(e){o=!0,u=e}finally{try{r||null==i.return||i.return()}finally{if(o)throw u}}return n}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return r(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return r(e,t)}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function r(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var o=function(t){var n=e.useRef(t);return e.useEffect((function(){n.current=t}),[t]),n},u=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:100,n=setTimeout((function(){clearTimeout(n),e()}),t)},c=function(r,o,c,i){return function(a){var l=a.children,f=n(e.useState(null),2),d=f[0],s=f[1];return e.useEffect((function(){return o?(s(document.getElementById(r)||function(e){var t=document.createElement("div");return t.setAttribute("id",e),document.body.appendChild(t),t}(r)),function(){d&&u((function(){""===d.innerHTML&&d.remove()}))}):function(){return null}}),[d]),e.useEffect((function(){if(!o||!d)return function(){return null};var e=function(e){d.contains(e.target)||c(e)},t=function(e){27===e.keyCode&&i(e)};return c&&document.addEventListener("click",e),i&&document.addEventListener("keydown",t),function(){c&&document.removeEventListener("click",e),i&&document.removeEventListener("keydown",t)}}),[d]),o&&d&&t.createPortal(l,d)}};exports.default=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},r=t.containerId,i=void 0===r?"react-cool-portal":r,a=t.defaultShow,l=void 0===a||a,f=t.clickOutsideToHide,d=void 0===f||f,s=t.escToHide,v=void 0===s||s,m=t.internalShowHide,y=void 0===m||m,b=t.onShow,h=t.onHide,p=e.useState(l),S=n(p,2),g=S[0],k=S[1],w=e.useRef(!1),C=o(b),E=o(h),A=e.useRef(l),I=e.useCallback((function(){d&&(w.current=!0,u((function(){w.current=!1})))}),[d]),T=e.useCallback((function(e){I(),A.current||(k(!0),A.current=!0,C.current&&C.current(e))}),[I]),j=e.useCallback((function(e){I(),A.current&&(k(!1),A.current=!1,E.current&&E.current(e))}),[I]),x=e.useCallback((function(e){A.current?j(e):T(e)}),[j,T]),H=e.useCallback((function(e){w.current||j(e)}),[j]),L=e.useCallback(c(i,!y||g,d&&H,v&&H),[y&&g]);return{Portal:L,isShow:g,show:T,hide:j,toggle:x}},exports.defaultContainerId="react-cool-portal",exports.initShow=!0;
{
"name": "react-cool-portal",
"version": "1.0.11",
"version": "1.0.12",
"description": "React hook for Portals, which renders modals, dropdowns, tooltips etc. to <body> or else.",

@@ -142,3 +142,3 @@ "license": "MIT",

"@rollup/plugin-url": "^5.0.0",
"@testing-library/react": "^10.0.4",
"@testing-library/react": "^10.0.6",
"@testing-library/react-hooks": "^3.2.1",

@@ -153,3 +153,3 @@ "@types/jest": "^25.2.3",

"jest": "^26.0.1",
"lint-staged": "^10.2.7",
"lint-staged": "^10.2.8",
"normalize.css": "^8.0.1",

@@ -162,3 +162,3 @@ "npm-run-all": "^4.1.5",

"rimraf": "^3.0.2",
"rollup": "^2.12.0",
"rollup": "^2.12.1",
"rollup-plugin-babel": "^4.4.0",

@@ -165,0 +165,0 @@ "rollup-plugin-commonjs": "^10.1.0",

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc