gulpfile.js 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. var gulp = require('gulp');
  2. var jshint = require('gulp-jshint');
  3. var sass = require('gulp-sass');
  4. var concat = require('gulp-concat');
  5. var uglify = require('gulp-uglify');
  6. var rename = require('gulp-rename');
  7. var minifyCSS = require('gulp-minify-css');
  8. // Lint Task
  9. gulp.task('lint', function() {
  10. return gulp.src('lib/sweet-alert.js')
  11. .pipe(jshint())
  12. .pipe(jshint.reporter('default'));
  13. });
  14. // Compile Our Sass
  15. gulp.task('sass', function() {
  16. gulp.src('example/example.scss')
  17. .pipe(sass())
  18. .pipe(rename('example.css'))
  19. .pipe(gulp.dest('example'));
  20. return gulp.src(['lib/sweet-alert.scss', 'lib/ie9.css'])
  21. .pipe(sass())
  22. .pipe(concat('sweet-alert.css'))
  23. .pipe(minifyCSS())
  24. .pipe(gulp.dest('lib'));
  25. });
  26. // Concatenate & Minify JS
  27. gulp.task('scripts', function() {
  28. return gulp.src('lib/sweet-alert.js')
  29. .pipe(gulp.dest('lib'))
  30. .pipe(rename('sweet-alert.min.js'))
  31. .pipe(uglify())
  32. .pipe(gulp.dest('lib'));
  33. });
  34. // Watch Files For Changes
  35. gulp.task('watch', function() {
  36. gulp.watch('lib/*.js', ['lint', 'scripts']);
  37. gulp.watch(['lib/*.scss', 'lib/*.css'], ['sass']);
  38. });
  39. // Default Task
  40. gulp.task('default', ['lint', 'sass', 'scripts', 'watch']);