2023-08-10 19:28:52 +00:00
|
|
|
import { build } from 'esbuild';
|
2023-06-16 02:01:06 +00:00
|
|
|
import { argv } from 'process';
|
|
|
|
|
|
2023-09-04 16:49:38 +00:00
|
|
|
const targetFile = argv
|
|
|
|
|
.find((arg) => arg.startsWith('--build='))
|
|
|
|
|
?.split('=')[1];
|
|
|
|
|
const files = targetFile ? [targetFile] : ['bot', 'server'];
|
2023-06-12 02:01:32 +00:00
|
|
|
|
2023-09-04 16:49:38 +00:00
|
|
|
files.forEach(async (file) => {
|
|
|
|
|
console.log(`Building ${file}...`);
|
2023-06-26 18:08:07 +00:00
|
|
|
|
2023-09-04 16:49:38 +00:00
|
|
|
await build({
|
|
|
|
|
entryPoints: [`src/${file}.ts`],
|
|
|
|
|
outfile: `dist/${file}/index.cjs`,
|
2023-06-12 02:01:32 +00:00
|
|
|
|
2023-09-04 16:49:38 +00:00
|
|
|
platform: 'node',
|
2023-09-30 22:36:44 -05:00
|
|
|
tsconfig: 'tsconfig.esbuild.json',
|
2023-09-04 16:49:38 +00:00
|
|
|
loader: {
|
|
|
|
|
'.node': 'copy',
|
|
|
|
|
'.ttf': 'file',
|
|
|
|
|
},
|
|
|
|
|
format: 'cjs',
|
2023-09-09 02:56:34 +00:00
|
|
|
jsx: 'transform',
|
2023-06-12 02:01:32 +00:00
|
|
|
|
2023-09-04 16:49:38 +00:00
|
|
|
bundle: true,
|
|
|
|
|
sourcemap: true,
|
2023-09-08 16:38:08 +00:00
|
|
|
minifyIdentifiers: false, // cause goofy errors
|
|
|
|
|
minifySyntax: true,
|
|
|
|
|
minifyWhitespace: true,
|
2023-06-17 18:05:04 +00:00
|
|
|
|
2023-09-04 16:49:38 +00:00
|
|
|
logLevel: 'info',
|
2023-06-26 17:25:28 +00:00
|
|
|
});
|
2023-09-04 16:49:38 +00:00
|
|
|
|
|
|
|
|
console.log(`Built ${file}`);
|
|
|
|
|
});
|