capsule-react
Version:
React bindngs for A state container based on Flux, but a simpler concept than Redux.
31 lines (28 loc) • 849 B
JavaScript
const gulp = require('gulp');
require('gulp-bash-completion')(gulp);
const babel = require('gulp-babel');
const umd = require('gulp-umd');
const sourcemaps = require('gulp-sourcemaps');
const scripts = 'src/**/*.js';
gulp.task('build', () => {
return gulp.src(scripts, {base: 'src'})
.pipe(sourcemaps.init())
.pipe(babel())
.pipe(umd())
.pipe(sourcemaps.write())
.pipe(gulp.dest('dist'));
});
gulp.task('default', ['build'], () => {
require('gulp-watch')(scripts, () => scheduleTask('build'));
});
// =====================
const scheduledTasks = {};
function scheduleTask(task, time) {
if (scheduledTasks[task]) {
clearTimeout(scheduledTasks[task]);
}
scheduledTasks[task] = setTimeout(function () {
delete scheduledTasks[task];
gulp.start(task);
}, time);
}