| 1234567891011121314151617181920212223242526272829303132 |
- # Text document API for text
- text = require './text' if typeof WEB is 'undefined'
- text.api =
- provides: {text:true}
- # The number of characters in the string
- getLength: -> @snapshot.length
- # Get the text contents of a document
- getText: -> @snapshot
- insert: (pos, text, callback) ->
- op = [{p:pos, i:text}]
-
- @submitOp op, callback
- op
-
- del: (pos, length, callback) ->
- op = [{p:pos, d:@snapshot[pos...(pos + length)]}]
- @submitOp op, callback
- op
-
- _register: ->
- @on 'remoteop', (op) ->
- for component in op
- if component.i != undefined
- @emit 'insert', component.p, component.i
- else
- @emit 'delete', component.p, component.d
|