@talend/react-components
Version:
Set of react components.
48 lines (47 loc) • 1.65 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = TreeNodeList;
var _propTypes = _interopRequireDefault(require("prop-types"));
var _TreeNode = _interopRequireDefault(require("../TreeNode"));
var _lodash = require("lodash");
var _jsxRuntime = require("react/jsx-runtime");
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
/**
* Render a list of TreeNode (branch or leaf).
*/function TreeNodeList({
treeClassName,
nodeClassName,
...props
}) {
return /*#__PURE__*/(0, _jsxRuntime.jsx)("ul", {
className: treeClassName,
children: props.value.map((node, index) => /*#__PURE__*/(0, _jsxRuntime.jsx)("li", {
className: nodeClassName,
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_TreeNode.default, {
...props,
...node,
index: props.index || 0,
dataKey: (0, _lodash.get)(node, 'dataKey'),
value: (0, _lodash.get)(node, 'value'),
jsonpath: props.getJSONPath((0, _lodash.get)(node, 'dataKey'), {
jsonpath: props.jsonpath,
type: props.type,
value: node
})
})
}, index))
});
}
TreeNodeList.propTypes = {
dataKey: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number]),
getJSONPath: _propTypes.default.func.isRequired,
index: _propTypes.default.number,
jsonpath: _propTypes.default.string,
nodeClassName: _propTypes.default.string,
treeClassName: _propTypes.default.string,
type: _propTypes.default.string,
value: _propTypes.default.array.isRequired
};
//# sourceMappingURL=TreeNodeList.component.js.map