Fix SW registration errors

This commit is contained in:
MotorTruck1221 2024-03-20 23:43:53 -06:00
parent c7b158fd57
commit 17a05d4461
No known key found for this signature in database
GPG key ID: 06901A625432AC21
4 changed files with 48 additions and 17 deletions

View file

@ -10,6 +10,22 @@
<script src="/uv/uv.config.js" defer></script> <script src="/uv/uv.config.js" defer></script>
<script src="/dynamic/dynamic.config.js" defer></script> <script src="/dynamic/dynamic.config.js" defer></script>
<script src="/localforage/localforage.min.js" defer></script> <script src="/localforage/localforage.min.js" defer></script>
<script>
if ("serviceWorker" in navigator) {
window.addEventListener("load", () => {
navigator.serviceWorker.register("/sw.js", {
scope: "/~/"
}).then(() => {
console.log("Service Worker Registered");
try {
window.setTransport();
} catch {}
}).catch((err) => {
console.error("Service Worker Failed to Register", err);
});
});
}
</script>
</head> </head>
<body style="margin: 0"> <body style="margin: 0">
<div id="app"></div> <div id="app"></div>
@ -22,11 +38,12 @@
window.location.href = window.location.href; window.location.href = window.location.href;
</script> </script>
<script> <script>
if (!localStorage["auth"] && new URL(document.all.rcheck.href).password) { try {
window.location.reload(); if (!localStorage["auth"] && new URL(document.all.rcheck.href).password) {
localStorage["auth"] = 1; window.location.reload();
} localStorage["auth"] = 1;
} }
} catch {}
</script> </script>
</body> </body>
</html> </html>

View file

@ -14,18 +14,18 @@ import "./i18n";
import { setTransport } from "./util/transports"; import { setTransport } from "./util/transports";
export default function Routes() { export default function Routes() {
if ("serviceWorker" in navigator) { //if ("serviceWorker" in navigator) {
window.addEventListener("load", () => { //window.addEventListener("load", () => {
navigator.serviceWorker // navigator.serviceWorker
.register("/sw.js", { // .register("/sw.js", {
scope: "/~/" // scope: "/~/"
}) // })
.then(() => { // .then(() => {
console.log("Service worker registered successfully"); // console.log("Service worker registered successfully");
setTransport(); // setTransport();
}); // });
}); //});
} //}
return ( return (
<LocationProvider> <LocationProvider>
<Router> <Router>

View file

@ -4,6 +4,12 @@ import {
} from "@mercuryworkshop/bare-mux"; } from "@mercuryworkshop/bare-mux";
//import { isIOS } from "./IosDetector"; //import { isIOS } from "./IosDetector";
declare global {
interface Window {
setTransport: () => void;
}
}
function changeTransport(transport: string, wispUrl: string) { function changeTransport(transport: string, wispUrl: string) {
switch (transport) { switch (transport) {
case "epoxy": case "epoxy":
@ -72,4 +78,6 @@ function setTransport() {
); );
} }
window.setTransport = setTransport;
export { changeTransport, getTransport, setTransport }; export { changeTransport, getTransport, setTransport };

View file

@ -52,6 +52,12 @@ export default defineConfig({
target: "http://localhost:8080/", target: "http://localhost:8080/",
changeOrigin: true, changeOrigin: true,
rewrite: (path) => path.replace(/^\/bare/, "") rewrite: (path) => path.replace(/^\/bare/, "")
},
"/wisp": {
target: "https://ruby.rubynetwork.co/wisp/",
changeOrigin: true,
ws: true,
rewrite: (path) => path.replace(/^\/wisp/, "")
} }
} }
} }