UNPKG

eventric

Version:

Build JavaScript applications with Behaviour-driven Domain Design. Based on DDD, BDD, CQRS and EventSourcing.

48 lines (40 loc) 1.42 kB
coffee = require 'gulp-coffee' concat = require 'gulp-concat' commonjs = require 'gulp-wrap-commonjs' uglify = require 'gulp-uglify' rimraf = require 'rimraf' runSequence = require 'run-sequence' mergeStream = require 'merge-stream' module.exports = (gulp) -> gulp.task 'build', (next) -> runSequence 'build:clean', 'build:src', 'build:dist', next gulp.task 'build:clean', (next) -> rimraf './build', next gulp.task 'build:src', -> gulp.src(['index.coffee', '+(src)/**/*.coffee']) .pipe(coffee({bare: true})) .pipe(gulp.dest('build/node')) gulp.task 'build:dist', -> cjs = gulp.src('node_modules/commonjs-require/commonjs-require.js') src = gulp.src('build/node/**/*.js') .pipe(commonjs( pathModifier: (path) -> path = path.replace "#{process.cwd()}/build/node", 'eventric' path = path.replace /.js$/, '' return path )) nm = gulp.src([ 'node_modules/es6-promise/dist/promise-1.0.0.js' ]) .pipe(commonjs( pathModifier: (filePath) -> matches = filePath.match /(bower_components|node_modules)\/(.*?)\// moduleName = matches[2] moduleName )) mergeStream cjs, src, nm .pipe(concat('eventric.js')) .pipe(gulp.dest('build/dist')) .pipe(uglify()) .pipe(concat('eventric-min.js')) .pipe(gulp.dest('build/dist'))