Socket
Socket
Sign inDemoInstall

reactjs-popup

Package Overview
Dependencies
8
Maintainers
1
Versions
40
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 1.4.2 to 1.5.0

6

package.json
{
"name": "reactjs-popup",
"version": "1.4.2",
"version": "1.5.0",
"description": "React Popup Component - Modals,Tooltips and Menus —  All in one",

@@ -11,5 +11,5 @@ "main": "reactjs-popup.cjs.js",

"peerDependencies": {
"prop-types": "^15.6.0",
"react": "^16.0.0",
"react-dom": "^16.0.0",
"prop-types": "^15.6.0"
"react-dom": "^16.0.0"
},

@@ -16,0 +16,0 @@ "jest": {

/*!
* reactjs-popup v1.4.2
* reactjs-popup v1.5.0
* (c) 2019-present Youssouf EL AZIZI <youssoufelazizi@gmail.com>

@@ -11,3 +11,2 @@ * Released under the MIT License.

var React = _interopDefault(require('react'));
var reactDom = require('react-dom');

@@ -263,30 +262,2 @@ function _classCallCheck(instance, Constructor) {

var Ref =
/*#__PURE__*/
function (_React$PureComponent) {
_inherits(Ref, _React$PureComponent);
function Ref() {
_classCallCheck(this, Ref);
return _possibleConstructorReturn(this, _getPrototypeOf(Ref).apply(this, arguments));
}
_createClass(Ref, [{
key: "componentDidMount",
value: function componentDidMount() {
var innerRef = this.props.innerRef;
if (innerRef) innerRef(reactDom.findDOMNode(this));
}
}, {
key: "render",
value: function render() {
var children = this.props.children;
return React.Children.only(children);
}
}]);
return Ref;
}(React.PureComponent);
var styles = {

@@ -357,11 +328,11 @@ popupContent: {

_defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "repositionOnResize", function () {
_defineProperty(_assertThisInitialized(_this), "repositionOnResize", function () {
_this.setPosition();
});
_defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "onEscape", function (e) {
_defineProperty(_assertThisInitialized(_this), "onEscape", function (e) {
if (e.key === 'Escape') _this.closePopup();
});
_defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "lockScroll", function () {
_defineProperty(_assertThisInitialized(_this), "lockScroll", function () {
var lockScroll = _this.props.lockScroll;

@@ -374,3 +345,3 @@ var modal = _this.state.modal;

_defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "resetScroll", function () {
_defineProperty(_assertThisInitialized(_this), "resetScroll", function () {
var lockScroll = _this.props.lockScroll;

@@ -383,3 +354,3 @@ var modal = _this.state.modal;

_defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "togglePopup", function (e) {
_defineProperty(_assertThisInitialized(_this), "togglePopup", function (e) {
// https://reactjs.org/docs/events.html#event-pooling

@@ -390,3 +361,3 @@ e.persist();

_defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "openPopup", function (e) {
_defineProperty(_assertThisInitialized(_this), "openPopup", function (e) {
var _this$props = _this.props,

@@ -408,3 +379,3 @@ disabled = _this$props.disabled,

_defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "closePopup", function (e) {
_defineProperty(_assertThisInitialized(_this), "closePopup", function (e) {
var onClose = _this.props.onClose;

@@ -422,3 +393,3 @@ var isOpen = _this.state.isOpen;

_defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "onMouseEnter", function () {
_defineProperty(_assertThisInitialized(_this), "onMouseEnter", function () {
clearTimeout(_this.timeOut);

@@ -431,3 +402,3 @@ var mouseEnterDelay = _this.props.mouseEnterDelay;

_defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "onMouseLeave", function () {
_defineProperty(_assertThisInitialized(_this), "onMouseLeave", function () {
clearTimeout(_this.timeOut);

@@ -440,3 +411,3 @@ var mouseLeaveDelay = _this.props.mouseLeaveDelay;

_defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "getTooltipBoundary", function () {
_defineProperty(_assertThisInitialized(_this), "getTooltipBoundary", function () {
var keepTooltipInside = _this.props.keepTooltipInside;

@@ -468,3 +439,3 @@ var boundingBox = {

_defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "setPosition", function () {
_defineProperty(_assertThisInitialized(_this), "setPosition", function () {
var _this$state = _this.state,

@@ -522,3 +493,3 @@ modal = _this$state.modal,

_defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "addWarperAction", function () {
_defineProperty(_assertThisInitialized(_this), "addWarperAction", function () {
var _this$props3 = _this.props,

@@ -547,5 +518,6 @@ contentStyle = _this$props3.contentStyle,

_defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "renderTrigger", function () {
_defineProperty(_assertThisInitialized(_this), "renderTrigger", function () {
var triggerProps = {
key: 'T'
key: 'T',
ref: _this.setTriggerRef
};

@@ -577,7 +549,7 @@ var _this$props4 = _this.props,

if (typeof trigger === 'function') return React.cloneElement(trigger(isOpen), triggerProps);
return React.cloneElement(trigger, triggerProps);
if (typeof trigger === 'function') return !!trigger && React.cloneElement(trigger(isOpen), triggerProps);
return !!trigger && React.cloneElement(trigger, triggerProps);
});
_defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "renderContent", function () {
_defineProperty(_assertThisInitialized(_this), "renderContent", function () {
var _this$props5 = _this.props,

@@ -647,13 +619,14 @@ arrow = _this$props5.arrow,

}, {
key: "componentWillReceiveProps",
value: function componentWillReceiveProps(nextProps) {
if (this.props.open === nextProps.open) return;
if (nextProps.open) this.openPopup();else this.closePopup();
}
}, {
key: "componentDidUpdate",
value: function componentDidUpdate(prevProps) {
var disabled = this.props.disabled;
var _this$props7 = this.props,
open = _this$props7.open,
disabled = _this$props7.disabled;
var isOpen = this.state.isOpen;
if (prevProps.disabled !== disabled && disabled && this.state.isOpen) {
if (prevProps.open !== open) {
if (open) this.openPopup();else this.closePopup(undefined, true);
}
if (prevProps.disabled !== disabled && disabled && isOpen) {
this.closePopup();

@@ -667,5 +640,5 @@ }

clearTimeout(this.timeOut);
var _this$props7 = this.props,
closeOnEscape = _this$props7.closeOnEscape,
repositionOnResize = _this$props7.repositionOnResize; // remove events listeners
var _this$props8 = this.props,
closeOnEscape = _this$props8.closeOnEscape,
repositionOnResize = _this$props8.repositionOnResize; // remove events listeners

@@ -687,8 +660,8 @@ if (closeOnEscape) {

value: function render() {
var _this$props8 = this.props,
overlayStyle = _this$props8.overlayStyle,
closeOnDocumentClick = _this$props8.closeOnDocumentClick,
className = _this$props8.className,
on = _this$props8.on,
trigger = _this$props8.trigger;
var _this$props9 = this.props,
overlayStyle = _this$props9.overlayStyle,
closeOnDocumentClick = _this$props9.closeOnDocumentClick,
className = _this$props9.className,
on = _this$props9.on,
trigger = _this$props9.trigger;
var _this$state3 = this.state,

@@ -699,6 +672,3 @@ modal = _this$state3.modal,

var ovStyle = modal ? styles.overlay.modal : styles.overlay.tooltip;
return [!!trigger && React.createElement(Ref, {
innerRef: this.setTriggerRef,
key: "R"
}, this.renderTrigger()), isOpen && React.createElement("div", {
return [this.renderTrigger(), isOpen && React.createElement("div", {
key: "H",

@@ -705,0 +675,0 @@ style: {

/*!
* reactjs-popup v1.4.2
* reactjs-popup v1.5.0
* (c) 2019-present Youssouf EL AZIZI <youssoufelazizi@gmail.com>

@@ -7,3 +7,2 @@ * Released under the MIT License.

import React from 'react';
import { findDOMNode } from 'react-dom';

@@ -259,30 +258,2 @@ function _classCallCheck(instance, Constructor) {

var Ref =
/*#__PURE__*/
function (_React$PureComponent) {
_inherits(Ref, _React$PureComponent);
function Ref() {
_classCallCheck(this, Ref);
return _possibleConstructorReturn(this, _getPrototypeOf(Ref).apply(this, arguments));
}
_createClass(Ref, [{
key: "componentDidMount",
value: function componentDidMount() {
var innerRef = this.props.innerRef;
if (innerRef) innerRef(findDOMNode(this));
}
}, {
key: "render",
value: function render() {
var children = this.props.children;
return React.Children.only(children);
}
}]);
return Ref;
}(React.PureComponent);
var styles = {

@@ -353,11 +324,11 @@ popupContent: {

_defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "repositionOnResize", function () {
_defineProperty(_assertThisInitialized(_this), "repositionOnResize", function () {
_this.setPosition();
});
_defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "onEscape", function (e) {
_defineProperty(_assertThisInitialized(_this), "onEscape", function (e) {
if (e.key === 'Escape') _this.closePopup();
});
_defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "lockScroll", function () {
_defineProperty(_assertThisInitialized(_this), "lockScroll", function () {
var lockScroll = _this.props.lockScroll;

@@ -370,3 +341,3 @@ var modal = _this.state.modal;

_defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "resetScroll", function () {
_defineProperty(_assertThisInitialized(_this), "resetScroll", function () {
var lockScroll = _this.props.lockScroll;

@@ -379,3 +350,3 @@ var modal = _this.state.modal;

_defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "togglePopup", function (e) {
_defineProperty(_assertThisInitialized(_this), "togglePopup", function (e) {
// https://reactjs.org/docs/events.html#event-pooling

@@ -386,3 +357,3 @@ e.persist();

_defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "openPopup", function (e) {
_defineProperty(_assertThisInitialized(_this), "openPopup", function (e) {
var _this$props = _this.props,

@@ -404,3 +375,3 @@ disabled = _this$props.disabled,

_defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "closePopup", function (e) {
_defineProperty(_assertThisInitialized(_this), "closePopup", function (e) {
var onClose = _this.props.onClose;

@@ -418,3 +389,3 @@ var isOpen = _this.state.isOpen;

_defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "onMouseEnter", function () {
_defineProperty(_assertThisInitialized(_this), "onMouseEnter", function () {
clearTimeout(_this.timeOut);

@@ -427,3 +398,3 @@ var mouseEnterDelay = _this.props.mouseEnterDelay;

_defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "onMouseLeave", function () {
_defineProperty(_assertThisInitialized(_this), "onMouseLeave", function () {
clearTimeout(_this.timeOut);

@@ -436,3 +407,3 @@ var mouseLeaveDelay = _this.props.mouseLeaveDelay;

_defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "getTooltipBoundary", function () {
_defineProperty(_assertThisInitialized(_this), "getTooltipBoundary", function () {
var keepTooltipInside = _this.props.keepTooltipInside;

@@ -464,3 +435,3 @@ var boundingBox = {

_defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "setPosition", function () {
_defineProperty(_assertThisInitialized(_this), "setPosition", function () {
var _this$state = _this.state,

@@ -518,3 +489,3 @@ modal = _this$state.modal,

_defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "addWarperAction", function () {
_defineProperty(_assertThisInitialized(_this), "addWarperAction", function () {
var _this$props3 = _this.props,

@@ -543,5 +514,6 @@ contentStyle = _this$props3.contentStyle,

_defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "renderTrigger", function () {
_defineProperty(_assertThisInitialized(_this), "renderTrigger", function () {
var triggerProps = {
key: 'T'
key: 'T',
ref: _this.setTriggerRef
};

@@ -573,7 +545,7 @@ var _this$props4 = _this.props,

if (typeof trigger === 'function') return React.cloneElement(trigger(isOpen), triggerProps);
return React.cloneElement(trigger, triggerProps);
if (typeof trigger === 'function') return !!trigger && React.cloneElement(trigger(isOpen), triggerProps);
return !!trigger && React.cloneElement(trigger, triggerProps);
});
_defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "renderContent", function () {
_defineProperty(_assertThisInitialized(_this), "renderContent", function () {
var _this$props5 = _this.props,

@@ -643,13 +615,14 @@ arrow = _this$props5.arrow,

}, {
key: "componentWillReceiveProps",
value: function componentWillReceiveProps(nextProps) {
if (this.props.open === nextProps.open) return;
if (nextProps.open) this.openPopup();else this.closePopup();
}
}, {
key: "componentDidUpdate",
value: function componentDidUpdate(prevProps) {
var disabled = this.props.disabled;
var _this$props7 = this.props,
open = _this$props7.open,
disabled = _this$props7.disabled;
var isOpen = this.state.isOpen;
if (prevProps.disabled !== disabled && disabled && this.state.isOpen) {
if (prevProps.open !== open) {
if (open) this.openPopup();else this.closePopup(undefined, true);
}
if (prevProps.disabled !== disabled && disabled && isOpen) {
this.closePopup();

@@ -663,5 +636,5 @@ }

clearTimeout(this.timeOut);
var _this$props7 = this.props,
closeOnEscape = _this$props7.closeOnEscape,
repositionOnResize = _this$props7.repositionOnResize; // remove events listeners
var _this$props8 = this.props,
closeOnEscape = _this$props8.closeOnEscape,
repositionOnResize = _this$props8.repositionOnResize; // remove events listeners

@@ -683,8 +656,8 @@ if (closeOnEscape) {

value: function render() {
var _this$props8 = this.props,
overlayStyle = _this$props8.overlayStyle,
closeOnDocumentClick = _this$props8.closeOnDocumentClick,
className = _this$props8.className,
on = _this$props8.on,
trigger = _this$props8.trigger;
var _this$props9 = this.props,
overlayStyle = _this$props9.overlayStyle,
closeOnDocumentClick = _this$props9.closeOnDocumentClick,
className = _this$props9.className,
on = _this$props9.on,
trigger = _this$props9.trigger;
var _this$state3 = this.state,

@@ -695,6 +668,3 @@ modal = _this$state3.modal,

var ovStyle = modal ? styles.overlay.modal : styles.overlay.tooltip;
return [!!trigger && React.createElement(Ref, {
innerRef: this.setTriggerRef,
key: "R"
}, this.renderTrigger()), isOpen && React.createElement("div", {
return [this.renderTrigger(), isOpen && React.createElement("div", {
key: "H",

@@ -701,0 +671,0 @@ style: {

/*!
* reactjs-popup v1.4.2
* reactjs-popup v1.5.0
* (c) 2019-present Youssouf EL AZIZI <youssoufelazizi@gmail.com>

@@ -7,6 +7,6 @@ * Released under the MIT License.

(function (global, factory) {
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('react'), require('react-dom')) :
typeof define === 'function' && define.amd ? define(['react', 'react-dom'], factory) :
(global.reactjsPopup = factory(global.React,global.reactDom));
}(this, (function (React,reactDom) { 'use strict';
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('react')) :
typeof define === 'function' && define.amd ? define(['react'], factory) :
(global.reactjsPopup = factory(global.React));
}(this, (function (React) { 'use strict';

@@ -264,30 +264,2 @@ React = React && React.hasOwnProperty('default') ? React['default'] : React;

var Ref =
/*#__PURE__*/
function (_React$PureComponent) {
_inherits(Ref, _React$PureComponent);
function Ref() {
_classCallCheck(this, Ref);
return _possibleConstructorReturn(this, _getPrototypeOf(Ref).apply(this, arguments));
}
_createClass(Ref, [{
key: "componentDidMount",
value: function componentDidMount() {
var innerRef = this.props.innerRef;
if (innerRef) innerRef(reactDom.findDOMNode(this));
}
}, {
key: "render",
value: function render() {
var children = this.props.children;
return React.Children.only(children);
}
}]);
return Ref;
}(React.PureComponent);
var styles = {

@@ -358,11 +330,11 @@ popupContent: {

_defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "repositionOnResize", function () {
_defineProperty(_assertThisInitialized(_this), "repositionOnResize", function () {
_this.setPosition();
});
_defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "onEscape", function (e) {
_defineProperty(_assertThisInitialized(_this), "onEscape", function (e) {
if (e.key === 'Escape') _this.closePopup();
});
_defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "lockScroll", function () {
_defineProperty(_assertThisInitialized(_this), "lockScroll", function () {
var lockScroll = _this.props.lockScroll;

@@ -375,3 +347,3 @@ var modal = _this.state.modal;

_defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "resetScroll", function () {
_defineProperty(_assertThisInitialized(_this), "resetScroll", function () {
var lockScroll = _this.props.lockScroll;

@@ -384,3 +356,3 @@ var modal = _this.state.modal;

_defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "togglePopup", function (e) {
_defineProperty(_assertThisInitialized(_this), "togglePopup", function (e) {
// https://reactjs.org/docs/events.html#event-pooling

@@ -391,3 +363,3 @@ e.persist();

_defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "openPopup", function (e) {
_defineProperty(_assertThisInitialized(_this), "openPopup", function (e) {
var _this$props = _this.props,

@@ -409,3 +381,3 @@ disabled = _this$props.disabled,

_defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "closePopup", function (e) {
_defineProperty(_assertThisInitialized(_this), "closePopup", function (e) {
var onClose = _this.props.onClose;

@@ -423,3 +395,3 @@ var isOpen = _this.state.isOpen;

_defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "onMouseEnter", function () {
_defineProperty(_assertThisInitialized(_this), "onMouseEnter", function () {
clearTimeout(_this.timeOut);

@@ -432,3 +404,3 @@ var mouseEnterDelay = _this.props.mouseEnterDelay;

_defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "onMouseLeave", function () {
_defineProperty(_assertThisInitialized(_this), "onMouseLeave", function () {
clearTimeout(_this.timeOut);

@@ -441,3 +413,3 @@ var mouseLeaveDelay = _this.props.mouseLeaveDelay;

_defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "getTooltipBoundary", function () {
_defineProperty(_assertThisInitialized(_this), "getTooltipBoundary", function () {
var keepTooltipInside = _this.props.keepTooltipInside;

@@ -469,3 +441,3 @@ var boundingBox = {

_defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "setPosition", function () {
_defineProperty(_assertThisInitialized(_this), "setPosition", function () {
var _this$state = _this.state,

@@ -523,3 +495,3 @@ modal = _this$state.modal,

_defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "addWarperAction", function () {
_defineProperty(_assertThisInitialized(_this), "addWarperAction", function () {
var _this$props3 = _this.props,

@@ -548,5 +520,6 @@ contentStyle = _this$props3.contentStyle,

_defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "renderTrigger", function () {
_defineProperty(_assertThisInitialized(_this), "renderTrigger", function () {
var triggerProps = {
key: 'T'
key: 'T',
ref: _this.setTriggerRef
};

@@ -578,7 +551,7 @@ var _this$props4 = _this.props,

if (typeof trigger === 'function') return React.cloneElement(trigger(isOpen), triggerProps);
return React.cloneElement(trigger, triggerProps);
if (typeof trigger === 'function') return !!trigger && React.cloneElement(trigger(isOpen), triggerProps);
return !!trigger && React.cloneElement(trigger, triggerProps);
});
_defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "renderContent", function () {
_defineProperty(_assertThisInitialized(_this), "renderContent", function () {
var _this$props5 = _this.props,

@@ -648,13 +621,14 @@ arrow = _this$props5.arrow,

}, {
key: "componentWillReceiveProps",
value: function componentWillReceiveProps(nextProps) {
if (this.props.open === nextProps.open) return;
if (nextProps.open) this.openPopup();else this.closePopup();
}
}, {
key: "componentDidUpdate",
value: function componentDidUpdate(prevProps) {
var disabled = this.props.disabled;
var _this$props7 = this.props,
open = _this$props7.open,
disabled = _this$props7.disabled;
var isOpen = this.state.isOpen;
if (prevProps.disabled !== disabled && disabled && this.state.isOpen) {
if (prevProps.open !== open) {
if (open) this.openPopup();else this.closePopup(undefined, true);
}
if (prevProps.disabled !== disabled && disabled && isOpen) {
this.closePopup();

@@ -668,5 +642,5 @@ }

clearTimeout(this.timeOut);
var _this$props7 = this.props,
closeOnEscape = _this$props7.closeOnEscape,
repositionOnResize = _this$props7.repositionOnResize; // remove events listeners
var _this$props8 = this.props,
closeOnEscape = _this$props8.closeOnEscape,
repositionOnResize = _this$props8.repositionOnResize; // remove events listeners

@@ -688,8 +662,8 @@ if (closeOnEscape) {

value: function render() {
var _this$props8 = this.props,
overlayStyle = _this$props8.overlayStyle,
closeOnDocumentClick = _this$props8.closeOnDocumentClick,
className = _this$props8.className,
on = _this$props8.on,
trigger = _this$props8.trigger;
var _this$props9 = this.props,
overlayStyle = _this$props9.overlayStyle,
closeOnDocumentClick = _this$props9.closeOnDocumentClick,
className = _this$props9.className,
on = _this$props9.on,
trigger = _this$props9.trigger;
var _this$state3 = this.state,

@@ -700,6 +674,3 @@ modal = _this$state3.modal,

var ovStyle = modal ? styles.overlay.modal : styles.overlay.tooltip;
return [!!trigger && React.createElement(Ref, {
innerRef: this.setTriggerRef,
key: "R"
}, this.renderTrigger()), isOpen && React.createElement("div", {
return [this.renderTrigger(), isOpen && React.createElement("div", {
key: "H",

@@ -706,0 +677,0 @@ style: {

/*!
* reactjs-popup v1.4.2
* reactjs-popup v1.5.0
* (c) 2019-present Youssouf EL AZIZI <youssoufelazizi@gmail.com>
* Released under the MIT License.
*/
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("react"),require("react-dom")):"function"==typeof define&&define.amd?define(["react","react-dom"],t):e.reactjsPopup=t(e.React,e.reactDom)}(this,function(e,t){"use strict";function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function n(e,t){for(var o=0;o<t.length;o++){var n=t[o];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}function r(e,t,o){return t&&n(e.prototype,t),o&&n(e,o),e}function i(e,t,o){return t in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o,e}function s(){return(s=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var o=arguments[t];for(var n in o)Object.prototype.hasOwnProperty.call(o,n)&&(e[n]=o[n])}return e}).apply(this,arguments)}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&l(e,t)}function p(e){return(p=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function l(e,t){return(l=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function c(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function u(e,t){return!t||"object"!=typeof t&&"function"!=typeof t?c(e):t}function f(e){return function(e){if(Array.isArray(e)){for(var t=0,o=new Array(e.length);t<e.length;t++)o[t]=e[t];return o}}(e)||function(e){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e))return Array.from(e)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance")}()}function d(e,t,o,n,r){var i=r.offsetX,s=r.offsetY,a=n?8:0,p=o.split(" "),l=e.top+e.height/2,c=e.left+e.width/2,u=t.height,f=t.width,d=l-u/2,h=c-f/2,g="",y="0%",m="0%";switch(p[0]){case"top":d-=u/2+e.height/2+a,g="rotate(45deg)",y="100%",m="50%";break;case"bottom":d+=u/2+e.height/2+a,g="rotate(225deg)",m="50%";break;case"left":h-=f/2+e.width/2+a,g=" rotate(-45deg)",m="100%",y="50%";break;case"right":h+=f/2+e.width/2+a,g="rotate(135deg)",y="50%"}switch(p[1]){case"top":d=e.top,y="".concat(e.height/2,"px");break;case"bottom":d=e.top-u+e.height,y="".concat(u-e.height/2,"px");break;case"left":h=e.left,m="".concat(e.width/2,"px");break;case"right":h=e.left-f+e.width,m="".concat(f-e.width/2,"px")}return{top:d="top"===p[0]?d-s:d+s,left:h="left"===p[0]?h-i:h+i,transform:g,arrowLeft:m,arrowTop:y}}e=e&&e.hasOwnProperty("default")?e.default:e;var h=function(n){function i(){return o(this,i),u(this,p(i).apply(this,arguments))}return a(i,e.PureComponent),r(i,[{key:"componentDidMount",value:function(){var e=this.props.innerRef;e&&e(t.findDOMNode(this))}},{key:"render",value:function(){var t=this.props.children;return e.Children.only(t)}}]),i}(),g={popupContent:{tooltip:{position:"absolute",zIndex:"2",width:"200px",background:"rgb(255, 255, 255)",border:"1px solid rgb(187, 187, 187)",boxShadow:"rgba(0, 0, 0, 0.2) 0px 1px 3px",padding:"5px"},modal:{position:"relative",background:"rgb(255, 255, 255)",width:"50%",margin:"auto",border:"1px solid rgb(187, 187, 187)",padding:"5px"}},popupArrow:{height:"10px",width:"10px",position:"absolute",background:"rgb(255, 255, 255)",transform:"rotate(45deg)",margin:"-5px",zIndex:"-1",boxShadow:"rgba(0, 0, 0, 0.2) 1px 1px 1px"},overlay:{tooltip:{position:"fixed",top:"0",bottom:"0",left:"0",right:"0"},modal:{position:"fixed",top:"0",bottom:"0",left:"0",right:"0",background:"rgba(0, 0, 0,0.5)",display:"flex",zIndex:"999"}}},y=["top left","top center","top right","right top","right center","right bottom","bottom left","bottom center","bottom right","left top","left center","left bottom","center center"],m=function(t){function n(t){var r;o(this,n),i(c(c(r=u(this,p(n).call(this,t)))),"repositionOnResize",function(){r.setPosition()}),i(c(c(r)),"onEscape",function(e){"Escape"===e.key&&r.closePopup()}),i(c(c(r)),"lockScroll",function(){var e=r.props.lockScroll;r.state.modal&&e&&(document.getElementsByTagName("body")[0].style.overflow="hidden")}),i(c(c(r)),"resetScroll",function(){var e=r.props.lockScroll;r.state.modal&&e&&(document.getElementsByTagName("body")[0].style.overflow="auto")}),i(c(c(r)),"togglePopup",function(e){e.persist(),r.state.isOpen?r.closePopup(e):r.openPopup(e)}),i(c(c(r)),"openPopup",function(e){var t=r.props,o=t.disabled,n=t.onOpen;r.state.isOpen||o||(n(e),r.setState({isOpen:!0},function(){r.setPosition(),r.lockScroll()}))}),i(c(c(r)),"closePopup",function(e){var t=r.props.onClose;r.state.isOpen&&(t(e),r.setState({isOpen:!1},function(){r.resetScroll()}))}),i(c(c(r)),"onMouseEnter",function(){clearTimeout(r.timeOut);var e=r.props.mouseEnterDelay;r.timeOut=setTimeout(function(){return r.openPopup()},e)}),i(c(c(r)),"onMouseLeave",function(){clearTimeout(r.timeOut);var e=r.props.mouseLeaveDelay;r.timeOut=setTimeout(function(){return r.closePopup()},e)}),i(c(c(r)),"getTooltipBoundary",function(){var e=r.props.keepTooltipInside,t={top:0,left:0,width:window.innerWidth,height:window.innerHeight};"string"==typeof e&&(t=document.querySelector(e).getBoundingClientRect());return t}),i(c(c(r)),"setPosition",function(){var e=r.state,t=e.modal,o=e.isOpen;if(!t&&o){var n=r.props,i=n.arrow,s=n.position,a=n.offsetX,p=n.offsetY,l=n.keepTooltipInside,c=n.arrowStyle,u=n.className,h=r.HelperEl.getBoundingClientRect(),g=r.TriggerEl.getBoundingClientRect(),m=r.ContentEl.getBoundingClientRect(),w=r.getTooltipBoundary(),b=Array.isArray(s)?s:[s];(l||Array.isArray(s))&&(b=[].concat(f(b),y));var v=function(e,t,o,n,r,i){for(var s,a=r.offsetX,p=r.offsetY,l=0;l<o.length;){var c={top:(s=d(e,t,o[l],n,{offsetX:a,offsetY:p})).top,left:s.left,width:t.width,height:t.height};if(!(c.top<=i.top||c.left<=i.left||c.top+c.height>=i.top+i.height||c.left+c.width>=i.left+i.width))break;l++}return s}(g,m,b,i,{offsetX:a,offsetY:p},w);r.ContentEl.style.top="".concat(v.top-h.top,"px"),r.ContentEl.style.left="".concat(v.left-h.left,"px"),i&&(r.ArrowEl.style.transform=v.transform,r.ArrowEl.style["-ms-transform"]=v.transform,r.ArrowEl.style["-webkit-transform"]=v.transform,r.ArrowEl.style.top=c.top||v.arrowTop,r.ArrowEl.style.left=c.left||v.arrowLeft,r.ArrowEl.classList.add("popup-arrow"),""!==u&&r.ArrowEl.classList.add("".concat(u,"-arrow"))),"static"!==window.getComputedStyle(r.TriggerEl,null).getPropertyValue("position")&&""!==window.getComputedStyle(r.TriggerEl,null).getPropertyValue("position")||(r.TriggerEl.style.position="relative")}}),i(c(c(r)),"addWarperAction",function(){var e=r.props,t=e.contentStyle,o=e.className,n=e.on,i=r.state.modal,s=i?g.popupContent.modal:g.popupContent.tooltip,a={className:"popup-content ".concat(""!==o?"".concat(o,"-content"):""),style:Object.assign({},s,t),ref:r.setContentRef,onClick:function(e){e.stopPropagation()}};return!i&&n.indexOf("hover")>=0&&(a.onMouseEnter=r.onMouseEnter,a.onMouseLeave=r.onMouseLeave),a}),i(c(c(r)),"renderTrigger",function(){for(var t={key:"T"},o=r.props,n=o.on,i=o.trigger,s=r.state.isOpen,a=Array.isArray(n)?n:[n],p=0,l=a.length;p<l;p++)switch(a[p]){case"click":t.onClick=r.togglePopup;break;case"hover":t.onMouseEnter=r.onMouseEnter,t.onMouseLeave=r.onMouseLeave;break;case"focus":t.onFocus=r.onMouseEnter}return"function"==typeof i?e.cloneElement(i(s),t):e.cloneElement(i,t)}),i(c(c(r)),"renderContent",function(){var t=r.props,o=t.arrow,n=t.arrowStyle,i=t.children,a=r.state,p=a.modal,l=a.isOpen;return e.createElement("div",s({},r.addWarperAction(),{key:"C"}),o&&!p&&e.createElement("div",{ref:r.setArrowRef,style:Object.assign({},g.popupArrow,n)}),"function"==typeof i?i(r.closePopup,l):i)}),r.setTriggerRef=function(e){return r.TriggerEl=e},r.setContentRef=function(e){return r.ContentEl=e},r.setArrowRef=function(e){return r.ArrowEl=e},r.setHelperRef=function(e){return r.HelperEl=e},r.timeOut=0;var a=t.open,l=t.modal,h=t.defaultOpen,m=t.trigger;return r.state={isOpen:a||h,modal:!!l||!m},r}return a(n,e.PureComponent),r(n,[{key:"componentDidMount",value:function(){var e=this.props,t=e.closeOnEscape,o=e.defaultOpen,n=e.repositionOnResize;o&&this.setPosition(),t&&window.addEventListener("keyup",this.onEscape),n&&window.addEventListener("resize",this.repositionOnResize)}},{key:"componentWillReceiveProps",value:function(e){this.props.open!==e.open&&(e.open?this.openPopup():this.closePopup())}},{key:"componentDidUpdate",value:function(e){var t=this.props.disabled;e.disabled!==t&&t&&this.state.isOpen&&this.closePopup()}},{key:"componentWillUnmount",value:function(){clearTimeout(this.timeOut);var e=this.props,t=e.closeOnEscape,o=e.repositionOnResize;t&&window.removeEventListener("keyup",this.onEscape),o&&window.removeEventListener("resize",this.repositionOnResize),this.resetScroll()}},{key:"render",value:function(){var t=this.props,o=t.overlayStyle,n=t.closeOnDocumentClick,r=t.className,i=t.on,s=t.trigger,a=this.state,p=a.modal,l=a.isOpen,c=l&&!(i.indexOf("hover")>=0),u=p?g.overlay.modal:g.overlay.tooltip;return[!!s&&e.createElement(h,{innerRef:this.setTriggerRef,key:"R"},this.renderTrigger()),l&&e.createElement("div",{key:"H",style:{position:"absolute",top:"0px",left:"0px"},ref:this.setHelperRef}),c&&e.createElement("div",{key:"O",className:"popup-overlay ".concat(""!==r?"".concat(r,"-overlay"):""),style:Object.assign({},u,o),onClick:n?this.closePopup:void 0},p&&this.renderContent()),l&&!p&&this.renderContent()]}}]),n}();return i(m,"defaultProps",{trigger:null,onOpen:function(){},onClose:function(){},defaultOpen:!1,open:!1,disabled:!1,closeOnDocumentClick:!0,repositionOnResize:!0,closeOnEscape:!0,on:["click"],contentStyle:{},arrowStyle:{},overlayStyle:{},className:"",position:"bottom center",modal:!1,lockScroll:!1,arrow:!0,offsetX:0,offsetY:0,mouseEnterDelay:100,mouseLeaveDelay:100,keepTooltipInside:!1}),m});
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("react")):"function"==typeof define&&define.amd?define(["react"],t):e.reactjsPopup=t(e.React)}(this,function(e){"use strict";function t(e,t){for(var o=0;o<t.length;o++){var n=t[o];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}function o(e,t,o){return t in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o,e}function n(){return(n=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var o=arguments[t];for(var n in o)Object.prototype.hasOwnProperty.call(o,n)&&(e[n]=o[n])}return e}).apply(this,arguments)}function r(e){return(r=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function i(e,t){return(i=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function s(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function a(e){return function(e){if(Array.isArray(e)){for(var t=0,o=new Array(e.length);t<e.length;t++)o[t]=e[t];return o}}(e)||function(e){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e))return Array.from(e)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance")}()}function p(e,t,o,n,r){var i=r.offsetX,s=r.offsetY,a=n?8:0,p=o.split(" "),l=e.top+e.height/2,c=e.left+e.width/2,u=t.height,f=t.width,d=l-u/2,g=c-f/2,h="",y="0%",m="0%";switch(p[0]){case"top":d-=u/2+e.height/2+a,h="rotate(45deg)",y="100%",m="50%";break;case"bottom":d+=u/2+e.height/2+a,h="rotate(225deg)",m="50%";break;case"left":g-=f/2+e.width/2+a,h=" rotate(-45deg)",m="100%",y="50%";break;case"right":g+=f/2+e.width/2+a,h="rotate(135deg)",y="50%"}switch(p[1]){case"top":d=e.top,y="".concat(e.height/2,"px");break;case"bottom":d=e.top-u+e.height,y="".concat(u-e.height/2,"px");break;case"left":g=e.left,m="".concat(e.width/2,"px");break;case"right":g=e.left-f+e.width,m="".concat(f-e.width/2,"px")}return{top:d="top"===p[0]?d-s:d+s,left:g="left"===p[0]?g-i:g+i,transform:h,arrowLeft:m,arrowTop:y}}e=e&&e.hasOwnProperty("default")?e.default:e;var l={popupContent:{tooltip:{position:"absolute",zIndex:"2",width:"200px",background:"rgb(255, 255, 255)",border:"1px solid rgb(187, 187, 187)",boxShadow:"rgba(0, 0, 0, 0.2) 0px 1px 3px",padding:"5px"},modal:{position:"relative",background:"rgb(255, 255, 255)",width:"50%",margin:"auto",border:"1px solid rgb(187, 187, 187)",padding:"5px"}},popupArrow:{height:"10px",width:"10px",position:"absolute",background:"rgb(255, 255, 255)",transform:"rotate(45deg)",margin:"-5px",zIndex:"-1",boxShadow:"rgba(0, 0, 0, 0.2) 1px 1px 1px"},overlay:{tooltip:{position:"fixed",top:"0",bottom:"0",left:"0",right:"0"},modal:{position:"fixed",top:"0",bottom:"0",left:"0",right:"0",background:"rgba(0, 0, 0,0.5)",display:"flex",zIndex:"999"}}},c=["top left","top center","top right","right top","right center","right bottom","bottom left","bottom center","bottom right","left top","left center","left bottom","center center"],u=function(u){function f(t){var i,u,d;!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,f),u=this,d=r(f).call(this,t),i=!d||"object"!=typeof d&&"function"!=typeof d?s(u):d,o(s(i),"repositionOnResize",function(){i.setPosition()}),o(s(i),"onEscape",function(e){"Escape"===e.key&&i.closePopup()}),o(s(i),"lockScroll",function(){var e=i.props.lockScroll;i.state.modal&&e&&(document.getElementsByTagName("body")[0].style.overflow="hidden")}),o(s(i),"resetScroll",function(){var e=i.props.lockScroll;i.state.modal&&e&&(document.getElementsByTagName("body")[0].style.overflow="auto")}),o(s(i),"togglePopup",function(e){e.persist(),i.state.isOpen?i.closePopup(e):i.openPopup(e)}),o(s(i),"openPopup",function(e){var t=i.props,o=t.disabled,n=t.onOpen;i.state.isOpen||o||(n(e),i.setState({isOpen:!0},function(){i.setPosition(),i.lockScroll()}))}),o(s(i),"closePopup",function(e){var t=i.props.onClose;i.state.isOpen&&(t(e),i.setState({isOpen:!1},function(){i.resetScroll()}))}),o(s(i),"onMouseEnter",function(){clearTimeout(i.timeOut);var e=i.props.mouseEnterDelay;i.timeOut=setTimeout(function(){return i.openPopup()},e)}),o(s(i),"onMouseLeave",function(){clearTimeout(i.timeOut);var e=i.props.mouseLeaveDelay;i.timeOut=setTimeout(function(){return i.closePopup()},e)}),o(s(i),"getTooltipBoundary",function(){var e=i.props.keepTooltipInside,t={top:0,left:0,width:window.innerWidth,height:window.innerHeight};"string"==typeof e&&(t=document.querySelector(e).getBoundingClientRect());return t}),o(s(i),"setPosition",function(){var e=i.state,t=e.modal,o=e.isOpen;if(!t&&o){var n=i.props,r=n.arrow,s=n.position,l=n.offsetX,u=n.offsetY,f=n.keepTooltipInside,d=n.arrowStyle,g=n.className,h=i.HelperEl.getBoundingClientRect(),y=i.TriggerEl.getBoundingClientRect(),m=i.ContentEl.getBoundingClientRect(),w=i.getTooltipBoundary(),b=Array.isArray(s)?s:[s];(f||Array.isArray(s))&&(b=[].concat(a(b),c));var v=function(e,t,o,n,r,i){for(var s,a=r.offsetX,l=r.offsetY,c=0;c<o.length;){var u={top:(s=p(e,t,o[c],n,{offsetX:a,offsetY:l})).top,left:s.left,width:t.width,height:t.height};if(!(u.top<=i.top||u.left<=i.left||u.top+u.height>=i.top+i.height||u.left+u.width>=i.left+i.width))break;c++}return s}(y,m,b,r,{offsetX:l,offsetY:u},w);i.ContentEl.style.top="".concat(v.top-h.top,"px"),i.ContentEl.style.left="".concat(v.left-h.left,"px"),r&&(i.ArrowEl.style.transform=v.transform,i.ArrowEl.style["-ms-transform"]=v.transform,i.ArrowEl.style["-webkit-transform"]=v.transform,i.ArrowEl.style.top=d.top||v.arrowTop,i.ArrowEl.style.left=d.left||v.arrowLeft,i.ArrowEl.classList.add("popup-arrow"),""!==g&&i.ArrowEl.classList.add("".concat(g,"-arrow"))),"static"!==window.getComputedStyle(i.TriggerEl,null).getPropertyValue("position")&&""!==window.getComputedStyle(i.TriggerEl,null).getPropertyValue("position")||(i.TriggerEl.style.position="relative")}}),o(s(i),"addWarperAction",function(){var e=i.props,t=e.contentStyle,o=e.className,n=e.on,r=i.state.modal,s=r?l.popupContent.modal:l.popupContent.tooltip,a={className:"popup-content ".concat(""!==o?"".concat(o,"-content"):""),style:Object.assign({},s,t),ref:i.setContentRef,onClick:function(e){e.stopPropagation()}};return!r&&n.indexOf("hover")>=0&&(a.onMouseEnter=i.onMouseEnter,a.onMouseLeave=i.onMouseLeave),a}),o(s(i),"renderTrigger",function(){for(var t={key:"T",ref:i.setTriggerRef},o=i.props,n=o.on,r=o.trigger,s=i.state.isOpen,a=Array.isArray(n)?n:[n],p=0,l=a.length;p<l;p++)switch(a[p]){case"click":t.onClick=i.togglePopup;break;case"hover":t.onMouseEnter=i.onMouseEnter,t.onMouseLeave=i.onMouseLeave;break;case"focus":t.onFocus=i.onMouseEnter}return"function"==typeof r?!!r&&e.cloneElement(r(s),t):!!r&&e.cloneElement(r,t)}),o(s(i),"renderContent",function(){var t=i.props,o=t.arrow,r=t.arrowStyle,s=t.children,a=i.state,p=a.modal,c=a.isOpen;return e.createElement("div",n({},i.addWarperAction(),{key:"C"}),o&&!p&&e.createElement("div",{ref:i.setArrowRef,style:Object.assign({},l.popupArrow,r)}),"function"==typeof s?s(i.closePopup,c):s)}),i.setTriggerRef=function(e){return i.TriggerEl=e},i.setContentRef=function(e){return i.ContentEl=e},i.setArrowRef=function(e){return i.ArrowEl=e},i.setHelperRef=function(e){return i.HelperEl=e},i.timeOut=0;var g=t.open,h=t.modal,y=t.defaultOpen,m=t.trigger;return i.state={isOpen:g||y,modal:!!h||!m},i}var d,g,h;return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&i(e,t)}(f,e.PureComponent),d=f,(g=[{key:"componentDidMount",value:function(){var e=this.props,t=e.closeOnEscape,o=e.defaultOpen,n=e.repositionOnResize;o&&this.setPosition(),t&&window.addEventListener("keyup",this.onEscape),n&&window.addEventListener("resize",this.repositionOnResize)}},{key:"componentDidUpdate",value:function(e){var t=this.props,o=t.open,n=t.disabled,r=this.state.isOpen;e.open!==o&&(o?this.openPopup():this.closePopup(void 0,!0)),e.disabled!==n&&n&&r&&this.closePopup()}},{key:"componentWillUnmount",value:function(){clearTimeout(this.timeOut);var e=this.props,t=e.closeOnEscape,o=e.repositionOnResize;t&&window.removeEventListener("keyup",this.onEscape),o&&window.removeEventListener("resize",this.repositionOnResize),this.resetScroll()}},{key:"render",value:function(){var t=this.props,o=t.overlayStyle,n=t.closeOnDocumentClick,r=t.className,i=t.on,s=(t.trigger,this.state),a=s.modal,p=s.isOpen,c=p&&!(i.indexOf("hover")>=0),u=a?l.overlay.modal:l.overlay.tooltip;return[this.renderTrigger(),p&&e.createElement("div",{key:"H",style:{position:"absolute",top:"0px",left:"0px"},ref:this.setHelperRef}),c&&e.createElement("div",{key:"O",className:"popup-overlay ".concat(""!==r?"".concat(r,"-overlay"):""),style:Object.assign({},u,o),onClick:n?this.closePopup:void 0},a&&this.renderContent()),p&&!a&&this.renderContent()]}}])&&t(d.prototype,g),h&&t(d,h),f}();return o(u,"defaultProps",{trigger:null,onOpen:function(){},onClose:function(){},defaultOpen:!1,open:!1,disabled:!1,closeOnDocumentClick:!0,repositionOnResize:!0,closeOnEscape:!0,on:["click"],contentStyle:{},arrowStyle:{},overlayStyle:{},className:"",position:"bottom center",modal:!1,lockScroll:!1,arrow:!0,offsetX:0,offsetY:0,mouseEnterDelay:100,mouseLeaveDelay:100,keepTooltipInside:!1}),u});
//# sourceMappingURL=reactjs-popup.min.js.map

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

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

Packages

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc