json-joy
Version:
Collection of libraries for building collaborative editing apps.
23 lines (22 loc) • 706 B
JavaScript
import * as ext from './ext';
import { Extensions } from '../json-crdt/extensions/Extensions';
import { Model } from '../json-crdt/model';
const extensions = new Extensions();
extensions.register(ext.cnt);
extensions.register(ext.mval);
extensions.register(ext.peritext);
extensions.register(ext.quill);
export { ext };
export class ModelWithExt {
static ext = ext;
static create = (schema, sidOrClock = Model.sid()) => {
const model = Model.create(schema, sidOrClock);
model.ext = extensions;
return model;
};
static load = (data, sid, schema) => {
const model = Model.load(data, sid, schema);
model.ext = extensions;
return model;
};
}