"use strict"; var gulp = require('gulp'), autoprefixer = require('gulp-autoprefixer'), cssnano = require('gulp-cssnano'), jshint = require('gulp-jshint'), uglify = require('gulp-uglify'), rename = require('gulp-rename'), concat = require('gulp-concat'), notify = require('gulp-notify'), cache = require('gulp-cache'), livereload = require('gulp-livereload'), htmlmin = require('gulp-htmlmin'), inject = require('gulp-inject'), del = require('del'), htmlreplace = require('gulp-html-replace'); var filePath = { build_dir: './dist' }; gulp.task('scripts', function() { return gulp.src('app/js/**/*.js') .pipe(jshint('.jshintrc')) .pipe(jshint.reporter('default')) .pipe(concat('main.js')) /*.pipe(gulp.dest('dist/js'))*/ /*.pipe(rename({suffix: '.min'}))*/ .pipe(concat('app.js')) /*.pipe(uglify({mangle: false}))*/ .pipe(gulp.dest('dist/js')); }); gulp.task('styles', function() { return gulp.src(['app/css/app.css','app/css/md.css','app/css/read.css','app/css/gist.css']) .pipe(autoprefixer('last 2 version', 'safari 5', 'ie 8', 'ie 9', 'opera 12.1', 'ios 6', 'android 4')) /*.pipe(gulp.dest('dist/css'))*/ /*.pipe(rename({suffix: '.min'}))*/ .pipe(cssnano()) .pipe(concat('app.css')) .pipe(gulp.dest('dist/css')); }); gulp.task('partials', function() { gulp.src(['app/partials/**/*']).pipe(gulp.dest('dist/partials')); gulp.src(['app/libs/ejs_production.js']).pipe(gulp.dest('dist/libs')); gulp.src(['app/libs/microevent.js']).pipe(gulp.dest('dist/libs')); gulp.src(['app/fav/**/*']).pipe(gulp.dest('dist/fav')); gulp.src(['app/gfx/**/*']).pipe(gulp.dest('dist/gfx')); }); gulp.task('index', function () { var sources = gulp.src(['js/apps.js', 'css/app.css'], {read: false}); return gulp.src(['app/index.html']) .pipe(htmlreplace({ 'css': 'css/app.css', 'js': 'js/app.js', 'vendor': 'libs/ejs_production.js' })) .pipe(htmlmin({removeComments: true, collapseWhitespace: true, keepClosingSlash: true})) .pipe(gulp.dest('dist/')); }); gulp.task('clean', function() { return del(['dist']); }); gulp.task('default', ['clean'], function() { gulp.start('styles', 'scripts','partials','index'); });