-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathgulpfile.js
70 lines (57 loc) · 1.84 KB
/
gulpfile.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
/*
See dev dependencies https://gist.github.com/isimmons/8927890
Compiles sass to compressed css with autoprefixing
Compiles coffee to javascript
Livereloads on changes to coffee, sass, and blade templates
Runs PHPUnit tests
Watches sass, coffee, blade, and phpunit
Default tasks sass, coffee, phpunit, watch
*/
var gulp = require('gulp');
var less = require('gulp-less');
var path = require('path');
var minifycss = require('gulp-minify-css');
var autoprefixer = require('gulp-autoprefixer');
var rename = require('gulp-rename');
var uglify = require('gulp-uglify');
var gutil = require('gulp-util');
var concat = require('gulp-concat');
gulp.task('minifycss', function() {
gulp.src('assets/css/main.css')
.pipe(minifycss({keepBreaks:false}))
.pipe(autoprefixer('last 2 version', 'safari 5', 'ie 8', 'ie 9', 'opera 12.1'))
.pipe(rename({suffix: '.min'}))
.pipe(gulp.dest('assets/css'));
});
gulp.task('less', function () {
gulp.src('assets/less/main.less')
.pipe(less({
paths: [path.join(__dirname, 'less', 'includes')]
}))
.pipe(gulp.dest('assets/css'));
});
gulp.task('compress', function() {
gulp.src(
[
'app/*.js',
'app/services/*.js',
'app/directives/*.js',
'app/controllers/*.js',
'app/**/*.js'
]
)
.pipe(uglify())
.pipe(concat('main.min.js'))
.pipe(gulp.dest('assets/js'))
});
gulp.task('version', function () {
var file = '<?php return "'+makeid()+'"; ';
require('fs').writeFile('.version.php', file);
})
gulp.task('watch', function () {
gulp.watch('assets/less/*.less', ['less']);
gulp.watch('app/**/*.js', ['compress']);
gulp.watch('assets/css/main.css', ['minifycss']);
});
/* Default Task */
gulp.task('default', ['less', 'watch', 'minifycss']);