1.0.0 • Published 6 years ago
@kxghnpm/kx-shredder-sync v1.0.0
kx-shredder-sync
Synchronous file shredder.
Examples:
const Shredder = require('@kxghnpm/kx-shredder-sync');
const shr = Shredder.createShredder({
strategy: Shredder.strategies.ZERO_BYTES
});
shr.shredAll(`my/target/folder`, {recursive: true, unlink: false});const Shredder = require('@kxghnpm/kx-shredder-sync');
const shr = Shredder.createShredder({
strategy: Shredder.strategies.FF_BYTES
});
shr.shredAll(['tests/xxx.txt', 'tests/xxf/xxx.txt'], {unlink: true});const shr = require('@kxghnpm/kx-shredder-sync').createShredder();
shr.shredOne('mycv.pdf');API
const Shredder = require('@kxghnpm/kx-shredder-sync');
const shr = Shredder.createShredder({
/// ... opts ...
strategy: Shredder.strategies.US_DOD,
log: console.log,
passCount: 2
});strategies
File shredding strategies. If none provided, falls back to US_DOD. Four available:
- ZERO_BYTES fills file with zeros
- FF_BYTES fills file with max byte values
- RANDOM_BYTES fills file with random bytes
- US_DOD all of the previous three as one pass (in that order).
createShredder
Accepts the following params:
fileListerfilelister with a listFiles(targetDirectoryPath, recursive) method. It recursively searches for files to be shredded. Default used filelister is @kxghnpm/kx-file-lister-sync with the following blacklist of file extensions:['.exe', '.dll', '.so', '.dat', '.xml', '.js', '.log', '.o', '.efi', '.prx', '.sh', '.rs', '.bat']bufferSizewrite buffer chunk size in bytes. Defaults to 65536strategysee strategies above. Defaults to US_DODloglogger function that will be passed a string indicating progress of mass shredding. Defaults to empty function.passCounthow many times should shredding strategy be used on a file. Suggested and default value is 1.
Returns an object with following functions:
shredOne
Synchronously shreds a file. Args:
targetFilePathpath to file to be shreddedunlinkwhether the file should also be unlinked. False by default.
shredAll
Synchronously shreds files in (sub)folder(s) or file paths listed in array.
targetdirectory path or array of file pathsopts.recursivewhether also files in subdirectories should be shredded. Defaults to falseopts.unlinkwhether the files should also be unlinked. False by default
getTargets
Lists targets that would be shredded by shredAll function. Useful for prompting user before shredding recursively.
targettarget path to target directory or array of file pathsrecursivewhether also subdirectories should be shredded. Defaults to false
1.0.0
6 years ago