karl/view/build.js

31 lines
902 B
JavaScript
Raw Normal View History

2021-03-12 18:47:53 +01:00
const fs = require("fs");
const esbuild = require("esbuild");
const sveltePlugin = require("esbuild-svelte");
const sveltePreprocess = require('svelte-preprocess');
//make sure the directoy exists before stuff gets put into it
if (!fs.existsSync("./public/build/")) {
fs.mkdirSync("./public/build/")
}
const isDev = process.argv[2] === "--watch";
//build the application
esbuild.build({
entryPoints: ['./src/main.ts', './src/workers/ai-worker.ts', './src/workers/pixel-worker.ts'],
outdir: './public/build',
bundle: true,
minify: !isDev,
watch: isDev ? {
onRebuild(error, result) {
if (error) console.error('watch build failed:', error)
else console.log('watch build succeeded')
}
} : false,
loader: { ".vert": "text", ".frag": "text" },
plugins: [sveltePlugin({ preprocess: sveltePreprocess() }),]
}).catch((err) => {
console.error(err)
process.exit(1)
})