excalidraw/scripts/buildShared.js
2025-02-07 15:33:28 +01:00

39 lines
871 B
JavaScript

const fs = require("fs");
const { build } = require("esbuild");
const rawConfig = {
entryPoints: ["src/index.ts"],
bundle: true,
format: "esm",
metafile: true,
treeShaking: true,
external: ["*.scss"],
};
const createESMRawBuild = async () => {
// Development unminified build with source maps
const dev = await build({
...rawConfig,
outdir: "dist/dev",
sourcemap: true,
define: {
"import.meta.env": JSON.stringify({ DEV: true }),
},
});
fs.writeFileSync("meta-dev.json", JSON.stringify(dev.metafile));
// production minified build without sourcemaps
const prod = await build({
...rawConfig,
outdir: "dist/prod",
minify: true,
define: {
"import.meta.env": JSON.stringify({ PROD: true }),
},
});
fs.writeFileSync("meta-prod.json", JSON.stringify(prod.metafile));
};
createESMRawBuild();