You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

38 lines
963 B
JavaScript

8 years ago
var gulp = require('gulp');
var gutil = require('gulp-util');
var babel = require('gulp-babel');
var pegjs = require('gulp-peg');
var cache = require('gulp-cached');
var remember = require('gulp-remember');
var plumber = require('gulp-plumber');
var sources = {
babel: ["src/**/*.js"],
pegjs: ["src/**/*.pegjs"]
}
gulp.task('babel', function() {
return gulp.src(sources.babel)
.pipe(plumber())
.pipe(cache("babel"))
.pipe(babel({presets: ["es2015"]}).on('error', gutil.log)).on('data', gutil.log)
.pipe(remember("babel"))
.pipe(gulp.dest("lib/"));
});
gulp.task('pegjs', function() {
return gulp.src(sources.pegjs)
.pipe(plumber())
.pipe(cache("pegjs"))
.pipe(pegjs().on('error', gutil.log)).on('data', gutil.log)
.pipe(remember("pegjs"))
.pipe(gulp.dest("lib/"));
})
gulp.task('watch', function () {
gulp.watch(sources.babel, ['babel']);
gulp.watch(sources.pegjs, ['pegjs']);
});
gulp.task('default', ['pegjs', 'babel', 'watch']);