1 | "use strict";
|
2 |
|
3 | exports.__esModule = true;
|
4 | exports.default = void 0;
|
5 |
|
6 | var _classnames = _interopRequireDefault(require("classnames"));
|
7 |
|
8 | var _propTypes = _interopRequireDefault(require("prop-types"));
|
9 |
|
10 | var _react = _interopRequireDefault(require("react"));
|
11 |
|
12 | var _SlideDownTransition = _interopRequireDefault(require("./SlideDownTransition"));
|
13 |
|
14 | var _PropTypes = require("./PropTypes");
|
15 |
|
16 | const _excluded = ["className", "dropUp", "open", "role", "id", "transition", "children"];
|
17 |
|
18 | function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
19 |
|
20 | 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); }
|
21 |
|
22 | 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; }
|
23 |
|
24 | const StaticContainer = _react.default.memo(({
|
25 | children
|
26 | }) => children, (_, {
|
27 | shouldUpdate
|
28 | }) => !shouldUpdate);
|
29 |
|
30 | const defaultProps = {
|
31 | open: false,
|
32 | transition: _SlideDownTransition.default
|
33 | };
|
34 | const propTypes = {
|
35 | open: _propTypes.default.bool,
|
36 | dropUp: _propTypes.default.bool,
|
37 | onEntering: _propTypes.default.func,
|
38 | onEntered: _propTypes.default.func,
|
39 | transition: _PropTypes.elementType,
|
40 | role: _propTypes.default.string,
|
41 | id: _propTypes.default.string
|
42 | };
|
43 |
|
44 | const Popup = _react.default.forwardRef((_ref, ref) => {
|
45 | let {
|
46 | className,
|
47 | dropUp,
|
48 | open,
|
49 | role,
|
50 | id,
|
51 | transition,
|
52 | children
|
53 | } = _ref,
|
54 | props = _objectWithoutPropertiesLoose(_ref, _excluded);
|
55 |
|
56 | const Transition = transition;
|
57 | return _react.default.createElement(Transition, _extends({}, props, {
|
58 | in: open,
|
59 | dropUp: dropUp,
|
60 | timeout: undefined
|
61 |
|
62 | ,
|
63 | className: (0, _classnames.default)('rw-popup-container', className)
|
64 | }), _react.default.createElement("div", {
|
65 | id: id,
|
66 | className: "rw-popup",
|
67 | ref: ref,
|
68 | role: role
|
69 | }, _react.default.createElement(StaticContainer, {
|
70 | shouldUpdate: open
|
71 | }, children)));
|
72 | });
|
73 |
|
74 | Popup.displayName = 'Popup';
|
75 | Popup.propTypes = propTypes;
|
76 | Popup.defaultProps = defaultProps;
|
77 | var _default = Popup;
|
78 | exports.default = _default; |
\ | No newline at end of file |