@carbon/ibm-products
Version:
Carbon for IBM Products
58 lines (52 loc) • 1.57 kB
JavaScript
/**
* Copyright IBM Corp. 2020, 2025
*
* This source code is licensed under the Apache-2.0 license found in the
* LICENSE file in the root directory of this source tree.
*/
;
var React = require('react');
var react = require('@carbon/react');
var index = require('../../_virtual/index.js');
var cx = require('classnames');
var settings = require('../../settings.js');
// Copyright IBM Corp. 2022, 2022
//
// This source code is licensed under the Apache-2.0 license found in the
// LICENSE file in the root directory of this source tree.
//
const blockClass = `${settings.pkg.prefix}--add-select__breadcrumbs`;
const componentName = 'AddSelectBreadcrumbs';
let AddSelectBreadcrumbs = _ref => {
let {
multi,
onClick,
path
} = _ref;
const clickHandler = (e, idx) => {
e.preventDefault();
onClick(idx);
};
const classNames = cx(blockClass, {
[`${blockClass}-multi`]: multi
});
return /*#__PURE__*/React.createElement(react.Breadcrumb, {
noTrailingSlash: true,
className: classNames
}, path.map((entry, idx) => {
const isCurrentPage = idx === path.length - 1;
return /*#__PURE__*/React.createElement(react.BreadcrumbItem, {
key: entry.id,
isCurrentPage: isCurrentPage,
onClick: e => clickHandler(e, idx),
href: "#"
}, entry.title);
}));
};
AddSelectBreadcrumbs.propTypes = {
multi: index.default.bool,
onClick: index.default.func,
path: index.default.array
};
AddSelectBreadcrumbs.displayName = componentName;
exports.AddSelectBreadcrumbs = AddSelectBreadcrumbs;