UNPKG

4.17 kBJavaScriptView Raw
1"use strict";
2
3var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
4
5var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
6
7Object.defineProperty(exports, "__esModule", {
8 value: true
9});
10exports["default"] = void 0;
11
12var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
13
14var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
15
16var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
17
18var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
19
20var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
21
22var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
23
24var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
25
26var _react = _interopRequireWildcard(require("react"));
27
28var _tooltip = _interopRequireDefault(require("../tooltip"));
29
30var _warning = _interopRequireDefault(require("../_util/warning"));
31
32var _configure = require("../configure");
33
34function _createSuper(Derived) {
35 function isNativeReflectConstruct() {
36 if (typeof Reflect === "undefined" || !Reflect.construct) return false;
37 if (Reflect.construct.sham) return false;
38 if (typeof Proxy === "function") return true;
39
40 try {
41 Date.prototype.toString.call(Reflect.construct(Date, [], function () {}));
42 return true;
43 } catch (e) {
44 return false;
45 }
46 }
47
48 return function () {
49 var Super = (0, _getPrototypeOf2["default"])(Derived),
50 result;
51
52 if (isNativeReflectConstruct()) {
53 var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor;
54 result = Reflect.construct(Super, arguments, NewTarget);
55 } else {
56 result = Super.apply(this, arguments);
57 }
58
59 return (0, _possibleConstructorReturn2["default"])(this, result);
60 };
61}
62
63var Popover =
64/*#__PURE__*/
65function (_Component) {
66 (0, _inherits2["default"])(Popover, _Component);
67
68 var _super = _createSuper(Popover);
69
70 function Popover() {
71 var _this;
72
73 (0, _classCallCheck2["default"])(this, Popover);
74 _this = _super.apply(this, arguments);
75
76 _this.getOverlay = function () {
77 var _this$props = _this.props,
78 title = _this$props.title,
79 content = _this$props.content;
80
81 var prefixCls = _this.getPrefixCls();
82
83 (0, _warning["default"])(!('overlay' in _this.props), 'Popover[overlay] is removed, please use Popover[content] instead');
84 var header = typeof title === 'function' ? title() : title;
85 return _react["default"].createElement("div", null, header && _react["default"].createElement("div", {
86 className: "".concat(prefixCls, "-title")
87 }, header), _react["default"].createElement("div", {
88 className: "".concat(prefixCls, "-inner-content")
89 }, typeof content === 'function' ? content() : content));
90 };
91
92 _this.saveTooltip = function (node) {
93 _this.tooltip = node;
94 };
95
96 return _this;
97 }
98
99 (0, _createClass2["default"])(Popover, [{
100 key: "getPopupDomNode",
101 value: function getPopupDomNode() {
102 return this.tooltip.getPopupDomNode();
103 }
104 }, {
105 key: "getPrefixCls",
106 value: function getPrefixCls() {
107 var prefixCls = this.props.prefixCls;
108 return (0, _configure.getPrefixCls)('popover', prefixCls);
109 }
110 }, {
111 key: "render",
112 value: function render() {
113 var props = (0, _objectSpread2["default"])({}, this.props);
114 delete props.title;
115 return _react["default"].createElement(_tooltip["default"], (0, _extends2["default"])({}, props, {
116 prefixCls: this.getPrefixCls(),
117 ref: this.saveTooltip,
118 overlay: this.getOverlay
119 }));
120 }
121 }]);
122 return Popover;
123}(_react.Component);
124
125exports["default"] = Popover;
126Popover.displayName = 'Popover';
127Popover.defaultProps = {
128 placement: 'top',
129 transitionName: 'zoom-big',
130 trigger: 'hover',
131 mouseEnterDelay: 0.1,
132 mouseLeaveDelay: 0.1,
133 overlayStyle: {}
134};
135//# sourceMappingURL=index.js.map