@@ -8,7 +8,10 @@ var bower = require('bower');
8
8
var Dgeni = require ( 'dgeni' ) ;
9
9
var merge = require ( 'event-stream' ) . merge ;
10
10
var path = require ( 'canonical-path' ) ;
11
-
11
+ var foreach = require ( 'gulp-foreach' ) ;
12
+ var uglify = require ( 'gulp-uglify' ) ;
13
+ var sourcemaps = require ( 'gulp-sourcemaps' ) ;
14
+ var rename = require ( 'gulp-rename' ) ;
12
15
13
16
// We indicate to gulp that tasks are async by returning the stream.
14
17
// Gulp can then wait for the stream to close before starting dependent tasks.
@@ -20,6 +23,7 @@ var bowerFolder = 'bower_components';
20
23
var src = 'app/src/**/*.js' ;
21
24
var assets = 'app/assets/**/*' ;
22
25
26
+
23
27
var copyComponent = function ( component , pattern , sourceFolder , packageFile ) {
24
28
pattern = pattern || '/**/*' ;
25
29
sourceFolder = sourceFolder || bowerFolder ;
@@ -42,14 +46,37 @@ gulp.task('bower', function() {
42
46
} ) ;
43
47
44
48
gulp . task ( 'build-app' , function ( ) {
45
- gulp . src ( src )
46
- . pipe ( concat ( 'docs.js' ) )
47
- . pipe ( gulp . dest ( outputFolder + '/js/' ) ) ;
49
+ var file = 'docs.js' ;
50
+ var minFile = 'docs.min.js' ;
51
+ var folder = outputFolder + '/js/' ;
52
+
53
+ return gulp . src ( src )
54
+ . pipe ( sourcemaps . init ( ) )
55
+ . pipe ( concat ( file ) )
56
+ . pipe ( gulp . dest ( folder ) )
57
+ . pipe ( rename ( minFile ) )
58
+ . pipe ( uglify ( ) )
59
+ . pipe ( sourcemaps . write ( '.' ) )
60
+ . pipe ( gulp . dest ( folder ) ) ;
48
61
} ) ;
49
62
50
63
gulp . task ( 'assets' , [ 'bower' ] , function ( ) {
64
+ var JS_EXT = / \. j s $ / ;
51
65
return merge (
52
- gulp . src ( [ assets ] ) . pipe ( gulp . dest ( outputFolder ) ) ,
66
+ gulp . src ( [ assets ] )
67
+ . pipe ( gulp . dest ( outputFolder ) ) ,
68
+ gulp . src ( [ assets ] )
69
+ . pipe ( foreach ( function ( stream , file ) {
70
+ if ( JS_EXT . test ( file . relative ) ) {
71
+ var minFile = file . relative . replace ( JS_EXT , '.min.js' ) ;
72
+ return stream
73
+ . pipe ( sourcemaps . init ( ) )
74
+ . pipe ( concat ( minFile ) )
75
+ . pipe ( uglify ( ) )
76
+ . pipe ( sourcemaps . write ( '.' ) )
77
+ . pipe ( gulp . dest ( outputFolder ) ) ;
78
+ }
79
+ } ) ) ,
53
80
copyComponent ( 'bootstrap' , '/dist/**/*' ) ,
54
81
copyComponent ( 'open-sans-fontface' ) ,
55
82
copyComponent ( 'lunr.js' , '/*.js' ) ,
0 commit comments