UNPKG

ndla-ui

Version:

UI component library for NDLA.

77 lines (60 loc) 1.93 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); var _react = require('react'); var _react2 = _interopRequireDefault(_react); var _propTypes = require('prop-types'); var _propTypes2 = _interopRequireDefault(_propTypes); var _reactBemHelper = require('react-bem-helper'); var _reactBemHelper2 = _interopRequireDefault(_reactBemHelper); var _ndlaUtil = require('ndla-util'); var _common = require('ndla-icons/common'); var _BreadcrumbItem = require('./BreadcrumbItem'); var _BreadcrumbItem2 = _interopRequireDefault(_BreadcrumbItem); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } /** * Copyright (c) 2016-present, NDLA. * * This source code is licensed under the GPLv3 license found in the * LICENSE file in the root directory of this source tree. * */ var classes = (0, _reactBemHelper2.default)({ name: 'breadcrumb', prefix: 'c-' }); var Breadcrumb = function Breadcrumb(_ref) { var children = _ref.children, items = _ref.items; return _react2.default.createElement( 'div', classes(), children, _react2.default.createElement( 'ol', classes('list'), items.map(function (item, i) { return _react2.default.createElement( _BreadcrumbItem2.default, { classes: classes, home: i === 0, key: (0, _ndlaUtil.uuid)(), isCurrent: i === items.length - 1, to: item.to, name: item.name }, i === 0 ? _react2.default.createElement(_common.Home, { className: 'c-icon--20' }) : item.name ); }) ) ); }; Breadcrumb.propTypes = { children: _propTypes2.default.node, items: _propTypes2.default.arrayOf(_propTypes2.default.shape({ to: _propTypes2.default.string.isRequired, name: _propTypes2.default.string.isRequired })) }; exports.default = Breadcrumb;