Spaces:
Paused
Paused
File size: 883 Bytes
3c3f089 |
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 26 27 28 29 30 31 32 |
import * as esbuild from "esbuild-wasm";
export const unpkgPathPlugin = (): esbuild.Plugin => {
return {
name: "unpkg-path-plugin",
setup(build: esbuild.PluginBuild) {
//
build.onResolve({ filter: /.*/ }, (args) => {
if (args.kind === "entry-point") {
return { path: args.path, namespace: "a" };
}
});
//match relative path in a module "./" or "../"
build.onResolve({ filter: /^\.+\// }, (args: esbuild.OnResolveArgs) => {
return {
namespace: "a",
path: new URL(args.path, `https://unpkg.com${args.resolveDir}/`).href,
};
});
//match main file in a module
build.onResolve({ filter: /.*/ }, async (args: esbuild.OnResolveArgs) => {
return {
namespace: "a",
path: `https://unpkg.com/${args.path}`,
};
});
},
};
};
|