@tpr/govuk-react-jsx
Version:
[](https://github.com/alphagov/govuk-frontend/releases/tag/v4.0.1) [ • 3.01 kB
JavaScript
;
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'
};