import React from 'react'; import PropTypes from 'prop-types'; /** * Renders simple values (eg. strings, numbers, booleans, etc) */ const JSONValueNode = ({ nodeType, styling, labelRenderer, keyPath, valueRenderer, value, valueGetter }) => (
  • {valueRenderer(valueGetter(value), value, ...keyPath)}
  • ); JSONValueNode.propTypes = { nodeType: PropTypes.string.isRequired, styling: PropTypes.func.isRequired, labelRenderer: PropTypes.func.isRequired, keyPath: PropTypes.arrayOf( PropTypes.oneOfType([PropTypes.string, PropTypes.number]) ).isRequired, valueRenderer: PropTypes.func.isRequired, value: PropTypes.any, valueGetter: PropTypes.func }; JSONValueNode.defaultProps = { valueGetter: value => value }; export default JSONValueNode;