simplify esbuild config

This commit is contained in:
Stewart Allen 2025-07-09 19:05:18 -04:00
commit 2ddd07eecf
2 changed files with 27 additions and 81 deletions

View file

@ -42,113 +42,59 @@ const logOverride = {
'direct-eval': 'silent'
};
const rec = {
bundle: true,
define: { 'process.env.NODE_ENV': `"${mode}"` },
external: ['module'],
format: 'esm',
logOverride,
minify: isProd, // false for dev, true for prod
platform: 'browser',
sourcemap: !isProd, // true for dev, false for prod
target: 'es2020',
};
async function buildApp() {
try {
// Bundle mesh main app
await build({
await build(Object.assign({}, rec, {
entryPoints: [ 'src/main/mesh.js' ],
bundle: true,
outfile: MESH_OUTFILE,
format: 'esm',
external: ['module'],
sourcemap: !isProd, // true for dev, false for prod
minify: isProd, // false for dev, true for prod
target: 'es2020',
platform: 'browser',
define: {
'process.env.NODE_ENV': `"${mode}"`
},
logOverride
});
}));
appendExtraModules(MESH_EXTRAS, MESH_OUTFILE, isProd);
// Bundle mesh worker
await build({
await build(Object.assign({}, rec, {
entryPoints: [ 'src/mesh/work.js' ],
bundle: true,
outfile: 'src/pack/mesh-work.js',
format: 'esm',
external: ['module'],
sourcemap: !isProd, // true for dev, false for prod
minify: isProd, // false for dev, true for prod
target: 'es2020',
platform: 'browser',
define: {
'process.env.NODE_ENV': `"${mode}"`
},
logOverride
});
}));
// Bundle kiri main app
await build({
await build(Object.assign({}, rec, {
entryPoints: [ 'src/main/kiri.js' ],
bundle: true,
outfile: KIRI_OUTFILE,
format: 'esm',
external: ['module'],
sourcemap: !isProd, // true for dev, false for prod
minify: isProd, // false for dev, true for prod
target: 'es2020',
platform: 'browser',
define: {
'process.env.NODE_ENV': `"${mode}"`
},
logOverride
});
}));
appendExtraModules(KIRI_EXTRAS, KIRI_OUTFILE, isProd);
// Bundle kiri worker
await build({
await build(Object.assign({}, rec, {
entryPoints: [ 'src/kiri/run/worker.js' ],
bundle: true,
outfile: 'src/pack/kiri-work.js',
format: 'esm',
external: ['module'],
sourcemap: !isProd, // true for dev, false for prod
minify: isProd, // false for dev, true for prod
target: 'es2020',
platform: 'browser',
define: {
'process.env.NODE_ENV': `"${mode}"`
},
logOverride
});
}));
// Bundle kiri minion
await build({
await build(Object.assign({}, rec, {
entryPoints: [ 'src/kiri/run/minion.js' ],
bundle: true,
outfile: 'src/pack/kiri-pool.js',
format: 'esm',
external: ['module'],
sourcemap: !isProd, // true for dev, false for prod
minify: isProd, // false for dev, true for prod
target: 'es2020',
platform: 'browser',
define: {
'process.env.NODE_ENV': `"${mode}"`
},
logOverride
});
}));
// Bundle kiri engine
await build({
await build(Object.assign({}, rec, {
entryPoints: [ 'src/kiri/run/engine.js' ],
bundle: true,
outfile: 'src/pack/kiri-eng.js',
format: 'esm',
external: ['module'],
sourcemap: !isProd, // true for dev, false for prod
minify: isProd, // false for dev, true for prod
target: 'es2020',
platform: 'browser',
define: {
'process.env.NODE_ENV': `"${mode}"`
},
logOverride
});
}));
console.log(`Build completed successfully in ${mode} mode!`);
} catch (error) {

View file

@ -97,8 +97,8 @@
"dev": "npm run webpack3 && gs-app-server --debug --single",
"prod": "npm run webpack prod && gs-app-server",
"prod-dryrun": "gs-app-server --dryrun",
"start": "npm run prebuild && electron .",
"start-dev": "npm run prebuild && electron . --devel",
"start": "npm run prebuild prod && electron .",
"start-dev": "npm run prebuild prod && electron . --devel",
"start-dbg": "npm run prebuild && electron . --debugg",
"start-ddb": "npm run prebuild && electron . --devel --debugg",
"mk-links": "find src web -type l | xargs -I{} sh -c 'echo \"{},$(readlink {})\"' > conf/links.csv",