UNPKG

@massds/mayflower-react

Version:

React versions of Mayflower design system UI components

64 lines (63 loc) 3.61 kB
"use strict"; exports.__esModule = true; exports["default"] = void 0; var _react = _interopRequireDefault(require("react")); var _propTypes = _interopRequireDefault(require("prop-types")); var _IconArrow = _interopRequireDefault(require("../Icon/IconArrow.js")); 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); } /** * CalloutLink module. * @module @massds/mayflower-react/CalloutLink * @requires module:@massds/mayflower-assets/scss/02-molecules/callout-link * @requires module:@massds/mayflower-assets/scss/01-atoms/svg-icons * @requires module:@massds/mayflower-assets/scss/01-atoms/svg-loc-icons */ // eslint-disable-next-line import/no-unresolved var CalloutLink = function CalloutLink(calloutLink) { var calloutLinkTheme = calloutLink.theme ? " ma__callout-link--" + calloutLink.theme : ''; var classNames = "ma__callout-link" + calloutLinkTheme; return /*#__PURE__*/_react["default"].createElement("div", { className: classNames }, /*#__PURE__*/_react["default"].createElement("a", _extends({ href: calloutLink.href, title: calloutLink.info }, calloutLink.anchorAttributes), (calloutLink.eyebrow || calloutLink.time) && /*#__PURE__*/_react["default"].createElement("div", { className: "ma__callout-link__header" }, /*#__PURE__*/_react["default"].createElement("span", { className: "ma__callout-link__eyebrow" }, calloutLink.eyebrow), /*#__PURE__*/_react["default"].createElement("span", { className: "ma__callout-link__time" }, calloutLink.time)), /*#__PURE__*/_react["default"].createElement("span", { className: "ma__callout-link__container" }, /*#__PURE__*/_react["default"].createElement("span", { className: "ma__callout-link__text" }, /*#__PURE__*/_react["default"].createElement("span", null, calloutLink.text), /*#__PURE__*/_react["default"].createElement("span", null, "\xA0"), /*#__PURE__*/_react["default"].createElement(_IconArrow["default"], { height: ".8em", width: ".8em" }))), calloutLink.emphasized && /*#__PURE__*/_react["default"].createElement("span", { className: "ma__callout-link__emphasized" }, calloutLink.emphasized), calloutLink.description && /*#__PURE__*/_react["default"].createElement("p", { className: "ma__callout-link__description" }, calloutLink.description))); }; CalloutLink.propTypes = process.env.NODE_ENV !== "production" ? { /** The heading text */ text: _propTypes["default"].string.isRequired, /** The link the callout is going to */ href: _propTypes["default"].string.isRequired, /** All other attributes of the a tag */ anchorAttributes: _propTypes["default"].object, /** Add more information about the link */ info: _propTypes["default"].string, /** Add description text under the title text */ description: _propTypes["default"].string, /** Adds and eyebrow to the callout link */ eyebrow: _propTypes["default"].string, /** Adds a time note to the top left of the card */ time: _propTypes["default"].string, /** Adds emphasized text below the title link */ emphasized: _propTypes["default"].string, /** Change the theme of the callout link, option are default (blue) and white */ theme: _propTypes["default"].oneOf(['', 'white']) } : {}; var _default = exports["default"] = CalloutLink; module.exports = exports.default;