1 | 'use strict';
|
2 |
|
3 | Object.defineProperty(exports, "__esModule", {
|
4 | value: true
|
5 | });
|
6 |
|
7 | var _extends2 = require('babel-runtime/helpers/extends');
|
8 |
|
9 | var _extends3 = _interopRequireDefault(_extends2);
|
10 |
|
11 | var _objectWithoutProperties2 = require('babel-runtime/helpers/objectWithoutProperties');
|
12 |
|
13 | var _objectWithoutProperties3 = _interopRequireDefault(_objectWithoutProperties2);
|
14 |
|
15 | var _react = require('react');
|
16 |
|
17 | var _react2 = _interopRequireDefault(_react);
|
18 |
|
19 | var _propTypes = require('prop-types');
|
20 |
|
21 | var _propTypes2 = _interopRequireDefault(_propTypes);
|
22 |
|
23 | var _withPopover = require('./withPopover');
|
24 |
|
25 | var _withPopover2 = _interopRequireDefault(_withPopover);
|
26 |
|
27 | var _RTGTransition = require('./RTGTransition');
|
28 |
|
29 | var _RTGTransition2 = _interopRequireDefault(_RTGTransition);
|
30 |
|
31 | var _recompose = require('recompose');
|
32 |
|
33 | function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
34 |
|
35 | var basePopoverStyle = {
|
36 | position: 'absolute'
|
37 | };
|
38 | var baseContainerStyle = {
|
39 | position: 'relative'
|
40 | };
|
41 |
|
42 | var CCPopover = function CCPopover(_ref) {
|
43 | var children = _ref.children,
|
44 | isOn = _ref.isOn,
|
45 | switchOff = _ref.switchOff,
|
46 | switchOn = _ref.switchOn;
|
47 |
|
48 | var renderPopover = function renderPopover(f) {
|
49 | return _react2.default.createElement(
|
50 | _RTGTransition2.default,
|
51 | { in: isOn, transitionType: 'fade' },
|
52 | function (_ref2) {
|
53 | var transitionStyle = _ref2.style;
|
54 |
|
55 | var getPopoverProps = function getPopoverProps() {
|
56 | var _ref3 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
57 |
|
58 | var className = _ref3.className,
|
59 | style = _ref3.style,
|
60 | _onClick = _ref3.onClick,
|
61 | props = (0, _objectWithoutProperties3.default)(_ref3, ['className', 'style', 'onClick']);
|
62 | return (0, _extends3.default)({
|
63 | style: (0, _extends3.default)({}, transitionStyle, basePopoverStyle, style),
|
64 | className: className ? className + ' popover-content' : 'popover-content',
|
65 | onClick: function onClick(e) {
|
66 | for (var _len = arguments.length, args = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
|
67 | args[_key - 1] = arguments[_key];
|
68 | }
|
69 |
|
70 | e.stopPropagation();
|
71 | _onClick && _onClick.apply(undefined, [e].concat(args));
|
72 | }
|
73 | }, props);
|
74 | };
|
75 | return f({ getPopoverProps: getPopoverProps });
|
76 | }
|
77 | );
|
78 | };
|
79 | var getContainerProps = function getContainerProps() {
|
80 | var _ref4 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
81 |
|
82 | var className = _ref4.className,
|
83 | style = _ref4.style,
|
84 | _onClick2 = _ref4.onClick,
|
85 | props = (0, _objectWithoutProperties3.default)(_ref4, ['className', 'style', 'onClick']);
|
86 | return (0, _extends3.default)({
|
87 | style: (0, _extends3.default)({}, baseContainerStyle, style),
|
88 | className: className ? className + ' popover-container' : 'popover-container',
|
89 | onClick: function onClick(e) {
|
90 | for (var _len2 = arguments.length, args = Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {
|
91 | args[_key2 - 1] = arguments[_key2];
|
92 | }
|
93 |
|
94 | e.stopPropagation();
|
95 | _onClick2 && _onClick2.apply(undefined, [e].concat(args));
|
96 | },
|
97 | onMouseEnter: function onMouseEnter() {
|
98 | return switchOn();
|
99 | },
|
100 | onMouseLeave: function onMouseLeave() {
|
101 | return switchOff();
|
102 | }
|
103 | }, props);
|
104 | };
|
105 | return children({
|
106 | renderPopover: renderPopover,
|
107 | getContainerProps: getContainerProps
|
108 | });
|
109 | };
|
110 |
|
111 | CCPopover.propTypes = {};
|
112 | var enhance = (0, _recompose.compose)(_withPopover2.default, _recompose.pure);
|
113 | exports.default = enhance(CCPopover); |
\ | No newline at end of file |