// SPDX-FileCopyrightText: 2023 XWiki CryptPad Team and contributors // // SPDX-License-Identifier: AGPL-3.0-or-later /* eslint-env worker */ var window = self; // eslint-disable-line no-unused-vars var localStorage = { setItem: function (k, v) { localStorage[k] = v; }, getItem: function (k) { return localStorage[k]; } }; importScripts('/components/requirejs/require.js?ver=2.3.7'); 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", // json.sortify same "json.sortify": "/components/json.sortify/dist/JSON.sortify", cm: '/components/codemirror' }, map: { '*': { 'css': '/components/require-css/css.js', 'less': '/common/RequireLess.js', } } }); var i = 0; var id = Math.floor(Math.random()*100000); onconnect = function(e) { console.log(e); console.log(i); var port = e.ports[0]; console.log('here'); //require([ // '/common/outer/async-store.js' //], function (Store) { //console.log(Store); console.log(self.Proxy); var n = i; port.postMessage({state: 'READY'}); port.onmessage = function (e) { console.log('worker received'); console.log(e.data); port.postMessage('hello CryptPad'+n); port.postMessage('This is '+id); }; /*var data = { 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']); });*/ i++; //}); };