cryptpad/www/worker/worker.js

75 lines
2.4 KiB
JavaScript
Raw Normal View History

2023-10-20 14:35:26 +00:00
// SPDX-FileCopyrightText: 2023 XWiki CryptPad Team <contact@cryptpad.org> and contributors
//
// SPDX-License-Identifier: AGPL-3.0-or-later
/* jshint ignore:start */
2017-12-01 14:03:01 +00:00
var window = self;
var localStorage = {
setItem: function (k, v) { localStorage[k] = v; },
getItem: function (k) { return localStorage[k]; }
};
importScripts('/components/requirejs/require.js');
2017-12-01 14:03:01 +00:00
require.config({
// fix up locations so that relative urls work.
baseUrl: '/',
paths: {
// jquery declares itself as literally "jquery" so it cannot be pulled by path :(
"jquery": "/components/jquery/dist/jquery.min",
2017-12-01 14:03:01 +00:00
// json.sortify same
"json.sortify": "/components/json.sortify/dist/JSON.sortify",
cm: '/components/codemirror'
2017-12-01 14:03:01 +00:00
},
map: {
'*': {
'css': '/components/require-css/css.js',
2017-12-01 14:03:01 +00:00
'less': '/common/RequireLess.js',
}
}
});
var i = 0;
2018-01-29 14:17:20 +00:00
var id = Math.floor(Math.random()*100000);
2017-12-01 14:03:01 +00:00
onconnect = function(e) {
console.log(e);
2017-12-01 17:29:59 +00:00
console.log(i);
2017-12-01 14:03:01 +00:00
var port = e.ports[0];
console.log('here');
2018-01-29 14:17:20 +00:00
//require([
// '/common/outer/async-store.js'
//], function (Store) {
//console.log(Store);
2017-12-01 17:29:59 +00:00
console.log(self.Proxy);
2017-12-01 14:03:01 +00:00
var n = i;
port.postMessage({state: 'READY'});
port.onmessage = function (e) {
console.log('worker received');
console.log(e.data);
2017-12-01 17:29:59 +00:00
port.postMessage('hello CryptPad'+n);
2018-01-29 14:17:20 +00:00
port.postMessage('This is '+id);
2017-12-01 14:03:01 +00:00
};
2018-01-29 14:17:20 +00:00
/*var data = {
2017-12-01 17:29:59 +00:00
query: function (cmd, data, cb) {
console.log(cmd, data);
},
userHash: '/1/edit/RuTAa+HmbtSUqCWPAEXqPQ/WxOd8thjW3l7Bnkkfn9alSTB/',
anonHash: '/1/edit/GT+hupjbbJqo9JIld-G8Rw/onfiJqWbpB0sAb-1sB6VhE+v/',
localToken: 4915598039548860,
language: 'fr',
};
Store.init(data, function (ret) {
console.log(ret);
console.log("Store is connected");
Store.get(['cryptpad.username'], function (val) {
port.postMessage(val);
});
port.postMessage('Store is connected!');
port.postMessage('Your username is ' + ret.store.proxy['cryptpad.username']);
2018-01-29 14:17:20 +00:00
});*/
2017-12-01 14:03:01 +00:00
i++;
2018-01-29 14:17:20 +00:00
//});
2017-12-01 14:03:01 +00:00
};