@clayui/breadcrumb 3.142.0 → 3.143.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/cjs/Item.js +39 -0
- package/lib/cjs/index.js +77 -0
- package/lib/esm/Item.js +34 -0
- package/lib/esm/index.js +70 -0
- package/package.json +13 -10
- package/lib/Item.js +0 -41
- package/lib/index.js +0 -92
package/lib/cjs/Item.js
ADDED
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _link = _interopRequireDefault(require("@clayui/link"));
|
|
8
|
+
var _classnames = _interopRequireDefault(require("classnames"));
|
|
9
|
+
var _react = _interopRequireDefault(require("react"));
|
|
10
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
11
|
+
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); } /**
|
|
12
|
+
* SPDX-FileCopyrightText: © 2019 Liferay, Inc. <https://liferay.com>
|
|
13
|
+
* SPDX-License-Identifier: BSD-3-Clause
|
|
14
|
+
*/
|
|
15
|
+
const Item = _ref => {
|
|
16
|
+
let {
|
|
17
|
+
active,
|
|
18
|
+
href,
|
|
19
|
+
label,
|
|
20
|
+
onClick,
|
|
21
|
+
...otherProps
|
|
22
|
+
} = _ref;
|
|
23
|
+
return /*#__PURE__*/_react.default.createElement("li", _extends({
|
|
24
|
+
className: (0, _classnames.default)('breadcrumb-item', {
|
|
25
|
+
active
|
|
26
|
+
})
|
|
27
|
+
}, otherProps), /*#__PURE__*/_react.default.createElement(_link.default, {
|
|
28
|
+
"aria-current": active ? 'page' : undefined,
|
|
29
|
+
className: "breadcrumb-link",
|
|
30
|
+
href: active ? '#' : href,
|
|
31
|
+
onClick: event => {
|
|
32
|
+
if (onClick) {
|
|
33
|
+
event.preventDefault();
|
|
34
|
+
onClick(event);
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
}, label));
|
|
38
|
+
};
|
|
39
|
+
var _default = exports.default = Item;
|
package/lib/cjs/index.js
ADDED
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _button = require("@clayui/button");
|
|
8
|
+
var _classnames = _interopRequireDefault(require("classnames"));
|
|
9
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
10
|
+
var _warning = _interopRequireDefault(require("warning"));
|
|
11
|
+
var _Item = _interopRequireDefault(require("./Item"));
|
|
12
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
13
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
14
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
15
|
+
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); } /**
|
|
16
|
+
* SPDX-FileCopyrightText: © 2019 Liferay, Inc. <https://liferay.com>
|
|
17
|
+
* SPDX-License-Identifier: BSD-3-Clause
|
|
18
|
+
*/
|
|
19
|
+
const findActiveItems = items => {
|
|
20
|
+
return items.filter(item => {
|
|
21
|
+
return item.active;
|
|
22
|
+
});
|
|
23
|
+
};
|
|
24
|
+
const Breadcrumb = _ref => {
|
|
25
|
+
let {
|
|
26
|
+
ariaLabels = {
|
|
27
|
+
breadcrumb: 'Breadcrumb',
|
|
28
|
+
close: 'Partially nest breadcrumbs',
|
|
29
|
+
open: 'See full nested'
|
|
30
|
+
},
|
|
31
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
32
|
+
ellipsisBuffer = 1,
|
|
33
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
34
|
+
ellipsisProps = {},
|
|
35
|
+
className,
|
|
36
|
+
items,
|
|
37
|
+
spritemap,
|
|
38
|
+
...otherProps
|
|
39
|
+
} = _ref;
|
|
40
|
+
"production" !== "production" ? (0, _warning.default)(findActiveItems(items).length === 1, 'ClayBreadcrumb expects at least one `active` item on `items`.') : void 0;
|
|
41
|
+
const [collapsed, setCollapsed] = (0, _react.useState)(false);
|
|
42
|
+
return /*#__PURE__*/_react.default.createElement("nav", {
|
|
43
|
+
"aria-label": ariaLabels.breadcrumb,
|
|
44
|
+
className: "breadcrumb-bar"
|
|
45
|
+
}, items.length > 3 && /*#__PURE__*/_react.default.createElement(_button.ClayButtonWithIcon, {
|
|
46
|
+
"aria-expanded": collapsed,
|
|
47
|
+
"aria-label": collapsed ? ariaLabels.close : ariaLabels.open,
|
|
48
|
+
className: "breadcrumb-toggle",
|
|
49
|
+
displayType: null,
|
|
50
|
+
onClick: () => setCollapsed(!collapsed),
|
|
51
|
+
size: "xs",
|
|
52
|
+
spritemap: spritemap,
|
|
53
|
+
symbol: collapsed ? 'angle-double-left' : 'angle-double-right',
|
|
54
|
+
title: collapsed ? ariaLabels.close : ariaLabels.open
|
|
55
|
+
}), /*#__PURE__*/_react.default.createElement("ol", _extends({}, otherProps, {
|
|
56
|
+
className: (0, _classnames.default)('breadcrumb', className)
|
|
57
|
+
}), items.length > 3 && !collapsed ? /*#__PURE__*/_react.default.createElement(Items, {
|
|
58
|
+
items: [items[items.length - 2], items[items.length - 1]]
|
|
59
|
+
}) : /*#__PURE__*/_react.default.createElement(Items, {
|
|
60
|
+
items: items
|
|
61
|
+
})));
|
|
62
|
+
};
|
|
63
|
+
function Items(_ref2) {
|
|
64
|
+
let {
|
|
65
|
+
items
|
|
66
|
+
} = _ref2;
|
|
67
|
+
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, items.map((item, i) => /*#__PURE__*/_react.default.isValidElement(item) ? (/*#__PURE__*/_react.default.cloneElement(item, {
|
|
68
|
+
key: `ellipsis${i}`
|
|
69
|
+
})) : /*#__PURE__*/_react.default.createElement(_Item.default, {
|
|
70
|
+
active: item.active,
|
|
71
|
+
href: item.href,
|
|
72
|
+
key: `breadcrumbItem${i}`,
|
|
73
|
+
label: item.label,
|
|
74
|
+
onClick: item.onClick
|
|
75
|
+
})));
|
|
76
|
+
}
|
|
77
|
+
var _default = exports.default = Breadcrumb;
|
package/lib/esm/Item.js
ADDED
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
|
|
2
|
+
/**
|
|
3
|
+
* SPDX-FileCopyrightText: © 2019 Liferay, Inc. <https://liferay.com>
|
|
4
|
+
* SPDX-License-Identifier: BSD-3-Clause
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
import ClayLink from '@clayui/link';
|
|
8
|
+
import classNames from 'classnames';
|
|
9
|
+
import React from 'react';
|
|
10
|
+
const Item = _ref => {
|
|
11
|
+
let {
|
|
12
|
+
active,
|
|
13
|
+
href,
|
|
14
|
+
label,
|
|
15
|
+
onClick,
|
|
16
|
+
...otherProps
|
|
17
|
+
} = _ref;
|
|
18
|
+
return /*#__PURE__*/React.createElement("li", _extends({
|
|
19
|
+
className: classNames('breadcrumb-item', {
|
|
20
|
+
active
|
|
21
|
+
})
|
|
22
|
+
}, otherProps), /*#__PURE__*/React.createElement(ClayLink, {
|
|
23
|
+
"aria-current": active ? 'page' : undefined,
|
|
24
|
+
className: "breadcrumb-link",
|
|
25
|
+
href: active ? '#' : href,
|
|
26
|
+
onClick: event => {
|
|
27
|
+
if (onClick) {
|
|
28
|
+
event.preventDefault();
|
|
29
|
+
onClick(event);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
}, label));
|
|
33
|
+
};
|
|
34
|
+
export default Item;
|
package/lib/esm/index.js
ADDED
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
|
|
2
|
+
/**
|
|
3
|
+
* SPDX-FileCopyrightText: © 2019 Liferay, Inc. <https://liferay.com>
|
|
4
|
+
* SPDX-License-Identifier: BSD-3-Clause
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
import { ClayButtonWithIcon } from '@clayui/button';
|
|
8
|
+
import classNames from 'classnames';
|
|
9
|
+
import React, { useState } from 'react';
|
|
10
|
+
import warning from 'warning';
|
|
11
|
+
import Item from "./Item.js";
|
|
12
|
+
const findActiveItems = items => {
|
|
13
|
+
return items.filter(item => {
|
|
14
|
+
return item.active;
|
|
15
|
+
});
|
|
16
|
+
};
|
|
17
|
+
const Breadcrumb = _ref => {
|
|
18
|
+
let {
|
|
19
|
+
ariaLabels = {
|
|
20
|
+
breadcrumb: 'Breadcrumb',
|
|
21
|
+
close: 'Partially nest breadcrumbs',
|
|
22
|
+
open: 'See full nested'
|
|
23
|
+
},
|
|
24
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
25
|
+
ellipsisBuffer = 1,
|
|
26
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
27
|
+
ellipsisProps = {},
|
|
28
|
+
className,
|
|
29
|
+
items,
|
|
30
|
+
spritemap,
|
|
31
|
+
...otherProps
|
|
32
|
+
} = _ref;
|
|
33
|
+
"production" !== "production" ? warning(findActiveItems(items).length === 1, 'ClayBreadcrumb expects at least one `active` item on `items`.') : void 0;
|
|
34
|
+
const [collapsed, setCollapsed] = useState(false);
|
|
35
|
+
return /*#__PURE__*/React.createElement("nav", {
|
|
36
|
+
"aria-label": ariaLabels.breadcrumb,
|
|
37
|
+
className: "breadcrumb-bar"
|
|
38
|
+
}, items.length > 3 && /*#__PURE__*/React.createElement(ClayButtonWithIcon, {
|
|
39
|
+
"aria-expanded": collapsed,
|
|
40
|
+
"aria-label": collapsed ? ariaLabels.close : ariaLabels.open,
|
|
41
|
+
className: "breadcrumb-toggle",
|
|
42
|
+
displayType: null,
|
|
43
|
+
onClick: () => setCollapsed(!collapsed),
|
|
44
|
+
size: "xs",
|
|
45
|
+
spritemap: spritemap,
|
|
46
|
+
symbol: collapsed ? 'angle-double-left' : 'angle-double-right',
|
|
47
|
+
title: collapsed ? ariaLabels.close : ariaLabels.open
|
|
48
|
+
}), /*#__PURE__*/React.createElement("ol", _extends({}, otherProps, {
|
|
49
|
+
className: classNames('breadcrumb', className)
|
|
50
|
+
}), items.length > 3 && !collapsed ? /*#__PURE__*/React.createElement(Items, {
|
|
51
|
+
items: [items[items.length - 2], items[items.length - 1]]
|
|
52
|
+
}) : /*#__PURE__*/React.createElement(Items, {
|
|
53
|
+
items: items
|
|
54
|
+
})));
|
|
55
|
+
};
|
|
56
|
+
function Items(_ref2) {
|
|
57
|
+
let {
|
|
58
|
+
items
|
|
59
|
+
} = _ref2;
|
|
60
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, items.map((item, i) => /*#__PURE__*/React.isValidElement(item) ? (/*#__PURE__*/React.cloneElement(item, {
|
|
61
|
+
key: `ellipsis${i}`
|
|
62
|
+
})) : /*#__PURE__*/React.createElement(Item, {
|
|
63
|
+
active: item.active,
|
|
64
|
+
href: item.href,
|
|
65
|
+
key: `breadcrumbItem${i}`,
|
|
66
|
+
label: item.label,
|
|
67
|
+
onClick: item.onClick
|
|
68
|
+
})));
|
|
69
|
+
}
|
|
70
|
+
export default Breadcrumb;
|
package/package.json
CHANGED
|
@@ -1,21 +1,24 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@clayui/breadcrumb",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.143.0",
|
|
4
4
|
"description": "ClayBreadcrumb component",
|
|
5
5
|
"license": "BSD-3-Clause",
|
|
6
6
|
"repository": "https://github.com/liferay/clay",
|
|
7
|
-
"
|
|
8
|
-
|
|
9
|
-
|
|
7
|
+
"main": "lib/cjs/index.js",
|
|
8
|
+
"module": "lib/esm/index.js",
|
|
9
|
+
"exports": {
|
|
10
|
+
"import": "./lib/esm/index.js",
|
|
11
|
+
"require": "./lib/cjs/index.js"
|
|
10
12
|
},
|
|
11
|
-
"main": "lib/index.js",
|
|
12
13
|
"types": "lib/index.d.ts",
|
|
13
14
|
"ts:main": "src/index.tsx",
|
|
14
15
|
"files": [
|
|
15
16
|
"lib"
|
|
16
17
|
],
|
|
17
18
|
"scripts": {
|
|
18
|
-
"build": "
|
|
19
|
+
"build": "yarn build:cjs && yarn build:esm",
|
|
20
|
+
"build:cjs": "cross-env NODE_ENV=production babel src --root-mode upward --out-dir lib/cjs --extensions .ts,.tsx",
|
|
21
|
+
"build:esm": "cross-env NODE_ENV=production babel src --root-mode upward --out-dir lib/esm --extensions .ts,.tsx --env-name esm",
|
|
19
22
|
"buildTypes": "cross-env NODE_ENV=production tsc --project ./tsconfig.declarations.json",
|
|
20
23
|
"test": "jest --config ../../jest.config.js"
|
|
21
24
|
},
|
|
@@ -24,9 +27,9 @@
|
|
|
24
27
|
"react"
|
|
25
28
|
],
|
|
26
29
|
"dependencies": {
|
|
27
|
-
"@clayui/button": "^3.
|
|
28
|
-
"@clayui/icon": "^3.
|
|
29
|
-
"@clayui/link": "^3.
|
|
30
|
+
"@clayui/button": "^3.143.0",
|
|
31
|
+
"@clayui/icon": "^3.143.0",
|
|
32
|
+
"@clayui/link": "^3.143.0",
|
|
30
33
|
"classnames": "^2.2.6",
|
|
31
34
|
"warning": "^4.0.3"
|
|
32
35
|
},
|
|
@@ -38,5 +41,5 @@
|
|
|
38
41
|
"browserslist": [
|
|
39
42
|
"extends browserslist-config-clay"
|
|
40
43
|
],
|
|
41
|
-
"gitHead": "
|
|
44
|
+
"gitHead": "aacf20646cc7fb25c4d60e865ec77d2d503d23e9"
|
|
42
45
|
}
|
package/lib/Item.js
DELETED
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
var _link = _interopRequireDefault(require("@clayui/link"));
|
|
8
|
-
var _classnames = _interopRequireDefault(require("classnames"));
|
|
9
|
-
var _react = _interopRequireDefault(require("react"));
|
|
10
|
-
var _excluded = ["active", "href", "label", "onClick"];
|
|
11
|
-
/**
|
|
12
|
-
* SPDX-FileCopyrightText: © 2019 Liferay, Inc. <https://liferay.com>
|
|
13
|
-
* SPDX-License-Identifier: BSD-3-Clause
|
|
14
|
-
*/
|
|
15
|
-
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
16
|
-
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) { ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } } return n; }, _extends.apply(null, arguments); }
|
|
17
|
-
function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var s = Object.getOwnPropertySymbols(e); for (r = 0; r < s.length; r++) { o = s[r], t.includes(o) || {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } } return i; }
|
|
18
|
-
function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) { if ({}.hasOwnProperty.call(r, n)) { if (e.includes(n)) continue; t[n] = r[n]; } } return t; }
|
|
19
|
-
var Item = function Item(_ref) {
|
|
20
|
-
var active = _ref.active,
|
|
21
|
-
href = _ref.href,
|
|
22
|
-
label = _ref.label,
|
|
23
|
-
_onClick = _ref.onClick,
|
|
24
|
-
otherProps = _objectWithoutProperties(_ref, _excluded);
|
|
25
|
-
return /*#__PURE__*/_react.default.createElement("li", _extends({
|
|
26
|
-
className: (0, _classnames.default)('breadcrumb-item', {
|
|
27
|
-
active: active
|
|
28
|
-
})
|
|
29
|
-
}, otherProps), /*#__PURE__*/_react.default.createElement(_link.default, {
|
|
30
|
-
"aria-current": active ? 'page' : undefined,
|
|
31
|
-
className: "breadcrumb-link",
|
|
32
|
-
href: active ? '#' : href,
|
|
33
|
-
onClick: function onClick(event) {
|
|
34
|
-
if (_onClick) {
|
|
35
|
-
event.preventDefault();
|
|
36
|
-
_onClick(event);
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
}, label));
|
|
40
|
-
};
|
|
41
|
-
var _default = exports.default = Item;
|
package/lib/index.js
DELETED
|
@@ -1,92 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
4
|
-
Object.defineProperty(exports, "__esModule", {
|
|
5
|
-
value: true
|
|
6
|
-
});
|
|
7
|
-
exports.default = void 0;
|
|
8
|
-
var _button = require("@clayui/button");
|
|
9
|
-
var _classnames = _interopRequireDefault(require("classnames"));
|
|
10
|
-
var _react = _interopRequireWildcard(require("react"));
|
|
11
|
-
var _warning = _interopRequireDefault(require("warning"));
|
|
12
|
-
var _Item = _interopRequireDefault(require("./Item"));
|
|
13
|
-
var _excluded = ["ariaLabels", "ellipsisBuffer", "ellipsisProps", "className", "items", "spritemap"];
|
|
14
|
-
/**
|
|
15
|
-
* SPDX-FileCopyrightText: © 2019 Liferay, Inc. <https://liferay.com>
|
|
16
|
-
* SPDX-License-Identifier: BSD-3-Clause
|
|
17
|
-
*/
|
|
18
|
-
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
19
|
-
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) { if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } } return n.default = e, t && t.set(e, n), n; }
|
|
20
|
-
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
21
|
-
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) { ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } } return n; }, _extends.apply(null, arguments); }
|
|
22
|
-
function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
|
|
23
|
-
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
24
|
-
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
|
|
25
|
-
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) { n[e] = r[e]; } return n; }
|
|
26
|
-
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0) { ; } } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
|
27
|
-
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
|
28
|
-
function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var s = Object.getOwnPropertySymbols(e); for (r = 0; r < s.length; r++) { o = s[r], t.includes(o) || {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } } return i; }
|
|
29
|
-
function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) { if ({}.hasOwnProperty.call(r, n)) { if (e.includes(n)) continue; t[n] = r[n]; } } return t; }
|
|
30
|
-
var findActiveItems = function findActiveItems(items) {
|
|
31
|
-
return items.filter(function (item) {
|
|
32
|
-
return item.active;
|
|
33
|
-
});
|
|
34
|
-
};
|
|
35
|
-
var Breadcrumb = function Breadcrumb(_ref) {
|
|
36
|
-
var _ref$ariaLabels = _ref.ariaLabels,
|
|
37
|
-
ariaLabels = _ref$ariaLabels === void 0 ? {
|
|
38
|
-
breadcrumb: 'Breadcrumb',
|
|
39
|
-
close: 'Partially nest breadcrumbs',
|
|
40
|
-
open: 'See full nested'
|
|
41
|
-
} : _ref$ariaLabels,
|
|
42
|
-
_ref$ellipsisBuffer = _ref.ellipsisBuffer,
|
|
43
|
-
ellipsisBuffer = _ref$ellipsisBuffer === void 0 ? 1 : _ref$ellipsisBuffer,
|
|
44
|
-
_ref$ellipsisProps = _ref.ellipsisProps,
|
|
45
|
-
ellipsisProps = _ref$ellipsisProps === void 0 ? {} : _ref$ellipsisProps,
|
|
46
|
-
className = _ref.className,
|
|
47
|
-
items = _ref.items,
|
|
48
|
-
spritemap = _ref.spritemap,
|
|
49
|
-
otherProps = _objectWithoutProperties(_ref, _excluded);
|
|
50
|
-
"production" !== "production" ? (0, _warning.default)(findActiveItems(items).length === 1, 'ClayBreadcrumb expects at least one `active` item on `items`.') : void 0;
|
|
51
|
-
var _useState = (0, _react.useState)(false),
|
|
52
|
-
_useState2 = _slicedToArray(_useState, 2),
|
|
53
|
-
collapsed = _useState2[0],
|
|
54
|
-
setCollapsed = _useState2[1];
|
|
55
|
-
return /*#__PURE__*/_react.default.createElement("nav", {
|
|
56
|
-
"aria-label": ariaLabels.breadcrumb,
|
|
57
|
-
className: "breadcrumb-bar"
|
|
58
|
-
}, items.length > 3 && /*#__PURE__*/_react.default.createElement(_button.ClayButtonWithIcon, {
|
|
59
|
-
"aria-expanded": collapsed,
|
|
60
|
-
"aria-label": collapsed ? ariaLabels.close : ariaLabels.open,
|
|
61
|
-
className: "breadcrumb-toggle",
|
|
62
|
-
displayType: null,
|
|
63
|
-
onClick: function onClick() {
|
|
64
|
-
return setCollapsed(!collapsed);
|
|
65
|
-
},
|
|
66
|
-
size: "xs",
|
|
67
|
-
spritemap: spritemap,
|
|
68
|
-
symbol: collapsed ? 'angle-double-left' : 'angle-double-right',
|
|
69
|
-
title: collapsed ? ariaLabels.close : ariaLabels.open
|
|
70
|
-
}), /*#__PURE__*/_react.default.createElement("ol", _extends({}, otherProps, {
|
|
71
|
-
className: (0, _classnames.default)('breadcrumb', className)
|
|
72
|
-
}), items.length > 3 && !collapsed ? /*#__PURE__*/_react.default.createElement(Items, {
|
|
73
|
-
items: [items[items.length - 2], items[items.length - 1]]
|
|
74
|
-
}) : /*#__PURE__*/_react.default.createElement(Items, {
|
|
75
|
-
items: items
|
|
76
|
-
})));
|
|
77
|
-
};
|
|
78
|
-
function Items(_ref2) {
|
|
79
|
-
var items = _ref2.items;
|
|
80
|
-
return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, items.map(function (item, i) {
|
|
81
|
-
return /*#__PURE__*/_react.default.isValidElement(item) ? (/*#__PURE__*/_react.default.cloneElement(item, {
|
|
82
|
-
key: "ellipsis".concat(i)
|
|
83
|
-
})) : /*#__PURE__*/_react.default.createElement(_Item.default, {
|
|
84
|
-
active: item.active,
|
|
85
|
-
href: item.href,
|
|
86
|
-
key: "breadcrumbItem".concat(i),
|
|
87
|
-
label: item.label,
|
|
88
|
-
onClick: item.onClick
|
|
89
|
-
});
|
|
90
|
-
}));
|
|
91
|
-
}
|
|
92
|
-
var _default = exports.default = Breadcrumb;
|