From abd94a7f5a50f43c797a11b53549ae48fff667c3 Mon Sep 17 00:00:00 2001 From: Florian Dold Date: Mon, 10 Oct 2016 03:43:44 +0200 Subject: add node_modules to address #4364 --- node_modules/glob-watcher/index.js | 39 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 node_modules/glob-watcher/index.js (limited to 'node_modules/glob-watcher/index.js') diff --git a/node_modules/glob-watcher/index.js b/node_modules/glob-watcher/index.js new file mode 100644 index 000000000..907defd4e --- /dev/null +++ b/node_modules/glob-watcher/index.js @@ -0,0 +1,39 @@ +var gaze = require('gaze'); +var EventEmitter = require('events').EventEmitter; + +module.exports = function(glob, opts, cb) { + var out = new EventEmitter(); + + if (typeof opts === 'function') { + cb = opts; + opts = {}; + } + + var watcher = gaze(glob, opts, function(err, rwatcher){ + if (err) out.emit('error', err); + rwatcher.on('all', function(evt, path, old){ + var outEvt = {type: evt, path: path}; + if(old) outEvt.old = old; + out.emit('change', outEvt); + if(cb) cb(outEvt); + }); + }); + + watcher.on('end', out.emit.bind(out, 'end')); + watcher.on('error', out.emit.bind(out, 'error')); + watcher.on('ready', out.emit.bind(out, 'ready')); + watcher.on('nomatch', out.emit.bind(out, 'nomatch')); + + out.end = function(){ + return watcher.close(); + }; + out.add = function(){ + return watcher.add.apply(watcher, arguments); + }; + out.remove = function(){ + return watcher.remove(); + }; + out._watcher = watcher; + + return out; +}; -- cgit v1.2.3