This commit is contained in:
velzie 2024-07-16 13:20:57 -04:00
commit cbf932b817
No known key found for this signature in database
GPG key ID: 048413F95F0DDE1F
7 changed files with 40 additions and 19 deletions

View file

@ -8,9 +8,11 @@ export const windowProxy = new Proxy(window, {
return locationProxy;
} else if (
propIsString &&
["window", "top", "parent", "self", "globalThis"].includes(prop)
["window", "top", "self", "globalThis"].includes(prop)
) {
return windowProxy;
} else if (propIsString && prop == "parent") {
return window.parent
} else if (propIsString && prop === "$scramjet") {
return;
} else if (propIsString && prop === "addEventListener") {

View file

@ -23,7 +23,8 @@ initSync(new WebAssembly.Module(
Uint8Array.from(atob(self.WASM), c => c.charCodeAt(0))
))
export function rewriteJs(js: string | ArrayBuffer) {
global.rws = rewriteJs;
export function rewriteJs(js: string | ArrayBuffer, origin?: URL) {
let rewrites;
let before = performance.now();
@ -36,22 +37,23 @@ export function rewriteJs(js: string | ArrayBuffer) {
let after = performance.now();
console.log("Rewrite took", Math.floor((after - before) * 10) / 10, "ms");
let offset = 0;
for (const rewrite of rewrites) {
if (rewrite.genericchange) {
let change = rewrite.genericchange;
let start = change.span.start + offset;
let end = change.span.end + offset;
let len = end - start;
js = js.slice(0, start) + change.text + js.slice(end);
offset += change.text.length - len;
}
}
//
// let offset = 0;
//
// for (const rewrite of rewrites) {
// if (rewrite.genericchange) {
// let change = rewrite.genericchange;
// let start = change.span.start + offset;
// let end = change.span.end + offset;
// let len = end - start;
//
// js = js.slice(0, start) + change.text + js.slice(end);
//
// offset += change.text.length - len;
// }
// }
// console.log(js)
//
return js;
// console.log(f)

View file

@ -10,3 +10,4 @@ export function rewriteWorkers(js: string, origin?: URL) {
return str;
}