1 | 'use strict';
|
2 |
|
3 | function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }
|
4 |
|
5 | var PropTypes = require('prop-types');
|
6 | var __chunk_1 = require('./chunk-c300b528.js');
|
7 | require('reakit/Box');
|
8 | require('reakit/Block');
|
9 | require('reakit/Inline');
|
10 | var InlineBlock = _interopDefault(require('reakit/InlineBlock'));
|
11 | require('reakit/Flex');
|
12 | require('reakit/InlineFlex');
|
13 | require('reakit/Grid');
|
14 | var React = require('react');
|
15 | var React__default = _interopDefault(React);
|
16 | var index$7 = require('./Pane/index.js');
|
17 | var __chunk_11 = require('./chunk-f686853d.js');
|
18 | var PopoverContainer = require('./Popover/PopoverContainer.js');
|
19 | var PopoverHide = require('./Popover/PopoverHide.js');
|
20 | var PopoverClose = require('./Popover/PopoverClose.js');
|
21 | var PopoverPopover = require('./Popover/PopoverPopover.js');
|
22 | var PopoverShow = require('./Popover/PopoverShow.js');
|
23 | var PopoverToggle = require('./Popover/PopoverToggle.js');
|
24 |
|
25 | var Popover = function Popover(_ref) {
|
26 | var children = _ref.children,
|
27 | content = _ref.content,
|
28 | isFullWidth = _ref.isFullWidth,
|
29 | showCloseButton = _ref.showCloseButton,
|
30 | props = __chunk_1._objectWithoutPropertiesLoose(_ref, ["children", "content", "isFullWidth", "showCloseButton"]);
|
31 |
|
32 | return React.createElement(PopoverContainer.default, null, function (popover) {
|
33 | return React.createElement(InlineBlock, {
|
34 | relative: true,
|
35 | width: isFullWidth ? '100%' : undefined
|
36 | }, __chunk_11.isFunction(children) ?
|
37 | |
38 |
|
39 | children(__chunk_1._objectSpread({
|
40 | use: PopoverToggle.default
|
41 | }, popover)) : children ? React.cloneElement(children, __chunk_1._objectSpread({
|
42 | use: PopoverToggle.default
|
43 | }, popover)) : null, React.createElement(PopoverPopover.default, __chunk_1._extends({
|
44 | elevation: "200"
|
45 | }, props, popover, {
|
46 | use: index$7.default
|
47 | }), function (_ref2) {
|
48 | var initialFocusRef = _ref2.initialFocusRef;
|
49 | return React.createElement(React.Fragment, null, showCloseButton && React.createElement(PopoverClose.default, __chunk_1._extends({
|
50 | elementRef: initialFocusRef
|
51 | }, popover)), typeof content === 'function' ? content(__chunk_1._objectSpread({
|
52 | initialFocusRef: initialFocusRef
|
53 | }, popover)) : content);
|
54 | }));
|
55 | });
|
56 | };
|
57 | Popover.Popover = PopoverPopover.default;
|
58 | Popover.Container = PopoverContainer.default;
|
59 | Popover.Close = PopoverClose.default;
|
60 | Popover.Hide = PopoverHide.default;
|
61 | Popover.Show = PopoverShow.default;
|
62 | Popover.Toggle = PopoverToggle.default;
|
63 | var popoverPropTypes = __chunk_1._objectSpread({}, PopoverPopover.popoverPopoverPropTypes, {
|
64 | className: PropTypes.string,
|
65 | children: PropTypes.oneOfType([PropTypes.element, PropTypes.func]).isRequired,
|
66 | content: PropTypes.oneOfType([PropTypes.string, PropTypes.element, PropTypes.func]),
|
67 | isFullWidth: PropTypes.bool,
|
68 | showCloseButton: PropTypes.bool
|
69 | });
|
70 | Popover.propTypes = popoverPropTypes;
|
71 | var popoverDefaultProps = __chunk_1._objectSpread({}, PopoverPopover.popoverPopoverDefaultProps, {
|
72 | children: undefined,
|
73 | className: undefined,
|
74 | isFullWidth: false,
|
75 | showCloseButton: false
|
76 | });
|
77 | Popover.defaultProps = popoverDefaultProps;
|
78 |
|
79 | var C = Popover;
|
80 |
|
81 | exports.Popover = C;
|
82 | exports.popoverDefaultProps = popoverDefaultProps;
|
83 | exports.popoverPropTypes = popoverPropTypes;
|