vfile-find-down
Find one or more files by searching the file system downwards
Last updated 10 years ago by wooorm .
MIT · Repository · Bugs · Original npm
$ cnpm install vfile-find-down 
SYNC missed versions from official npm registry.

vfile-find-down

Build Coverage Downloads Sponsors Backers Chat

Find vfiles by searching the file system downwards.

Install

npm:

npm install vfile-find-down

Use

var findDown = require('vfile-find-down')

findDown.all('.md', console.log)

Yields:

null [ VFile {
  data: {},
  messages: [],
  history: [ '/Users/tilde/projects/oss/vfile-find-down/readme.md' ],
  cwd: '/Users/tilde/projects/oss/vfile-find-down' } ]

API

findDown.all(tests[, paths], callback)

Search for tests downwards. Invokes callback with either an error or an array of files passing tests. Note: Virtual Files are not read (their contents is not populated).

Parameters
tests

Things to search for (string|Function|Array.<tests>).

If an array is passed in, any test must match a given file for it to be included.

If a string is passed in, the basename or extname of files must match it for them to be included (and hidden directories and node_modules will not be searched).

Otherwise, they must be function.

paths

Place(s) to searching from (Array.<string> or string, default: process.cwd()).

callback

Function invoked with all matching files (function cb(err[, files])).

findDown.one(tests[, paths], callback)

Like findDown.all, but invokes callback with the first found file, or null.

function test(file, stats)

Check whether a virtual file should be included. Invoked with a vfile and a stats object.

Returns
  • true or findDown.INCLUDE — Include the file in the results
  • findDown.SKIP — Do not search inside this directory
  • findDown.BREAK — Stop searching for files
  • anything else is ignored: files are neither included nor skipped

The different flags can be combined by using the pipe operator: findDown.INCLUDE | findDown.SKIP.

Contribute

See contributing.md in vfile/.github for ways to get started. See support.md for ways to get help.

This project has a code of conduct. By interacting with this repository, organization, or community you agree to abide by its terms.

License

MIT © Titus Wormer

Current Tags

  • 5.0.1                                ...           latest (5 years ago)

2 Versions

  • 5.0.1                                ...           5 years ago
  • 1.0.0                                ...           10 years ago
Maintainers (1)
Downloads
Today 0
This Week 0
This Month 0
Last Day 0
Last Week 0
Last Month 0
Dependencies (1)
Dev Dependencies (12)
Dependents (0)
None

Copyright 2013 - present © cnpmjs.org