Monitor a tree of files and folders for creations, changes, and deletions
Based upon Mikeal Rogers' watch library.
Watch a file tree and emit appropriate events for various changes. Extends EventEmitter.
Uses FS.watch to monitor files for change, and re-scans directories periodically to detect
new creations and deletions.
Polling allows watcher to function on most operating systems where FS.watch
or FS.watchFile are not fully supported or have inconsistent behavior. FS.watch is
still used to monitor file changes asynchronously.
- root: top-level folder to watch
- refresh: interval to
- start(): Start the watcher
- stop(): Stop the watcher
- path: Path of the affected node relative to the watch tree root
- dir: boolean, indicates whether or not the node is a folder
Events emit a WatchEvent object
- watching: Emitted when a new file or folder is added to the watch list
- create: Emitted when a new file is detected in the watched tree
- change: Emitted when a file in the watch list is changed
- delete: emitted when a file or folder is deleted from the watched tree
- root: top-level folder to search in
- filter: function(path) called for each path found in tree. Return true to emit
path and search with in if directory
- start(): Start traversing
Events emit the path of the located node relative to the specified root. This allows
trees to be mirrored in different roots.
- file: Emitted when a file node is located
- folder: Emitted when a folder node is located