hyperdrive-import-files v4.0.0
hyperdrive-import-files
Import the contents of a folder into a hyperdrive, and optionally keep watching for changes.
Example
const hyperdrive = require('hyperdrive')
const memdb = require('memdb')
const hyperImport = require('hyperdrive-import-files')
const drive = hyperdrive(memdb())
const archive = drive.createArchive()
hyperImport(archive, 'a/directory/', err => {
// ...
})Installation
$ npm install hyperdrive-import-filesAPI
hyperImport(archive, target, , options)
Recursively import target, which is the path to a directory or file, into archive and call cb with the potential error. The import happens sequentually. Returns a status object.
Options
watch: watch files for changes & import on change (archive must be live)overwrite: allow files in the archive to be overwritten (defaults to true)compareFileContent: compare import-candidates to archive's internal copy. If false, will only compare mtime and file-size, which is faster but may reslt in false-positives. (defaults to false)basePath: where in the archive should the files import to? (defaults to '')ignore: anymatch expression to ignore filesdryRun: step through the import, but don't write any files to the archive (defaults to false)indexing: Useful iftarget === destso hyperdrive does not rewrite the files on import.
To enable watching, set watch: true, like this:
const status = hyperImport(archive, target, { watch: true }, err => {
console.log('initial import done')
})
status.on('error', err => {
// ...
})
// when you want to quit:
status.close()If you want to import into a subfolder, set basePath:
hyperImport(archive, target, { basePath: '/some/subdir' }, err => {...})status
Events:
error(err)file imported({path,mode=updated|created})file skipped({path})file watch event({path,mode=updated|created})
Properties:
fileCount: The count of currently known filestotalSize: Total file size in bytesbytesImported: Amount of bytes imported so far
License
MIT
8 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago