mirror of
https://gitlab.silvrtree.co.uk/martind2000/recipes.git
synced 2025-01-11 14:55:08 +00:00
73 lines
2.4 KiB
JavaScript
73 lines
2.4 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');
|
||
|
|
||
|
|
||
|
|
||
|
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(uglify())
|
||
|
.pipe(gulp.dest('dist/js'))
|
||
|
.pipe(notify({ message: 'Scripts task complete' }));
|
||
|
});
|
||
|
|
||
|
gulp.task('styles', function() {
|
||
|
return gulp.src('app/css/**/*.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(gulp.dest('dist/css'))
|
||
|
.pipe(notify({ message: 'Styles task complete' }));
|
||
|
});
|
||
|
|
||
|
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.task('minify-html', function () {
|
||
|
var sources = gulp.src(['dist/**/*.min.js', 'dist/**/*.min.css'], {read: false});
|
||
|
var appstream = gulp.src(['dist/**/*.min.js'], {read:false});
|
||
|
return gulp.src(['app/*.html']).pipe(inject(gulp.src(['./dist/js/**/*.min.js', './dist/css/**/*.min.css'], {read: false}), {
|
||
|
starttag: '"main": [',
|
||
|
endtag: ']',
|
||
|
transform: function (filepath, file, i, length) {
|
||
|
return ' "' + filepath + '"' + (i + 1 < length ? ',' : '');
|
||
|
}
|
||
|
}))
|
||
|
.pipe(gulp.dest('dist'));
|
||
|
/*.pipe(gulp.dest('./'));
|
||
|
.pipe(inject(sources),{relative:true})
|
||
|
/!*.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','minify-html');
|
||
|
});
|