UNPKG

mic-inspector

Version:

A react inspector which a most similar of Chorme DevTools inspector

32 lines (31 loc) 1.18 kB
import React from 'react'; import { GetterValue } from '../getter-value'; import { ObjectValue } from '../object-value'; import { StringValue } from '../string-value'; import { UnknownValue } from '../unknown-value'; import { NumberValue } from '../number-value'; /** * A method to render the property value * @param descriptor The property descriptor * @param preview A boolean represents whether display mode of object properties are preview */ export const renderValue = (descriptor, preview = false) => { const { get, owner } = descriptor; // if get accessor existed if (get) { return React.createElement(GetterValue, { owner: owner, value: get }); } const { value } = descriptor; switch (typeof value) { case 'number': return React.createElement(NumberValue, { value: value }); case 'string': return React.createElement(StringValue, { value: value }); case 'object': if (value) { return React.createElement(ObjectValue, { preview: preview, value: value }); } break; } return React.createElement(UnknownValue, { value: value }); };