PluginProbe
User Profile Builder – Beautiful User Registration Forms, User Profiles & User Role Editor / 2.0.7
User Profile Builder – Beautiful User Registration Forms, User Profiles & User Role Editor v2.0.7
4.0.2 4.0.1 4.0.0 3.16.6 3.16.5 3.16.4 3.16.3 3.16.2 3.16.1 3.16.0 3.15.9 3.9.9 3.9.5 3.9.6 3.9.7 3.9.8 1.1.7 1.1.8 1.1.9 2.0.2 2.0.3 2.0.4 2.0.5 2.0.6 2.0.7 All 340 releases
profile-builder / assets / lib / codemirror / addon / tern / worker.js

worker.js in User Profile Builder – Beautiful User Registration Forms, User Profiles & User Role Editor 2.0.7, at assets/lib/codemirror/addon/tern/worker.js

40 lines 1.0 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 var server;
2
3 this.onmessage = function(e) {
4 var data = e.data;
5 switch (data.type) {
6 case "init": return startServer(data.defs, data.plugins, data.scripts);
7 case "add": return server.addFile(data.name, data.text);
8 case "del": return server.delFile(data.name);
9 case "req": return server.request(data.body, function(err, reqData) {
10 postMessage({id: data.id, body: reqData, err: err && String(err)});
11 });
12 case "getFile":
13 var c = pending[data.id];
14 delete pending[data.id];
15 return c(data.err, data.text);
16 default: throw new Error("Unknown message type: " + data.type);
17 }
18 };
19
20 var nextId = 0, pending = {};
21 function getFile(file, c) {
22 postMessage({type: "getFile", name: file, id: ++nextId});
23 pending[nextId] = c;
24 }
25
26 function startServer(defs, plugins, scripts) {
27 if (scripts) importScripts.apply(null, scripts);
28
29 server = new tern.Server({
30 getFile: getFile,
31 async: true,
32 defs: defs,
33 plugins: plugins
34 });
35 }
36
37 var console = {
38 log: function(v) { postMessage({type: "debug", message: v}); }
39 };
40