Advertisement
Guest User

Untitled

a guest
Apr 2nd, 2020
108
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.47 KB | None | 0 0
  1. const { src, dest, watch, parallel } = require("gulp");
  2. const sass = require("gulp-sass");
  3. const imagemin = require("gulp-imagemin");
  4. const uglify = require("gulp-uglify-es").default;
  5. const babel = require("gulp-babel");
  6. const rename = require("gulp-rename");
  7.  
  8. /*
  9. * Add compressor from sass to css files
  10. * Sass is not browser supported.
  11. */
  12.  
  13. function sass2css(done) {
  14. src("./wp-content/themes/joth/assets/src/sass/style.scss")
  15. .pipe(sass({ outputStyle: "compressed" }).on("error", sass.logError))
  16. .pipe(rename('style.min.css'))
  17. .pipe(dest("./wp-content/themes/joth/assets/dist/css/"));
  18. done();
  19. }
  20.  
  21. /*
  22. * Compress all jpeg, png and svg files.
  23. */
  24.  
  25. function compressImages(done) {
  26. src("./wp-content/themes/joth/assets/src/images/*")
  27. .pipe(imagemin({ progressive: true }))
  28. .pipe(dest("./wp-content/themes/joth/assets/dist/images/"));
  29. done();
  30. }
  31.  
  32. /**
  33. * Minify all js files.
  34. */
  35.  
  36. function minifyJs(done) {
  37. src("./wp-content/themes/joth/assets/src/js/*.js")
  38. .pipe(babel({ presets: ["@babel/env"] }))
  39. .pipe(uglify())
  40. .pipe(rename({suffix: '.min'}))
  41. .pipe(dest("./wp-content/themes/joth/assets/dist/js/"));
  42. done();
  43. }
  44.  
  45. watch("./wp-content/themes/joth/assets/src/sass/**/*.scss", sass2css);
  46. watch("./wp-content/themes/joth/assets/src/images/*", compressImages);
  47. watch("./wp-content/themes/joth/assets/src/js/*", minifyJs);
  48.  
  49. module.exports.default = parallel(
  50. rename,
  51. sass2css,
  52. compressImages,
  53. minifyJs,
  54. );
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement