import esbuild from "esbuild"; import process from "process"; import builtins from "builtin-modules"; import copyPluginPkg from "@sprout2000/esbuild-copy-plugin"; const {copyPlugin} = copyPluginPkg const banner = `/* THIS IS A GENERATED/BUNDLED FILE BY ESBUILD if you want to view the source, please visit the github repository of this plugin */ `; const prod = (process.argv[2] === "production"); const result = await esbuild.build({ bundle: true, entryPoints: ["src/main.ts"], outdir: "dist", jsx: "automatic", format: "cjs", target: "es2018", external: [ "obsidian", "electron", "@codemirror/autocomplete", "@codemirror/collab", "@codemirror/commands", "@codemirror/language", "@codemirror/lint", "@codemirror/search", "@codemirror/state", "@codemirror/view", "@lezer/common", "@lezer/highlight", "@lezer/lr", ...builtins], banner: { js: banner, }, logLevel: "info", minify: prod, sourcemap: prod ? false : "inline", treeShaking: true, plugins: [ copyPlugin({ src: "src/css/styles.css", dest: "dist/styles.css" }), copyPlugin({ src: "manifest.json", dest: "dist/manifest.json" }), ] }); console.log(result)