Skip to content

Commit 1fc31e6

Browse files
author
Sebastian Henneberg
committed
combined script tasks into single file, closes #28
1 parent 5e6e12b commit 1fc31e6

7 files changed

+46
-79
lines changed

index.js

+1-9
Original file line numberDiff line numberDiff line change
@@ -17,10 +17,6 @@ module.exports = function(gulp, tasks, config) {
1717
require('./tasks/compass')(gulp, config.app.scss, config.dirname, config.bases.app, config.dist.css);
1818
}
1919

20-
if (tasks.indexOf('configScripts') !== -1) {
21-
require('./tasks/configScripts')(gulp, config.env.constants, config.configName, config.dist.js, config.env.rev);
22-
}
23-
2420
if (tasks.indexOf('browserSync') !== -1) {
2521
require('./tasks/browserSync')(gulp, browserSync, config.bases.dist, config.port, config.proxy);
2622
}
@@ -53,16 +49,12 @@ module.exports = function(gulp, tasks, config) {
5349
require('./tasks/mavenInstall')(gulp, config.mavenConfig);
5450
}
5551

56-
if (tasks.indexOf('partials') !== -1) {
57-
require('./tasks/partials')(gulp, config.app.views, config.dist.js, config.templateName, config.sourceMapsPath, config.env.rev);
58-
}
59-
6052
if (tasks.indexOf('sass') !== -1) {
6153
require('./tasks/sass')(gulp, tasks, browserSync, config.app.scss, config.dist.css, config.env.rev, config.dist.fonts, config.sourceMapsPath);
6254
}
6355

6456
if (tasks.indexOf('scripts') !== -1) {
65-
require('./tasks/scripts')(gulp, config.app.js, config.dist.js, config.sourceMapsPath, config.env.rev);
57+
require('./tasks/scripts')(gulp, tasks, config);
6658
}
6759

6860
if (tasks.indexOf('statics') !== -1) {

package.json

+1-2
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,6 @@
3535
"gulp-angular-filesort": "^1.1.1",
3636
"gulp-autoprefixer": "^2.3.1",
3737
"gulp-bower": "0.0.10",
38-
"gulp-cached": "^1.1.0",
3938
"gulp-compass": "^2.1.0",
4039
"gulp-concat": "^2.5.2",
4140
"gulp-debug": "^2.0.1",
@@ -54,14 +53,14 @@
5453
"gulp-ng-constant": "^0.3.0",
5554
"gulp-ng-html2js": "^0.2.0",
5655
"gulp-preprocess": "^1.2.0",
57-
"gulp-remember": "^0.3.0",
5856
"gulp-rev": "^5.0.1",
5957
"gulp-rev-replace": "^0.4.2",
6058
"gulp-sass": "^2.0.3",
6159
"gulp-sourcemaps": "^1.5.2",
6260
"gulp-uglify": "^1.2.0",
6361
"jshint-stylish": "^2.0.1",
6462
"main-bower-files": "^2.8.0",
63+
"merge-stream": "^1.0.0",
6564
"underscore": "^1.8.3"
6665
}
6766
}

tasks/configScripts.js

-19
This file was deleted.

tasks/index.js

+2-2
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ module.exports = function(gulp, tasks, dest, index, appName) {
1515
read: false
1616
};
1717

18-
var jsFiles = ['js/vendor*.js', 'js/constants*.js', 'js/partials*.js', 'js/scripts*.js'];
18+
var jsFiles = ['js/vendor*.js', 'js/scripts*.js'];
1919
var cssFiles = ['css/vendor*.css', 'css/style*.css'];
2020

2121
// use relative paths with dist as base; remove the prepended '../dist' in the path
@@ -45,6 +45,6 @@ module.exports = function(gulp, tasks, dest, index, appName) {
4545
gulp.task('justIndex', injectIndex);
4646

4747
// use this initial building
48-
var mergedTasks = _.intersection(tasks, ['partials', 'configScripts', 'scripts', 'bowerScripts', 'styles', 'bowerStyles']);
48+
var mergedTasks = _.intersection(tasks, ['scripts', 'bowerScripts', 'styles', 'bowerStyles']);
4949
gulp.task('index', mergedTasks, injectIndex);
5050
};

tasks/partials.js

-35
This file was deleted.

tasks/scripts.js

+41-11
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,61 @@
11
'use strict';
22

33
var sourceMaps = require('gulp-sourcemaps'),
4-
cached = require('gulp-cached'),
5-
remember = require('gulp-remember'),
64
ngAnnotate = require('gulp-ng-annotate'),
75
ngFilesort = require('gulp-angular-filesort'),
6+
ngConstant = require('gulp-ng-constant'),
7+
minifyHtml = require('gulp-minify-html'),
8+
ngHtml2Js = require('gulp-ng-html2js'),
89
concat = require('gulp-concat'),
910
gulpif = require('gulp-if'),
1011
rev = require('gulp-rev'),
11-
uglify = require('gulp-uglify');
12-
12+
uglify = require('gulp-uglify'),
13+
mergeStream = require('merge-stream');
1314

1415
var scriptsFile = 'scripts.js';
1516

16-
module.exports = function(gulp, src, dest, sourceMapsPath, revFlag) {
17+
module.exports = function(gulp, tasks, config) {
1718
gulp.task('scripts', function() {
18-
return gulp.src(src)
19+
20+
var scripts = gulp.src(config.app.js);
21+
22+
// optionally add configScripts
23+
if (tasks.indexOf('configScripts') !== -1) {
24+
var configScripts = ngConstant({
25+
constants: config.env.constants,
26+
name: config.configName,
27+
stream: true
28+
});
29+
30+
scripts = mergeStream(scripts, configScripts);
31+
}
32+
33+
34+
// optionally add partials
35+
if (tasks.indexOf('partials') !== -1) {
36+
var partials = gulp.src(config.app.views)
37+
.pipe(minifyHtml({
38+
empty: true,
39+
spare: true,
40+
quotes: true
41+
}))
42+
.pipe(ngHtml2Js({
43+
moduleName: config.templateName,
44+
prefix: 'components/'
45+
}));
46+
47+
scripts = mergeStream(scripts, partials);
48+
}
49+
50+
return scripts
1951
.pipe(sourceMaps.init())
20-
.pipe(cached('scriptsCache'))
2152
.pipe(ngAnnotate())
2253
.pipe(ngFilesort())
23-
.pipe(remember('scriptsCache'))
2454
.pipe(concat(scriptsFile))
2555
.pipe(uglify())
26-
.pipe(gulpif(revFlag, rev()))
27-
.pipe(sourceMaps.write(sourceMapsPath))
28-
.pipe(gulp.dest(dest));
56+
.pipe(gulpif(config.env.rev, rev()))
57+
.pipe(sourceMaps.write(config.sourceMapsPath))
58+
.pipe(gulp.dest(config.dist.js));
2959
});
3060
};
3161

tasks/watch.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ module.exports = function(gulp, tasks, browserSync, config) {
55
gulp.watch(config.app.index, ['justIndex']);
66

77
if (tasks.indexOf('partials')) {
8-
gulp.watch(config.app.views, ['partials']);
8+
gulp.watch(config.app.views, ['scripts']);
99
}
1010

1111
if (tasks.indexOf('statics')) {

0 commit comments

Comments
 (0)