gulpfile.js 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. var gulp = require('gulp');
  2. var gutil = require('gulp-util');
  3. var bower = require('bower');
  4. var concat = require('gulp-concat');
  5. var sass = require('gulp-sass');
  6. var minifyCss = require('gulp-minify-css');
  7. var rename = require('gulp-rename');
  8. var sh = require('shelljs');
  9. var paths = {
  10. sass: ['./scss/**/*.scss']
  11. };
  12. gulp.task('default', ['sass']);
  13. gulp.task('sass', function(done) {
  14. gulp.src('./scss/ionic.app.scss')
  15. .pipe(sass())
  16. .pipe(gulp.dest('./www/css/'))
  17. .pipe(minifyCss({
  18. keepSpecialComments: 0
  19. }))
  20. .pipe(rename({ extname: '.min.css' }))
  21. .pipe(gulp.dest('./www/css/'))
  22. .on('end', done);
  23. });
  24. gulp.task('watch', function() {
  25. gulp.watch(paths.sass, ['sass']);
  26. });
  27. gulp.task('install', ['git-check'], function() {
  28. return bower.commands.install()
  29. .on('log', function(data) {
  30. gutil.log('bower', gutil.colors.cyan(data.id), data.message);
  31. });
  32. });
  33. gulp.task('git-check', function(done) {
  34. if (!sh.which('git')) {
  35. console.log(
  36. ' ' + gutil.colors.red('Git is not installed.'),
  37. '\n Git, the version control system, is required to download Ionic.',
  38. '\n Download git here:', gutil.colors.cyan('http://git-scm.com/downloads') + '.',
  39. '\n Once git is installed, run \'' + gutil.colors.cyan('gulp install') + '\' again.'
  40. );
  41. process.exit(1);
  42. }
  43. done();
  44. });