This commit is contained in:
Percs 2024-07-31 02:08:11 -05:00
parent 5d61913f65
commit 23e5fe2c51
5 changed files with 70 additions and 70 deletions

View file

@ -16,7 +16,7 @@ export default defineConfig({
client: join(__dirname, "src/client/index.ts"), client: join(__dirname, "src/client/index.ts"),
config: join(__dirname, "src/scramjet.config.ts"), config: join(__dirname, "src/scramjet.config.ts"),
codecs: join(__dirname, "src/codecs/index.ts"), codecs: join(__dirname, "src/codecs/index.ts"),
bootstrapper: join(__dirname, "src/bootsrapper/index.ts") bootstrapper: join(__dirname, "src/bootsrapper/index.ts"),
}, },
resolve: { resolve: {
extensions: [".ts", ".js"], extensions: [".ts", ".js"],
@ -47,9 +47,9 @@ export default defineConfig({
], ],
parser: { parser: {
javascript: { javascript: {
dynamicImportMode: "eager" dynamicImportMode: "eager",
} },
} },
}, },
output: { output: {
filename: "scramjet.[name].js", filename: "scramjet.[name].js",

View file

@ -20,7 +20,7 @@ export class ScramjetBootstrapper {
thread: "/scramjet.thread.js", thread: "/scramjet.thread.js",
client: "/scramjet.client.js", client: "/scramjet.client.js",
codecs: "/scramjet.codecs.js", codecs: "/scramjet.codecs.js",
} };
this.config = Object.assign({}, defaultConfig, config); this.config = Object.assign({}, defaultConfig, config);
@ -34,7 +34,7 @@ export class ScramjetBootstrapper {
console.log(this.config); console.log(this.config);
this.store = new IDBMap("config", { this.store = new IDBMap("config", {
prefix: "scramjet" prefix: "scramjet",
}); });
this.saveConfig(); this.saveConfig();
} }
@ -43,10 +43,13 @@ export class ScramjetBootstrapper {
if ("serviceWorker" in navigator) { if ("serviceWorker" in navigator) {
navigator.serviceWorker navigator.serviceWorker
.register(serviceWorkerPath, { .register(serviceWorkerPath, {
scope: this.config.prefix scope: this.config.prefix,
}) })
.then((registration) => { .then((registration) => {
console.log("ServiceWorker registration successful with scope: ", registration.scope); console.log(
"ServiceWorker registration successful with scope: ",
registration.scope
);
}) })
.catch((err) => { .catch((err) => {
console.log("ServiceWorker registration failed: ", err); console.log("ServiceWorker registration failed: ", err);

View file

@ -102,10 +102,7 @@ async function handleResponse(
} }
break; break;
case "script": case "script":
responseBody = rewriteJs( responseBody = rewriteJs(await response.arrayBuffer(), url);
await response.arrayBuffer(),
url
);
// Disable threading for now, it's causing issues. // Disable threading for now, it's causing issues.
// responseBody = await this.threadpool.rewriteJs(await responseBody.arrayBuffer(), url.toString()); // responseBody = await this.threadpool.rewriteJs(await responseBody.arrayBuffer(), url.toString());
break; break;
@ -165,7 +162,7 @@ async function handleCookies(url: URL, headers: string[]) {
let [key, value] = cookieParsed.shift(); let [key, value] = cookieParsed.shift();
if (!value) continue; if (!value) continue;
value = value.replace("\"", ""); value = value.replace('"', "");
const hostArg = cookieParsed.find((x) => x[0] === "Domain"); const hostArg = cookieParsed.find((x) => x[0] === "Domain");
cookieParsed = cookieParsed.filter((x) => x[0] !== "Domain"); cookieParsed = cookieParsed.filter((x) => x[0] !== "Domain");

View file

@ -48,14 +48,14 @@ export class ScramjetServiceWorker {
loadConfig() { loadConfig() {
const store = new IDBMap("config", { const store = new IDBMap("config", {
prefix: "scramjet" prefix: "scramjet",
}); });
if (store.has("config")) { if (store.has("config")) {
store.get("config").then((config) => { store.get("config").then((config) => {
this.config = config; this.config = config;
self.$scramjet.config = config; self.$scramjet.config = config;
self.$scramjet.codec = self.$scramjet.codecs[config.codec] self.$scramjet.codec = self.$scramjet.codecs[config.codec];
}); });
} }
} }