This repository has been archived on 2022-03-12. You can view files and clone it, but cannot push or open issues or pull requests.
Files
reValuate/node_modules/sane/index.js
Yamozha 7256d79e2c yeet
2021-04-02 02:24:13 +03:00

41 lines
1.1 KiB
JavaScript
Executable File

'use strict';
const NodeWatcher = require('./src/node_watcher');
const PollWatcher = require('./src/poll_watcher');
const WatchmanWatcher = require('./src/watchman_watcher');
const WatchexecWatcher = require('./src/watchexec_watcher');
function throwNoFSEventsSupports() {
throw new Error('Sane >= 4 no longer support the fsevents module.');
}
function sane(dir, options) {
options = options || {};
if (options.watcher) {
const WatcherClass = require(options.watcher);
return new WatcherClass(dir, options);
} else if (options.poll) {
return new PollWatcher(dir, options);
} else if (options.watchman) {
return new WatchmanWatcher(dir, options);
} else if (options.watchexec) {
return new WatchexecWatcher(dir, options);
} else if (options.fsevents) {
throwNoFSEventsSupports();
} else {
return new NodeWatcher(dir, options);
}
}
module.exports = sane;
sane.NodeWatcher = NodeWatcher;
sane.PollWatcher = PollWatcher;
sane.WatchmanWatcher = WatchmanWatcher;
sane.WatchexecWatcher = WatchexecWatcher;
Object.defineProperty(sane, 'FSEventsWatcher', {
get() {
return throwNoFSEventsSupports();
},
});