78 lines
2.3 KiB
JavaScript
78 lines
2.3 KiB
JavaScript
"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');
|
|
});
|