build esm module that can be imported from browsers.

closes https://github.com/fiatjaf/nostr-tools/issues/14
This commit is contained in:
fiatjaf
2022-05-08 20:49:33 -03:00
parent 60ce13e17d
commit dc489bf387
4 changed files with 53 additions and 2 deletions

25
build.js Executable file
View File

@@ -0,0 +1,25 @@
#!/usr/bin/env node
const esbuild = require('esbuild')
const alias = require('esbuild-plugin-alias')
const nodeGlobals = require('@esbuild-plugins/node-globals-polyfill').default
const buildOptions = {
entryPoints: ['index.js'],
outfile: 'nostr.js',
bundle: true,
format: 'esm',
plugins: [
alias({
stream: require.resolve('readable-stream')
}),
nodeGlobals({buffer: true})
],
define: {
window: 'self',
global: 'self'
},
loader: {'.js': 'jsx'}
}
esbuild.build(buildOptions).then(() => console.log('build success.'))