UNPKG

@tpr/govuk-react-jsx

Version:

[![govuk-frontend 4.0.1](https://img.shields.io/badge/govuk--frontend%20version-4.0.1-005EA5?logo=gov.uk&style=flat-square)](https://github.com/alphagov/govuk-frontend/releases/tag/v4.0.1) [![version](https://img.shields.io/npm/v/govuk-react-jsx.svg?styl

57 lines (49 loc) 2.82 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.Breadcrumbs = Breadcrumbs; var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")); var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties")); var _react = _interopRequireDefault(require("react")); var _Link = require("../../../utils/Link"); var _excluded = ["items", "govukClassNames", "className", "collapseOnMobile"], _excluded2 = ["href", "to", "reactListKey", "children"]; function Breadcrumbs(props) { var items = props.items, govukClassNames = props.govukClassNames, className = props.className, collapseOnMobile = props.collapseOnMobile, attributes = (0, _objectWithoutProperties2["default"])(props, _excluded); var classNames = govukClassNames || {}; classNames['govuk-breadcrumbs'] = classNames['govuk-breadcrumbs'] || 'govuk-breadcrumbs'; classNames['govuk-breadcrumbs--collapse-on-mobile'] = classNames['govuk-breadcrumbs--collapse-on-mobile'] || 'govuk-breadcrumbs--collapse-on-mobile'; classNames['govuk-breadcrumbs__list'] = classNames['govuk-breadcrumbs__list'] || 'govuk-breadcrumbs__list'; classNames['govuk-breadcrumbs__list-item'] = classNames['govuk-breadcrumbs__list-item'] || 'govuk-breadcrumbs__list-item'; classNames['govuk-breadcrumbs__link'] = classNames['govuk-breadcrumbs__link'] || 'govuk-breadcrumbs__link'; var breadcrumbs = items ? items.map(function (item, index) { var href = item.href, to = item.to, reactListKey = item.reactListKey, children = item.children, itemAttributes = (0, _objectWithoutProperties2["default"])(item, _excluded2); return href || to ? /*#__PURE__*/_react["default"].createElement("li", { key: reactListKey || index, className: classNames['govuk-breadcrumbs__list-item'] }, /*#__PURE__*/_react["default"].createElement(_Link.Link, (0, _extends2["default"])({ href: href, to: to, className: classNames['govuk-breadcrumbs__link'] }, itemAttributes), children)) : /*#__PURE__*/_react["default"].createElement("li", { key: reactListKey || index, className: classNames['govuk-breadcrumbs__list-item'], "aria-current": "page" }, children); }) : null; return /*#__PURE__*/_react["default"].createElement("div", (0, _extends2["default"])({ className: "".concat(classNames['govuk-breadcrumbs'], " ").concat(className || '', " ").concat(collapseOnMobile ? classNames['govuk-breadcrumbs--collapse-on-mobile'] : '') }, attributes), /*#__PURE__*/_react["default"].createElement("ol", { className: classNames['govuk-breadcrumbs__list'] }, breadcrumbs)); }