collaborative-ui
Version:
React component library for building real-time collaborative editing applications.
18 lines (17 loc) • 804 B
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.JsonCrdtModelVerbose = void 0;
const tslib_1 = require("tslib");
const Encoder_1 = require("json-joy/lib/json-crdt/codec/structural/verbose/Encoder");
const React = tslib_1.__importStar(require("react"));
const JsonBlock_1 = require("../../JsonBlock");
const useModelTick_1 = require("../../hooks/useModelTick");
const JsonCrdtModelVerbose = ({ model }) => {
(0, useModelTick_1.useModelTick)(model);
const encoder = React.useMemo(() => new Encoder_1.Encoder(), []);
const value = React.useMemo(() => {
return encoder.encode(model);
}, [encoder, model, model.tick]);
return React.createElement(JsonBlock_1.JsonBlock, { value: value });
};
exports.JsonCrdtModelVerbose = JsonCrdtModelVerbose;
;