From de98e0b232509d5f40c135d540a70e415272ff85 Mon Sep 17 00:00:00 2001 From: Florian Dold Date: Wed, 3 May 2017 15:35:00 +0200 Subject: node_modules --- node_modules/webpack/lib/WatchIgnorePlugin.js | 49 +++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 node_modules/webpack/lib/WatchIgnorePlugin.js (limited to 'node_modules/webpack/lib/WatchIgnorePlugin.js') diff --git a/node_modules/webpack/lib/WatchIgnorePlugin.js b/node_modules/webpack/lib/WatchIgnorePlugin.js new file mode 100644 index 000000000..9b74b3c20 --- /dev/null +++ b/node_modules/webpack/lib/WatchIgnorePlugin.js @@ -0,0 +1,49 @@ +/* + MIT License http://www.opensource.org/licenses/mit-license.php + Author Tobias Koppers @sokra +*/ +"use strict"; + +class WatchIgnorePlugin { + constructor(paths) { + this.paths = paths; + } + + apply(compiler) { + compiler.plugin("after-environment", () => { + compiler.watchFileSystem = new IgnoringWatchFileSystem(compiler.watchFileSystem, this.paths); + }); + } +} + +module.exports = WatchIgnorePlugin; + +class IgnoringWatchFileSystem { + constructor(wfs, paths) { + this.wfs = wfs; + this.paths = paths; + } + + watch(files, dirs, missing, startTime, options, callback, callbackUndelayed) { + const ignored = path => this.paths.some(p => p instanceof RegExp ? p.test(path) : path.indexOf(p) === 0); + + const notIgnored = path => !ignored(path); + + const ignoredFiles = files.filter(ignored); + const ignoredDirs = dirs.filter(ignored); + + this.wfs.watch(files.filter(notIgnored), dirs.filter(notIgnored), missing, startTime, options, (err, filesModified, dirsModified, missingModified, fileTimestamps, dirTimestamps) => { + if(err) return callback(err); + + ignoredFiles.forEach(path => { + fileTimestamps[path] = 1; + }); + + ignoredDirs.forEach(path => { + dirTimestamps[path] = 1; + }); + + callback(err, filesModified, dirsModified, missingModified, fileTimestamps, dirTimestamps); + }, callbackUndelayed); + } +} -- cgit v1.2.3