@massds/mayflower-react
Version:
React versions of Mayflower design system UI components
69 lines (56 loc) • 2.86 kB
JavaScript
"use strict";
exports.__esModule = true;
exports["default"] = void 0;
var _react = _interopRequireDefault(require("react"));
var _propTypes = _interopRequireDefault(require("prop-types"));
var _classnames = _interopRequireDefault(require("classnames"));
var _index = _interopRequireDefault(require("../Paragraph/index.js"));
var _index2 = _interopRequireDefault(require("../PublishState/index.js"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
/**
* PageHeader module.
* @module @massds/mayflower-react/PageHeader
* @requires module:@massds/mayflower-assets/scss/03-organisms/page-header
* @requires module:@massds/mayflower-assets/scss/01-atoms/publish-state
*/
// import child components
var PageHeader = function PageHeader(pageHeader) {
var category = pageHeader.category,
title = pageHeader.title,
subTitle = pageHeader.subTitle,
optionalContents = pageHeader.optionalContents,
publishState = pageHeader.publishState;
var pageHeaderClasses = (0, _classnames["default"])('ma__page-header', {
'ma__page-header--has-optional-content': optionalContents
});
return /*#__PURE__*/_react["default"].createElement("section", {
className: pageHeaderClasses
}, /*#__PURE__*/_react["default"].createElement("div", {
className: "ma__page-header__content"
}, publishState && /*#__PURE__*/_react["default"].createElement("div", {
className: "ma__page-header__publish-state"
}, /*#__PURE__*/_react["default"].createElement(_index2["default"], publishState)), category && /*#__PURE__*/_react["default"].createElement("div", {
className: "ma__page-header__category"
}, category), /*#__PURE__*/_react["default"].createElement("h1", {
className: "ma__page-header__title"
}, category && /*#__PURE__*/_react["default"].createElement("span", {
className: "visually-hidden"
}, /*#__PURE__*/_react["default"].createElement("span", null, category), /*#__PURE__*/_react["default"].createElement("span", null, "\xA0")), title), subTitle && /*#__PURE__*/_react["default"].createElement("div", {
className: "ma__page-header__sub-title"
}, subTitle)));
};
PageHeader.propTypes = process.env.NODE_ENV !== "production" ? {
/** render publish state above category */
publishState: _propTypes["default"].shape(_index2["default"].propTypes),
/** render category/prefix above title */
category: _propTypes["default"].string,
/** Render title text */
title: _propTypes["default"].string,
/** Render subTitle text */
subTitle: _propTypes["default"].string,
/** optional array of paragraphs `@atoms/headings/CompHeading` */
optionalContents: _propTypes["default"].arrayOf(_propTypes["default"].shape(_index["default"].propTypes))
} : {};
var _default = PageHeader;
exports["default"] = _default;
module.exports = exports.default;