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

64 lines (54 loc) 3.01 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.CookieBanner = CookieBanner; var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")); var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties")); var _react = _interopRequireDefault(require("react")); var _button = require("../button"); var _Link = require("../../../utils/Link"); var _excluded = ["className", "messages"], _excluded2 = ["headingChildren", "children", "actions", "className"], _excluded3 = ["className"]; function CookieBanner(props) { var className = props.className, messages = props.messages, attributes = (0, _objectWithoutProperties2["default"])(props, _excluded); return /*#__PURE__*/_react["default"].createElement("div", (0, _extends2["default"])({ className: "govuk-cookie-banner ".concat(className || ''), "data-nosnippet": true, role: "region" }, attributes), messages.map(function (message) { var headingChildren = message.headingChildren, children = message.children, actions = message.actions, messageClassName = message.className, messageAttributes = (0, _objectWithoutProperties2["default"])(message, _excluded2); return /*#__PURE__*/_react["default"].createElement("div", (0, _extends2["default"])({ className: "govuk-cookie-banner__message govuk-width-container ".concat(messageClassName || '') }, messageAttributes), /*#__PURE__*/_react["default"].createElement("div", { className: "govuk-grid-row" }, /*#__PURE__*/_react["default"].createElement("div", { className: "govuk-grid-column-two-thirds" }, headingChildren ? /*#__PURE__*/_react["default"].createElement("h2", { className: "govuk-cookie-banner__heading govuk-heading-m" }, headingChildren) : null, /*#__PURE__*/_react["default"].createElement("div", { className: "govuk-cookie-banner__content" }, children ? typeof children === 'string' ? /*#__PURE__*/_react["default"].createElement("p", { className: "govuk-body" }, children) : children : null))), actions ? /*#__PURE__*/_react["default"].createElement("div", { className: "govuk-button-group" }, actions.map(function (action) { var actionClassName = action.className, actionAttributes = (0, _objectWithoutProperties2["default"])(action, _excluded3); return action.href || action.to ? action.type === 'button' ? /*#__PURE__*/_react["default"].createElement(_button.Button, action) : /*#__PURE__*/_react["default"].createElement(_Link.Link, (0, _extends2["default"])({}, actionAttributes, { className: "govuk-link ".concat(actionClassName || '') })) : /*#__PURE__*/_react["default"].createElement(_button.Button, action); })) : null); })); } CookieBanner.defaultProps = { 'aria-label': 'Cookie banner' };