@massds/mayflower-react
Version:
React versions of Mayflower design system UI components
50 lines (48 loc) • 2.06 kB
JavaScript
;
exports.__esModule = true;
exports["default"] = void 0;
var _react = _interopRequireDefault(require("react"));
var _propTypes = _interopRequireDefault(require("prop-types"));
function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
/**
* AccordionWrapper module.
* @module @massds/mayflower-react/AccordionWrapper
* @requires module:@massds/mayflower-assets/scss/03-organisms/accordion-wrapper
*/
var AccordionWrapper = function AccordionWrapper(props) {
var children = props.children;
return /*#__PURE__*/_react["default"].createElement("div", {
className: "ma__accordion-wrapper"
}, _react["default"].Children.map(children, function (child) {
if (/*#__PURE__*/_react["default"].isValidElement(child)) {
var clone = /*#__PURE__*/_react["default"].cloneElement(child, {
secondary: props.secondary,
emphasize: props.emphasize,
border: props.border,
headerLevel: props.headerLevel
});
return clone;
}
return /* eslint-disable-next-line no-console */console.warn('Warning! You can only pass an AccordionItem child to AccordionWrapper.');
}));
};
AccordionWrapper.propTypes = process.env.NODE_ENV !== "production" ? {
/** Only AccordionItem can be passed as a Child to the AccordionWrapper */
children: _propTypes["default"].oneOfType([_propTypes["default"].element, _propTypes["default"].arrayOf(_propTypes["default"].element)]),
/** Whether accordion children are emphasized or not. */
emphasize: _propTypes["default"].bool,
/** Whether accordion children are with border or not. */
border: _propTypes["default"].bool,
/** Whether accordion is a primary or secondary accordion. */
secondary: _propTypes["default"].bool,
/** The heading levels of children accordion */
headerLevel: _propTypes["default"].number
} : {};
AccordionWrapper.defaultProps = {
border: true,
emphasize: true,
secondary: false,
headerLevel: 2
};
var _default = exports["default"] = AccordionWrapper;
module.exports = exports.default;