postmessage plumbing

This commit is contained in:
velzie 2024-07-20 13:31:24 -04:00
parent 38130176bb
commit 0a81ae042b
No known key found for this signature in database
GPG key ID: 048413F95F0DDE1F
2 changed files with 81 additions and 0 deletions

View file

@ -18,6 +18,25 @@ navigator.serviceWorker.ready.then((reg) => {
}
});
navigator.serviceWorker.onmessage = ({ data }) => {
if (data.scramjet$type === "getLocalStorage") {
const pairs = Object.entries(localStorage);
navigator.serviceWorker.controller.postMessage({
scramjet$type: "getLocalStorage",
scramjet$token: data.scramjet$token,
data: pairs,
});
} else if (data.scramjet$type === "setLocalStorage") {
for (const [key, value] of data.data) {
localStorage.setItem(key, value);
}
navigator.serviceWorker.controller.postMessage({
scramjet$type: "setLocalStorage",
scramjet$token: data.scramjet$token,
});
}
};
const connection = new BareMux.BareMuxConnection("/baremux/worker.js");
const flex = css`
display: flex;