@@ -12,6 +12,36 @@ var tar = require('gulp-tar');
1212var uglify = require ( 'gulp-uglify' ) ;
1313var order = require ( 'gulp-order' ) ;
1414
15+ var coreSources = [
16+ 'version.js' ,
17+ 'underscore.js' ,
18+ 'utils.js' ,
19+ 'error.js' ,
20+ 'event.js' ,
21+ 'geopoint.js' ,
22+ 'acl.js' ,
23+ 'op.js' ,
24+ 'relation.js' ,
25+ 'promise.js' ,
26+ 'file.js' ,
27+ 'object.js' ,
28+ 'role.js' ,
29+ 'user.js' ,
30+ 'query.js' ,
31+ 'cloudfunction.js' ,
32+ 'push.js' ,
33+ 'status.js'
34+ ] ;
35+
36+ var optionalSources = [
37+ 'facebook.js' ,
38+ 'history.js' ,
39+ 'router.js' ,
40+ 'collection.js' ,
41+ 'view.js'
42+ ]
43+
44+
1545getAVVersion = function ( ) {
1646 return require ( './lib/AV.js' ) . AV . VERSION . replace ( 'js' , '' ) ;
1747} ;
@@ -25,39 +55,23 @@ gulp.task('pack', shell.task([
2555 'git checkout -- ./' ,
2656] ) ) ;
2757
28- gulp . task ( 'concat' , function ( ) {
29- var sources = [
30- 'version.js' ,
31- 'underscore.js' ,
32- 'utils.js' ,
33- 'error.js' ,
34- 'event.js' ,
35- 'geopoint.js' ,
36- 'acl.js' ,
37- 'op.js' ,
38- 'relation.js' ,
39- 'promise.js' ,
40- 'file.js' ,
41- 'object.js' ,
42- 'role.js' ,
43- 'collection.js' ,
44- 'view.js' ,
45- 'user.js' ,
46- 'query.js' ,
47- 'facebook.js' ,
48- 'history.js' ,
49- 'router.js' ,
50- 'cloudfunction.js' ,
51- 'push.js' ,
52- 'status.js' ,
53- ] ;
54- return gulp . src ( sources . map ( function ( filename ) { return path . join ( 'lib' , filename ) ; } ) )
55- . pipe ( order ( sources ) )
56- . pipe ( concat ( 'av.js' ) )
57- . pipe ( gulp . dest ( 'dist' ) ) ;
58- } ) ;
58+ function concatGenerator ( sources , file ) {
59+ return function ( ) {
60+ return gulp . src ( sources . map ( function ( filename ) { return path . join ( 'lib' , filename ) ; } ) )
61+ . pipe ( order ( sources ) )
62+ . pipe ( concat ( file ) )
63+ . pipe ( gulp . dest ( 'dist' ) ) ;
64+ }
65+ }
66+
67+ gulp . task ( 'concat' , concatGenerator ( coreSources . concat ( optionalSources ) , 'av.js' ) ) ;
68+ gulp . task ( 'concat_core' , concatGenerator ( coreSources , 'av-core.js' ) ) ;
5969
6070gulp . task ( 'uglify' , [ 'concat' ] , function ( ) {
71+ gulp . src ( 'dist/av-core.js' )
72+ . pipe ( uglify ( ) )
73+ . pipe ( rename ( 'av-core-mini.js' ) )
74+ . pipe ( gulp . dest ( 'dist' ) ) ;
6175 return gulp . src ( 'dist/av.js' )
6276 . pipe ( uglify ( ) )
6377 . pipe ( rename ( 'av-mini.js' ) )
@@ -66,7 +80,7 @@ gulp.task('uglify', ['concat'], function() {
6680
6781gulp . task ( 'compress-scripts' , [ 'uglify' ] , function ( ) {
6882 var version = getAVVersion ( ) ;
69- return gulp . src ( [ 'dist/av.js' , 'dist/av-mini.js' ] )
83+ return gulp . src ( [ 'dist/av.js' , 'dist/av-mini.js' , 'dist/av-core-mini.js' , 'dist/av-core.js' , 'readme.txt' ] )
7084 . pipe ( tar ( 'avos-javascript-sdk-' + version + '.tar' ) )
7185 . pipe ( gzip ( ) )
7286 . pipe ( gulp . dest ( 'dist' ) ) ;
@@ -111,4 +125,4 @@ gulp.task('clean', function() {
111125 . pipe ( clean ( { force : true } ) ) ;
112126} ) ;
113127
114- gulp . task ( 'release' , [ 'concat' , 'uglify' , 'compress-scripts' , 'docs' , 'compress-docs' ] ) ;
128+ gulp . task ( 'release' , [ 'concat' , 'concat_core' , ' uglify', 'compress-scripts' , 'docs' , 'compress-docs' ] ) ;
0 commit comments