@massds/mayflower-react
Version:
React versions of Mayflower design system UI components
53 lines (52 loc) • 2.59 kB
JavaScript
;
exports.__esModule = true;
exports["default"] = void 0;
var _react = _interopRequireDefault(require("react"));
var _propTypes = _interopRequireDefault(require("prop-types"));
var _classnames = _interopRequireDefault(require("classnames"));
var _is = _interopRequireDefault(require("is"));
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); } /**
* EmergencyAlert module.
* @module @massds/mayflower-react/EmergencyAlert
* @requires module:@massds/mayflower-assets/scss/02-molecules/emergency-alert
*/
var EmergencyAlert = function EmergencyAlert(props) {
var _classNames;
var message = props.message,
timeStamp = props.timeStamp,
link = props.link,
theme = props.theme;
var linkArgs = {
theme: theme,
linkClasses: 'ma__content-link',
TextElement: 'span'
};
var pClasses = (0, _classnames["default"])((_classNames = {
'ma__emergency-alert': true
}, _classNames["ma__emergency-alert--" + theme] = theme, _classNames));
return /*#__PURE__*/_react["default"].createElement("p", {
className: pClasses
}, /*#__PURE__*/_react["default"].createElement("span", {
className: "ma__emergency-alert__message"
}, message, timeStamp && /*#__PURE__*/_react["default"].createElement("span", {
className: "ma__emergency-alert__time-stamp"
}, timeStamp)), _is["default"].fn(link) && /*#__PURE__*/_react["default"].createElement("span", {
className: "ma__emergency-alert__link"
}, /*#__PURE__*/_react["default"].createElement("span", null, "\xA0"), link(_extends({}, linkArgs))));
};
EmergencyAlert.propTypes = process.env.NODE_ENV !== "production" ? {
/** A string that controls different color themes for the component. */
theme: _propTypes["default"].oneOf(['c-warning', 'c-primary-alt', 'c-primary', 'c-gray', 'c-error']),
/** A message describing the event. */
message: _propTypes["default"].string.isRequired,
/** A string representing the time of the event. */
timeStamp: _propTypes["default"].string,
/** An optional function whose return value is a link to take the user to page with more information. */
link: _propTypes["default"].func
} : {};
EmergencyAlert.defaultProps = {
theme: 'c-warning'
};
var _default = exports["default"] = EmergencyAlert;
module.exports = exports.default;