// Look for the --production flag
var isProduction = !!(yargs.production);
-var sourceMaps = isProduction ? 'sass' : 'sass-sourcemaps';
// Delete the "dist" folder
// This happens every time a build starts
// Compile Sass into CSS
gulp.task('sass', function() {
return gulp.src('./scss/app.scss')
+ .pipe($.if(!isProduction, $.sourcemaps.init()))
.pipe($.sass().on('error', $.sass.logError))
+ .pipe($.if(!isProduction, $.sourcemaps.write()))
.pipe(gulp.dest('../_build/css'));
});
-// Compile Sass into CSS with sourcemaps
-gulp.task('sass-sourcemaps', function() {
- return gulp.src('./scss/app.scss')
- .pipe($.sourcemaps.init())
- .pipe($.sass().on('error', $.sass.logError))
- .pipe($.sourcemaps.write())
- .pipe(gulp.dest('../_build/css'));
-});
-
// Inline CSS and minify HTML
gulp.task('inline', function() {
return gulp.src('../_build/*.html')
// Build the "dist" folder by running all of the above tasks
gulp.task('build', function(cb) {
- var tasks = ['clean', ['pages', sourceMaps]];
+ var tasks = ['clean', ['pages', 'sass']];
if (isProduction) tasks.push('inline');
tasks.push(cb);
sequence.apply(this, tasks);
// Build emails, run the server, and watch for file changes
gulp.task('default', ['server'], function() {
gulp.watch('./pages/**/*.html', ['pages', browser.reload]);
- gulp.watch(['../scss/**/*.scss', './scss/**/*.scss'], [sourceMaps, browser.reload]);
+ gulp.watch(['../scss/**/*.scss', './scss/**/*.scss'], ['sass', browser.reload]);
});
function inline(options) {