UNPKG

1.35 kBJavaScriptView Raw
1import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
2import React from 'react';
3import PropTypes from 'prop-types';
4
5var JSONValueNode = function JSONValueNode(_ref) {
6 var nodeType = _ref.nodeType,
7 styling = _ref.styling,
8 labelRenderer = _ref.labelRenderer,
9 keyPath = _ref.keyPath,
10 valueRenderer = _ref.valueRenderer,
11 value = _ref.value,
12 _ref$valueGetter = _ref.valueGetter,
13 valueGetter = _ref$valueGetter === void 0 ? function (value) {
14 return value;
15 } : _ref$valueGetter;
16 return /*#__PURE__*/React.createElement("li", styling('value', nodeType, keyPath), /*#__PURE__*/React.createElement("label", styling(['label', 'valueLabel'], nodeType, keyPath), labelRenderer(keyPath, nodeType, false, false)), /*#__PURE__*/React.createElement("span", styling('valueText', nodeType, keyPath), valueRenderer.apply(void 0, [valueGetter(value), value].concat(_toConsumableArray(keyPath)))));
17};
18
19JSONValueNode.propTypes = {
20 nodeType: PropTypes.string.isRequired,
21 styling: PropTypes.func.isRequired,
22 labelRenderer: PropTypes.func.isRequired,
23 keyPath: PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.string, PropTypes.number]).isRequired).isRequired,
24 valueRenderer: PropTypes.func.isRequired,
25 value: PropTypes.any,
26 valueGetter: PropTypes.func
27};
28export default JSONValueNode;
\No newline at end of file