@@ -68,6 +68,61 @@ gulp.task('build', [ 'concat-sjcl' ], function(callback) {
68
68
} , callback ) ;
69
69
} ) ;
70
70
71
+ gulp . task ( 'build-min' , [ 'build' ] , function ( callback ) {
72
+ return gulp . src ( [ './build/ripple-' , '.js' ] . join ( pkg . version ) )
73
+ . pipe ( uglify ( ) )
74
+ . pipe ( rename ( [ 'ripple-' , '-min.js' ] . join ( pkg . version ) ) )
75
+ . pipe ( gulp . dest ( './build/' ) ) ;
76
+ } ) ;
77
+
78
+ gulp . task ( 'build-debug' , [ 'concat-sjcl' ] , function ( callback ) {
79
+ webpack ( {
80
+ cache : true ,
81
+ entry : './src/js/ripple/index.js' ,
82
+ output : {
83
+ library : 'ripple' ,
84
+ path : './build/' ,
85
+ filename : [ 'ripple-' , '-debug.js' ] . join ( pkg . version )
86
+ } ,
87
+ debug : true ,
88
+ devtool : 'eval'
89
+ } , callback ) ;
90
+ } ) ;
91
+
92
+ /**
93
+ * Generate a WebPack external for a given unavailable module which replaces
94
+ * that module's constructor with an error-thrower
95
+ */
96
+
97
+ function buildUseError ( cons ) {
98
+ return 'var {<CONS>:function(){throw new Error("Class is unavailable in this build: <CONS>")}}'
99
+ . replace ( new RegExp ( '<CONS>' , 'g' ) , cons ) ;
100
+ } ;
101
+
102
+ gulp . task ( 'build-core' , [ 'concat-sjcl' ] , function ( callback ) {
103
+ webpack ( {
104
+ entry : [
105
+ './src/js/ripple/remote.js'
106
+ ] ,
107
+ externals : [
108
+ {
109
+ './transaction' : buildUseError ( 'Transaction' ) ,
110
+ './orderbook' : buildUseError ( 'OrderBook' ) ,
111
+ './account' : buildUseError ( 'Account' ) ,
112
+ './serializedobject' : buildUseError ( 'SerializedObject' )
113
+ }
114
+ ] ,
115
+ output : {
116
+ library : 'ripple' ,
117
+ path : './build/' ,
118
+ filename : [ 'ripple-' , '-core.js' ] . join ( pkg . version )
119
+ } ,
120
+ plugins : [
121
+ new webpack . optimize . UglifyJsPlugin ( )
122
+ ]
123
+ } , callback ) ;
124
+ } ) ;
125
+
71
126
gulp . task ( 'bower-build' , [ 'build' ] , function ( callback ) {
72
127
return gulp . src ( [ './build/ripple-' , '.js' ] . join ( pkg . version ) )
73
128
. pipe ( rename ( 'ripple.js' ) )
@@ -88,45 +143,11 @@ gulp.task('bower-build-debug', [ 'build-debug' ], function(callback) {
88
143
89
144
gulp . task ( 'bower-version' , function ( ) {
90
145
gulp . src ( './dist/bower.json' )
91
- . pipe ( bump ( { version : pkg . version } ) )
146
+ . pipe ( bump ( { version : pkg . version } ) )
92
147
. pipe ( gulp . dest ( './dist/' ) ) ;
93
148
} ) ;
94
149
95
- gulp . task ( 'version-bump' , function ( ) {
96
- if ( ! argv . type ) {
97
- throw new Error ( "No type found, pass it in using the --type argument" ) ;
98
- }
99
- gulp . src ( './package.json' )
100
- . pipe ( bump ( { type :argv . type } ) )
101
- . pipe ( gulp . dest ( './' ) ) ;
102
- } ) ;
103
-
104
- gulp . task ( 'version-beta' , function ( ) {
105
- gulp . src ( './package.json' )
106
- . pipe ( bump ( { version : pkg . version + '-beta' } ) )
107
- . pipe ( gulp . dest ( './' ) ) ;
108
- } ) ;
109
-
110
- gulp . task ( 'build-min' , [ 'build' ] , function ( callback ) {
111
- return gulp . src ( [ './build/ripple-' , '.js' ] . join ( pkg . version ) )
112
- . pipe ( uglify ( ) )
113
- . pipe ( rename ( [ 'ripple-' , '-min.js' ] . join ( pkg . version ) ) )
114
- . pipe ( gulp . dest ( './build/' ) ) ;
115
- } ) ;
116
-
117
- gulp . task ( 'build-debug' , [ 'concat-sjcl' ] , function ( callback ) {
118
- webpack ( {
119
- cache : true ,
120
- entry : './src/js/ripple/index.js' ,
121
- output : {
122
- library : 'ripple' ,
123
- path : './build/' ,
124
- filename : [ 'ripple-' , '-debug.js' ] . join ( pkg . version )
125
- } ,
126
- debug : true ,
127
- devtool : 'eval'
128
- } , callback ) ;
129
- } ) ;
150
+ gulp . task ( 'bower' , [ 'bower-build' , 'bower-build-min' , 'bower-build-debug' , 'bower-version' ] ) ;
130
151
131
152
gulp . task ( 'lint' , function ( ) {
132
153
gulp . src ( 'src/js/ripple/*.js' )
@@ -158,6 +179,20 @@ gulp.task('watch', function() {
158
179
gulp . watch ( 'src/js/ripple/*' , [ 'build-debug' ] ) ;
159
180
} ) ;
160
181
161
- gulp . task ( 'default' , [ 'concat-sjcl' , 'build' , 'build-debug' , 'build-min' ] ) ;
182
+ gulp . task ( 'version-bump' , function ( ) {
183
+ if ( ! argv . type ) {
184
+ throw new Error ( "No type found, pass it in using the --type argument" ) ;
185
+ }
162
186
163
- gulp . task ( 'bower' , [ 'bower-build' , 'bower-build-min' , 'bower-build-debug' , 'bower-version' ] ) ;
187
+ gulp . src ( './package.json' )
188
+ . pipe ( bump ( { type : argv . type } ) )
189
+ . pipe ( gulp . dest ( './' ) ) ;
190
+ } ) ;
191
+
192
+ gulp . task ( 'version-beta' , function ( ) {
193
+ gulp . src ( './package.json' )
194
+ . pipe ( bump ( { version : pkg . version + '-beta' } ) )
195
+ . pipe ( gulp . dest ( './' ) ) ;
196
+ } ) ;
197
+
198
+ gulp . task ( 'default' , [ 'concat-sjcl' , 'build' , 'build-debug' , 'build-min' ] ) ;
0 commit comments