@@ -82,6 +82,24 @@ var paths = {
8282 ] ,
8383 lib : 'build/node_modules/react-native/lib' ,
8484 } ,
85+ reactShallowRenderer : {
86+ src : [
87+ // Shallow renderer reuses some DOM code
88+ 'src/renderers/dom/**/*.js' ,
89+ 'src/renderers/testing/**/*.js' ,
90+ 'src/renderers/shared/**/*.js' ,
91+
92+ 'src/ReactVersion.js' ,
93+ 'src/shared/**/*.js' ,
94+ '!src/shared/vendor/**/*.js' ,
95+ '!src/**/__benchmarks__/**/*.js' ,
96+ '!src/**/__tests__/**/*.js' ,
97+ '!src/**/__mocks__/**/*.js' ,
98+ ] ,
99+ // We put it into a subfolder of test renderer but
100+ // with a separate copy of the reconciler.
101+ lib : 'build/node_modules/react-test-renderer/lib/shallow/' ,
102+ } ,
85103 reactTestRenderer : {
86104 src : [
87105 'src/renderers/testing/**/*.js' ,
@@ -153,6 +171,12 @@ var moduleMapReactNative = Object.assign(
153171 moduleMapBase
154172) ;
155173
174+ var moduleMapReactShallowRenderer = Object . assign (
175+ { } ,
176+ rendererSharedState ,
177+ moduleMapBase
178+ ) ;
179+
156180var moduleMapReactTestRenderer = Object . assign (
157181 { } ,
158182 rendererSharedState ,
@@ -184,6 +208,13 @@ var babelOptsReactNative = {
184208 ] ,
185209} ;
186210
211+ var babelOptsReactShallowRenderer = {
212+ plugins : [
213+ devExpressionWithCodes , // this pass has to run before `rewrite-modules`
214+ [ babelPluginModules , { map : moduleMapReactShallowRenderer } ] ,
215+ ] ,
216+ } ;
217+
187218var babelOptsReactTestRenderer = {
188219 plugins : [
189220 devExpressionWithCodes , // this pass has to run before `rewrite-modules`
@@ -204,6 +235,7 @@ gulp.task('react:clean', function() {
204235 paths . react . lib ,
205236 paths . reactDOM . lib ,
206237 paths . reactNative . lib ,
238+ paths . reactShallowRenderer . lib ,
207239 paths . reactTestRenderer . lib ,
208240 ] ) ;
209241} ) ;
@@ -231,6 +263,13 @@ gulp.task('react:modules', function() {
231263 . pipe ( flatten ( ) )
232264 . pipe ( gulp . dest ( paths . reactNative . lib ) ) ,
233265
266+ gulp
267+ . src ( paths . reactShallowRenderer . src )
268+ . pipe ( stripProvidesModule ( ) )
269+ . pipe ( babel ( babelOptsReactShallowRenderer ) )
270+ . pipe ( flatten ( ) )
271+ . pipe ( gulp . dest ( paths . reactShallowRenderer . lib ) ) ,
272+
234273 gulp
235274 . src ( paths . reactTestRenderer . src )
236275 . pipe ( stripProvidesModule ( ) )
@@ -245,6 +284,7 @@ gulp.task('react:extract-errors', function() {
245284 paths . react . src ,
246285 paths . reactDOM . src ,
247286 paths . reactNative . src ,
287+ paths . reactShallowRenderer . src ,
248288 paths . reactTestRenderer . src
249289 ) ) . pipe ( extractErrors ( errorCodeOpts ) ) ;
250290} ) ;
0 commit comments