gulpfile.js 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. /**
  2. * @Author: Bachir Soussi Chiadmi <bach>
  3. * @Date: 20-12-2017
  4. * @Email: bachir@figureslibres.io
  5. * @Filename: gulpfile.js
  6. * @Last modified by: bach
  7. * @Last modified time: 20-12-2017
  8. * @License: GPL-V3
  9. */
  10. 'use strict';
  11. var gulp = require('gulp');
  12. var util = require('gulp-util');
  13. var sass = require('gulp-sass');
  14. var watch = require('gulp-watch');
  15. var autoprefixer = require('gulp-autoprefixer');
  16. var jsmin = require('gulp-jsmin');
  17. var cssmin = require('gulp-cssmin');
  18. var rename = require('gulp-rename');
  19. var mainBowerFiles = require('main-bower-files');
  20. function handleError(err) {
  21. console.log(err.toString());
  22. }
  23. var config = {
  24. production: !!util.env.production
  25. }
  26. gulp.task('scripts', function () {
  27. gulp.src('./assets/scripts/corpus.js')
  28. .pipe(config.production ? jsmin() : util.noop())
  29. .pipe(rename({suffix: '.min'}))
  30. .pipe(gulp.dest('./assets/dist/scripts/'));
  31. });
  32. gulp.task('styles', function () {
  33. gulp.src('./assets/styles/corpus.scss')
  34. .pipe(sass().on('error', sass.logError))
  35. .pipe(autoprefixer({
  36. browsers: ['last 2 versions'],
  37. cascade: false
  38. })).on('error', handleError)
  39. .pipe(config.production ? cssmin() : util.noop())
  40. .pipe(rename({suffix: '.min'}))
  41. .pipe(gulp.dest('./assets/dist/styles/'));
  42. });
  43. gulp.task('bower', function() {
  44. gulp.src(mainBowerFiles({
  45. "overrides":{
  46. "jquery":{
  47. "ignore":true
  48. },
  49. "physics": {
  50. "main": [
  51. './build/physics.js'
  52. ]
  53. },
  54. "EaselJS":{
  55. "ignore":true
  56. // "main": [
  57. // './lib/easeljs.js'
  58. // ]
  59. }
  60. }
  61. }))
  62. .pipe(config.production ? jsmin() : util.noop())
  63. .pipe(rename({suffix: '.min'}))
  64. .pipe(gulp.dest('./assets/dist/bower/'));
  65. });
  66. // default gulp task
  67. gulp.task('default', ['bower', 'scripts', 'styles'], function() {
  68. gulp.watch('./assets/styles/*.scss', ['styles']);
  69. // gulp.watch('./assets/styles/*/*.scss', ['styles']);
  70. gulp.watch('./assets/scripts/*.js', ['scripts']);
  71. });