compileDist.js 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. const webpack = require('webpack');
  2. const config = require('../webpack.config');
  3. const fs = require("fs/promises");
  4. const path = require("path");
  5. function compile() {
  6. return new Promise((resolve, reject) => {
  7. console.log('compile jsx start');
  8. webpack(config({ minimize: false }), async (err, stats) => {
  9. if (err) {
  10. console.error(err);
  11. reject(err);
  12. return;
  13. }
  14. const info = stats.toJson();
  15. if (stats.hasErrors()) {
  16. (info.errors || []).forEach(error => {
  17. console.error(error);
  18. });
  19. reject(err);
  20. return;
  21. }
  22. console.log('compile jsx success');
  23. resolve();
  24. });
  25. });
  26. }
  27. function compileMin() {
  28. return new Promise((resolve, reject) => {
  29. console.log('compile jsx with minimize start');
  30. webpack(config({ minimize: true }), async (err, stats) => {
  31. if (err) {
  32. console.error(err);
  33. reject(err);
  34. }
  35. const info = stats.toJson();
  36. if (stats.hasErrors()) {
  37. (info.errors || []).forEach(error => {
  38. console.error(error);
  39. reject(err);
  40. });
  41. }
  42. await fs.unlink(path.join(__dirname, "..", 'dist', 'umd', 'semi-ui.min.js.LICENSE.txt'));
  43. console.log('compile jsx with minimize success');
  44. resolve();
  45. });
  46. });
  47. }
  48. compile().then(compileMin);