UNPKG

rump-scripts

Version:

Rump piece for building JS with Webpack

67 lines (51 loc) 5.41 kB
'use strict'; var _interopRequireDefault = require('babel-runtime/helpers/interop-require-default')['default']; var _extend = require('extend'); var _extend2 = _interopRequireDefault(_extend); var _gulp = require('gulp'); var _gulp2 = _interopRequireDefault(_gulp); var _rump = require('rump'); var _rump2 = _interopRequireDefault(_rump); var _webpack = require('webpack'); var _webpack2 = _interopRequireDefault(_webpack); var _gulpUtil = require('gulp-util'); var name = _rump2['default'].taskName.bind(_rump2['default']); var task = _gulp2['default'].task.bind(_gulp2['default']); var configs = _rump2['default'].configs; var supportsColor = _gulpUtil.colors.supportsColor; task(name('build:scripts'), build); _gulp.tasks[name('build')].dep.push(name('build:scripts')); _gulp.tasks[name('watch')].dep.push(name('build:scripts')); function build(callback) { var options = (0, _extend2['default'])({}, configs.webpack); var watchOptions = options.watchOptions; var callbackCalled = false, compiler = undefined; delete options.watchOptions; compiler = (0, _webpack2['default'])(options); if (configs.watch) { compiler.watch(watchOptions, handler); } else { compiler.run(handler); } function handler(error, stats) { if (error) { throw new _gulpUtil.PluginError(name('build:scripts'), error); } else if (callbackCalled) { (0, _gulpUtil.log)(stats.toString({ assets: false, chunks: false, colors: supportsColor, hash: false, modules: false, reasons: false, source: false })); } else { callbackCalled = true; (0, _gulpUtil.log)(stats.toString({ colors: supportsColor })); return callback(); } } } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ndWxwL2J1aWxkLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7c0JBQW1CLFFBQVE7Ozs7b0JBQ0QsTUFBTTs7OztvQkFDZixNQUFNOzs7O3VCQUNILFNBQVM7Ozs7d0JBQ1UsV0FBVzs7QUFFNUMsSUFBQSxJQUFJLEdBQUssa0JBQUssUUFBUSx5QkFBQTtBQUN0QixJQUFBLElBQUksR0FBSyxrQkFBSyxJQUFJLHlCQUFBO0FBQ2xCLElBQUMsT0FBTyxxQkFBUCxPQUFPLENBQVE7SUFDZixhQUFhLG9CQUFiLGFBQWE7O0FBRXBCLElBQUksQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUE7QUFDbEMsWUFBTSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFBO0FBQ3BELFlBQU0sSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQTs7QUFFcEQsU0FBUyxLQUFLLENBQUMsUUFBUSxFQUFFO0FBQ2pCLE1BQUEsT0FBTyxHQUFHLHlCQUFPLEVBQUUsRUFBRSxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUE7TUFDcEMsWUFBWSxHQUFJLE9BQU8sQ0FBdkIsWUFBWTs7QUFDbkIsTUFBSSxjQUFjLEdBQUcsS0FBSztNQUN0QixRQUFRLFlBQUEsQ0FBQTs7QUFFWixTQUFPLE9BQU8sQ0FBQyxZQUFZLENBQUE7QUFDM0IsVUFBUSxHQUFHLDBCQUFRLE9BQU8sQ0FBQyxDQUFBO0FBQzNCLE1BQUcsT0FBTyxDQUFDLEtBQUssRUFBRTtBQUNoQixZQUFRLENBQUMsS0FBSyxDQUFDLFlBQVksRUFBRSxPQUFPLENBQUMsQ0FBQTtHQUN0QyxNQUNJO0FBQ0gsWUFBUSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQTtHQUN0Qjs7QUFFRCxXQUFTLE9BQU8sQ0FBQyxLQUFLLEVBQUUsS0FBSyxFQUFFO0FBQzdCLFFBQUcsS0FBSyxFQUFFO0FBQ1IsWUFBTSwwQkFBZ0IsSUFBSSxDQUFDLGVBQWUsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFBO0tBQ3BELE1BQ0ksSUFBRyxjQUFjLEVBQUU7QUFDdEIseUJBQUksS0FBSyxDQUFDLFFBQVEsQ0FBQztBQUNqQixjQUFNLEVBQUUsS0FBSztBQUNiLGNBQU0sRUFBRSxLQUFLO0FBQ2IsY0FBTSxFQUFFLGFBQWE7QUFDckIsWUFBSSxFQUFFLEtBQUs7QUFDWCxlQUFPLEVBQUUsS0FBSztBQUNkLGVBQU8sRUFBRSxLQUFLO0FBQ2QsY0FBTSxFQUFFLEtBQUs7T0FDZCxDQUFDLENBQUMsQ0FBQTtLQUNKLE1BQ0k7QUFDSCxvQkFBYyxHQUFHLElBQUksQ0FBQTtBQUNyQix5QkFBSSxLQUFLLENBQUMsUUFBUSxDQUFDLEVBQUMsTUFBTSxFQUFFLGFBQWEsRUFBQyxDQUFDLENBQUMsQ0FBQTtBQUM1QyxhQUFPLFFBQVEsRUFBRSxDQUFBO0tBQ2xCO0dBQ0Y7Q0FDRiIsImZpbGUiOiJidWlsZC5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBleHRlbmQgZnJvbSAnZXh0ZW5kJ1xuaW1wb3J0IGd1bHAsIHt0YXNrc30gZnJvbSAnZ3VscCdcbmltcG9ydCBydW1wIGZyb20gJ3J1bXAnXG5pbXBvcnQgd2VicGFjayBmcm9tICd3ZWJwYWNrJ1xuaW1wb3J0IHtQbHVnaW5FcnJvciwgY29sb3JzLCBsb2d9IGZyb20gJ2d1bHAtdXRpbCdcblxuY29uc3QgbmFtZSA9IDo6cnVtcC50YXNrTmFtZSxcbiAgICAgIHRhc2sgPSA6Omd1bHAudGFzayxcbiAgICAgIHtjb25maWdzfSA9IHJ1bXAsXG4gICAgICB7c3VwcG9ydHNDb2xvcn0gPSBjb2xvcnNcblxudGFzayhuYW1lKCdidWlsZDpzY3JpcHRzJyksIGJ1aWxkKVxudGFza3NbbmFtZSgnYnVpbGQnKV0uZGVwLnB1c2gobmFtZSgnYnVpbGQ6c2NyaXB0cycpKVxudGFza3NbbmFtZSgnd2F0Y2gnKV0uZGVwLnB1c2gobmFtZSgnYnVpbGQ6c2NyaXB0cycpKVxuXG5mdW5jdGlvbiBidWlsZChjYWxsYmFjaykge1xuICBjb25zdCBvcHRpb25zID0gZXh0ZW5kKHt9LCBjb25maWdzLndlYnBhY2spLFxuICAgICAgICB7d2F0Y2hPcHRpb25zfSA9IG9wdGlvbnNcbiAgbGV0IGNhbGxiYWNrQ2FsbGVkID0gZmFsc2UsXG4gICAgICBjb21waWxlclxuXG4gIGRlbGV0ZSBvcHRpb25zLndhdGNoT3B0aW9uc1xuICBjb21waWxlciA9IHdlYnBhY2sob3B0aW9ucylcbiAgaWYoY29uZmlncy53YXRjaCkge1xuICAgIGNvbXBpbGVyLndhdGNoKHdhdGNoT3B0aW9ucywgaGFuZGxlcilcbiAgfVxuICBlbHNlIHtcbiAgICBjb21waWxlci5ydW4oaGFuZGxlcilcbiAgfVxuXG4gIGZ1bmN0aW9uIGhhbmRsZXIoZXJyb3IsIHN0YXRzKSB7XG4gICAgaWYoZXJyb3IpIHtcbiAgICAgIHRocm93IG5ldyBQbHVnaW5FcnJvcihuYW1lKCdidWlsZDpzY3JpcHRzJyksIGVycm9yKVxuICAgIH1cbiAgICBlbHNlIGlmKGNhbGxiYWNrQ2FsbGVkKSB7XG4gICAgICBsb2coc3RhdHMudG9TdHJpbmcoe1xuICAgICAgICBhc3NldHM6IGZhbHNlLFxuICAgICAgICBjaHVua3M6IGZhbHNlLFxuICAgICAgICBjb2xvcnM6IHN1cHBvcnRzQ29sb3IsXG4gICAgICAgIGhhc2g6IGZhbHNlLFxuICAgICAgICBtb2R1bGVzOiBmYWxzZSxcbiAgICAgICAgcmVhc29uczogZmFsc2UsXG4gICAgICAgIHNvdXJjZTogZmFsc2UsXG4gICAgICB9KSlcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICBjYWxsYmFja0NhbGxlZCA9IHRydWVcbiAgICAgIGxvZyhzdGF0cy50b1N0cmluZyh7Y29sb3JzOiBzdXBwb3J0c0NvbG9yfSkpXG4gICAgICByZXR1cm4gY2FsbGJhY2soKVxuICAgIH1cbiAgfVxufVxuIl19