diff --git a/src/client/event.ts b/src/client/event.ts index 5f761b0..887b113 100644 --- a/src/client/event.ts +++ b/src/client/event.ts @@ -8,3 +8,8 @@ // return Reflect.apply(target, thisArg, argArray); // } // }) +// window.addEventListener = new Proxy(window.addEventListener, { +// apply(target1, thisArg, argArray) { +// window.addEventListener(argArray[0], argArray[1]); +// }, +// }); diff --git a/src/client/index.ts b/src/client/index.ts index b75701b..83f12b8 100644 --- a/src/client/index.ts +++ b/src/client/index.ts @@ -15,6 +15,7 @@ import "./worker.ts"; import "./beacon.ts"; import "./origin.ts"; import "./import.ts"; +import "./postmessage.ts"; declare global { interface Window { diff --git a/src/client/postmessage.ts b/src/client/postmessage.ts new file mode 100644 index 0000000..b26e4d4 --- /dev/null +++ b/src/client/postmessage.ts @@ -0,0 +1,6 @@ +window.postMessage = new Proxy(window.postMessage, { + apply(target, thisArg, argArray) { + if (typeof argArray[1] === "string") argArray[1] = "*" + Reflect.apply(target, thisArg, argArray); + } +}); diff --git a/src/client/window.ts b/src/client/window.ts index 94340e8..dc75359 100644 --- a/src/client/window.ts +++ b/src/client/window.ts @@ -15,12 +15,6 @@ export const windowProxy = new Proxy(window, { return window.parent; } else if (propIsString && prop === "$scramjet") { return; - } else if (propIsString && prop === "addEventListener") { - return new Proxy(window.addEventListener, { - apply(target1, thisArg, argArray) { - window.addEventListener(argArray[0], argArray[1]); - }, - }); } const value = Reflect.get(target, prop);