32 lines
748 B
JavaScript
32 lines
748 B
JavaScript
|
|
const appdmg = require('appdmg');
|
|
const through = require('through2');
|
|
const gutil = require('gulp-util');
|
|
|
|
const PluginError = gutil.PluginError;
|
|
const PLUGIN_NAME = 'gulp-appdmg';
|
|
|
|
module.exports = function(options) {
|
|
const stream = through.obj(function(file, encoding, next) {
|
|
next();
|
|
}, function(callback) {
|
|
const self = this;
|
|
const ee = appdmg(options);
|
|
|
|
ee.on('progress', function(info) {
|
|
gutil.log(`${info.current}/${info.total} ${info.type} ${info.title || info.status}`);
|
|
});
|
|
|
|
ee.on('error', function(err) {
|
|
self.emit('error', new PluginError(PLUGIN_NAME, err));
|
|
callback();
|
|
});
|
|
|
|
ee.on('finish', callback);
|
|
});
|
|
|
|
// returning the file stream
|
|
stream.resume();
|
|
return stream;
|
|
};
|