UNPKG

2.53 kBJavaScriptView Raw
1"use strict";
2
3var _interopRequireDefault = require("@babel/runtime-corejs2/helpers/interopRequireDefault");
4
5exports.__esModule = true;
6exports.default = void 0;
7
8var _extends2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/extends"));
9
10var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/objectWithoutPropertiesLoose"));
11
12var _inheritsLoose2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/inheritsLoose"));
13
14var _classnames = _interopRequireDefault(require("classnames"));
15
16var _react = _interopRequireDefault(require("react"));
17
18var _propTypes = _interopRequireDefault(require("prop-types"));
19
20var _SafeAnchor = _interopRequireDefault(require("./SafeAnchor"));
21
22var propTypes = {
23 /**
24 * If set to true, renders `span` instead of `a`
25 */
26 active: _propTypes.default.bool,
27
28 /**
29 * `href` attribute for the inner `a` element
30 */
31 href: _propTypes.default.string,
32
33 /**
34 * `title` attribute for the inner `a` element
35 */
36 title: _propTypes.default.node,
37
38 /**
39 * `target` attribute for the inner `a` element
40 */
41 target: _propTypes.default.string
42};
43var defaultProps = {
44 active: false
45};
46
47var BreadcrumbItem =
48/*#__PURE__*/
49function (_React$Component) {
50 (0, _inheritsLoose2.default)(BreadcrumbItem, _React$Component);
51
52 function BreadcrumbItem() {
53 return _React$Component.apply(this, arguments) || this;
54 }
55
56 var _proto = BreadcrumbItem.prototype;
57
58 _proto.render = function render() {
59 var _this$props = this.props,
60 active = _this$props.active,
61 href = _this$props.href,
62 title = _this$props.title,
63 target = _this$props.target,
64 className = _this$props.className,
65 props = (0, _objectWithoutPropertiesLoose2.default)(_this$props, ["active", "href", "title", "target", "className"]); // Don't try to render these props on non-active <span>.
66
67 var linkProps = {
68 href: href,
69 title: title,
70 target: target
71 };
72 return _react.default.createElement("li", {
73 className: (0, _classnames.default)(className, {
74 active: active
75 })
76 }, active ? _react.default.createElement("span", props) : _react.default.createElement(_SafeAnchor.default, (0, _extends2.default)({}, props, linkProps)));
77 };
78
79 return BreadcrumbItem;
80}(_react.default.Component);
81
82BreadcrumbItem.propTypes = propTypes;
83BreadcrumbItem.defaultProps = defaultProps;
84var _default = BreadcrumbItem;
85exports.default = _default;
86module.exports = exports["default"];
\No newline at end of file