@massds/mayflower-react
Version:
React versions of Mayflower design system UI components
102 lines (95 loc) • 3.44 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"));
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
/**
* TeaserListing module.
* @module @massds/mayflower-react/TeaserListing
* @requires module:@massds/mayflower-assets/scss/03-organisms/teaser-listing
*/
/**
List wrapper
*/
var TeaserListing = function TeaserListing(_ref) {
var children = _ref.children;
return /*#__PURE__*/_react["default"].createElement("section", {
className: "ma__teaser-listing"
}, /*#__PURE__*/_react["default"].createElement("div", {
className: "ma__teaser-listing__container"
}, children));
};
TeaserListing.propTypes = process.env.NODE_ENV !== "production" ? {
/** React children to render */
children: _propTypes["default"].node.isRequired
} : {};
TeaserListing.displayName = 'TeaserListing';
var _default = exports["default"] = TeaserListing;
/**
Feature Items wrapper
*/
var TeaserListingFeatures = function TeaserListingFeatures(_ref2) {
var children = _ref2.children,
stacked = _ref2.stacked;
var featuredClasses = (0, _classnames["default"])('ma__teaser-listing__featured-items', {
stacked: stacked,
'side-by-side': !stacked
});
return /*#__PURE__*/_react["default"].createElement("div", {
className: featuredClasses
}, children);
};
TeaserListingFeatures.propTypes = process.env.NODE_ENV !== "production" ? {
/** Stacked if true, side-by-side if false. */
stacked: _propTypes["default"].bool,
/** React children to render */
children: _propTypes["default"].node.isRequired
} : {};
TeaserListingFeatures.defaultProps = {
stacked: false
};
TeaserListing.Features = TeaserListingFeatures;
TeaserListing.Features.displayName = 'TeaserListing.Features';
/**
List Items wrapper
*/
var TeaserListingItems = function TeaserListingItems(_ref3) {
var _classNames;
var columns = _ref3.columns,
children = _ref3.children;
var itemsClasses = (0, _classnames["default"])((_classNames = {
'ma__teaser-listing__items': true
}, _classNames["ma__teaser-listing__" + columns + "-col-grid"] = columns, _classNames));
return /*#__PURE__*/_react["default"].createElement("ul", {
className: itemsClasses
}, children);
};
TeaserListingItems.propTypes = process.env.NODE_ENV !== "production" ? {
/** Set for two column or three column layout for large screens. (Both display the same at smaller screen widths) */
columns: _propTypes["default"].oneOf([2, 3]),
/** React children to render */
children: _propTypes["default"].node.isRequired
} : {};
TeaserListingItems.defaultProps = {
columns: 2
};
TeaserListing.Items = TeaserListingItems;
TeaserListing.Items.displayName = 'TeaserListing.Items';
/**
List Item
*/
var TeaserListingItem = function TeaserListingItem(_ref4) {
var children = _ref4.children;
return /*#__PURE__*/_react["default"].createElement("li", {
className: "ma__teaser-listing__item"
}, children);
};
TeaserListingItem.propTypes = process.env.NODE_ENV !== "production" ? {
/** React children to render */
children: _propTypes["default"].node.isRequired
} : {};
TeaserListing.Item = TeaserListingItem;
TeaserListing.Item.displayName = 'TeaserListing.Item';
module.exports = exports.default;