Joeri Exelmans 3172f33baf Fix more bugs 3 rokov pred
..
resources aa8b621672 Implemented ghost cursors. 4 rokov pred
DisabledCells.js aa8b621672 Implemented ghost cursors. 4 rokov pred
DragHandler.js 10bc6faced Display selected cells of other users 3 rokov pred
GhostOverlays.js e3e060a88f Fix cursor path 3 rokov pred
History.js e39be44362 Fix some bugs 3 rokov pred
README.txt b1e621ed0e Fix bugs in server and client. 4 rokov pred
SelectionHandler.js 10bc6faced Display selected cells of other users 3 rokov pred
UserColors.js 10bc6faced Display selected cells of other users 3 rokov pred
build_client.sh 8aacbc0bf7 Fix bug when editing a node's value 3 rokov pred
client.js e39be44362 Fix some bugs 3 rokov pred
client.xml e39be44362 Fix some bugs 3 rokov pred
client_statechart.drawio c51f5f4be6 Implemented improved plugin for synchronous collaboration, with conflict detection and server-side persistent state. 4 rokov pred
draghandler_statechart.drawio 10bc6faced Display selected cells of other users 3 rokov pred
run_server.js 3172f33baf Fix more bugs 3 rokov pred
test_History.js c51f5f4be6 Implemented improved plugin for synchronous collaboration, with conflict detection and server-side persistent state. 4 rokov pred

README.txt

Synchronous collaboration for drawio.


Steps to run server
-------------------

- Install NodeJS and NPM

- In 'lib' dir, run:
cd lib
npm i serve-handler ws uuid

- Setup server state directory.
mkdir /desired/path
mkdir /desired/path/ops
mkdir /desired/path/branches

- In root dir, run:
DRAWIOSTATEDIR=/desired/path node lib/versioning/run_server.js

The server will also act as a static file server, hosting the drawio web app. Default port is 8700.


Steps to build + run client
---------------------------

- Build SCCD model:
cd lib/versioning
python -m sccd.compiler.sccdc -l javascript -p eventloop client.xml -o client.js

- Browserify plugin:
cd src/main/webapp/plugins/cdf
browserify versioning.js > versioning.browser.js

- Make sure server is running and navigate to
http://localhost:8700/src/main/webapp?dev=1&p=versioning