there are bare clients
This commit is contained in:
parent
e602896dae
commit
cb3ae9363d
3 changed files with 20 additions and 7 deletions
|
|
@ -13,7 +13,7 @@
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@astrojs/node": "^8.2.5",
|
"@astrojs/node": "^8.2.5",
|
||||||
"@astrojs/sitemap": "^3.1.2",
|
"@astrojs/sitemap": "^3.1.2",
|
||||||
"@mercuryworkshop/bare-mux": "^1.0.5",
|
"@mercuryworkshop/bare-mux": "^1.0.7",
|
||||||
"@mercuryworkshop/epoxy-transport": "^1.1.0",
|
"@mercuryworkshop/epoxy-transport": "^1.1.0",
|
||||||
"@mercuryworkshop/libcurl-transport": "^1.3.1",
|
"@mercuryworkshop/libcurl-transport": "^1.3.1",
|
||||||
"@titaniumnetwork-dev/ultraviolet": "^3.0.0",
|
"@titaniumnetwork-dev/ultraviolet": "^3.0.0",
|
||||||
|
|
|
||||||
13
public/sw.js
13
public/sw.js
|
|
@ -5,6 +5,15 @@ importScripts("/uv/uv.bundle.js");
|
||||||
importScripts("/uv.config.js");
|
importScripts("/uv.config.js");
|
||||||
importScripts(__uv$config.sw);
|
importScripts(__uv$config.sw);
|
||||||
|
|
||||||
const sw = new UVServiceWorker();
|
const uv = new UVServiceWorker();
|
||||||
|
|
||||||
self.addEventListener("fetch", (event) => event.respondWith(sw.fetch(event)));
|
self.addEventListener('fetch', event => {
|
||||||
|
event.respondWith(
|
||||||
|
(async ()=>{
|
||||||
|
if(event.request.url.startsWith(location.origin + __uv$config.prefix)) {
|
||||||
|
return await uv.fetch(event);
|
||||||
|
}
|
||||||
|
return await fetch(event.request);
|
||||||
|
})()
|
||||||
|
);
|
||||||
|
});
|
||||||
|
|
|
||||||
|
|
@ -65,17 +65,21 @@ export default class TransportManager {
|
||||||
export const TransportMgr = new TransportManager();
|
export const TransportMgr = new TransportManager();
|
||||||
|
|
||||||
export async function registerSW() {
|
export async function registerSW() {
|
||||||
|
navigator.serviceWorker.ready.then(async (sw) => {
|
||||||
|
await registerRemoteListener(sw.active!);
|
||||||
|
TransportMgr.setTransport(
|
||||||
|
TransportMgr.getTransport(),
|
||||||
|
localStorage.getItem("alu__wispUrl") || wispURLDefault
|
||||||
|
);
|
||||||
|
})
|
||||||
return new Promise(async (resolve) => {
|
return new Promise(async (resolve) => {
|
||||||
await navigator.serviceWorker
|
await navigator.serviceWorker
|
||||||
.register("/sw.js", {
|
.register("/sw.js")
|
||||||
scope: window.__uv$config.prefix,
|
|
||||||
})
|
|
||||||
.then((registration) => {
|
.then((registration) => {
|
||||||
registration.update().then(() => {
|
registration.update().then(() => {
|
||||||
console.log("Registered SW!");
|
console.log("Registered SW!");
|
||||||
resolve(null);
|
resolve(null);
|
||||||
});
|
});
|
||||||
|
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue