collaborative-ui
Version:
React component library for building real-time collaborative editing applications.
42 lines (41 loc) • 1.92 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.Multiline = exports.Default = void 0;
const tslib_1 = require("tslib");
const React = tslib_1.__importStar(require("react"));
const _1 = require(".");
const json_crdt_1 = require("json-joy/lib/json-crdt");
const JsonCrdtModel_1 = require("../JsonCrdtModel");
const JsonPatchStore_1 = require("json-joy/lib/json-crdt/json-patch/JsonPatchStore");
const CollaborativeInput_1 = require("../CollaborativeInput");
const CollaborativeFlexibleInput_1 = require("../CollaborativeFlexibleInput");
exports.default = {
component: _1.StrAdapter,
title: '<StrAdapter>',
};
const schema0 = json_crdt_1.s.obj({
id: json_crdt_1.s.con('xyz'),
name: json_crdt_1.s.str('John Doe'),
age: json_crdt_1.s.val(json_crdt_1.s.con(42)),
tags: json_crdt_1.s.arr([json_crdt_1.s.str('tag1'), json_crdt_1.s.str('tag2')]),
});
const model = json_crdt_1.Model.create(schema0);
const store = new JsonPatchStore_1.JsonPatchStore(model);
exports.Default = {
render: () => {
return (React.createElement("div", null,
React.createElement(_1.StrAdapter, { store: store, path: "/name" }, (str) => React.createElement(CollaborativeInput_1.CollaborativeInput, { str: str })),
React.createElement("br", null),
React.createElement("br", null),
React.createElement(JsonCrdtModel_1.JsonCrdtModel, { model: model })));
},
};
exports.Multiline = {
render: () => {
return (React.createElement("div", null,
React.createElement(_1.StrAdapter, { store: store, path: "/name" }, (str) => React.createElement(CollaborativeFlexibleInput_1.CollaborativeFlexibleInput, { multiline: true, str: str })),
React.createElement("br", null),
React.createElement("br", null),
React.createElement(JsonCrdtModel_1.JsonCrdtModel, { model: model })));
},
};
;