1 | import _extends from "@babel/runtime/helpers/esm/extends";
|
2 |
|
3 | var __rest = this && this.__rest || function (s, e) {
|
4 | var t = {};
|
5 |
|
6 | for (var p in s) {
|
7 | if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
|
8 | }
|
9 |
|
10 | if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
11 | if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
|
12 | }
|
13 | return t;
|
14 | };
|
15 |
|
16 | import * as React from 'react';
|
17 | import DownOutlined from "@ant-design/icons/es/icons/DownOutlined";
|
18 | import DropDown from '../dropdown/dropdown';
|
19 | import { ConfigContext } from '../config-provider';
|
20 |
|
21 | var BreadcrumbItem = function BreadcrumbItem(_a) {
|
22 | var customizePrefixCls = _a.prefixCls,
|
23 | _a$separator = _a.separator,
|
24 | separator = _a$separator === void 0 ? '/' : _a$separator,
|
25 | children = _a.children,
|
26 | overlay = _a.overlay,
|
27 | dropdownProps = _a.dropdownProps,
|
28 | restProps = __rest(_a, ["prefixCls", "separator", "children", "overlay", "dropdownProps"]);
|
29 |
|
30 | var _React$useContext = React.useContext(ConfigContext),
|
31 | getPrefixCls = _React$useContext.getPrefixCls;
|
32 |
|
33 | var prefixCls = getPrefixCls('breadcrumb', customizePrefixCls);
|
34 |
|
35 |
|
36 | var renderBreadcrumbNode = function renderBreadcrumbNode(breadcrumbItem) {
|
37 | if (overlay) {
|
38 | return React.createElement(DropDown, _extends({
|
39 | overlay: overlay,
|
40 | placement: "bottomCenter"
|
41 | }, dropdownProps), React.createElement("span", {
|
42 | className: "".concat(prefixCls, "-overlay-link")
|
43 | }, breadcrumbItem, React.createElement(DownOutlined, null)));
|
44 | }
|
45 |
|
46 | return breadcrumbItem;
|
47 | };
|
48 |
|
49 | var link;
|
50 |
|
51 | if ('href' in restProps) {
|
52 | link = React.createElement("a", _extends({
|
53 | className: "".concat(prefixCls, "-link")
|
54 | }, restProps), children);
|
55 | } else {
|
56 | link = React.createElement("span", _extends({
|
57 | className: "".concat(prefixCls, "-link")
|
58 | }, restProps), children);
|
59 | }
|
60 |
|
61 |
|
62 | link = renderBreadcrumbNode(link);
|
63 |
|
64 | if (children) {
|
65 | return React.createElement("span", null, link, separator && React.createElement("span", {
|
66 | className: "".concat(prefixCls, "-separator")
|
67 | }, separator));
|
68 | }
|
69 |
|
70 | return null;
|
71 | };
|
72 |
|
73 | BreadcrumbItem.__ANT_BREADCRUMB_ITEM = true;
|
74 | export default BreadcrumbItem; |
\ | No newline at end of file |