Skip to content

Instantly share code, notes, and snippets.

@arackaf
Last active June 19, 2016 23:31
Show Gist options
  • Select an option

  • Save arackaf/3969bb44929e0c4ca4ead8e2d54edfda to your computer and use it in GitHub Desktop.

Select an option

Save arackaf/3969bb44929e0c4ca4ead8e2d54edfda to your computer and use it in GitHub Desktop.
let allSharedUtilities = sharedFilesToBuild.join(' + '),
builds = [
'scan', 'books', 'home', 'authenticate',
{
module: 'reactStartup',
path: '( reactStartup + ' + allSharedUtilities + ' )',
saveTo: '../dist/reactStartup',
exclude: ['react', 'react-bootstrap']
}
];
Promise.all([
runBuild('dist-es5', { presets: ['es2015'] }),
runBuild('dist-es6', undefined)
]).then(([buildOutputs]) => checkBundlesForDupsAndCreateConfigForBrowser(buildOutputs));
function runBuild(distFolder, babelOptions){
let buildOutputs = {}
return Promise
.all(builds.map(createSingleBuild.bind(null, distFolder)))
.then(results =>
new Promise(function(res){
results.forEach(({ saveTo, results }) => buildOutputs[saveTo.replace(`../${distFolder}`, distFolder)] = { modules: results.modules });
gulp.src([`../${distFolder}/**/*-unminified.js`], { base: './' })
.pipe(gulpIf(babelOptions, lazypipe().pipe(babel, babelOptions).pipe(gulp.dest, '')()))
.pipe(gulpIf(babelOptions, gulpUglify()))
.pipe(gulpRename(function (path) {
path.basename = path.basename.replace(/-unminified$/, '-build');
console.log(`Finished compressing ${path.basename}`);
}))
.pipe(gulp.dest(''))
.on('end', () => res(buildOutputs));
}).catch(err => console.log(err))
)
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment