Você não pode selecionar mais de 25 tópicos Os tópicos devem começar com uma letra ou um número, podem incluir traços ('-') e podem ter até 35 caracteres.

2 anos atrás
12345678910111213141516171819202122232425262728293031
  1. /* eslint-disable no-console */
  2. const path = require("path");
  3. const fs = require("fs");
  4. const glob = require("fast-glob");
  5. module.exports = {
  6. name: "build_cleanup",
  7. setup(build) {
  8. build.onEnd((result) => {
  9. if (result.errors.length) return;
  10. clean_dist_files(Object.keys(result.metafile.outputs));
  11. });
  12. },
  13. };
  14. function clean_dist_files(new_files) {
  15. new_files.forEach((file) => {
  16. if (file.endsWith(".map")) return;
  17. const pattern = file.split(".").slice(0, -2).join(".") + "*";
  18. glob.sync(pattern).forEach((file_to_delete) => {
  19. if (file_to_delete.startsWith(file)) return;
  20. fs.unlink(path.resolve(file_to_delete), (err) => {
  21. if (!err) return;
  22. console.error(`Error deleting ${file.split(path.sep).pop()}`);
  23. });
  24. });
  25. });
  26. }