mic-inspector
Version:
A react inspector which a most similar of Chorme DevTools inspector
31 lines (30 loc) • 1.46 kB
JavaScript
var __rest = (this && this.__rest) || function (s, e) {
var t = {};
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
t[p] = s[p];
if (s != null && typeof Object.getOwnPropertySymbols === "function")
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
t[p[i]] = s[p[i]];
}
return t;
};
import React, { useMemo } from 'react';
import { ObjectName as ObjName } from 'react-inspector';
import { InlineComponent } from 'mic-global';
import { useStyles } from './use-styles';
import { getNameType } from '../named-descriptor/locale';
/**
* Property name
* @param param0 PropertyNameProps
*/
export function PropertyName(_a) {
var { className, name, type, dimmed, separator = ':' } = _a, props = __rest(_a, ["className", "name", "type", "dimmed", "separator"]);
const nameString = name.toString();
const currentType = useMemo(() => {
return type ? type : getNameType(nameString);
}, [type, nameString]);
return (React.createElement(InlineComponent, Object.assign({ className: useStyles(className), title: nameString, "data-separator": separator, "data-type": currentType.toString(2) }, props),
React.createElement(ObjName, { name: nameString, dimmed: dimmed }),
React.createElement("q", null, separator)));
}