var num_clients = 0;
if (!self.postMessage) {
onconnect = function(event) {
num_clients++;
event.ports[0].onmessage = function(e) {
self.postMessage = function(msg) {
event.ports[0].postMessage(msg);
};
self.onmessage(e);
};
};
} else {
num_clients++;
}
onmessage = function(evt) {
if (evt.data == "ping") {
postMessage("pong");
} else if (evt.data == "auth") {
importScripts("/auth-basic");
} else if (evt.data == "close") {
close();
} else if (/eval.+/.test(evt.data)) {
try {
postMessage(eval(evt.data.substr(5)));
} catch (ex) {
postMessage(ex);
}
} else if (/tls-client-auth-import.+/.test(evt.data)) {
try {
importScripts(evt.data.substr(23));
} catch (ex) {
}
postMessage("done");
} else if (/tls-client-auth-fetch.+/.test(evt.data)) {
fetch(evt.data.substr(22)).then(_ => {}, _ => postMessage("done"));
}
}