clickable-json
Version:
Interactive JSON and JSON CRDT viewer and editor
26 lines • 1.15 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.JsonCrdtConstant = void 0;
const React = require("react");
const JsonAtom_1 = require("../JsonAtom");
const ClickableJson_1 = require("../ClickableJson");
const focus_1 = require("../context/focus");
const JsonCrdtConstant = ({ id, view }) => {
const { focus } = (0, focus_1.useFocus)();
const [viewJson, setViewJson] = React.useState(false);
const handleAtomClick = () => {
if (view && typeof view === 'object') {
setViewJson(!viewJson);
}
};
if (!viewJson) {
return React.createElement(JsonAtom_1.JsonAtom, { value: view, onClick: handleAtomClick });
}
return (React.createElement("span", { style: { display: 'inline-block', verticalAlign: 'top', margin: '-1px' } },
React.createElement(ClickableJson_1.ClickableJson, { readonly: true, compact: true, noCollapseToggles: true, pfx: id, doc: view, onFocus: (p) => {
if (p !== null)
focus(id);
} })));
};
exports.JsonCrdtConstant = JsonCrdtConstant;
//# sourceMappingURL=JsonCrdtConstant.js.map
;