@confi/conflux-react-ui-test-package
Version:
Modern and minimalist React UI library.
1,101 lines (909 loc) • 56 kB
JavaScript
(function(e, a) { for(var i in a) e[i] = a[i]; }(exports, /******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId]) {
/******/ return installedModules[moduleId].exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ i: moduleId,
/******/ l: false,
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/
/******/ // Flag the module as loaded
/******/ module.l = true;
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/******/
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/
/******/ // define getter function for harmony exports
/******/ __webpack_require__.d = function(exports, name, getter) {
/******/ if(!__webpack_require__.o(exports, name)) {
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
/******/ }
/******/ };
/******/
/******/ // define __esModule on exports
/******/ __webpack_require__.r = function(exports) {
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ }
/******/ Object.defineProperty(exports, '__esModule', { value: true });
/******/ };
/******/
/******/ // create a fake namespace object
/******/ // mode & 1: value is a module id, require it
/******/ // mode & 2: merge all properties of value into the ns
/******/ // mode & 4: return value when already ns object
/******/ // mode & 8|1: behave like require
/******/ __webpack_require__.t = function(value, mode) {
/******/ if(mode & 1) value = __webpack_require__(value);
/******/ if(mode & 8) return value;
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
/******/ var ns = Object.create(null);
/******/ __webpack_require__.r(ns);
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
/******/ return ns;
/******/ };
/******/
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ __webpack_require__.n = function(module) {
/******/ var getter = module && module.__esModule ?
/******/ function getDefault() { return module['default']; } :
/******/ function getModuleExports() { return module; };
/******/ __webpack_require__.d(getter, 'a', getter);
/******/ return getter;
/******/ };
/******/
/******/ // Object.prototype.hasOwnProperty.call
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
/******/
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "";
/******/
/******/
/******/ // Load entry module and return exports
/******/ return __webpack_require__(__webpack_require__.s = 225);
/******/ })
/************************************************************************/
/******/ ({
/***/ 10:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "defaultFont", function() { return defaultFont; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "defaultBreakpoints", function() { return defaultBreakpoints; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "defaultLayout", function() { return defaultLayout; });
var defaultFont = {
sans: '-apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif',
mono: 'Menlo, Monaco, Lucida Console, Liberation Mono, DejaVu Sans Mono, Bitstream Vera Sans Mono, Courier New, monospace'
};
var defaultBreakpoints = {
xs: {
min: '0',
max: '650px'
},
sm: {
min: '650px',
max: '900px'
},
md: {
min: '900px',
max: '1280px'
},
lg: {
min: '1280px',
max: '1920px'
},
xl: {
min: '1920px',
max: '10000px'
}
};
var defaultLayout = {
gap: '16pt',
gapNegative: '-16pt',
gapHalf: '8pt',
gapHalfNegative: '-8pt',
gapQuarter: '4pt',
gapQuarterNegative: '-4pt',
pageMargin: '16pt',
pageWidth: '750pt',
pageWidthWithMargin: '782pt',
breakpointMobile: defaultBreakpoints.xs.max,
breakpointTablet: defaultBreakpoints.sm.max,
radius: '5px'
};
/***/ }),
/***/ 166:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var styled_jsx_style__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
/* harmony import */ var styled_jsx_style__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(styled_jsx_style__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(3);
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _utils_with_defaults__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(19);
/* harmony import */ var _tooltip_content__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(167);
/* harmony import */ var _utils_use_click_away__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(68);
function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
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."); }
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
function _iterableToArrayLimit(arr, i) { if (typeof Symbol === "undefined" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
var defaultProps = {
initialVisible: false,
hideArrow: false,
type: 'default',
trigger: 'hover',
placement: 'top',
enterDelay: 100,
leaveDelay: 0,
offset: 12,
className: '',
portalClassName: '',
onVisibleChange: function () {}
};
var Tooltip = function Tooltip(_ref) {
var children = _ref.children,
initialVisible = _ref.initialVisible,
text = _ref.text,
offset = _ref.offset,
placement = _ref.placement,
portalClassName = _ref.portalClassName,
enterDelay = _ref.enterDelay,
leaveDelay = _ref.leaveDelay,
trigger = _ref.trigger,
type = _ref.type,
className = _ref.className,
onVisibleChange = _ref.onVisibleChange,
hideArrow = _ref.hideArrow,
customVisible = _ref.visible,
props = _objectWithoutProperties(_ref, ["children", "initialVisible", "text", "offset", "placement", "portalClassName", "enterDelay", "leaveDelay", "trigger", "type", "className", "onVisibleChange", "hideArrow", "visible"]);
var timer = Object(react__WEBPACK_IMPORTED_MODULE_1__["useRef"])();
var ref = Object(react__WEBPACK_IMPORTED_MODULE_1__["useRef"])(null);
var _useState = Object(react__WEBPACK_IMPORTED_MODULE_1__["useState"])(initialVisible),
_useState2 = _slicedToArray(_useState, 2),
visible = _useState2[0],
setVisible = _useState2[1];
var contentProps = {
type: type,
visible: visible,
offset: offset,
placement: placement,
hideArrow: hideArrow,
parent: ref,
className: portalClassName
};
var changeVisible = function changeVisible(nextState) {
var clear = function clear() {
clearTimeout(timer.current);
timer.current = undefined;
};
var handler = function handler(nextState) {
setVisible(nextState);
onVisibleChange(nextState);
clear();
};
clear();
if (nextState) {
timer.current = window.setTimeout(function () {
return handler(true);
}, enterDelay);
return;
}
timer.current = window.setTimeout(function () {
return handler(false);
}, leaveDelay);
};
var mouseEventHandler = function mouseEventHandler(next) {
return trigger === 'hover' && changeVisible(next);
};
var clickEventHandler = function clickEventHandler() {
return trigger === 'click' && changeVisible(!visible);
};
Object(_utils_use_click_away__WEBPACK_IMPORTED_MODULE_4__["default"])(ref, function () {
return trigger === 'click' && changeVisible(false);
});
Object(react__WEBPACK_IMPORTED_MODULE_1__["useEffect"])(function () {
if (customVisible === undefined) return;
changeVisible(customVisible);
}, [customVisible]);
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement("div", _extends({
ref: ref,
onClick: clickEventHandler,
onMouseEnter: function onMouseEnter() {
return mouseEventHandler(true);
},
onMouseLeave: function onMouseLeave() {
return mouseEventHandler(false);
}
}, props, {
className: "jsx-418573366" + " " + (props && props.className != null && props.className || "tooltip ".concat(className))
}), children, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(_tooltip_content__WEBPACK_IMPORTED_MODULE_3__["default"], contentProps, text), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(styled_jsx_style__WEBPACK_IMPORTED_MODULE_0___default.a, {
id: "418573366"
}, ".tooltip.jsx-418573366{width:-webkit-max-content;width:-moz-max-content;width:max-content;display:inline-block;}"));
};
/* harmony default export */ __webpack_exports__["default"] = (Object(_utils_with_defaults__WEBPACK_IMPORTED_MODULE_2__["default"])(Tooltip, defaultProps));
/***/ }),
/***/ 167:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var styled_jsx_style__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
/* harmony import */ var styled_jsx_style__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(styled_jsx_style__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(3);
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(27);
/* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react_dom__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var _styles_use_theme__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(6);
/* harmony import */ var _utils_use_portal__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(28);
/* harmony import */ var _utils_use_resize__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(31);
/* harmony import */ var _shared_css_transition__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(32);
/* harmony import */ var _utils_use_click_anywhere__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(33);
/* harmony import */ var _styles__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(168);
/* harmony import */ var _placement__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(169);
/* harmony import */ var _tooltip_icon__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(170);
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
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."); }
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
function _iterableToArrayLimit(arr, i) { if (typeof Symbol === "undefined" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
var defaultRect = {
top: -1000,
left: -1000,
right: -1000,
bottom: -1000,
width: 0,
height: 0
};
var getRect = function getRect(ref) {
if (!ref || !ref.current) return defaultRect;
var rect = ref.current.getBoundingClientRect();
return _objectSpread(_objectSpread({}, rect), {}, {
width: rect.width || rect.right - rect.left,
height: rect.height || rect.bottom - rect.top,
top: rect.top + document.documentElement.scrollTop,
bottom: rect.bottom + document.documentElement.scrollTop,
left: rect.left + document.documentElement.scrollLeft,
right: rect.right + document.documentElement.scrollLeft
});
};
var TooltipContent = function TooltipContent(_ref) {
var children = _ref.children,
parent = _ref.parent,
visible = _ref.visible,
offset = _ref.offset,
placement = _ref.placement,
type = _ref.type,
className = _ref.className,
hideArrow = _ref.hideArrow;
var theme = Object(_styles_use_theme__WEBPACK_IMPORTED_MODULE_3__["default"])();
var el = Object(_utils_use_portal__WEBPACK_IMPORTED_MODULE_4__["default"])('tooltip');
var selfRef = Object(react__WEBPACK_IMPORTED_MODULE_1__["useRef"])(null);
var _useState = Object(react__WEBPACK_IMPORTED_MODULE_1__["useState"])(_placement__WEBPACK_IMPORTED_MODULE_9__["defaultTooltipPosition"]),
_useState2 = _slicedToArray(_useState, 2),
rect = _useState2[0],
setRect = _useState2[1];
var colors = Object(react__WEBPACK_IMPORTED_MODULE_1__["useMemo"])(function () {
return Object(_styles__WEBPACK_IMPORTED_MODULE_8__["getColors"])(type, theme.palette);
}, [type, theme.palette]);
var hasShadow = type === 'default';
if (!parent) return null;
var updateRect = function updateRect() {
var position = Object(_placement__WEBPACK_IMPORTED_MODULE_9__["getPosition"])(placement, getRect(parent), offset);
setRect(position);
};
Object(_utils_use_resize__WEBPACK_IMPORTED_MODULE_5__["default"])(updateRect);
Object(_utils_use_click_anywhere__WEBPACK_IMPORTED_MODULE_7__["default"])(function () {
return updateRect();
});
Object(react__WEBPACK_IMPORTED_MODULE_1__["useEffect"])(function () {
updateRect();
}, [visible]);
var preventHandler = function preventHandler(event) {
event.stopPropagation();
event.nativeEvent.stopImmediatePropagation();
};
if (!el) return null;
return Object(react_dom__WEBPACK_IMPORTED_MODULE_2__["createPortal"])( /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(_shared_css_transition__WEBPACK_IMPORTED_MODULE_6__["default"], {
visible: visible
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement("div", {
ref: selfRef,
onClick: preventHandler,
className: styled_jsx_style__WEBPACK_IMPORTED_MODULE_0___default.a.dynamic([["1075003048", [rect.top, rect.left, rect.transform, colors.bgColor, colors.color, theme.layout.radius, hasShadow ? theme.expressiveness.shadowMedium : 'none', theme.layout.gapHalf, theme.layout.gap]]]) + " " + "tooltip-content ".concat(className)
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement("div", {
className: styled_jsx_style__WEBPACK_IMPORTED_MODULE_0___default.a.dynamic([["1075003048", [rect.top, rect.left, rect.transform, colors.bgColor, colors.color, theme.layout.radius, hasShadow ? theme.expressiveness.shadowMedium : 'none', theme.layout.gapHalf, theme.layout.gap]]]) + " " + "inner"
}, !hideArrow && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(_tooltip_icon__WEBPACK_IMPORTED_MODULE_10__["default"], {
placement: placement,
bgColor: colors.bgColor,
shadow: hasShadow
}), children), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(styled_jsx_style__WEBPACK_IMPORTED_MODULE_0___default.a, {
id: "1075003048",
dynamic: [rect.top, rect.left, rect.transform, colors.bgColor, colors.color, theme.layout.radius, hasShadow ? theme.expressiveness.shadowMedium : 'none', theme.layout.gapHalf, theme.layout.gap]
}, ".tooltip-content.__jsx-style-dynamic-selector{position:absolute;width:auto;top:".concat(rect.top, ";left:").concat(rect.left, ";-webkit-transform:").concat(rect.transform, ";-ms-transform:").concat(rect.transform, ";transform:").concat(rect.transform, ";background-color:").concat(colors.bgColor, ";color:").concat(colors.color, ";border-radius:").concat(theme.layout.radius, ";padding:0;z-index:1000;box-shadow:").concat(hasShadow ? theme.expressiveness.shadowMedium : 'none', ";}.inner.__jsx-style-dynamic-selector{padding:").concat(theme.layout.gapHalf, " ").concat(theme.layout.gap, ";position:relative;}")))), el);
};
/* harmony default export */ __webpack_exports__["default"] = (TooltipContent);
/***/ }),
/***/ 168:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getColors", function() { return getColors; });
var getColors = function getColors(type, palette) {
var colors = {
"default": palette.background,
success: palette.success,
warning: palette.warning,
error: palette.error,
secondary: palette.secondary,
dark: palette.foreground,
lite: palette.background
};
var color = type === 'lite' || type === 'default' ? palette.foreground : palette.background;
return {
color: color,
bgColor: colors[type]
};
};
/***/ }),
/***/ 169:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "defaultTooltipPosition", function() { return defaultTooltipPosition; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getPosition", function() { return getPosition; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getIconPosition", function() { return getIconPosition; });
var defaultTooltipPosition = {
top: '-1000px',
left: '-1000px',
transform: 'none'
};
var getPosition = function getPosition(placement, rect, offset) {
var positions = {
top: {
top: "".concat(rect.top - offset, "px"),
left: "".concat(rect.left + rect.width / 2, "px"),
transform: 'translate(-50%, -100%)'
},
topStart: {
top: "".concat(rect.top - offset, "px"),
left: "".concat(rect.left, "px"),
transform: 'translate(0, -100%)'
},
topEnd: {
top: "".concat(rect.top - offset, "px"),
left: "".concat(rect.left + rect.width, "px"),
transform: 'translate(-100%, -100%)'
},
bottom: {
top: "".concat(rect.bottom + offset, "px"),
left: "".concat(rect.left + rect.width / 2, "px"),
transform: 'translate(-50%, 0)'
},
bottomStart: {
top: "".concat(rect.bottom + offset, "px"),
left: "".concat(rect.left, "px"),
transform: 'translate(0, 0)'
},
bottomEnd: {
top: "".concat(rect.bottom + offset, "px"),
left: "".concat(rect.left + rect.width, "px"),
transform: 'translate(-100%, 0)'
},
left: {
top: "".concat(rect.top + rect.height / 2, "px"),
left: "".concat(rect.left - offset, "px"),
transform: 'translate(-100%, -50%)'
},
leftStart: {
top: "".concat(rect.top, "px"),
left: "".concat(rect.left - offset, "px"),
transform: 'translate(-100%, 0)'
},
leftEnd: {
top: "".concat(rect.top + rect.height, "px"),
left: "".concat(rect.left - offset, "px"),
transform: 'translate(-100%, -100%)'
},
right: {
top: "".concat(rect.top + rect.height / 2, "px"),
left: "".concat(rect.right + offset, "px"),
transform: 'translate(0, -50%)'
},
rightStart: {
top: "".concat(rect.top, "px"),
left: "".concat(rect.right + offset, "px"),
transform: 'translate(0, 0)'
},
rightEnd: {
top: "".concat(rect.top + rect.height, "px"),
left: "".concat(rect.right + offset, "px"),
transform: 'translate(0, -100%)'
}
};
return positions[placement] || positions.top;
};
var getIconPosition = function getIconPosition(placement, offset) {
var positions = {
top: {
top: 'auto',
right: 'auto',
left: '50%',
bottom: "".concat(offset, "px"),
transform: 'translate(-50%, 100%) rotate(-90deg)'
},
topStart: {
top: 'auto',
right: 'auto',
left: '5%',
bottom: "".concat(offset, "px"),
transform: 'translate(0, 100%) rotate(-90deg)'
},
topEnd: {
top: 'auto',
right: '5%',
left: 'auto',
bottom: "".concat(offset, "px"),
transform: 'translate(0, 100%) rotate(-90deg)'
},
bottom: {
top: "".concat(offset, "px"),
right: 'auto',
left: '50%',
bottom: 'auto',
transform: 'translate(-50%, -100%) rotate(90deg)'
},
bottomStart: {
top: "".concat(offset, "px"),
right: 'auto',
left: '5%',
bottom: 'auto',
transform: 'translate(0, -100%) rotate(90deg)'
},
bottomEnd: {
top: "".concat(offset, "px"),
right: '5%',
left: 'auto',
bottom: 'auto',
transform: 'translate(0, -100%) rotate(90deg)'
},
left: {
top: '50%',
right: '0',
left: 'auto',
bottom: 'auto',
transform: 'translate(100%, -50%) rotate(180deg)'
},
leftStart: {
top: '10%',
right: '0',
left: 'auto',
bottom: 'auto',
transform: 'translate(100%, 0) rotate(180deg)'
},
leftEnd: {
top: 'auto',
right: '0',
left: 'auto',
bottom: '10%',
transform: 'translate(100%, 0) rotate(180deg)'
},
right: {
top: '50%',
right: 'auto',
left: '0',
bottom: 'auto',
transform: 'translate(-100%, -50%) rotate(0deg)'
},
rightStart: {
top: '10%',
right: 'auto',
left: '0',
bottom: 'auto',
transform: 'translate(-100%, 0) rotate(0deg)'
},
rightEnd: {
top: 'auto',
right: 'auto',
left: '0',
bottom: '10%',
transform: 'translate(-100%, 0) rotate(0deg)'
}
};
return positions[placement] || positions.top;
};
/***/ }),
/***/ 170:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var styled_jsx_style__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2);
/* harmony import */ var styled_jsx_style__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(styled_jsx_style__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(3);
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _placement__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(169);
/* harmony import */ var _styles_use_theme__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(6);
var TooltipIcon = function TooltipIcon(_ref) {
var placement = _ref.placement,
bgColor = _ref.bgColor,
shadow = _ref.shadow;
var theme = Object(_styles_use_theme__WEBPACK_IMPORTED_MODULE_3__["default"])();
var _useMemo = Object(react__WEBPACK_IMPORTED_MODULE_1__["useMemo"])(function () {
return Object(_placement__WEBPACK_IMPORTED_MODULE_2__["getIconPosition"])(placement, 3);
}, [placement]),
transform = _useMemo.transform,
top = _useMemo.top,
left = _useMemo.left,
right = _useMemo.right,
bottom = _useMemo.bottom;
var bgColorWithDark = Object(react__WEBPACK_IMPORTED_MODULE_1__["useMemo"])(function () {
if (!shadow || theme.type !== 'dark') return bgColor;
return theme.palette.accents_2;
}, [theme.type, bgColor, shadow]);
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement("span", {
className: styled_jsx_style__WEBPACK_IMPORTED_MODULE_0___default.a.dynamic([["2440507693", [bgColorWithDark, left, top, right, bottom, transform]]])
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default.a.createElement(styled_jsx_style__WEBPACK_IMPORTED_MODULE_0___default.a, {
id: "2440507693",
dynamic: [bgColorWithDark, left, top, right, bottom, transform]
}, "span.__jsx-style-dynamic-selector{width:0;height:0;border-style:solid;border-width:6px 7px 6px 0;border-color:transparent ".concat(bgColorWithDark, " transparent transparent;position:absolute;left:").concat(left, ";top:").concat(top, ";right:").concat(right, ";bottom:").concat(bottom, ";-webkit-transform:").concat(transform, ";-ms-transform:").concat(transform, ";transform:").concat(transform, ";}")));
};
/* harmony default export */ __webpack_exports__["default"] = (react__WEBPACK_IMPORTED_MODULE_1___default.a.memo(TooltipIcon));
/***/ }),
/***/ 19:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
var withDefaults = function withDefaults(component, defaultProps) {
component.defaultProps = defaultProps;
return component;
};
/* harmony default export */ __webpack_exports__["default"] = (withDefaults);
/***/ }),
/***/ 2:
/***/ (function(module, exports) {
module.exports = require("styled-jsx/style");
/***/ }),
/***/ 225:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _tooltip__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(166);
/* harmony default export */ __webpack_exports__["default"] = (_tooltip__WEBPACK_IMPORTED_MODULE_0__["default"]);
/***/ }),
/***/ 27:
/***/ (function(module, exports) {
module.exports = require("react-dom");
/***/ }),
/***/ 28:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(3);
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _utils_use_ssr__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(29);
/* harmony import */ var _collections__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(30);
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
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."); }
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
function _iterableToArrayLimit(arr, i) { if (typeof Symbol === "undefined" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
var createElement = function createElement(id) {
var el = document.createElement('div');
el.setAttribute('id', id);
return el;
};
var usePortal = function usePortal() {
var selectId = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : Object(_collections__WEBPACK_IMPORTED_MODULE_2__["getId"])();
var id = "zeit-ui-".concat(selectId);
var _useSSR = Object(_utils_use_ssr__WEBPACK_IMPORTED_MODULE_1__["default"])(),
isBrowser = _useSSR.isBrowser;
var _useState = Object(react__WEBPACK_IMPORTED_MODULE_0__["useState"])(isBrowser ? createElement(id) : null),
_useState2 = _slicedToArray(_useState, 2),
elSnapshot = _useState2[0],
setElSnapshot = _useState2[1];
Object(react__WEBPACK_IMPORTED_MODULE_0__["useEffect"])(function () {
var hasElement = document.querySelector("#".concat(id));
var el = hasElement || createElement(id);
if (!hasElement) {
document.body.appendChild(el);
}
setElSnapshot(el);
}, []);
return elSnapshot;
};
/* harmony default export */ __webpack_exports__["default"] = (usePortal);
/***/ }),
/***/ 29:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(3);
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
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."); }
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
function _iterableToArrayLimit(arr, i) { if (typeof Symbol === "undefined" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
var isBrowser = function isBrowser() {
return Boolean(typeof window !== 'undefined' && window.document && window.document.createElement);
};
var useSSR = function useSSR() {
var _useState = Object(react__WEBPACK_IMPORTED_MODULE_0__["useState"])(false),
_useState2 = _slicedToArray(_useState, 2),
browser = _useState2[0],
setBrowser = _useState2[1];
Object(react__WEBPACK_IMPORTED_MODULE_0__["useEffect"])(function () {
setBrowser(isBrowser());
}, []);
return {
isBrowser: browser,
isServer: !browser
};
};
/* harmony default export */ __webpack_exports__["default"] = (useSSR);
/***/ }),
/***/ 3:
/***/ (function(module, exports) {
module.exports = require("react");
/***/ }),
/***/ 30:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getId", function() { return getId; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "hasChild", function() { return hasChild; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "pickChild", function() { return pickChild; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "pickChildByProps", function() { return pickChildByProps; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "pickChildrenFirst", function() { return pickChildrenFirst; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "setChildrenProps", function() { return setChildrenProps; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "setChildrenIndex", function() { return setChildrenIndex; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getReactNode", function() { return getReactNode; });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(3);
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
var getId = function getId() {
return Math.random().toString(32).slice(2, 10);
};
var hasChild = function hasChild(children, child) {
var types = react__WEBPACK_IMPORTED_MODULE_0___default.a.Children.map(children, function (item) {
if (!react__WEBPACK_IMPORTED_MODULE_0___default.a.isValidElement(item)) return null;
return item.type;
});
return (types || []).includes(child);
};
var pickChild = function pickChild(children, targetChild) {
var target = [];
var withoutTargetChildren = react__WEBPACK_IMPORTED_MODULE_0___default.a.Children.map(children, function (item) {
if (!react__WEBPACK_IMPORTED_MODULE_0___default.a.isValidElement(item)) return item;
if (item.type === targetChild) {
target.push(item);
return null;
}
return item;
});
var targetChildren = target.length >= 0 ? target : undefined;
return [withoutTargetChildren, targetChildren];
};
var pickChildByProps = function pickChildByProps(children, key, value) {
var target = [];
var isArray = Array.isArray(value);
var withoutPropChildren = react__WEBPACK_IMPORTED_MODULE_0___default.a.Children.map(children, function (item) {
if (!react__WEBPACK_IMPORTED_MODULE_0___default.a.isValidElement(item)) return null;
if (!item.props) return item;
if (isArray) {
if (value.includes(item.props[key])) {
target.push(item);
return null;
}
return item;
}
if (item.props[key] === value) {
target.push(item);
return null;
}
return item;
});
var targetChildren = target.length >= 0 ? target : undefined;
return [withoutPropChildren, targetChildren];
};
var pickChildrenFirst = function pickChildrenFirst(children) {
return react__WEBPACK_IMPORTED_MODULE_0___default.a.Children.toArray(children)[0];
};
var setChildrenProps = function setChildrenProps(children) {
var props = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
var targetComponents = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];
if (react__WEBPACK_IMPORTED_MODULE_0___default.a.Children.count(children) === 0) return [];
var allowAll = targetComponents.length === 0;
var clone = function clone(child) {
var props = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
return react__WEBPACK_IMPORTED_MODULE_0___default.a.cloneElement(child, props);
};
return react__WEBPACK_IMPORTED_MODULE_0___default.a.Children.map(children, function (item) {
if (!react__WEBPACK_IMPORTED_MODULE_0___default.a.isValidElement(item)) return item;
if (allowAll) return clone(item, props);
var isAllowed = targetComponents.find(function (child) {
return child === item.type;
});
if (isAllowed) return clone(item, props);
return item;
});
};
var setChildrenIndex = function setChildrenIndex(children) {
var targetComponents = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
if (react__WEBPACK_IMPORTED_MODULE_0___default.a.Children.count(children) === 0) return [];
var allowAll = targetComponents.length === 0;
var clone = function clone(child) {
var props = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
return react__WEBPACK_IMPORTED_MODULE_0___default.a.cloneElement(child, props);
};
var index = 0;
return react__WEBPACK_IMPORTED_MODULE_0___default.a.Children.map(children, function (item) {
if (!react__WEBPACK_IMPORTED_MODULE_0___default.a.isValidElement(item)) return item;
index = index + 1;
if (allowAll) return clone(item, {
index: index
});
var isAllowed = targetComponents.find(function (child) {
return child === item.type;
});
if (isAllowed) return clone(item, {
index: index
});
index = index - 1;
return item;
});
};
var getReactNode = function getReactNode(node) {
if (!node) return null;
if (typeof node !== 'function') return node;
return node();
};
/***/ }),
/***/ 31:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(3);
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
var useResize = function useResize(callback) {
var immediatelyInvoke = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
Object(react__WEBPACK_IMPORTED_MODULE_0__["useEffect"])(function () {
var fn = function fn() {
return callback();
};
if (immediatelyInvoke) {
fn();
}
window.addEventListener('resize', fn);
return function () {
return window.removeEventListener('resize', fn);
};
}, []);
};
/* harmony default export */ __webpack_exports__["default"] = (useResize);
/***/ }),
/***/ 32:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(3);
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _utils_with_defaults__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(19);
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
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."); }
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
function _iterableToArrayLimit(arr, i) { if (typeof Symbol === "undefined" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
var defaultProps = {
visible: false,
enterTime: 60,
leaveTime: 60,
clearTime: 60,
className: '',
name: 'transition'
};
var CSSTransition = function CSSTransition(_ref) {
var children = _ref.children,
className = _ref.className,
visible = _ref.visible,
enterTime = _ref.enterTime,
leaveTime = _ref.leaveTime,
clearTime = _ref.clearTime,
name = _ref.name,
props = _objectWithoutProperties(_ref, ["children", "className", "visible", "enterTime", "leaveTime", "clearTime", "name"]);
var _useState = Object(react__WEBPACK_IMPORTED_MODULE_0__["useState"])(''),
_useState2 = _slicedToArray(_useState, 2),
classes = _useState2[0],
setClasses = _useState2[1];
var _useState3 = Object(react__WEBPACK_IMPORTED_MODULE_0__["useState"])(visible),
_useState4 = _slicedToArray(_useState3, 2),
renderable = _useState4[0],
setRenderable = _useState4[1];
Object(react__WEBPACK_IMPORTED_MODULE_0__["useEffect"])(function () {
var statusClassName = visible ? 'enter' : 'leave';
var time = visible ? enterTime : leaveTime;
if (visible && !renderable) {
setRenderable(true);
}
setClasses("".concat(name, "-").concat(statusClassName)); // set class to active
var timer = setTimeout(function () {
setClasses("".concat(name, "-").concat(statusClassName, " ").concat(name, "-").concat(statusClassName, "-active"));
clearTimeout(timer);
}, time); // remove classess when animation over
var clearClassesTimer = setTimeout(function () {
if (!visible) {
setClasses('');
setRenderable(false);
}
clearTimeout(clearClassesTimer);
}, time + clearTime);
return function () {
clearTimeout(timer);
clearTimeout(clearClassesTimer);
};
}, [visible, renderable]);
if (!react__WEBPACK_IMPORTED_MODULE_0___default.a.isValidElement(children) || !renderable) return null;
return react__WEBPACK_IMPORTED_MODULE_0___default.a.cloneElement(children, _objectSpread(_objectSpread({}, props), {}, {
className: "".concat(children.props.className, " ").concat(className, " ").concat(classes)
}));
};
/* harmony default export */ __webpack_exports__["default"] = (Object(_utils_with_defaults__WEBPACK_IMPORTED_MODULE_1__["default"])(CSSTransition, defaultProps));
/***/ }),
/***/ 33:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(3);
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
var useClickAnyWhere = function useClickAnyWhere(handler) {
Object(react__WEBPACK_IMPORTED_MODULE_0__["useEffect"])(function () {
var callback = function callback(event) {
return handler(event);
};
document.addEventListener('click', callback);
return function () {
return document.removeEventListener('click', callback);
};
}, [handler]);
};
/* harmony default export */ __webpack_exports__["default"] = (useClickAnyWhere);
/***/ }),
/***/ 6:
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _use_theme__WEBPACK_IMPORTED_MODULE_0__ = __we