linkmore-design
Version:
π πlmη»δ»ΆεΊγπ
70 lines (66 loc) β’ 2.55 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 _DownOutlined = _interopRequireDefault(require("@ant-design/icons/DownOutlined"));
var React = _interopRequireWildcard(require("react"));
var _warning = _interopRequireDefault(require("../_util/warning"));
var _configProvider = require("../config-provider");
var _dropdown = _interopRequireDefault(require("../dropdown/dropdown"));
const BreadcrumbItem = props => {
const {
prefixCls: customizePrefixCls,
separator = '/',
children,
menu,
overlay,
dropdownProps,
...restProps
} = props;
const {
getPrefixCls
} = React.useContext(_configProvider.ConfigContext);
const prefixCls = getPrefixCls('breadcrumb', customizePrefixCls);
// Warning for deprecated usage
if (process.env.NODE_ENV !== 'production') {
(0, _warning.default)(!('overlay' in props), 'Breadcrumb.Item', '`overlay` is deprecated. Please use `menu` instead.');
}
/** If overlay is have Wrap a Dropdown */
const renderBreadcrumbNode = breadcrumbItem => {
if (menu || overlay) {
return /*#__PURE__*/React.createElement(_dropdown.default, (0, _extends2.default)({
menu: menu,
overlay: overlay,
placement: "bottom"
}, dropdownProps), /*#__PURE__*/React.createElement("span", {
className: `${prefixCls}-overlay-link`
}, breadcrumbItem, /*#__PURE__*/React.createElement(_DownOutlined.default, null)));
}
return breadcrumbItem;
};
let link;
if ('href' in restProps) {
link = /*#__PURE__*/React.createElement("a", (0, _extends2.default)({
className: `${prefixCls}-link`
}, restProps), children);
} else {
link = /*#__PURE__*/React.createElement("span", (0, _extends2.default)({
className: `${prefixCls}-link`
}, restProps), children);
}
// wrap to dropDown
link = renderBreadcrumbNode(link);
if (children !== undefined && children !== null) {
return /*#__PURE__*/React.createElement("li", null, link, separator && /*#__PURE__*/React.createElement("span", {
className: `${prefixCls}-separator`
}, separator));
}
return null;
};
BreadcrumbItem.__ANT_BREADCRUMB_ITEM = true;
var _default = BreadcrumbItem;
exports.default = _default;