witchcraft
witchcraft copied to clipboard
check if scripts exist (v3 branch)
Consider adding a check if scripts exist already on v3 branch, it was adding 4 copies of it on the page.
Changed this in util/embed-script.js
:
export function injector(document) {
if (document.documentElement.querySelector("#witchcraft-script")) return;
const fnStr = function fn() {
/*INJECTION_POINT*/
}.toString();
const script = document.createElement("script");
script.id = "witchcraft-script";
script.text = `(${fnStr})()`;
// when injecting at document_start, experimentation shows that <head> doesn't exist and <body> may not exist either
// this is why here we are injecting the script tag directly into <html>, which seems guaranteed to exist
document.documentElement.appendChild(script);
}