Skip to content

siuying/woot-doc

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

WOOT - WithOut Operational Transform

Based on paper Real time group editors without Operational transformation.

Doc(siteId)

Doc#generateIns(pos, value)

Generate an insert operation.

Doc#generateDel(pos)

Generate a delete operation.

Doc#generateAttrib(pos, attributes)

Generate an set attributes operation.

Doc#receive(op)

Receive an operation. If the op is executable, execute it. Otherwise, push it into pool.

Doc#visiblePosition(c)

Get the visible position of a element. Returns the position of the element c in document, ignoring any invisble elements. Returns -1 if position is not found, or the c is invisible internally.

Doc#on('insert', op)

Emitted when an insert is generated locally.

Doc#on('delete', op)

Emitted when a delete is generated locally.

Doc#on('attrib', op)

Emitted when an attrib is generated locally.

Doc#on('execute', op)

Emitted when an operation from remote is executed.

Doc#toJSON()

Get an structure that can be persisted the current state of document as JSON.

Doc.fromJSON(json)

Get a Document from JSON.

Operations

Insert

Insert a character to document.

  • insert: the character to be inserted
{
  insert: char
}

Delete

Delete a character from document.

  • delete: the character to be deleted
{
  delete: char
}

Set Attribute

Update attribute of a character.

  • attrib: the character to be updated
  • value: the attributes
{
  attrib: char
  value: value
}

About

A WOOT(“WithOut Operational Transformation”) data structure for p2p collaborative apps

Resources

License

Stars

Watchers

Forks

Packages

No packages published