Public
Script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
export async function umdImport(url: string | URL, globals = {}) {
const res = await fetch(url);
if (!res.ok) throw new Error(await res.text());
let code = await res.text();
code = code.replace(/^#!/gm, "// #!");
const module = {
exports: {} as any,
};
const global = new Proxy({}, {
...Reflect,
get(o, k) {
if (Reflect.has(globals, k)) {
return Reflect.get(globals, k);
}
return Reflect.get(o, k);
},
});
new Function("module", "exports", "global", ...Object.keys(globals), code)(
module,
module.exports,
global,
...Object.values(globals),
);
return module.exports;
}
Val Town is a social website to write and deploy JavaScript.
Build APIs and schedule functions from your browser.
Comments
Nobody has commented on this val yet: be the first!
March 8, 2024