mirror of
https://github.com/MercuryWorkshop/bare-mux.git
synced 2025-05-16 15:40:01 -04:00
create new worker when passing it to sw
This commit is contained in:
parent
c5aeec4ee8
commit
c540450b66
1 changed files with 3 additions and 1 deletions
|
@ -49,13 +49,15 @@ type BroadcastMessage = {
|
|||
function createPort(path: string, channel: BroadcastChannel): MessagePort {
|
||||
const worker = new SharedWorker(path, "bare-mux-worker");
|
||||
// uv removes navigator.serviceWorker so this errors
|
||||
if (navigator.serviceWorker)
|
||||
if (navigator.serviceWorker) {
|
||||
navigator.serviceWorker.addEventListener("message", event => {
|
||||
if (event.data.type === "getPort" && event.data.port) {
|
||||
console.debug("bare-mux: recieved request for port from sw");
|
||||
const worker = new SharedWorker(path, "bare-mux-worker");
|
||||
event.data.port.postMessage(worker.port, [worker.port]);
|
||||
}
|
||||
});
|
||||
}
|
||||
channel.onmessage = (event: MessageEvent) => {
|
||||
if (event.data.type === "getPath") {
|
||||
console.debug("bare-mux: recieved request for worker path from broadcast channel");
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue