json-joy
Version:
Collection of libraries for building collaborative editing apps.
82 lines (81 loc) • 4.74 kB
JavaScript
export var SESSION;
(function (SESSION) {
/**
* Session ID which is reserved by the JSON CRDT Patch protocol for internal
* usage. This session ID cannot be used by users when editing the documents.
*/
SESSION[SESSION["SYSTEM"] = 0] = "SYSTEM";
/**
* The only valid session ID for CRDT ran in the server clock mode.
*/
SESSION[SESSION["SERVER"] = 1] = "SERVER";
/**
* Use this session ID when you want to apply a patch globally, without
* attributing it to any specific user. For example, when the initial document
* is created, the default patch can be applied on all clients to result in
* the same initial state on all clients.
*
* @todo Rename or alias this to `SCHEMA`.
*/
SESSION[SESSION["GLOBAL"] = 2] = "GLOBAL";
/**
* Session ID used for models that are not shared with other users. For
* example, when a user is editing a document in a local editor, these
* documents could capture local information, like the cursor position, which
* is not shared with other users.
*/
SESSION[SESSION["LOCAL"] = 3] = "LOCAL";
/** Max allowed session ID, they are capped at 53-bits. */
SESSION[SESSION["MAX"] = 9007199254740991] = "MAX";
})(SESSION || (SESSION = {}));
export var SYSTEM_SESSION_TIME;
(function (SYSTEM_SESSION_TIME) {
SYSTEM_SESSION_TIME[SYSTEM_SESSION_TIME["ORIGIN"] = 0] = "ORIGIN";
SYSTEM_SESSION_TIME[SYSTEM_SESSION_TIME["UNDEFINED"] = 1] = "UNDEFINED";
})(SYSTEM_SESSION_TIME || (SYSTEM_SESSION_TIME = {}));
export var JsonCrdtDataType;
(function (JsonCrdtDataType) {
JsonCrdtDataType[JsonCrdtDataType["con"] = 0] = "con";
JsonCrdtDataType[JsonCrdtDataType["val"] = 1] = "val";
JsonCrdtDataType[JsonCrdtDataType["obj"] = 2] = "obj";
JsonCrdtDataType[JsonCrdtDataType["vec"] = 3] = "vec";
JsonCrdtDataType[JsonCrdtDataType["str"] = 4] = "str";
JsonCrdtDataType[JsonCrdtDataType["bin"] = 5] = "bin";
JsonCrdtDataType[JsonCrdtDataType["arr"] = 6] = "arr";
})(JsonCrdtDataType || (JsonCrdtDataType = {}));
export var JsonCrdtPatchOpcode;
(function (JsonCrdtPatchOpcode) {
JsonCrdtPatchOpcode[JsonCrdtPatchOpcode["new_con"] = 0] = "new_con";
JsonCrdtPatchOpcode[JsonCrdtPatchOpcode["new_val"] = 1] = "new_val";
JsonCrdtPatchOpcode[JsonCrdtPatchOpcode["new_obj"] = 2] = "new_obj";
JsonCrdtPatchOpcode[JsonCrdtPatchOpcode["new_vec"] = 3] = "new_vec";
JsonCrdtPatchOpcode[JsonCrdtPatchOpcode["new_str"] = 4] = "new_str";
JsonCrdtPatchOpcode[JsonCrdtPatchOpcode["new_bin"] = 5] = "new_bin";
JsonCrdtPatchOpcode[JsonCrdtPatchOpcode["new_arr"] = 6] = "new_arr";
JsonCrdtPatchOpcode[JsonCrdtPatchOpcode["ins_val"] = 9] = "ins_val";
JsonCrdtPatchOpcode[JsonCrdtPatchOpcode["ins_obj"] = 10] = "ins_obj";
JsonCrdtPatchOpcode[JsonCrdtPatchOpcode["ins_vec"] = 11] = "ins_vec";
JsonCrdtPatchOpcode[JsonCrdtPatchOpcode["ins_str"] = 12] = "ins_str";
JsonCrdtPatchOpcode[JsonCrdtPatchOpcode["ins_bin"] = 13] = "ins_bin";
JsonCrdtPatchOpcode[JsonCrdtPatchOpcode["ins_arr"] = 14] = "ins_arr";
JsonCrdtPatchOpcode[JsonCrdtPatchOpcode["del"] = 16] = "del";
JsonCrdtPatchOpcode[JsonCrdtPatchOpcode["nop"] = 17] = "nop";
})(JsonCrdtPatchOpcode || (JsonCrdtPatchOpcode = {}));
export var JsonCrdtPatchOpcodeOverlay;
(function (JsonCrdtPatchOpcodeOverlay) {
JsonCrdtPatchOpcodeOverlay[JsonCrdtPatchOpcodeOverlay["new_con"] = 0] = "new_con";
JsonCrdtPatchOpcodeOverlay[JsonCrdtPatchOpcodeOverlay["new_val"] = 8] = "new_val";
JsonCrdtPatchOpcodeOverlay[JsonCrdtPatchOpcodeOverlay["new_obj"] = 16] = "new_obj";
JsonCrdtPatchOpcodeOverlay[JsonCrdtPatchOpcodeOverlay["new_vec"] = 24] = "new_vec";
JsonCrdtPatchOpcodeOverlay[JsonCrdtPatchOpcodeOverlay["new_str"] = 32] = "new_str";
JsonCrdtPatchOpcodeOverlay[JsonCrdtPatchOpcodeOverlay["new_bin"] = 40] = "new_bin";
JsonCrdtPatchOpcodeOverlay[JsonCrdtPatchOpcodeOverlay["new_arr"] = 48] = "new_arr";
JsonCrdtPatchOpcodeOverlay[JsonCrdtPatchOpcodeOverlay["ins_val"] = 72] = "ins_val";
JsonCrdtPatchOpcodeOverlay[JsonCrdtPatchOpcodeOverlay["ins_obj"] = 80] = "ins_obj";
JsonCrdtPatchOpcodeOverlay[JsonCrdtPatchOpcodeOverlay["ins_vec"] = 88] = "ins_vec";
JsonCrdtPatchOpcodeOverlay[JsonCrdtPatchOpcodeOverlay["ins_str"] = 96] = "ins_str";
JsonCrdtPatchOpcodeOverlay[JsonCrdtPatchOpcodeOverlay["ins_bin"] = 104] = "ins_bin";
JsonCrdtPatchOpcodeOverlay[JsonCrdtPatchOpcodeOverlay["ins_arr"] = 112] = "ins_arr";
JsonCrdtPatchOpcodeOverlay[JsonCrdtPatchOpcodeOverlay["del"] = 128] = "del";
JsonCrdtPatchOpcodeOverlay[JsonCrdtPatchOpcodeOverlay["nop"] = 136] = "nop";
})(JsonCrdtPatchOpcodeOverlay || (JsonCrdtPatchOpcodeOverlay = {}));