aboutsummaryrefslogtreecommitdiffstats
path: root/gulpfile.js
diff options
context:
space:
mode:
Diffstat (limited to 'gulpfile.js')
-rw-r--r--gulpfile.js43
1 files changed, 26 insertions, 17 deletions
diff --git a/gulpfile.js b/gulpfile.js
index f351c2e2f..a8333e950 100644
--- a/gulpfile.js
+++ b/gulpfile.js
@@ -258,26 +258,27 @@ function zipTask(target) {
}
}
-function generateBundler(opts) {
- var browserifyOpts = assign({}, watchify.args, {
+function generateBundler(opts, performBundle) {
+ const browserifyOpts = assign({}, watchify.args, {
entries: ['./app/scripts/'+opts.filename],
plugin: 'browserify-derequire',
debug: debug,
fullPaths: debug,
})
- return browserify(browserifyOpts)
-}
-
-function discTask(opts) {
- let bundler = generateBundler(opts)
+ let bundler = browserify(browserifyOpts)
if (opts.watch) {
bundler = watchify(bundler)
- // on any dep update, runs the bundler
+ // on any file update, re-runs the bundler
bundler.on('update', performBundle)
}
+ return bundler
+}
+
+function discTask(opts) {
+ const bundler = generateBundler(opts, performBundle)
// output build logs to terminal
bundler.on('log', gutil.log)
@@ -299,14 +300,7 @@ function discTask(opts) {
function bundleTask(opts) {
- let bundler = generateBundler(opts)
-
- if (opts.watch) {
- bundler = watchify(bundler)
- // on any file update, re-runs the bundler
- bundler.on('update', performBundle)
- }
-
+ const bundler = generateBundler(opts, performBundle)
// output build logs to terminal
bundler.on('log', gutil.log)
@@ -316,6 +310,17 @@ function bundleTask(opts) {
return (
bundler.bundle()
+
+ // handle errors
+ .on('error', (err) => {
+ beep()
+ if (opts.watch) {
+ console.warn(err.stack)
+ } else {
+ throw err
+ }
+ })
+
// convert bundle stream to gulp vinyl stream
.pipe(source(opts.filename))
// inject variables into bundle
@@ -324,7 +329,7 @@ function bundleTask(opts) {
.pipe(buffer())
// sourcemaps
// loads map from browserify file
- .pipe(gulpif(debug, sourcemaps.init({loadMaps: true})))
+ .pipe(gulpif(debug, sourcemaps.init({ loadMaps: true })))
// writes .map file
.pipe(gulpif(debug, sourcemaps.write('./')))
// write completed bundles
@@ -338,3 +343,7 @@ function bundleTask(opts) {
)
}
}
+
+function beep () {
+ process.stdout.write('\x07')
+}