A wayfinder inspired map plugin for obisidian
1import esbuild from "esbuild";
2import process from "process";
3import builtins from "builtin-modules";
4
5const prod = process.argv[2] === "production";
6
7const context = await esbuild.context({
8 entryPoints: ["main.ts"],
9 bundle: true,
10 external: [
11 "obsidian",
12 "electron",
13 "@codemirror/autocomplete",
14 "@codemirror/collab",
15 "@codemirror/commands",
16 "@codemirror/language",
17 "@codemirror/lint",
18 "@codemirror/search",
19 "@codemirror/state",
20 "@codemirror/view",
21 "@lezer/common",
22 "@lezer/highlight",
23 "@lezer/lr",
24 ...builtins,
25 ],
26 format: "cjs",
27 target: "es2018",
28 logLevel: "info",
29 sourcemap: prod ? false : "inline",
30 treeShaking: true,
31 outfile: "main.js",
32});
33
34if (prod) {
35 await context.rebuild();
36 process.exit(0);
37} else {
38 await context.watch();
39}