49 lines
1.1 KiB
JavaScript
49 lines
1.1 KiB
JavaScript
'use strict';
|
|
|
|
Object.defineProperty(exports, "__esModule", {
|
|
value: true
|
|
});
|
|
|
|
var _react = require('react');
|
|
|
|
var _react2 = _interopRequireDefault(_react);
|
|
|
|
var _List = require('./List');
|
|
|
|
var _List2 = _interopRequireDefault(_List);
|
|
|
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
|
|
var NestedList = function NestedList(props) {
|
|
var children = props.children,
|
|
open = props.open,
|
|
nestedLevel = props.nestedLevel,
|
|
style = props.style;
|
|
|
|
|
|
if (!open) {
|
|
return null;
|
|
}
|
|
|
|
return _react2.default.createElement(
|
|
_List2.default,
|
|
{ style: style },
|
|
_react.Children.map(children, function (child) {
|
|
return (0, _react.isValidElement)(child) ? (0, _react.cloneElement)(child, {
|
|
nestedLevel: nestedLevel + 1
|
|
}) : child;
|
|
})
|
|
);
|
|
};
|
|
|
|
process.env.NODE_ENV !== "production" ? NestedList.propTypes = {
|
|
children: _react.PropTypes.node,
|
|
nestedLevel: _react.PropTypes.number.isRequired,
|
|
open: _react.PropTypes.bool.isRequired,
|
|
/**
|
|
* Override the inline-styles of the root element.
|
|
*/
|
|
style: _react.PropTypes.object
|
|
} : void 0;
|
|
|
|
exports.default = NestedList; |