mirror of
https://github.com/excalidraw/excalidraw.git
synced 2025-04-14 16:40:58 -04:00
Some checks failed
Auto release excalidraw next / Auto-release-excalidraw-next (push) Failing after 2m36s
Build Docker image / build-docker (push) Failing after 6s
Cancel previous runs / cancel (push) Failing after 1s
Publish Docker / publish-docker (push) Failing after 31s
New Sentry production release / sentry (push) Failing after 2m3s
52 lines
1.3 KiB
JavaScript
52 lines
1.3 KiB
JavaScript
const path = require("path");
|
|
|
|
const { build } = require("esbuild");
|
|
|
|
// contains all dependencies bundled inside
|
|
const getConfig = (outdir) => ({
|
|
outdir,
|
|
bundle: true,
|
|
format: "esm",
|
|
entryPoints: ["src/index.ts"],
|
|
entryNames: "[name]",
|
|
assetNames: "[dir]/[name]",
|
|
alias: {
|
|
"@excalidraw/common": path.resolve(__dirname, "../packages/common/src"),
|
|
"@excalidraw/element": path.resolve(__dirname, "../packages/element/src"),
|
|
"@excalidraw/excalidraw": path.resolve(__dirname, "../packages/excalidraw"),
|
|
"@excalidraw/math": path.resolve(__dirname, "../packages/math/src"),
|
|
"@excalidraw/utils": path.resolve(__dirname, "../packages/utils/src"),
|
|
},
|
|
});
|
|
|
|
function buildDev(config) {
|
|
return build({
|
|
...config,
|
|
sourcemap: true,
|
|
define: {
|
|
"import.meta.env": JSON.stringify({ DEV: true }),
|
|
},
|
|
});
|
|
}
|
|
|
|
function buildProd(config) {
|
|
return build({
|
|
...config,
|
|
minify: true,
|
|
define: {
|
|
"import.meta.env": JSON.stringify({ PROD: true }),
|
|
},
|
|
});
|
|
}
|
|
|
|
const createESMRawBuild = async () => {
|
|
// development unminified build with source maps
|
|
await buildDev(getConfig("dist/dev"));
|
|
|
|
// production minified build without sourcemaps
|
|
await buildProd(getConfig("dist/prod"));
|
|
};
|
|
|
|
(async () => {
|
|
await createESMRawBuild();
|
|
})();
|