37 lines
754 B
JavaScript
37 lines
754 B
JavaScript
import esbuild from "esbuild";
|
|
import process from "process";
|
|
|
|
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 context = {
|
|
banner: {
|
|
js: banner,
|
|
},
|
|
entryPoints: ['main.ts'],
|
|
bundle: true,
|
|
external: ['obsidian', 'electron'],
|
|
format: 'cjs',
|
|
platform: 'node',
|
|
target: 'es2018',
|
|
logLevel: "info",
|
|
sourcemap: prod ? false : 'inline',
|
|
treeShaking: true,
|
|
outfile: 'main.js',
|
|
};
|
|
|
|
if (prod) {
|
|
esbuild.build(context).catch(() => process.exit(1));
|
|
} else {
|
|
esbuild.context(context).then(ctx => {
|
|
ctx.watch();
|
|
console.log('Watching for changes...');
|
|
}).catch(() => process.exit(1));
|
|
}
|