1.4.1 • Published 6 years ago

file-changed v1.4.1

Weekly downloads
1,569
License
MIT
Repository
github
Last release
6 years ago

file-changed

Build Status Code coverage Code style Dependency Status Dev Dependency Status NPM version NPM downloads NPM license FOSSA Status

A node module to check and store file changed.

Install

By npm:

npm i file-changed --save

By yarn:

yarn add file-changed

Class

This package export a class since version 1.0.0 which means you could have multiple instances and save the information where you like.

constructor(dbPath)

Arguments

dbPath {string}
  • Default: ./\_timestamp.json

Path to save collection informations on disk.

Return

Collection instance.

Instance Methods

get(file, type)

Access to a file last modified information.

Arguments

  • file {string}: The target file path
  • type {string}: The information type
    • ts: timestamp (default)
    • md5: md5 hash

Return

  • false {boolean}: no such file in collection
  • timestamp or md5 {string}: depends on type

list()

Get all file paths in collection.

Return

  • file paths {array}

addFile(path, path2 ... pathN)

Add files to collection.

Arguments

  • path {string}: the target file path or glob

Return

  • this {object}: for chain operation

rmFile(path, path2 ... pathN)

Remove files from collection.

Arguments

  • path {string}: the target file path or glob

Return

  • this {object}: for chain operation

check(path1 ... pathN)

Check collection files changed or not.

Arguments

  • no arguments: check all files.
  • path {string}: the target file path or glob

Return

  • changed files {array}

update(path1 ... pathN)

Update files last modified information.

Arguments

  • no arguments: update all files
  • path {string}: the target file path or glob

Return

  • this {object}: for chain operation

clean()

Clean files in collection which could not found.

Return

  • this {object}: for chain operation

save()

Save collection information onto disk.

Return

  • this {object}: for chain operation

Usage Examples

const Fc = require('file-changed');
const collectionA = new Fc('./path/to/save/info'); // Create collection instance whill will load modified info from that path if that path exists

collectionA.addFile('test/files/file1', 'test/files/file2'); // Add 2 files in collectionA

const fileList = collectionA.list(); // Get file list in collectionA

collectionA.rmFile('test/files/file1'); // Remove 1 file from collectionA

collectionA.addFile('test/files/*'); // Add file by glob

const modifiedList1 = collectionA.check('test/files/file1'); // Check 1 file modified or not
const modifiedList2 = collectionA.check()); // Check all files in collectionA modified or not

collectionA.update('test/files/file1'); // Update last modified info for 1 file
collectionA.update(); // Update last modified info for all files in collectionA

const lastModifiedTS = collectionA.get('test/files/file1'); // Get last modified timestamp for that file
const lastModifiedMD5 = collectionA.get('test/files/file1', 'md5'); // Get last modified md5 for that file

collectionA.save(); // Save collectionA modified info to disk

Test

npm test

License

FOSSA Status

1.4.1

6 years ago

1.4.0

6 years ago

1.3.0

6 years ago

1.2.1

7 years ago

1.2.0

7 years ago

1.1.2

7 years ago

1.1.1

7 years ago

1.1.0

7 years ago

1.0.0

7 years ago

0.1.0

9 years ago

0.0.7

9 years ago

0.0.6

9 years ago

0.0.5

9 years ago

0.0.4

9 years ago

0.0.3

9 years ago

0.0.2

9 years ago

0.0.1

9 years ago