Guest User

Untitled

a guest
May 5th, 2016
57
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.22 KB | None | 0 0
  1. var gulp = require('gulp');
  2. var plugins = require('gulp-load-plugins')();
  3. var rimraf = require('rimraf');
  4.  
  5. var paths = {
  6. less: ['./less/*.less'],
  7. js: ['./js/app/*.js', './js/app/**/*.js'],
  8. jsView: ['./js/app/views/*.html'],
  9. dist: {
  10. css: './public/css/',
  11. js: './public/js/',
  12. jsView: './public/views',
  13. },
  14. vendor: {
  15. css: ['./vendor/twitter/bootstrap/dist/css/bootstrap.min.css'],
  16. js: ['./js/vendor/*.js']
  17. },
  18. test: ['./js/tests/**.js']
  19. };
  20.  
  21.  
  22.  
  23. /**
  24. * removes css- and js-dist folder.
  25. */
  26. gulp.task('clean', function() {
  27. rimraf.sync(paths.dist.css);
  28. rimraf.sync(paths.dist.js);
  29. })
  30.  
  31. /**
  32. * compiles less files into css.
  33. */
  34. gulp.task('less', function() {
  35. gulp.src(paths.less)
  36. .pipe(plugins.concat('layout.css'))
  37. .pipe(plugins.less())
  38. .pipe(plugins.minifyCss())
  39. .pipe(gulp.dest(paths.dist.css));
  40. });
  41.  
  42. gulp.task('js', function() {
  43. gulp.src(paths.js)
  44. .pipe(plugins.concat('app.js'))
  45. .pipe(plugins.uglify({mangle: false}))
  46. .pipe(gulp.dest(paths.dist.js));
  47. });
  48.  
  49. gulp.task('js-view', function() {
  50. gulp.src(paths.jsView)
  51. .pipe(gulp.dest(paths.dist.jsView));
  52. });
  53.  
  54. gulp.task('watch', function() {
  55. gulp.watch(paths.less, ['less', 'dist']);
  56. console.log('watching directory:' + paths.less.join(', '));
  57.  
  58. gulp.watch(paths.js, ['js', 'dist']);
  59. console.log('watching directory:' + paths.js.join(', '));
  60.  
  61. gulp.watch(paths.jsView, ['js-view', 'dist']);
  62. console.log('watching directory:' + paths.jsView.join(', '));
  63. });
  64.  
  65. /**
  66. * copies vendor specific files to the public folder.
  67. */
  68. gulp.task('vendor', function() {
  69. gulp.src(paths.vendor.css)
  70. .pipe(plugins.concat('vendor.css'))
  71. .pipe(plugins.minifyCss())
  72. .pipe(gulp.dest(paths.dist.css));
  73.  
  74. gulp.src(paths.vendor.js)
  75. .pipe(plugins.concat('vendor.js'))
  76. .pipe(plugins.uglify({mangle: false}))
  77. .pipe(gulp.dest(paths.dist.js));
  78. });
  79.  
  80. /**
  81. * tests the testing directory with jasmine.
  82. */
  83. gulp.task('test', function() {
  84. gulp.src(paths.test)
  85. .pipe(plugins.jasmine());
  86. });
  87.  
  88. /**
  89. * optimizes the output in terms of minification and concatenation.
  90. */
  91. gulp.task('dist', function() {
  92. // add some optimizations (?)
  93. });
  94.  
  95.  
  96.  
  97. gulp.task('build', ['clean', 'vendor', 'less', 'js', 'js-view', 'dist']);
  98.  
  99. gulp.task('default', ['build']);
Add Comment
Please, Sign In to add comment