Socket
Socket
Sign inDemoInstall

react-modal-global

Package Overview
Dependencies
Maintainers
1
Versions
84
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

react-modal-global - npm Package Compare versions

Comparing version 1.0.2-rc1 to 1.0.2-rc2

7

dist/index.d.ts

@@ -34,3 +34,10 @@ import { ReactElement, Component, ReactNode, ComponentLifecycle } from 'react';

params: ModalParams & P;
/**
* Removes the modal from the queue. If
*/
close: () => void;
/**
* Indicates that the `close` method has been called.
*/
isClosed: boolean;
}

@@ -37,0 +44,0 @@ /**

10

dist/index.ts

@@ -7,8 +7,8 @@ 'use strict';Object.defineProperty(exports,"__esModule",{value:!0});var jsxRuntime=require("react/jsx-runtime"),react=require("react"),extendStatics=function(e,b){extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(a,c){a.__proto__=c}||function(a,c){for(var d in c)Object.prototype.hasOwnProperty.call(c,d)&&(a[d]=c[d])};return extendStatics(e,b)};

var containers=new Set,ModalContainer=function(e){function b(){var a=null!==e&&e.apply(this,arguments)||this;a.state={active:!1,queue:[],forkedQueue:[]};return a}__extends(b,e);Object.defineProperty(b.prototype,"className",{get:function(){return this.props.className||"modal"},enumerable:!1,configurable:!0});b.prototype.componentDidMount=function(){containers.add(this)};b.prototype.componentWillUnmount=function(){containers.delete(this)};b.prototype.render=function(){var a,c,d=this.state,f=d.active;
d=d.queue;d=d[d.length-1];var g=(null===(a=null===d||void 0===d?void 0:d.params)||void 0===a?0:a.closable)?stopPropagation(d.close):void 0;a=this.props.template||react.Fragment;return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx("div",__assign({className:classWithModifiers(this.className,f&&"active"),"aria-modal":!0,"aria-hidden":!f},{children:jsxRuntime.jsx("div",__assign({className:this.className+"__container",onClick:g},{children:jsxRuntime.jsx(modalContext.Provider,__assign({value:d||
null},{children:jsxRuntime.jsx(a,{children:(null===d||void 0===d?void 0:d.component)&&react.createElement(d.component,__assign({},d.params,{key:null===(c=null===d||void 0===d?void 0:d.params)||void 0===c?void 0:c.id}))})}))}))})),this.renderForks()]})};b.prototype.renderForks=function(){var a=this;return this.state.forkedQueue.map(function(c){var d;return jsxRuntime.jsx("div",__assign({className:classWithModifiers(a.className,"active"),"aria-modal":!0},{children:jsxRuntime.jsx("div",__assign({className:a.className+
"__container",onClick:(null===(d=c.params)||void 0===d?0:d.closable)?stopPropagation(c.close):void 0},{children:jsxRuntime.jsx(modalContext.Provider,__assign({value:c},{children:jsxRuntime.jsx(c.component,__assign({},c.params))}))}))}),c.params.id)})};return b}(react.Component),DEFAULT_STATE={active:!1,queue:[],forkedQueue:[]},DEFAULT_PARAMS={id:0,closable:!0,weak:!1,fork:!1};
d=d.queue.at(-1);var g=(null===(a=null===d||void 0===d?void 0:d.params)||void 0===a?0:a.closable)?stopPropagation(d.close):void 0;a=this.props.template||react.Fragment;var h=d?__assign(__assign({},d),{isClosed:!f}):null;return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx("div",__assign({className:classWithModifiers(this.className,f&&"active"),"aria-modal":!0,"aria-hidden":!f},{children:jsxRuntime.jsx("div",__assign({className:this.className+"__container",onClick:g},{children:jsxRuntime.jsx(modalContext.Provider,
__assign({value:h},{children:jsxRuntime.jsx(a,{children:(null===d||void 0===d?void 0:d.component)&&react.createElement(d.component,__assign({},d.params,{key:null===(c=null===d||void 0===d?void 0:d.params)||void 0===c?void 0:c.id}))})}))}))})),this.renderForks()]})};b.prototype.renderForks=function(){var a=this;return this.state.forkedQueue.map(function(c){var d;return jsxRuntime.jsx("div",__assign({className:classWithModifiers(a.className,"active"),"aria-modal":!0},{children:jsxRuntime.jsx("div",
__assign({className:a.className+"__container",onClick:(null===(d=c.params)||void 0===d?0:d.closable)?stopPropagation(c.close):void 0},{children:jsxRuntime.jsx(modalContext.Provider,__assign({value:c},{children:jsxRuntime.jsx(c.component,__assign({},c.params))}))}))}),c.params.id)})};return b}(react.Component),DEFAULT_STATE={active:!1,queue:[],forkedQueue:[]},DEFAULT_PARAMS={id:0,closable:!0,weak:!1,fork:!1};
function dispatch(e){var b=__spreadArray([],__read(containers),!1).at(-1);null==b?console.warn("ModalError: no containers were mounted."):b.setState(e)}
var ModalController=function(){function e(){}e.prototype.open=function(b){for(var a=this,c=[],d=1;d<arguments.length;d++)c[d-1]=arguments[d];c=__read(c,1)[0];var f=function(){},g=new Promise(function(h){return f=h});c=__assign(__assign({},DEFAULT_PARAMS),c);var k={component:b,params:c,close:function(){a.remove(k);f()}};this.add(k);return __assign(__assign({},k),{then:function(h,l){return g.then(h,l)}})};e.prototype.replace=function(b){for(var a=[],c=1;c<arguments.length;c++)a[c-1]=arguments[c];a=
__read(a,1)[0];dispatch(function(d){return __assign(__assign({},d),{queue:d.queue.slice(0,-1)})});return this.open(b,a)};e.prototype.add=function(b){b.params.fork?this.fork(b):dispatch(function(a){var c;if((null===(c=b.params)||void 0===c||!c.weak)&&0<a.queue.length){var d=a.queue[a.queue.length-1];c=serialize(b.params)===serialize(d.params);d=b.component===d.component;if(c&&d)return __assign(__assign({},a),{active:!0})}return!1===a.active&&0<a.queue.length?__assign(__assign({},a),{active:!0,queue:[b]}):
var ModalController=function(){function e(){}e.prototype.open=function(b){for(var a=this,c=[],d=1;d<arguments.length;d++)c[d-1]=arguments[d];c=__read(c,1)[0];var f=function(){},g=new Promise(function(k){return f=k});c=__assign(__assign({},DEFAULT_PARAMS),c);var h={component:b,params:c,close:function(){a.remove(h);f()},isClosed:!1};this.add(h);return __assign(__assign({},h),{then:function(k,l){return g.then(k,l)}})};e.prototype.replace=function(b){for(var a=[],c=1;c<arguments.length;c++)a[c-1]=arguments[c];
a=__read(a,1)[0];dispatch(function(d){return __assign(__assign({},d),{queue:d.queue.slice(0,-1)})});return this.open(b,a)};e.prototype.add=function(b){b.params.fork?this.fork(b):dispatch(function(a){var c;if((null===(c=b.params)||void 0===c||!c.weak)&&0<a.queue.length){var d=a.queue[a.queue.length-1];c=serialize(b.params)===serialize(d.params);d=b.component===d.component;if(c&&d)return __assign(__assign({},a),{active:!0})}return!1===a.active&&0<a.queue.length?__assign(__assign({},a),{active:!0,queue:[b]}):
__assign(__assign({},a),{active:!0,queue:__spreadArray(__spreadArray([],__read(a.queue),!1),[b],!1)})})};e.prototype.remove=function(b){b.params.fork?dispatch(function(a){var c=a.forkedQueue.filter(function(d){return d!==b});return __assign(__assign({},a),{forkedQueue:c})}):dispatch(function(a){var c=a.queue.filter(function(f){return f!==b}),d=0===c.length;return d&&!b.params.weak?__assign(__assign({},a),{active:!1}):__assign(__assign({},a),{queue:c,active:!d})})};e.prototype.fork=function(b){dispatch(function(a){return __assign(__assign({},

@@ -15,0 +15,0 @@ a),{forkedQueue:__spreadArray(__spreadArray([],__read(a.forkedQueue),!1),[b],!1)})})};e.prototype.closeByComponent=function(b){dispatch(function(a){var c=__spreadArray([],__read(a.queue.filter(function(f){return f.component===b})),!1),d=__spreadArray([],__read(a.forkedQueue.filter(function(f){return f.component===b})),!1);c.reverse().forEach(function(f){return f.close()});d.reverse().forEach(function(f){return f.close()});return a})};e.prototype.closeById=function(b){dispatch(function(a){var c=a.queue.filter(function(f){return f.params.id===

{
"name": "react-modal-global",
"version": "1.0.2-rc1",
"version": "1.0.2-rc2",
"description": "React Modal but Global",

@@ -31,3 +31,3 @@ "main": "dist/index.ts",

"type-fest": "^3.5.5",
"typescript": "4.7.4"
"typescript": "^4.9.5"
},

@@ -34,0 +34,0 @@ "scripts": {

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