-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathgulpfile.js
61 lines (53 loc) · 1.75 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
var gulp = require('gulp');
var jshint = require('gulp-jshint');
var uglify = require('gulp-uglify');
var concat = require('gulp-concat');
var minifyHTML = require('gulp-minify-html');
var rjs = require('gulp-requirejs');
var jscs = require('gulp-jscs');
var jst = require('gulp-jst');
gulp.task('js-prod', function() {
gulp.src('./src/**/*.js')
.pipe(uglify())
.pipe(jshint())
.pipe(gulp.dest('./build/src'));
gulp.src('./lib/**/*.js')
.pipe(uglify())
.pipe(gulp.dest('./build/lib'));
});
gulp.task('html-prod', function() {
gulp.src('./templates/**/*.html')
.pipe(jst())
.pipe(gulp.dest('./build/templates'));
});
gulp.task('requirejs-prod', ['html-prod', 'js-prod'], function() {
rjs({
baseUrl: './build/src',
out: 'deploy.js',
name: "main",
paths: {
jquery: './../lib/jquery/jquery.min',
underscore: './../lib/underscore/underscore.min',
backbone: './../lib/backbone/backbone.min',
localstore: './../lib/backbone/backbone.localStorage',
text: './../lib/require/text',
templates: './../templates',
todoModel: './../src/models/todo',
todosCollection: './../src/collections/todos',
todosView: './../src/views/list',
todoView: './../src/views/todo',
todoNewView: './../src/views/new',
},
})
.pipe(uglify())
.pipe(gulp.dest('./deploy/')); // pipe it to the output DIR
gulp.src('./build/lib/require.js')
.pipe(gulp.dest('./deploy'));
});
gulp.task('js-cs-fixer', function () {
gulp.src('./src/**/*.js')
.pipe(jscs());
gulp.src('./test/**/*.js')
.pipe(jscs());
});
gulp.task('default', ['js-prod', 'html-prod', 'requirejs-prod']);