ansuz
3598c93098
move new hyperjson into common
9 years ago
ansuz
103bb69daa
move custom hyperscript into common
9 years ago
ansuz
b83fb7b823
improve brFix logic
...
stop exporting functions which we wish to deprecate
9 years ago
ansuz
cb979844f6
implement text patching at application layer
9 years ago
ansuz
4a41575e6d
accept onLocal in config
9 years ago
ansuz
d3c2c901b6
implement cursor transformation in a common library
9 years ago
ansuz
92d89f6cac
start to factor sharejs into two modules
9 years ago
ansuz
13dc77b7f6
remove commented line
9 years ago
ansuz
41e635b2e5
realtime-input.js : turn on logging
9 years ago
Yann Flory
69e8e18283
Remove the pipe character in the hash
9 years ago
ansuz
d62e9fc1c9
add a missing semicolon
9 years ago
Yann Flory
c32045d7d0
Fix an issue with missing characters when several users were typing at the same time
9 years ago
Yann Flory
be09a1808d
Remove old code from realtime-input
9 years ago
Yann Flory
6884b0890a
Fix the typong tests not working properly
9 years ago
Yann Flory
e207d8b579
Merge branch 'diffdom' into netflux
9 years ago
ansuz
f4c5b2a996
Add sane defaults to TextPatcher diffs
9 years ago
ansuz
259772dd62
Turn on TextPatcher logging for _socket
9 years ago
ansuz
0537c28919
Add switchable logging to TextPatcher.js
9 years ago
Caleb James DeLisle
8a36963582
Enable ChainPad PARANOIA mode but remove the part which causes most slowness
9 years ago
ansuz
19cd991dba
trim dead code, comment, very minor optimizations
9 years ago
ansuz
9f45ccb2d9
use console.error for stack traces
9 years ago
ansuz
368d72b337
add missing semicolons to TextPatcher.js
9 years ago
ansuz
851ccfbdb6
detect falsey operations in OT and ignore them
9 years ago
ansuz
400f6efde1
json-ot.js : jshint compliance
9 years ago
ansuz
ca94d30386
detect falsey operations in OT and ignore them
9 years ago
ansuz
9f9cd8d8cd
realtime-input.js : fixes for jshint compliance
9 years ago
ansuz
793149a608
json-ot.js : jshint compliance
9 years ago
ansuz
06a3b63923
jshint compliance for toolbar.js
9 years ago
ansuz
5cead3fad3
add missing semicolons to TextPatcher.js
9 years ago
ansuz
94e57e4a26
update location of text-patcher.js
9 years ago
ansuz
b37dab1f49
Merge branch 'diffdom' into netflux
...
Simple cleanup and unit tests
9 years ago
ansuz
6b9d982d40
stabilize _socket/realtime-input.js
...
...as common/RealtimeTextSocket.js
9 years ago
ansuz
39071021eb
stabilize typingTest.js as /common/TypingTests.js
9 years ago
ansuz
9805958ad7
stabilize text-patcher.js into /common/TextPatcher.js
9 years ago
ansuz
7782069dbd
Merge pull request #15 from xwiki-labs/diffdom
...
merge diffdom into netflux
9 years ago
ansuz
a1f9b10175
remove offending line from chainpad entirely
...
RTCHAINPAD-3
9 years ago
ansuz
4ba68eb2bf
fix leaky variable in chainpad
...
Patch.transform declared a 'toTransform' variable without using 'var'
this caused it to leak onto the window during operational transformations
9 years ago
ansuz
05108efdfa
correct chainpad's transformation function
...
addresses RTCHAINPAD-3
Pending further testing, this change will still need
to be corrected in https://github.com/xwiki-contrib/chainpad/
9 years ago
Yann Flory
713c90242b
Hide the usernames when they have not been changed
9 years ago
Yann Flory
0b3d6e15b8
Replace the Netflux old client (netflux.js) by the Netflux2 client.
...
Move the WebRTC peer-to-peer use case in /padrtc, which still uses the old
Netflux client
Use es6-promises.min.js to solve a issue with some browser and the new
Netflux client
9 years ago
Yann Flory
cf9f60bd57
The server don't send back anymore messages to their sender
9 years ago
Yann Flory
eb4ea7a6b0
Remove the content from the ACK messages sent by the server
9 years ago
Yann Flory
ba4faea939
Update the pads to run with the latest improvements to the websocket server
9 years ago
Yann Flory
5ef7e29a9b
Add the latest changes from _socket into the netflux pad
9 years ago
ansuz
b59a14c5ac
merge hyperjson changes from realtime xwiki
...
more resilient class serialization.
comments
9 years ago
Yann Flory
b41f0e8c50
Merge branch 'cjd-fixed-it-with-hax' into netflux2
9 years ago
ansuz
c50690349b
comments describing the role of each argument
9 years ago
ansuz
96e03fcfa4
Use latest chainpad without mutations
9 years ago
ansuz
d5772c6315
when json-ot produces json that fails to parse...
...
export the relevant data to a window variable so we can inspect it better
9 years ago
ansuz
6c340a6527
chainpad testing = true, reject non-compliant messages
9 years ago
ansuz
afa1104d85
Pull the cursor out of bogus BR tarpits when it gets stuck
9 years ago
ansuz
bac0e0ff88
implement hyperjson filtering
9 years ago
ansuz
478ccbf984
revert changes to chainpad
9 years ago
Caleb James DeLisle
b372b0b77c
small change to chainpad in order to make it more likely to fail if the authDoc goes into the wrong state
9 years ago
Caleb James DeLisle
98c85cef8b
xxx
9 years ago
Caleb James DeLisle
62eabbc7ae
If a message does not match parent hash, don't delete it from storage
9 years ago
Caleb James DeLisle
dbf31798d5
json-ot triggering PARANOIA errors in ChainPad
9 years ago
Caleb James DeLisle
03932d0169
small changes to chainpad for testing
9 years ago
Caleb James DeLisle
420a7098a6
more testing and crap
9 years ago
ansuz
e066730b68
add notes about how hyperjson is to be used
9 years ago
ansuz
c047d5310f
implement optional filtering in hyperjson
...
Implemented via callback, return falsey if you want to filter an element
and all of its children from the serialized result.
Conflicts:
www/common/convert.js
9 years ago
ansuz
0d33af773f
implement optional filtering in hyperjson
...
Implemented via callback, return falsey if you want to filter an element
and all of its children from the serialized result.
9 years ago
ansuz
475ca9bea8
hyperjson.js : used split instead of filter... oops
9 years ago
ansuz
1bd5cb9e27
hyperjson.js : used split instead of filter... oops
9 years ago
ansuz
b2753ef7b7
fix string manipulation off-by-one
9 years ago
ansuz
f98fda7604
fix string manipulation off-by-one
9 years ago
ansuz
4f3fcb08a4
better error reporting when the operational transform fails to parse JSON
9 years ago
ansuz
0ff4906f0e
implement better serialization of class names
...
RTWYSIWYG-27 : poorly formed yet valid HTML caused hyperjson to produce element
selectors which hyperscript could not parse.
9 years ago
ansuz
fbe6225681
Don't attempt to use the cursor selection when it has length 0
...
RTWYSIWYG-20
RTWYSIWYG-24
9 years ago
ansuz
0c6222b5f9
better error reporting when the operational transform fails to parse JSON
9 years ago
ansuz
79a9998b13
implement better serialization of class names
...
RTWYSIWYG-27 : poorly formed yet valid HTML caused hyperjson to produce element
selectors which hyperscript could not parse.
9 years ago
ansuz
bd24821c6c
Don't attempt to use the cursor selection when it has length 0
...
RTWYSIWYG-20
RTWYSIWYG-24
9 years ago
Yann Flory
38d797a4f1
Fix issue with Chrome and WebRTC
9 years ago
Yann Flory
7237c751d5
Move 'vdom' to the main 'pad'.
...
Hide the right-hand panel (can de bisplayed with a 'debug' button)
Hide the IDs of users if they don't change their name
9 years ago
Yann Flory
e77d85bc82
Trigger an onReady() method when the user's pad is fully synced (the history is loaded)
9 years ago
Yann Flory
eca4ec699c
Ability to change the username (the user ID is displayed by default)
9 years ago
Yann Flory
6e50ae94dd
Remove unused code
9 years ago
Yann Flory
5da8560e22
Fix the user list in the toolbar keeping old data with the WebSocket server
...
Chainpad is no longer responsible for the userlist or the ping
9 years ago
Yann Flory
3a188625e0
Improve the detection of a disconnected peer to update the user list with the WebRTC service
9 years ago
Yann Flory
77e7fb5724
Fix an issue with the WebRTC service where it was impossible to join a channel once someone had left this channel
9 years ago
Yann Flory
06e5c84702
Clean some code
9 years ago
Yann Flory
b1e8bcddef
Fix the user list not working with the WebRTC service and causing major issues
9 years ago
Yann Flory
c576241104
Add a Chainpad adapter to make Chainpad know the userList
9 years ago
Yann Flory
ae8f6f7f2c
Ability to choose which protocol to use (Websocket or WebRTC) with Netflux
9 years ago
Yann Flory
b7885eb539
Fix channel history
9 years ago
ansuz
8258018c1d
Revert "fix undefined reference"
...
This reverts commit 7d65540123
.
To restore functionality in convert.js
9 years ago
ansuz
c67451bc1a
Revert "remove broken functions from convert module"
...
Because I forgot that the /render/ page was still using vdom
This reverts commit 93fb944e1f
.
9 years ago
Yann Flory
c536ecbc1c
Temp commit
9 years ago
Yann Flory
870b2dbb7e
Add the WebRTC server in Cryptpad
9 years ago
Yann Flory
c4f62fb812
First try with WebRTC
9 years ago
Yann Flory
09a06a8bc5
Replace the chainpad server by the netflux server
9 years ago
Yann Flory
60c3aceb0d
Add chatflux server
9 years ago
Yann Flory
deb2084fc5
Add the socket connection checker
9 years ago
ansuz
d3e2a2f52e
make verbose logging switchable via a conditional
9 years ago
ansuz
fefb904261
realtime input changes
9 years ago
ansuz
fd99dba4a3
modify realtime-input api to take a single object as configuration. merge netflux API
9 years ago
Yann Flory
62ba579d4a
Add Netflux API with WebSocket service V1
9 years ago
ansuz
d7b34cf6be
don't call toolbar from within realtime-input.js
9 years ago
ansuz
5e1566eaec
fix incomplete 'onAbort' block
9 years ago
ansuz
1d6ccc99a1
add 'onAbort' hook to realtime-input.js
9 years ago
ansuz
6ff5b10486
remove local diffDOM version
9 years ago
ansuz
93fb944e1f
remove broken functions from convert module
9 years ago
ansuz
7d65540123
fix undefined reference
9 years ago
ansuz
6884fabda9
Use local diffDOM instead of bower_components
...
At least until the PR gets accepted
9 years ago
ansuz
f5a8727254
remove some unused functions from cursor.js
9 years ago
ansuz
db1515c445
cursor.js : commit before cleaning up
9 years ago
ansuz
91ada5ce7a
export Operation from chainpad. for use with OT
9 years ago
ansuz
5425699f43
check if possible parent exists before checking if it contains another element
9 years ago
ansuz
67bdb8a65a
fix a bad regex that occasionally threw an error
...
'nothing to repeat'
9 years ago
ansuz
39f56d4fd1
throw error when checking for the index of a node that has no parent.
...
it probably isn't in the dom if this is the case.
Check if it's there before using this function
9 years ago
ansuz
de46be85ba
add better helpers for finding and resetting the cursor
9 years ago
ansuz
c09036bd29
snapshot cursor.js, as some things are working quite well now
9 years ago
ansuz
4eee1f5210
add orderOfNodes function to tree library
9 years ago
ansuz
7689151fc0
pull json validation for OT into its own module for reuse
9 years ago
ansuz
2c8a2406c6
cursor.js : snapshot before code deletion
9 years ago
ansuz
1beb3f5355
snapshot of treesome.js before deletion
9 years ago
ansuz
8ead5ca129
realtime-input.js : add notes regarding integration of the netflux api
9 years ago
ansuz
d1885fbab6
better jshint compliance for common files
9 years ago
ansuz
539cc3a2fa
remove unused files from common directory
9 years ago
ansuz
afa2811472
remove local version of marked.js, prefer bower version
9 years ago
ansuz
a600ece5c5
fix jshint complaints in common directory
9 years ago
ansuz
2c5a2b6023
remove unused code, add todos, fix minor errors
9 years ago
ansuz
967d636df9
address more jshint complaints
9 years ago
ansuz
f6c848385f
hyperjson.js : jshint complains about var index in for loop
9 years ago
ansuz
7f92abc7bf
Merge branch 'diffdom' of github.com:xwiki-labs/cryptpad into demoEffect
9 years ago
Caleb James DeLisle
86c4a69a97
Switch to patching with DiffDOM for testing :D
9 years ago
ansuz
653ba33b65
Merge branch 'vdom' of github.com:xwiki-labs/cryptpad into demoEffect
9 years ago
Caleb James DeLisle
2031191261
testing=false
9 years ago
Caleb James DeLisle
37db31b09e
Attempt an operational transformation and if the result is not valid JSON then fail
9 years ago
ansuz
c22269e36e
cursor.js : make the console a little less noisy
9 years ago
ansuz
99a23154b7
files for unstubbing OT
9 years ago
ansuz
c740c0ec92
add stuff for walking the tree
9 years ago
ansuz
ad184b1114
add stuff to recover the cursor
9 years ago
ansuz
019750bea8
realtime-input.js : callback onInit if exists
9 years ago
ansuz
7102a0a164
make rainbows
9 years ago
ansuz
d2f6c63d8a
realtime-input.js : changed the api and left an undefined reference. fixed
9 years ago
ansuz
d96124229b
clean up realtime-input.js, break API
...
use an object for configuration, so as to be more extensible.
modify applications which use the API to match.
9 years ago
ansuz
ed03a48092
minor patches that make things a bit more reliable, still some bugs
9 years ago
ansuz
ac0f7852fc
committing latest changes for review
9 years ago
ansuz
2016550e01
virtual-dom.js : identify problem area?
9 years ago
ansuz
fd1e5d5735
better styling on render page
...
now solarized dark
9 years ago
ansuz
b18dfef656
sharejs textarea is used by realtime-input.js
9 years ago
ansuz
997ce1147f
realtime input wraps up basic realtime stuff
...
so we don't have to rewrite the realtime api for every application.
starting to move towards a portable api :D
9 years ago
ansuz
40b8c0efe8
drop in chjj's marked.js for a cool demo
9 years ago
ansuz
0c2e057f9d
export component APIs from convert
9 years ago
ansuz
b958caebdd
dom, vdom, hyperjson, and an api which provides a matrix of conversions
9 years ago
ansuz
2ed9f0867a
Merge branch 'master' of github.com:xwiki-labs/cryptpad into codepad
9 years ago
ansuz
ff52f050e5
chainpad.js : pull in upstream changes to chainpad.js. new APIs
9 years ago
ansuz
9fc44cdf0c
add notes to clientside js files
9 years ago
Yann Flory
9a932a3f56
Patch Realtime into CodeMirror in CryptPad
9 years ago