@uiw/react-json-view
Version:
JSON viewer for react.
50 lines • 1.41 kB
JavaScript
import _extends from "@babel/runtime/helpers/extends";
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/objectWithoutPropertiesLoose";
var _excluded = ["as", "render"];
import { useSectionStore } from "../store/Section.js";
import { useSectionRender } from "../utils/useRender.js";
import { jsx as _jsx } from "react/jsx-runtime";
export var KeyName = props => {
var {
KeyName: Comp = {}
} = useSectionStore();
useSectionRender(Comp, props, 'KeyName');
return null;
};
KeyName.displayName = 'JVR.KeyName';
export var KeyNameComp = props => {
var {
children,
value,
parentValue,
keyName,
keys
} = props;
var isNumber = typeof children === 'number';
var style = {
color: isNumber ? 'var(--w-rjv-key-number, #268bd2)' : 'var(--w-rjv-key-string, #002b36)'
};
var {
KeyName: Comp = {}
} = useSectionStore();
var {
as,
render
} = Comp,
reset = _objectWithoutPropertiesLoose(Comp, _excluded);
reset.style = _extends({}, reset.style, style);
var Elm = as || 'span';
var child = render && typeof render === 'function' && render(_extends({}, reset, {
children
}), {
value,
parentValue,
keyName,
keys: keys || (keyName ? [keyName] : [])
});
if (child) return child;
return /*#__PURE__*/_jsx(Elm, _extends({}, reset, {
children: children
}));
};
KeyNameComp.displayName = 'JVR.KeyNameComp';