Du kan inte välja fler än 25 ämnen Ämnen måste starta med en bokstav eller siffra, kan innehålla bindestreck ('-') och vara max 35 tecken långa.

dev.mjs 935B

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. /* eslint-disable no-undef */
  2. import fs from 'fs'
  3. import esbuildServe from 'esbuild-serve'
  4. async function main() {
  5. if (!fs.existsSync('./dist')) {
  6. fs.mkdirSync('./dist')
  7. }
  8. fs.copyFile('./src/index.html', './dist/index.html', (err) => {
  9. if (err) throw err
  10. })
  11. try {
  12. await esbuildServe(
  13. {
  14. entryPoints: ['src/index.tsx'],
  15. bundle: true,
  16. outfile: 'dist/bundle.js',
  17. minify: false,
  18. sourcemap: true,
  19. incremental: true,
  20. target: ['chrome58', 'firefox57', 'safari11', 'edge18'],
  21. define: {
  22. 'process.env.NODE_ENV': '"development"',
  23. },
  24. watch: {
  25. onRebuild(err) {
  26. serve.update()
  27. err ? error('❌ Failed') : log('✅ Updated')
  28. },
  29. },
  30. },
  31. {
  32. port: 5000,
  33. root: './dist',
  34. live: true,
  35. }
  36. )
  37. } catch (err) {
  38. process.exit(1)
  39. }
  40. }
  41. main()