Clone
//
//
//
var browserSync = require('browser-sync').create()
var gulp = require('gulp')
var plug = require('gulp-load-plugins')({ lazy: true })
var inky = require('inky')
var builders = []
var signatures = require('./src/signatures.json')
signatures.forEach(function(signature) {
builders.push(function() {
return gulp
.src(['tmp/build/**/*.htm'])
.pipe(plug.compileHandlebars(signature))
.pipe(gulp.dest('dist/' + signature.email))
})
})
const inkyOpts = {}
function build() {
return gulp.src(['src/**/*.htm'])
.pipe(plug.inlineImageHtml('src'))
.pipe(inky(inkyOpts))
.pipe(gulp.dest('tmp/build'))
}
function watch() {
gulp.watch(['src/**/*.htm'], build)
}
function startLocalhost() {
return browserSync.init(null, {
files: ['dist/**'],
server: {
baseDir: 'dist',
index: 'signature.htm'
}
})
}
function deploySignatures() {
console.log('starting deploy')
return gulp.src('dist/**/*')
.pipe(plug.debug())
.pipe(plug.ghPages())
}
gulp.task('build', gulp.series(build, gulp.parallel.apply(gulp, builders)))
gulp.task('serve', gulp.series(build, gulp.parallel.apply(gulp, builders), gulp.parallel(startLocalhost, watch)))
gulp.task('deploy', gulp.series(build, gulp.parallel.apply(gulp, builders), deploySignatures))