You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

esbuild.config.mjs 773B

12345678910111213141516171819202122232425262728293031323334
  1. /* eslint-disable no-undef */
  2. import esbuild from 'esbuild'
  3. import serve, { error, log } from 'create-serve'
  4. const isDevServer = process.argv.includes('--dev')
  5. esbuild
  6. .build({
  7. entryPoints: ['src/index.tsx'],
  8. bundle: true,
  9. outfile: 'dist/bundle.js',
  10. minify: false,
  11. sourcemap: true,
  12. incremental: isDevServer,
  13. target: ['chrome58', 'firefox57', 'safari11', 'edge18'],
  14. define: {
  15. 'process.env.NODE_ENV': isDevServer ? '"development"' : '"production"',
  16. },
  17. watch: isDevServer && {
  18. onRebuild(err) {
  19. serve.update()
  20. err ? error('❌ Failed') : log('✅ Updated')
  21. },
  22. },
  23. })
  24. .catch(() => process.exit(1))
  25. if (isDevServer) {
  26. serve.start({
  27. port: 5000,
  28. root: './dist',
  29. live: true,
  30. })
  31. }