1.0.1 • Published 6 years ago

dir-walker-gen v1.0.1

Weekly downloads
10
License
MIT
Repository
github
Last release
6 years ago

dir-walker-gen Build Status

JavaScript generator pattern for efficient directory listing.

Unlike other directory walkers, this coding pattern will NOT try to scan the entire tree. The directory listings are returned as a generator pattern and the subdirectories are only scanned when the calling method has consumed all the normal files in a directory.

The async nature of the function, it yields to the calling routine allowing it to process the file as needed.

Installation

$ npm install dir-walker-gen

Basic Usage

const DirGen = require('dir-walker-gen');

const options = {
    folders: ["D:\\Dropbox"]
}

for (let file of DirGen(options)) {
    console.log(file);
}

Options Object

const DirGen = require('dir-walker-gen');

const options = {
    folders: ["D:\\Dropbox", "D:\\OneDrive"],
    silent: true,
    ignoreDotDir: true,
    excludeFolders: ['Public'],
    excludeExtensions: ['tmp', 'docx', 'xlsx'],
    includeExtensions: ['jpeg', 'jpg', 'png', 'gif']
};

for (let file of DirGen(options)) {
    console.log(file);
}
Option*CommentDefault
folders(Required) List of starting folders
silentDoes not show console warning when directories do not existfalse
ignoreDotDirIgnores directories that start with a dot (e.g. .git, .vscode, etc)false
excludeFoldersExclude all folder that ends with any of the given stringsempty list (ignore nothing)
excludeExtensionsList of extensions to ignoreempty list (ignore nothing)
includeExtensionsList of extensions to scan (all other extensions are ignored)empty list (ignore nothing)

Notes: 1. excludeExtensions is not really needed if includeExtensions is supplied. 2. Include and Exclude strings are case sensitive