UNPKG

@helpscout/hsds-react

Version:

React component library for Help Scout's Design System

77 lines (58 loc) 2.61 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); exports.__esModule = true; exports.default = void 0; var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")); var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose")); var _react = _interopRequireDefault(require("react")); var _propTypes = _interopRequireDefault(require("prop-types")); var _getValidProps = _interopRequireDefault(require("@helpscout/react-utils/dist/getValidProps")); var _PreviewCard = _interopRequireDefault(require("./PreviewCard.Context")); var _Heading = _interopRequireDefault(require("../Heading")); var _Text = _interopRequireDefault(require("../Text")); var _classnames = _interopRequireDefault(require("classnames")); var _PreviewCard2 = require("./PreviewCard.css"); var _jsxRuntime = require("react/jsx-runtime"); var PreviewCard = function PreviewCard(props) { var children = props.children, className = props.className, isNote = props.isNote, title = props.title, rest = (0, _objectWithoutPropertiesLoose2.default)(props, ["children", "className", "isNote", "title"]); var createMarkup = function createMarkup(contextProps) { var isNote = contextProps.isNote; var componentClassName = (0, _classnames.default)('c-PreviewCard', isNote && 'is-note', className); var titleMarkup = title ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_Heading.default, { className: "c-PreviewCard__title", size: "h6", children: title }) : null; return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_PreviewCard2.PreviewCardUI, (0, _extends2.default)({}, (0, _getValidProps.default)(rest), { className: componentClassName, children: [titleMarkup, /*#__PURE__*/(0, _jsxRuntime.jsx)(_Text.default, { muted: true, className: "c-PreviewCard__content", children: children })] })); }; return /*#__PURE__*/(0, _jsxRuntime.jsx)(_PreviewCard.default.Consumer, { children: function children(contextProps) { return createMarkup(contextProps); } }); }; PreviewCard.defaultProps = { 'data-cy': 'PreviewCard' }; PreviewCard.propTypes = { /** Custom class names to be added to the component. */ className: _propTypes.default.string, isNote: _propTypes.default.bool, /** Text on the Title (Heading) of the card */ title: _propTypes.default.string, /** Data attr for Cypress tests. */ 'data-cy': _propTypes.default.string }; var _default = PreviewCard; exports.default = _default;