build: use esbuild (#887)

This commit is contained in:
Michael Kriese 2024-11-08 16:17:07 +01:00 committed by GitHub
parent d16f12d19b
commit 4a407be28a
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
9 changed files with 288 additions and 144 deletions

14
tools/compile.js Normal file
View file

@ -0,0 +1,14 @@
import { build } from 'esbuild';
import { env } from 'node:process';
await build({
entryPoints: ['./src/index.ts'],
bundle: true,
platform: 'node',
target: 'node20',
minify: !!env['CI'],
tsconfig: 'tsconfig.dist.json',
sourcemap: true,
// format: 'esm', // TODO: later PR
outdir: './dist/',
});

3
tools/package.json Normal file
View file

@ -0,0 +1,3 @@
{
"type": "module"
}

11
tools/tsconfig.json Normal file
View file

@ -0,0 +1,11 @@
{
"extends": [
"@tsconfig/strictest/tsconfig.json",
"@tsconfig/node20/tsconfig.json"
],
"compilerOptions": {
"allowSyntheticDefaultImports": true,
"esModuleInterop": true,
"noEmit": true
}
}