Guest User

Untitled

a guest
Sep 2nd, 2018
121
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.40 KB | None | 0 0
  1. var gulp = require('gulp'),
  2. sass = require('gulp-sass'),
  3. browserSync = require('browser-sync'),
  4. concat = require('gulp-concat'),
  5. uglify = require('gulp-uglify'),
  6. cleanCSS = require('gulp-clean-css'),
  7. rename = require('gulp-rename'),
  8. autoprefixer = require('gulp-autoprefixer'),
  9. notify = require('gulp-notify'),
  10. ftp = require('vinyl-ftp'),
  11. gutil = require('gulp-util'),
  12. sourcemaps = require('gulp-sourcemaps');
  13.  
  14. // common-js
  15. gulp.task('custom-js', function() {
  16. return gulp.src([
  17. 'catalog/view/theme/oct_techstore/js/custom.js',
  18. ])
  19. .pipe(concat('custom.min.js'))
  20. .pipe(uglify())
  21. .pipe(gulp.dest('catalog/view/theme/oct_techstore/js/'));
  22. });
  23.  
  24. // libs js
  25. gulp.task('js', ['custom-js'], function() {
  26. return gulp.src([
  27. 'catalog/view/theme/oct_techstore/js/custom.min.js'
  28. ])
  29. .pipe(concat('scripts.min.js'))
  30. .pipe(uglify())
  31. .pipe(gulp.dest('catalog/view/theme/oct_techstore/js/'))
  32. .pipe(browserSync.reload({stream: true}));
  33. });
  34.  
  35. // sass
  36. gulp.task('sass', function() {
  37. return gulp.src('catalog/view/theme/oct_techstore/sass/**/*.sass')
  38. .pipe(sass({outputStyle: 'expand'}).on("error", notify.onError()))
  39. .pipe(sourcemaps.init())
  40. .pipe(rename({suffix: '.min', prefix: ''}))
  41. .pipe(autoprefixer(['last 15 versions']))
  42. .pipe(cleanCSS())
  43. .pipe(sourcemaps.write('.'))
  44. .pipe(gulp.dest('catalog/view/theme/oct_techstore/stylesheet/'))
  45. .pipe(browserSync.reload({stream: true}));
  46. });
  47.  
  48. // browser sync
  49. gulp.task('browser-sync', function() {
  50. browserSync({
  51. proxy: "",
  52. notify: false
  53. });
  54. });
  55.  
  56. gulp.task('deploy', function() {
  57. var conn = ftp.create({
  58. host: '',
  59. user: '',
  60. password: '',
  61. parallel: 10,
  62. log: gutil.log
  63. });
  64. var globs = [
  65. 'catalog/view/theme/oct_techstore/**'
  66. ];
  67. return gulp.src(globs, {buffer: false})
  68. .pipe(conn.dest('/catalog/view/theme/oct_techstore/'));
  69. });
  70.  
  71. // watch
  72. gulp.task('watch', ['sass', 'js', 'browser-sync'], function() {
  73. gulp.watch('catalog/view/theme/oct_techstore/js/**/*.js', ['js']);
  74. gulp.watch('catalog/view/theme/oct_techstore/template/**/*.tpl', browserSync.reload);
  75. gulp.watch('catalog/view/theme/oct_techstore/sass/**/*.sass', ['sass']);
  76. });
  77.  
  78. // default
  79. gulp.task('default', ['watch']);
Add Comment
Please, Sign In to add comment