lb-gulp-babel
v1.1.1
Published
1. [babel-core](/package/babel-core) 2. [babel-preset-es2015](/package/babel-preset-es2015) 3. [gulp-wrap-file](/package/gulp-wrap-file) 4. [colors](/package/colors)
Downloads
18
Readme
lb-gulp-babel
My Forks
The Package
The reason you are seeing this package here is... because I got annoyed by the lack of an easy ES2015 pipe for Gulp, so i made one.
I do want to mention that, yes, there is a gulp-babel package that does this (almost). But here is why it did not work for me:
- I failed to find information on disabling "use strict"; - I need this!
- Compilation error logging (when implemented) sucks using this package
- Compilation error logging is not built in - but should be (i think)
- When implementing the compilation error logging, you do not get the filename/path from where the error happened! :( anyways, enjoy!
Key factors of this package
- Removes 'use strict'; header from files
- Internally uses babel-core with babel-preset-es2015
- Catches and automatically handles compilation errors
- Has an amazing compilation error log!!!!
Using lb-gulp-es2015
## Installing
npm install lb-gulp-es2015
// Using this package
var gulp = require('gulp');
var lbBabel = require('lb-gulp-babel');
gulp.task('default',function(){
gulp.src('./app/**/*.js')
.pipe(lbBabel()) // <- This is it! that's all.
.pipe(gulp.dest('./dest/js'));
})
For async/await tasks, include web-polyfill.
Install polyfill using Bower (or any other web package manager you use...)
$ bower install babel-polyfill
And add the file as a source to your scripts
// Using this package
var gulp = require('gulp');
var lbBabel = require('lb-gulp-babel');
var concat = require('gulp-concat');
gulp.task('default',function(){
gulp.src(
[
// including this script in your code will resolve the
// asyncronous task issues.
'./bower_components/babel-polyfill/browser-polyfill.js',
'./app/**/*.js'
]
.pipe(lbBabel()) // <- This is it! that's all.
.pipe(gulp.dest('./dest/js'));
})
Sample Async Script:
// after Gulping, requires [browser-polyfill.js]
async function wait(time){
return new Promise(resolve=>{
setTimeout(()=>{resolve();}, timeout);
})
}
async function app(){
await wait(1000);
console.log(`I just waited for a second...`);
}
app();
Have good fun!
License: MIT (or whatever it is) - it's yours as long as you mention you used my package.