UNPKG

chayns-components

Version:

A set of beautiful React components for developing chayns® applications.

72 lines (69 loc) 2.55 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 _react = _interopRequireDefault(require("react")); var _propTypes = _interopRequireDefault(require("prop-types")); var _AbstractExpandableListItem = _interopRequireDefault(require("../ExpandableList/AbstractExpandableListItem")); var _ExpandableListHeader = _interopRequireDefault(require("./ExpandableListHeader")); var _ExpandableList = _interopRequireDefault(require("../ExpandableList/ExpandableList")); var _is = require("../../../utils/is"); /* eslint-disable react/forbid-prop-types */ const ExpandableListItem = _ref => { let { children, onClick, ...props } = _ref; const { noContentClass = false, className, headerClassName, open, style, onOpen, onClose, defaultOpen = false } = props; return /*#__PURE__*/_react.default.createElement(_AbstractExpandableListItem.default, { noContentClass: noContentClass, className: className, header: /*#__PURE__*/_react.default.createElement(_ExpandableList.default.Context.Consumer, null, c => /*#__PURE__*/_react.default.createElement(_ExpandableListHeader.default, (0, _extends2.default)({ onClick: function () { if ((0, _is.isFunction)(onClick)) { onClick(...arguments); } if (c && (0, _is.isFunction)(c.onToggle)) { c.onToggle(...arguments); } } }, props, { open: open === null ? c.open : open, className: headerClassName }))), clickable: true, openProp: open, style: style, onOpenProp: onOpen, onCloseProp: onClose, defaultOpen: defaultOpen }, children); }; ExpandableListItem.propTypes = { children: _propTypes.default.oneOfType([_propTypes.default.node, _propTypes.default.arrayOf(_propTypes.default.node)]).isRequired, noContentClass: _propTypes.default.bool, className: _propTypes.default.string, headerClassName: _propTypes.default.string, open: _propTypes.default.bool, style: _propTypes.default.object, onOpen: _propTypes.default.func, onClose: _propTypes.default.func, onClick: _propTypes.default.func, defaultOpen: _propTypes.default.bool, headMultiline: _propTypes.default.bool }; ExpandableListItem.displayName = 'ExpandableListItem'; var _default = ExpandableListItem; exports.default = _default; //# sourceMappingURL=ExpandableListItem.js.map