loader: {
'.d.ts': 'copy'
},
- inject: ['./buffer.mjs'],
format: 'esm',
legalComments: 'inline',
outdir: 'dist',
import { build } from 'esbuild'
import { options } from './esbuild-common.mjs'
-options.platform = 'browser'
+options.dropLabels = ['NODE']
options.inject = ['./buffer.mjs']
await build(options)
import { build } from 'esbuild'
import { options } from './esbuild-common.mjs'
-options.platform = 'node'
+options.dropLabels = ['BROWSER']
+options.inject = ['./node-shims.mjs']
+options.external = ['node:worker_threads']
await build(options)
import { build } from 'esbuild'
import { options } from './esbuild-common.mjs'
-options.platform = 'browser'
options.drop = ['console', 'debugger']
+options.dropLabels = ['NODE']
options.inject = ['./buffer.mjs']
await build(options)
const button = document.createElement('button')
const hourglass = document.createTextNode('⏳')
button.innerText = text
- button.addEventListener('click', async () => {
+ button.onclick = async () => {
button.disabled = true
button.innerText = 'Waiting for device...'
button.after(hourglass)
hourglass.remove()
button.remove()
}
- })
+ }
document.body.appendChild(button)
window?.scrollTo(0, document.body.scrollHeight)
})