const exec = require('./exec'); const through = require('through2'); const PluginError = require('plugin-error'); const colors = require('ansi-colors'); const log = require('fancy-log'); class Neko { constructor() { this.tag = 'Neko'; } run() { let stream = null; const bufferContents = (file, enc, callback) => { log(this.tag, colors.cyan("run"), colors.magenta(file.path)); exec('.', ['neko', file.path].join(' ')) .then(() => { stream.emit('end'); callback(); }) .catch((error) => { stream.emit('error', new PluginError({plugin: this.tag, message: error})); callback(); }); stream.push(file); }; return stream = through.obj(bufferContents); } } module.exports = Neko;