diff --git a/index.js b/index.js index af8143b..2b5bfc4 100644 --- a/index.js +++ b/index.js @@ -4,7 +4,7 @@ const gutil = require('gulp-util'); const through = require('through2'); const applySourceMap = require('vinyl-sourcemaps-apply'); const replaceExt = require('replace-ext'); -const babel = require('babel-core'); +const babel = require('@babel/core'); function replaceExtension(fp) { return path.extname(fp) ? replaceExt(fp, '.js') : fp; diff --git a/package.json b/package.json index c5a99db..23fd1bb 100644 --- a/package.json +++ b/package.json @@ -40,13 +40,13 @@ "vinyl-sourcemaps-apply": "^0.2.0" }, "peerDependencies": { - "babel-core": "6 || 7 || ^7.0.0-alpha || ^7.0.0-beta || ^7.0.0-rc" + "@babel/core": "7 || ^7.0.0-beta || ^7.0.0-rc" }, "devDependencies": { - "babel-core": "7.0.0-alpha.18", - "babel-plugin-transform-es2015-arrow-functions": "7.0.0-alpha.18", - "babel-plugin-transform-es2015-block-scoping": "7.0.0-alpha.18", - "babel-plugin-transform-es2015-classes": "7.0.0-alpha.18", + "@babel/core": "7.0.0-beta.5", + "@babel/plugin-transform-arrow-functions": "7.0.0-beta.5", + "@babel/plugin-transform-block-scoping": "7.0.0-beta.5", + "@babel/plugin-transform-classes": "7.0.0-beta.5", "gulp-sourcemaps": "^1.1.1", "mocha": "*", "xo": "*" diff --git a/readme.md b/readme.md index ea5834f..324339f 100644 --- a/readme.md +++ b/readme.md @@ -8,7 +8,7 @@ ## Install ``` -$ npm install --save-dev gulp-babel babel-core babel-preset-env +$ npm install --save-dev gulp-babel @babel/core @babel/preset-env ``` @@ -21,7 +21,7 @@ const babel = require('gulp-babel'); gulp.task('default', () => gulp.src('src/app.js') .pipe(babel({ - presets: ['env'] + presets: ['@babel/env'] })) .pipe(gulp.dest('dist')) ); @@ -51,7 +51,7 @@ gulp.task('default', () => gulp.src('src/**/*.js') .pipe(sourcemaps.init()) .pipe(babel({ - presets: ['env'] + presets: ['@babel/env'] })) .pipe(concat('all.js')) .pipe(sourcemaps.write('.')) @@ -71,9 +71,9 @@ const gulp = require('gulp'); const babel = require('gulp-babel'); const through = require('through2'); -function logFileHelpers() { +function logBabelMetadata() { return through.obj((file, enc, cb) => { - console.log(file.babel.usedHelpers); + console.log(file.babel.test); // 'metadata' cb(null, file); }); } @@ -81,9 +81,14 @@ function logFileHelpers() { gulp.task('default', () => gulp.src('src/**/*.js') .pipe(babel({ - presets: ['env'] + // plugin that sets some metadata + plugins: [{ + post(file) { + file.metadata.test = 'metadata'; + } + }] })) - .pipe(logFileHelpers()) + .pipe(logBabelMetadta()) ) ``` @@ -95,7 +100,7 @@ If you're attempting to use features such as generators, you'll need to add `tra Install the runtime: ``` -$ npm install --save-dev babel-plugin-transform-runtime +$ npm install --save-dev @babel/plugin-transform-runtime ``` Use it as plugin: @@ -107,7 +112,7 @@ const babel = require('gulp-babel'); gulp.task('default', () => gulp.src('src/app.js') .pipe(babel({ - plugins: ['transform-runtime'] + plugins: ['@babel/transform-runtime'] })) .pipe(gulp.dest('dist')) ); diff --git a/test.js b/test.js index 33a84db..a003254 100644 --- a/test.js +++ b/test.js @@ -7,7 +7,7 @@ const babel = require('./'); it('should transpile with Babel', cb => { const stream = babel({ - plugins: ['transform-es2015-block-scoping'] + plugins: ['@babel/transform-block-scoping'] }); stream.on('data', file => { @@ -32,7 +32,7 @@ it('should generate source maps', cb => { const write = sourceMaps.write(); init .pipe(babel({ - plugins: ['transform-es2015-arrow-functions'] + plugins: ['@babel/transform-arrow-functions'] })) .pipe(write); @@ -61,7 +61,7 @@ it('should generate source maps for file in nested folder', cb => { const write = sourceMaps.write(); init .pipe(babel({ - plugins: ['transform-es2015-arrow-functions'] + plugins: ['@babel/transform-arrow-functions'] })) .pipe(write); @@ -85,13 +85,17 @@ it('should generate source maps for file in nested folder', cb => { init.end(); }); -it('should list used helpers in file.babel', cb => { +it('should pass the result of transform().metadata in file.babel', cb => { const stream = babel({ - plugins: ['transform-es2015-classes'] + plugins: [{ + post(file) { + file.metadata.test = 'metadata'; + } + }] }); stream.on('data', file => { - assert.deepEqual(file.babel.usedHelpers, ['classCallCheck']); + assert.deepEqual(file.babel, {test: 'metadata'}); }); stream.on('end', cb);