linkmore-design
Version:
π πlmη»δ»ΆεΊγπ
68 lines (67 loc) β’ 2.31 kB
JavaScript
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
var React = _interopRequireWildcard(require("react"));
var _configProvider = require("../config-provider");
var _tooltip = _interopRequireDefault(require("../tooltip"));
var _getRenderPropValue = require("../_util/getRenderPropValue");
var _motion = require("../_util/motion");
const Overlay = ({
title,
content,
prefixCls
}) => {
if (!title && !content) {
return null;
}
return /*#__PURE__*/React.createElement(React.Fragment, null, title && /*#__PURE__*/React.createElement("div", {
className: `${prefixCls}-title`
}, (0, _getRenderPropValue.getRenderPropValue)(title)), /*#__PURE__*/React.createElement("div", {
className: `${prefixCls}-inner-content`
}, (0, _getRenderPropValue.getRenderPropValue)(content)));
};
const Popover = /*#__PURE__*/React.forwardRef((props, ref) => {
const {
prefixCls: customizePrefixCls,
title,
content,
_overlay,
placement = 'top',
trigger = 'hover',
mouseEnterDelay = 0.1,
mouseLeaveDelay = 0.1,
overlayStyle = {},
...otherProps
} = props;
const {
getPrefixCls
} = React.useContext(_configProvider.ConfigContext);
const prefixCls = getPrefixCls('popover', customizePrefixCls);
const rootPrefixCls = getPrefixCls();
return /*#__PURE__*/React.createElement(_tooltip.default, (0, _extends2.default)({
placement: placement,
trigger: trigger,
mouseEnterDelay: mouseEnterDelay,
mouseLeaveDelay: mouseLeaveDelay,
overlayStyle: overlayStyle
}, otherProps, {
prefixCls: prefixCls,
ref: ref,
overlay: _overlay || /*#__PURE__*/React.createElement(Overlay, {
prefixCls: prefixCls,
title: title,
content: content
}),
transitionName: (0, _motion.getTransitionName)(rootPrefixCls, 'zoom-big', otherProps.transitionName)
}));
});
if (process.env.NODE_ENV !== 'production') {
Popover.displayName = 'Popover';
}
var _default = Popover;
exports.default = _default;
;