UNPKG

clickable-json

Version:

Interactive JSON and JSON CRDT viewer and editor

25 lines 1.19 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.JsonCrdtObjectLayout = void 0; const tslib_1 = require("tslib"); const React = require("react"); const ObjectLayout_1 = require("../ObjectLayout"); const style_1 = require("../context/style"); const focus_1 = require("../context/focus"); const utils_1 = require("./utils"); const JsonCrdtObjectLayout = (_a) => { var { node } = _a, rest = tslib_1.__rest(_a, ["node"]); const { collapsed: startsCollapsed } = (0, style_1.useStyles)(); const { focused } = (0, focus_1.useFocus)(); const [collapsed, setCollapsed] = React.useState(startsCollapsed); const handleBracketClick = () => { if (!collapsed && (0, utils_1.id)(node) === focused) setCollapsed(true); }; return (React.createElement(ObjectLayout_1.ObjectLayout, Object.assign({ collapsed: collapsed, onCollapserClick: () => setCollapsed(!collapsed), onBracketClick: handleBracketClick, onCollapsedClick: () => { if (collapsed) setCollapsed(false); } }, rest))); }; exports.JsonCrdtObjectLayout = JsonCrdtObjectLayout; //# sourceMappingURL=JsonCrdtObjectLayout.js.map