From 86d569e63687b694b33465a031755d9736cb1331 Mon Sep 17 00:00:00 2001 From: Sean Newell Date: Fri, 10 Mar 2017 08:56:57 -0600 Subject: [PATCH] Made changes to conform to code review comments. --- src/gulpfile.js | 122 +++++++++++++++++++++++++----------------------- 1 file changed, 64 insertions(+), 58 deletions(-) diff --git a/src/gulpfile.js b/src/gulpfile.js index c4165bed..0695cc24 100644 --- a/src/gulpfile.js +++ b/src/gulpfile.js @@ -186,78 +186,84 @@ gulp.task('chat-styles', ['chat-styles-handlebars', 'chat-styles-js'], function( // Compile and concatenate handlebars files for all chat styles. gulp.task('chat-styles-handlebars', function() { - var promises = []; - fs.readdir(config.chatStylesPath, function(err, list){ - if(err) return done(err); - list.filter(function(path){ - return fs.lstatSync(config.chatStylesPath + "/" + path).isDirectory(); - }).map(function(dir){ - promises.push(new Promise(function(resolve, reject){ - var pipeline = gulp.src(config.chatStylesPath + '/' + dir + '/templates_src/client_side/**/*.handlebars') - .pipe(handlebars({ - // Use specific version of Handlebars.js - handlebars: handlebarsEngine - })) - .pipe(wrapHandlebarsTemplate()) - .pipe(concat('templates.js')) - .pipe(uglify({preserveComments: 'some'})) - .pipe(header(config.compiledTemplatesHeader)) - .pipe(gulp.dest(config.chatStylesPath + '/' + dir + '/templates_compiled/client_side')); - pipeline.on('end', resolve); - pipeline.on('error', reject); - })); - }); - }); -}); + fs.readdir(config.chatStylesPath, function(err, list) { + if(err) { + throw err; + } -// Compile and concatenate js files for all chat styles. -gulp.task('chat-styles-js', function() { - var promises = []; - fs.readdir(config.chatStylesPath, function(err, list){ - if(err) return done(err); - list.filter(function(path){ + list.filter(function(path) { return fs.lstatSync(config.chatStylesPath + "/" + path).isDirectory(); - }).map(function(dir){ - promises.push(new Promise(function(resolve, reject){ - var pipeline = gulp.src(config.chatStylesPath + '/' + dir + '/js/source/**/*.js') - .pipe(concat('scripts.js')) - .pipe(uglify({preserveComments: 'some'})) - .pipe(gulp.dest(config.chatStylesPath + '/' + dir + '/js/compiled')); - pipeline.on('end', resolve); - pipeline.on('error', reject); - })); - }); - }); -}); - -// Performs all job related with pages styles. -gulp.task('page-styles', function() { - var promises = []; - fs.readdir(config.pageStylesPath, function(err, list){ - if(err) return done(err); - list.filter(function(path){ - return fs.lstatSync(config.pageStylesPath + "/" + path).isDirectory(); - }).map(function(dir){ - promises.push(new Promise(function(resolve, reject){ - var pipeline = gulp.src(config.pageStylesPath + '/' + dir + '/templates_src/client_side/**/*.handlebars') + }).map(function(dir) { + return new Promise(function(resolve, reject) { + gulp.src(config.chatStylesPath + '/' + dir + '/templates_src/client_side/**/*.handlebars') .pipe(handlebars({ - // Use specific version of Handlebars.js + // Use specific version of Handlebars.js handlebars: handlebarsEngine })) .pipe(wrapHandlebarsTemplate()) .pipe(concat('templates.js')) .pipe(uglify({preserveComments: 'some'})) .pipe(header(config.compiledTemplatesHeader)) - .pipe(gulp.dest(config.pageStylesPath + '/' + dir + '/templates_compiled/client_side')); - pipeline.on('end', resolve); - pipeline.on('error', reject); - })); + .pipe(gulp.dest(config.chatStylesPath + '/' + dir + '/templates_compiled/client_side')) + .on('end', resolve) + .on('error', reject); + }); + }); + }); +}); + +// Compile and concatenate js files for all chat styles. +gulp.task('chat-styles-js', function() { + fs.readdir(config.chatStylesPath, function(err, list) { + if(err) { + throw err; + } + + list.filter(function(path) { + return fs.lstatSync(config.chatStylesPath + "/" + path).isDirectory(); + }).map(function(dir) { + return new Promise(function(resolve, reject) { + gulp.src(config.chatStylesPath + '/' + dir + '/js/source/**/*.js') + .pipe(concat('scripts.js')) + .pipe(uglify({preserveComments: 'some'})) + .pipe(gulp.dest(config.chatStylesPath + '/' + dir + '/js/compiled')) + .on('end', resolve) + .on('error', reject); + }); + }); + }); +}); + +// Performs all job related with pages styles. +gulp.task('page-styles', function() { + fs.readdir(config.pageStylesPath, function(err, list) { + if(err) { + throw err; + } + + list.filter(function(path) { + return fs.lstatSync(config.pageStylesPath + "/" + path).isDirectory(); + }).map(function(dir) { + return new Promise(function(resolve, reject) { + gulp.src(config.pageStylesPath + '/' + dir + '/templates_src/client_side/**/*.handlebars') + .pipe(handlebars({ + // Use specific version of Handlebars.js + handlebars: handlebarsEngine + })) + .pipe(wrapHandlebarsTemplate()) + .pipe(concat('templates.js')) + .pipe(uglify({preserveComments: 'some'})) + .pipe(header(config.compiledTemplatesHeader)) + .pipe(gulp.dest(config.pageStylesPath + '/' + dir + '/templates_compiled/client_side')) + .on('end', resolve) + .on('error', reject); + }); }); }); }); // Watch styles -gulp.task('watch', [], function(){ +gulp.task('watch', [], function() { gulp.watch(config.pageStylesPath + '/**/*.handlebars', ['page-styles']); gulp.watch(config.chatStylesPath + '/**/js/source/**/*.js', ['chat-styles-js']); gulp.watch(config.chatStylesPath + '/**/*.handlebars', ['chat-styles-handlebars']);