mic-inspector
Version:
A react inspector which a most similar of Chorme DevTools inspector
39 lines (38 loc) • 1.64 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.renderValue = void 0;
var react_1 = __importDefault(require("react"));
var getter_value_1 = require("../getter-value");
var object_value_1 = require("../object-value");
var string_value_1 = require("../string-value");
var unknown_value_1 = require("../unknown-value");
var number_value_1 = require("../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
*/
exports.renderValue = function (descriptor, preview) {
if (preview === void 0) { preview = false; }
var get = descriptor.get, owner = descriptor.owner;
// if get accessor existed
if (get) {
return react_1.default.createElement(getter_value_1.GetterValue, { owner: owner, value: get });
}
var value = descriptor.value;
switch (typeof value) {
case 'number':
return react_1.default.createElement(number_value_1.NumberValue, { value: value });
case 'string':
return react_1.default.createElement(string_value_1.StringValue, { value: value });
case 'object':
if (value) {
return react_1.default.createElement(object_value_1.ObjectValue, { preview: preview, value: value });
}
break;
}
return react_1.default.createElement(unknown_value_1.UnknownValue, { value: value });
};