@@ -27,6 +27,18 @@ var _COMPILER_CONFIG_JS_DEFAULT = {
2727 modules : 'instantiate'
2828} ;
2929
30+ var CJS_COMPILER_OPTIONS = {
31+ sourceMaps : true ,
32+ annotations : false , // parse annotations
33+ types : false , // parse types
34+ // TODO(tbosch): Right now, traceur generates imports that
35+ // rely on absolute paths. This is why we are not using this...
36+ script : true , // parse as a script
37+ memberVariables : false , // parse class fields
38+ typeAssertions : false ,
39+ modules : null // not needed
40+ } ;
41+
3042var _HTLM_DEFAULT_SCRIPTS_JS = [
3143 { src : '/deps/traceur-runtime.js' , mimeType : 'text/javascript' } ,
3244 { src : '/rtts_assert/lib/rtts_assert.js' , mimeType : 'text/javascript' } ,
@@ -51,7 +63,12 @@ var CONFIG = {
5163 prod : 'dist/js/prod' ,
5264 dart2js : 'dist/js/dart2js'
5365 } ,
54- dart : 'dist/dart'
66+ dart : 'dist/dart' ,
67+ cjs : {
68+ all : 'dist/cjs' ,
69+ tools : 'dist/cjs/tools' ,
70+ e2eTest : 'dist/cjs/e2e_test'
71+ }
5572 } ,
5673 srcFolderMapping : {
5774 'default' : 'lib' ,
@@ -72,12 +89,20 @@ var CONFIG = {
7289 } ,
7390 transpile : {
7491 src : {
75- js : [ 'modules/**/*.js' , 'modules/**/*.es6' , '!modules/**/perf/**/*' ] ,
76- dart : [ 'modules/**/*.js' , '!modules/**/perf/**/*' ]
92+ js : [ 'modules/**/*.js' , 'modules/**/*.es6' , '!modules/**/e2e_test/**' ] ,
93+ dart : [ 'modules/**/*.js' , '!modules/**/e2e_test/**' ] ,
94+ cjs : {
95+ tools : [ 'tools/**/*.es6' , '!tools/transpiler/**' ] ,
96+ e2eTest : [ 'modules/**/e2e_test/**/*.es6' ]
97+ }
7798 } ,
7899 copy : {
79- js : [ 'modules/**/*.es5' , '!modules/**/perf/**/*' ] ,
80- dart : [ 'modules/**/*.dart' , '!modules/**/perf/**/*' ]
100+ js : [ 'modules/**/*.es5' , '!modules/**/e2e_test/**' ] ,
101+ dart : [ 'modules/**/*.dart' , '!modules/**/e2e_test/**' ] ,
102+ cjs : {
103+ tools : [ 'tools/**/*.es5' , '!tools/transpiler/**' ] ,
104+ e2eTest : [ 'modules/**/e2e_test/**/*.es5' ]
105+ }
81106 } ,
82107 options : {
83108 js : {
@@ -96,7 +121,8 @@ var CONFIG = {
96121 script : false , // parse as a module
97122 memberVariables : true , // parse class fields
98123 outputLanguage : 'dart'
99- }
124+ } ,
125+ cjs : CJS_COMPILER_OPTIONS
100126 }
101127 } ,
102128 html : {
@@ -134,6 +160,11 @@ gulp.task('build/clean.dart', clean(gulp, gulpPlugins, {
134160 path : CONFIG . dest . dart
135161} ) ) ;
136162
163+ gulp . task ( 'build/clean.cjs' , clean ( gulp , gulpPlugins , {
164+ path : CONFIG . dest . cjs . all
165+ } ) ) ;
166+
167+
137168// ------------
138169// deps
139170
@@ -177,6 +208,28 @@ gulp.task('build/transpile.dart', transpile(gulp, gulpPlugins, {
177208 srcFolderMapping : CONFIG . srcFolderMapping
178209} ) ) ;
179210
211+ gulp . task ( 'build/transpile/tools.cjs' , transpile ( gulp , gulpPlugins , {
212+ src : CONFIG . transpile . src . cjs . tools ,
213+ copy : CONFIG . transpile . copy . cjs . tools ,
214+ dest : CONFIG . dest . cjs . tools ,
215+ outputExt : 'js' ,
216+ options : CONFIG . transpile . options . cjs ,
217+ srcFolderMapping : {
218+ 'default' : 'src'
219+ }
220+ } ) ) ;
221+
222+ gulp . task ( 'build/transpile/e2eTest.cjs' , transpile ( gulp , gulpPlugins , {
223+ src : CONFIG . transpile . src . cjs . e2eTest ,
224+ copy : CONFIG . transpile . copy . cjs . e2eTest ,
225+ dest : CONFIG . dest . cjs . e2eTest ,
226+ outputExt : 'js' ,
227+ options : CONFIG . transpile . options . cjs ,
228+ srcFolderMapping : {
229+ 'default' : 'src'
230+ }
231+ } ) ) ;
232+
180233// ------------
181234// html
182235
@@ -339,8 +392,14 @@ gulp.task('build.js.prod', function() {
339392 ) ;
340393} ) ;
341394
395+ gulp . task ( 'build.cjs' , function ( ) {
396+ return runSequence (
397+ [ 'build/transpile/tools.cjs' , 'build/transpile/e2eTest.cjs' ]
398+ ) ;
399+ } ) ;
400+
342401gulp . task ( 'build.js' , [ 'build.js.dev' , 'build.js.prod' ] ) ;
343402
344- gulp . task ( 'clean' , [ 'build/clean.js' , 'build/clean.dart' ] ) ;
403+ gulp . task ( 'clean' , [ 'build/clean.js' , 'build/clean.dart' , 'build/clean.cjs' ] ) ;
345404
346- gulp . task ( 'build' , [ 'build.js' , 'build.dart' ] ) ;
405+ gulp . task ( 'build' , [ 'build.js' , 'build.dart' , 'build.cjs' ] ) ;
0 commit comments