file-set

Expands file paths and glob expressions, returning matched and unmatched files and directories

Usage no npm install needed!

<script type="module">
  import fileSet from 'https://cdn.skypack.dev/file-set';
</script>

README

view on npm npm module downloads Gihub repo dependents Gihub package dependents Node.js CI js-standard-style

file-set

Expands a list of paths and glob expressions into three sets: "files", "directories" and "not existing". Each set in the output is a list of unique paths.

The library saves you the job of learning a globbing library, expanding a glob expression (e.g. lib/**/*), sifting through each result testing whether it's a file, directory or neither.

Usage

Expand two glob expressions ('*' and 'not/existing/*').

import FileSet from 'file-set'
const fileSet = new FileSet()
await fileSet.add([ '*', 'not/existing/*' ])
console.log(fileSet)

The output has been organised into sets.

FileSet {
  files: [ 'LICENSE', 'package.json', 'README.md' ],
  dirs: [ 'jsdoc2md/', 'lib/', 'node_modules/', 'test/' ],
  notExisting: [ 'not/existing/*' ]
}

API

file-set

FileSet ⏏

Kind: Exported class

new FileSet()

fileSet.files : Array.<string>

The existing files found

Kind: instance property of FileSet

fileSet.dirs : Array.<string>

The existing directories found. Directory paths will always end with '/'.

Kind: instance property of FileSet

fileSet.notExisting : Array.<string>

Paths which were not found

Kind: instance property of FileSet

fileSet.add(patterns)

Add file patterns to the set.

Kind: instance method of FileSet

Param Type Description
patterns string | Array.<string> One or more file paths or glob expressions to inspect.

© 2014-21 Lloyd Brookes <75pound@gmail.com>.

Tested by test-runner.