
Product
Socket for Jira Is Now Available
Socket for Jira lets teams turn alerts into Jira tickets with manual creation, automated ticketing rules, and two-way sync.
Return an object for a glob of files. Pass a `rename` function for the keys, or a `parse` function for the content, allowing it to be used for readable or require-able files.
Return an object for a glob of files. Pass a rename function for the keys, or a parse function for the content, allowing it to be used for readable or require-able files.
Install with npm:
$ npm install map-files --save
Heads up!
Breaking changes in v0.8.0. See the history for details.
var mapFiles = require('map-files');
console.log(mapFiles('templates/*.txt'));
Returns an object of vinyl files that looks something like this:
{ 'test/fixtures/a.txt': <File "test/fixtures/a.txt" <Buffer 41 41 41>>,
'test/fixtures/b.txt': <File "test/fixtures/b.txt" <Buffer 42 42 42>>,
'test/fixtures/c.txt': <File "test/fixtures/c.txt" <Buffer 43 43 43>> }
Specify the current working directory
Params
Type: String
Default: process.cwd()
Example
files('*.txt', {cwd: 'templates'});
Rename the key of each file object:
Params
Type: Function
Default: file.relative
Example
var files = mapFiles('templates/*.txt', {
renameKey: function (file) {
return file.basename;
}
});
Returns something like:
{ 'a.txt': <File "test/fixtures/a.txt" <Buffer 41 41 41>>,
'b.txt': <File "test/fixtures/b.txt" <Buffer 42 42 42>>,
'c.txt': <File "test/fixtures/c.txt" <Buffer 43 43 43>> }
Pass an object of methods to decorate as getters onto each file in the results.
var yaml = require('js-yaml');
var files = mapFiles('test/fixtures/*.yml', {
renameKey: 'stem',
decorate: {
yaml: function(file) {
return yaml.safeLoad(file.contents.toString());
}
}
});
console.log(files.a.yaml);
//=> {title: 'AAA'}
v0.8.0
options.name was removed, use options.renameKey instead.options.cache was removedoptions.read was removedoptions.decorate was added. See the decorate docs.v0.5.0
As of v0.5.0, map-files returns absolute file paths by default. You can achieve the same results by using a custom name function as in the examples.
You might also be interested in these projects:
Pull requests and stars are always welcome. For bugs and feature requests, please create an issue.
Generate readme and API documentation with verb:
$ npm install verb && npm run docs
Or, if verb is installed globally:
$ verb
Install dev dependencies:
$ npm install -d && npm test
Jon Schlinkert
Copyright © 2016, Jon Schlinkert. Released under the MIT license.
This file was generated by verb, v0.9.0, on April 23, 2016.
FAQs
Return an object for a glob of files. Pass a `rename` function for the keys, or a `parse` function for the content, allowing it to be used for readable or require-able files.
The npm package map-files receives a total of 4,136 weekly downloads. As such, map-files popularity was classified as popular.
We found that map-files demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Product
Socket for Jira lets teams turn alerts into Jira tickets with manual creation, automated ticketing rules, and two-way sync.

Company News
Socket won two 2026 Reppy Awards from RepVue, ranking in the top 5% of all sales orgs. AE Alexandra Lister shares what it's like to grow a sales career here.

Security News
NIST will stop enriching most CVEs under a new risk-based model, narrowing the NVD's scope as vulnerability submissions continue to surge.