2.1.0 • Published 1 year ago

filesnitch v2.1.0

Weekly downloads
-
License
MIT
Repository
github
Last release
1 year ago

!WARNING

This library does not manage rename event, you will receive two different events instead:

  • First event is unlink, with old path to the file
  • Second event is new, with new path to the file

You can handle it on your own with handling this kind of scenarios. Also don't use this library if you want to manage remote repositories, try fs.watchFile instead.

npm i filesnitch --save
const Snitch = require('filesnitch');
const snitch = new Snitch({
  timeout: 200, // Events debouncing for queue (default 1000)
  filter: new RegExp(/[\D\d]+\.ignore\D*/), // Ignore files and directories
  // filter: path => new RegExp(/[\D\d]+\.ignore\D*/).test(path), // (Function)
  // filter: /[\D\d]+\.ignore\D*/, // (RegExp)
  // filter: '/[\D\d]+\.ignore\D*/', // (string)
  recursive: false, // Include nested directories (default: true)
  home: process.cwd(), // Removes root path from emits, Warning: ignore will work on full paths
});

snitch.watchSync('/home/user/Downloads').watchSync('/home/user/Documents');
snitch.watch('/home/user/Desktop', (event, path, details) => console.log('New File ! Desktop'));
snitch.on('before', events => console.log({ before: events }));
snitch.on('update', (path, details) => console.log({ changed: path, details }));
snitch.on('unlink', path => console.log({ deleted: path }));
snitch.on('new', path => console.log({ new: path }));
snitch.on('event', (event, path, details) => console.log({ event, path, details }));
snitch.on('after', events => console.log({ after: events }));
1.8.1

1 year ago

2.1.0

1 year ago

1.7.0

1 year ago

1.5.0

2 years ago

1.4.0

2 years ago

1.3.0

2 years ago

1.2.0

2 years ago

1.1.0

2 years ago