UNPKG

clickable-json

Version:

Interactive JSON and JSON CRDT viewer and editor

20 lines 962 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.PushElement = void 0; const React = require("react"); const ArrayInsert_1 = require("../../../inserts/ArrayInsert"); const focus_1 = require("../../../context/focus"); const utils_1 = require("../../utils"); const context_1 = require("../../context"); const PushElement = ({ node }) => { const { model } = (0, context_1.useJsonCrdt)(); const isFocused = (0, focus_1.useIsFocused)((0, utils_1.id)(node)); const handleSubmit = React.useCallback((json, type) => { const valueId = (0, utils_1.createValue)(model, json, type, true); const nodeApi = model.api.wrap(node.node); nodeApi.set([[nodeApi.view().length, valueId]]); }, [node.node]); return React.createElement(ArrayInsert_1.ArrayInsert, { withType: true, visible: isFocused, onSubmit: handleSubmit }); }; exports.PushElement = PushElement; //# sourceMappingURL=PushElement.js.map