mirror of
https://github.com/MercuryWorkshop/scramjet.git
synced 2025-05-13 06:20:02 -04:00
prettier
This commit is contained in:
parent
5d61913f65
commit
23e5fe2c51
5 changed files with 70 additions and 70 deletions
|
@ -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",
|
||||||
|
|
|
@ -3,68 +3,71 @@ import { ScramjetConfig } from "../types";
|
||||||
import { Codec } from "../codecs";
|
import { Codec } from "../codecs";
|
||||||
|
|
||||||
export class ScramjetBootstrapper {
|
export class ScramjetBootstrapper {
|
||||||
config: ScramjetConfig;
|
config: ScramjetConfig;
|
||||||
private store: IDBMap;
|
private store: IDBMap;
|
||||||
codec: Codec;
|
codec: Codec;
|
||||||
|
|
||||||
constructor(config: ScramjetConfig) {
|
constructor(config: ScramjetConfig) {
|
||||||
const defaultConfig = {
|
const defaultConfig = {
|
||||||
prefix: "/scramjet/",
|
prefix: "/scramjet/",
|
||||||
codec: "plain",
|
codec: "plain",
|
||||||
wrapfn: "$scramjet$wrap",
|
wrapfn: "$scramjet$wrap",
|
||||||
trysetfn: "$scramjet$tryset",
|
trysetfn: "$scramjet$tryset",
|
||||||
importfn: "$scramjet$import",
|
importfn: "$scramjet$import",
|
||||||
rewritefn: "$scramjet$rewrite",
|
rewritefn: "$scramjet$rewrite",
|
||||||
shared: "/scramjet.shared.js",
|
shared: "/scramjet.shared.js",
|
||||||
worker: "/scramjet.worker.js",
|
worker: "/scramjet.worker.js",
|
||||||
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);
|
||||||
|
|
||||||
// rspack won't let me use a dynamic import
|
// rspack won't let me use a dynamic import
|
||||||
fetch(config.codecs).then(async (response) => {
|
fetch(config.codecs).then(async (response) => {
|
||||||
eval(await response.text());
|
eval(await response.text());
|
||||||
|
|
||||||
self.$scramjet.codec = self.$scramjet.codecs[this.config.codec];
|
self.$scramjet.codec = self.$scramjet.codecs[this.config.codec];
|
||||||
self.$scramjet.config = this.config;
|
self.$scramjet.config = this.config;
|
||||||
});
|
});
|
||||||
|
|
||||||
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();
|
||||||
}
|
}
|
||||||
|
|
||||||
registerSw(serviceWorkerPath: string) {
|
registerSw(serviceWorkerPath: string) {
|
||||||
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: ",
|
||||||
.catch((err) => {
|
registration.scope
|
||||||
console.log("ServiceWorker registration failed: ", err);
|
);
|
||||||
});
|
})
|
||||||
}
|
.catch((err) => {
|
||||||
}
|
console.log("ServiceWorker registration failed: ", err);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
saveConfig() {
|
saveConfig() {
|
||||||
this.store.set("config", this.config).then(() => {
|
this.store.set("config", this.config).then(() => {
|
||||||
console.log("scramjet config saved");
|
console.log("scramjet config saved");
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
modifyConfig(config: ScramjetConfig) {
|
modifyConfig(config: ScramjetConfig) {
|
||||||
this.config = Object.assign({}, this.config, config);
|
this.config = Object.assign({}, this.config, config);
|
||||||
|
|
||||||
this.saveConfig();
|
this.saveConfig();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
window.ScramjetBootstrapper = ScramjetBootstrapper;
|
window.ScramjetBootstrapper = ScramjetBootstrapper;
|
||||||
|
|
|
@ -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");
|
||||||
|
|
|
@ -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];
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
10
static/ui.js
10
static/ui.js
|
@ -1,9 +1,9 @@
|
||||||
const bootstrapper = new ScramjetBootstrapper({
|
const bootstrapper = new ScramjetBootstrapper({
|
||||||
codecs: "/scram/scramjet.codecs.js",
|
codecs: "/scram/scramjet.codecs.js",
|
||||||
worker: "/scram/scramjet.worker.js",
|
worker: "/scram/scramjet.worker.js",
|
||||||
thread: "/scram/scramjet.thread.js",
|
thread: "/scram/scramjet.thread.js",
|
||||||
client: "/scram/scramjet.client.js",
|
client: "/scram/scramjet.client.js",
|
||||||
shared: "/scram/scramjet.shared.js",
|
shared: "/scram/scramjet.shared.js",
|
||||||
});
|
});
|
||||||
|
|
||||||
bootstrapper.registerSw("./sw.js");
|
bootstrapper.registerSw("./sw.js");
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue