|
1 | 1 | var fs = require('fs'); |
2 | 2 | var gulp = require('gulp'); |
3 | | -var extendscript = require('browserify-extendscript'); |
4 | 3 | var browserify = require('browserify'); |
5 | | -var babelify = require('babelify'); |
| 4 | +var source = require('vinyl-source-stream'); |
6 | 5 | var util = require('gulp-util'); |
7 | | -var insert = require('gulp-insert'); |
8 | 6 | var filesUtil = require('./util/filesUtil'); |
| 7 | +var babelify = require('babelify'); |
| 8 | +babelify.configure({ |
| 9 | + presets: [ |
| 10 | + 'es2015', |
| 11 | + 'stage-0' |
| 12 | + ], |
| 13 | + plugins: [ |
| 14 | + require('babel-plugin-transform-es3-member-expression-literals'), |
| 15 | + require('babel-plugin-transform-es3-property-literals'), |
| 16 | + require('babel-plugin-transform-es5-property-mutators') |
| 17 | + ] |
| 18 | +}); |
9 | 19 |
|
10 | 20 | var srcRoot = './src'; |
11 | 21 | var distRoot = './dist'; |
12 | 22 |
|
13 | 23 | gulp.task('es2015-to-es5', function() { |
14 | | - var entryPath = filesUtil.getLastModifiedFileInDir(srcRoot); |
| 24 | + var entryPath = srcRoot + '/example/index.js'; |
15 | 25 | var outputFileName = 'scriptOutput.js'; |
16 | 26 |
|
17 | | - babelify.configure({ |
18 | | - presets: [ |
19 | | - 'es2015', |
20 | | - 'stage-0' |
| 27 | + var b = browserify({ |
| 28 | + entries: [ |
| 29 | + srcRoot + '/lib/polyfills.js', |
| 30 | + 'babel-polyfill', |
| 31 | + entryPath |
21 | 32 | ], |
22 | | - plugins: [ |
23 | | - 'transform-es3-member-expression-literals', |
24 | | - 'transform-es3-property-literals', |
25 | | - 'transform-es5-property-mutators' |
26 | | - ] |
| 33 | + transform: [ babelify ] |
27 | 34 | }); |
28 | 35 |
|
29 | | - return browserify({ |
30 | | - entries: [ |
31 | | - 'babel-polyfill', |
32 | | - entryPath |
33 | | - ], |
34 | | - plugin: [ extendscript ], |
35 | | - transform: [ babelify ] |
36 | | - }) |
37 | | - .bundle() |
38 | | - .on('error', util.log.bind(util, 'Browserify Error')) |
39 | | - .pipe(outputFileName) |
40 | | - .pipe(insert.prepend(fs.readFileSync(srcRoot + '/lib/polyfills.js'))) |
| 36 | + return b.bundle() |
| 37 | + .pipe(source(outputFileName)) |
41 | 38 | .pipe(gulp.dest(distRoot)); |
42 | 39 | }); |
43 | 40 |
|
|
0 commit comments