babelify
Advanced tools
Comparing version 8.0.0 to 9.0.0
32
index.js
var stream = require("stream"); | ||
var babel = require("babel-core"); | ||
var babel = require("@babel/core"); | ||
var util = require("util"); | ||
var path = require("path") | ||
@@ -25,12 +26,12 @@ module.exports = Babelify; | ||
Babelify.prototype._flush = function (callback) { | ||
try { | ||
var result = babel.transform(this._data, this._opts); | ||
this.emit("babelify", result, this._filename); | ||
var code = result.code; | ||
this.push(code); | ||
} catch(err) { | ||
this.emit("error", err); | ||
return; | ||
} | ||
callback(); | ||
babel.transform(this._data, this._opts, (err, result) => { | ||
if (err) { | ||
this.emit("error", err); | ||
} else { | ||
this.emit("babelify", result, this._filename); | ||
var code = result.code; | ||
this.push(code); | ||
callback(); | ||
} | ||
}); | ||
}; | ||
@@ -40,3 +41,3 @@ | ||
opts = Object.assign({}, opts); | ||
var extensions = opts.extensions ? babel.util.arrayify(opts.extensions) : null; | ||
var extensions = opts.extensions || babel.DEFAULT_EXTENSIONS; | ||
var sourceMapsAbsolute = opts.sourceMapsAbsolute; | ||
@@ -66,4 +67,5 @@ if (opts.sourceMaps !== false) opts.sourceMaps = "inline"; | ||
return function (filename) { | ||
if (!babel.util.canCompile(filename, extensions)) { | ||
return function (filename, topts) { | ||
var extname = path.extname(filename); | ||
if (extensions.indexOf(extname) === -1) { | ||
return stream.PassThrough(); | ||
@@ -76,4 +78,6 @@ } | ||
if (topts && topts._flags && topts._flags.basedir) _opts.cwd = topts._flags.basedir; | ||
return new Babelify(filename, _opts); | ||
}; | ||
}; |
{ | ||
"name": "babelify", | ||
"description": "Babel browserify transform", | ||
"version": "8.0.0", | ||
"version": "9.0.0", | ||
"author": "Sebastian McKenzie <sebmck@gmail.com>", | ||
@@ -16,16 +16,16 @@ "license": "MIT", | ||
"peerDependencies": { | ||
"babel-core": "6 || 7 || ^7.0.0-alpha || ^7.0.0-beta || ^7.0.0-rc" | ||
"@babel/core": "7 || ^7.0.0-alpha || ^7.0.0-beta || ^7.0.0-rc" | ||
}, | ||
"devDependencies": { | ||
"babel-core": "^6.0.14", | ||
"babel-plugin-transform-es3-property-literals": "^6.0.14", | ||
"@babel/core": "7.0.0-beta.47", | ||
"@babel/plugin-transform-property-literals": "7.0.0-beta.47", | ||
"@babel/plugin-transform-react-display-name": "7.0.0-beta.47", | ||
"@babel/preset-env": "7.0.0-beta.47", | ||
"@babel/preset-flow": "7.0.0-beta.47", | ||
"@babel/preset-react": "7.0.0-beta.47", | ||
"babel-plugin-transform-node-env-inline": "^6.0.14", | ||
"babel-plugin-transform-react-display-name": "^6.0.14", | ||
"babel-plugin-undeclared-variables-check": "^6.0.14", | ||
"babel-preset-es2015": "^6.0.14", | ||
"babel-preset-react": "^6.0.14", | ||
"browserify": "^13.0.0", | ||
"convert-source-map": "^1.1.0", | ||
"lodash.zipobject": "^4.1.3", | ||
"tap": "^5.7.1" | ||
"tap": "^10.7.3" | ||
}, | ||
@@ -32,0 +32,0 @@ "scripts": { |
@@ -10,3 +10,7 @@ # babelify [![Build Status](https://travis-ci.org/babel/babelify.svg?branch=master)](https://travis-ci.org/babel/babelify) | ||
```sh | ||
$ npm install --save-dev babelify | ||
# Babel 7 | ||
$ npm install --save-dev babelify@next @babel/core | ||
# Babel 6 | ||
$ npm install --save-dev babelify babel-core | ||
``` | ||
@@ -19,3 +23,3 @@ | ||
```sh | ||
$ browserify script.js -o bundle.js -t [ babelify --presets [ es2015 react ] ] | ||
$ browserify script.js -o bundle.js -t [ babelify --presets [ "@babel/preset-env", "@babel/preset-react" ] ] | ||
``` | ||
@@ -29,3 +33,3 @@ | ||
browserify("./script.js") | ||
.transform("babelify", {presets: ["es2015", "react"]}) | ||
.transform("babelify", {presets: ["@babel/preset-env", "@babel/preset-react"]}) | ||
.bundle() | ||
@@ -35,6 +39,6 @@ .pipe(fs.createWriteStream("bundle.js")); | ||
**NOTE:** [Presets and plugins](http://babeljs.io/docs/plugins/) need to be installed as separate modules. For the above examples to work, you'd need to also install [`babel-preset-es2015`](https://www.npmjs.com/package/babel-preset-es2015) and [`babel-preset-react`](https://www.npmjs.com/package/babel-preset-react): | ||
**NOTE:** [Presets and plugins](http://babeljs.io/docs/plugins/) need to be installed as separate modules. For the above examples to work, you'd need to also install [`@babel/preset-env`](https://www.npmjs.com/package/@babel/preset-env) and [`@babel/preset-react`](https://www.npmjs.com/package/@babel/preset-react): | ||
```sh | ||
$ npm install --save-dev babel-preset-es2015 babel-preset-react | ||
$ npm install --save-dev @babel/preset-env @babel/preset-react | ||
``` | ||
@@ -49,7 +53,7 @@ | ||
```sh | ||
$ browserify -t [ babelify --presets [ es2015 react ] ] | ||
$ browserify -t [ babelify --presets [ "@babel/preset-env", "@babel/preset-react" ] ] | ||
``` | ||
```js | ||
browserify().transform("babelify", {presets: ["es2015", "react"]}); | ||
browserify().transform("babelify", {presets: ["@babel/preset-env", "@babel/preset-react"]}); | ||
``` | ||
@@ -59,3 +63,3 @@ | ||
var babelify = require("babelify"); | ||
browserify().transform(babelify, {presets: ["es2015", "react"]}); | ||
browserify().transform(babelify, {presets: ["@babel/preset-env", "@babel/preset-react"]}); | ||
``` | ||
@@ -67,3 +71,3 @@ | ||
browserify().transform(babelify.configure({ | ||
presets: ["es2015", "react"] | ||
presets: ["@babel/preset-env", "@babel/preset-react"] | ||
})); | ||
@@ -188,3 +192,3 @@ ``` | ||
"browserify": { | ||
"transform": [["babelify", { "presets": ["es2015"] }]] | ||
"transform": [["babelify", { "presets": ["@babel/preset-env"] }]] | ||
} | ||
@@ -191,0 +195,0 @@ } |
10672
65
222