{"_id":"filter-files","_rev":"27-e55729b31b61aa686dfbae1c77d76e1a","name":"filter-files","description":"Recursively read directories and return a list of files, filtered to have only the files for which the (optional) filter function returns `true`. Sync and async.","dist-tags":{"latest":"0.4.0"},"versions":{"0.1.0":{"name":"filter-files","description":"Recursively read directories and return a list of files filtered to have only the files for which the callback returns `true`.","version":"0.1.0","homepage":"https://github.com/jonschlinkert/filter-files","author":{"name":"Jon Schlinkert","url":"https://github.com/jonschlinkert"},"repository":{"type":"git","url":"git://github.com/jonschlinkert/filter-files.git"},"bugs":{"url":"https://github.com/jonschlinkert/filter-files/issues"},"licenses":[{"type":"MIT","url":"https://github.com/jonschlinkert/filter-files/blob/master/LICENSE-MIT"}],"main":"index.js","engines":{"node":">=0.10.0"},"scripts":{"test":"mocha -R spec"},"devDependencies":{"verb":"^0.2.6","mocha":"*"},"keywords":["fs","read","dir","directories"],"dependencies":{"is-directory":"^0.2.2"},"_id":"filter-files@0.1.0","_shasum":"e10f6dae953b2cf8e15927ea8755bedb00ac8e49","_from":".","_npmVersion":"1.4.9","_npmUser":{"name":"jonschlinkert","email":"github@sellside.com"},"maintainers":[{"name":"jonschlinkert","email":"github@sellside.com"}],"dist":{"shasum":"e10f6dae953b2cf8e15927ea8755bedb00ac8e49","tarball":"https://registry.npmjs.org/filter-files/-/filter-files-0.1.0.tgz","integrity":"sha512-Qx3pH7QZpaWGqFE8yDoE8DMBMxYv0wtKSMIdT+MAk45PktR6x9H/4lvbLaOUCGne8laIr3d9qfJInZQi+0K5OQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCiunpUIRdSdDAKfMpvCRYP16Z6xaEYb4wsTwafUcafjgIgdUIA7pEFTWwmfWZYSAP9Gf7Gnw8SXUjFRaHYULhFRcI="}]}},"0.2.0":{"name":"filter-files","description":"Recursively read directories and return a list of files, filtered to have only the files for which the (optional) filter function returns `true`. Sync and async.","version":"0.2.0","homepage":"https://github.com/jonschlinkert/filter-files","author":{"name":"Jon Schlinkert","url":"https://github.com/jonschlinkert"},"repository":{"type":"git","url":"git://github.com/jonschlinkert/filter-files.git"},"bugs":{"url":"https://github.com/jonschlinkert/filter-files/issues"},"licenses":[{"type":"MIT","url":"https://github.com/jonschlinkert/filter-files/blob/master/LICENSE-MIT"}],"main":"index.js","engines":{"node":">=0.10.0"},"scripts":{"test":"mocha -R spec"},"devDependencies":{"benchmarked":"^0.1.3","chalk":"^0.5.1","glob":"^4.0.6","mocha":"*","should":"^4.1.0","verb":"^0.2.6"},"keywords":["dir","directories","ext","extension","file","file-path","file-system","filepath","files","filter","fs","javascript","js","path","util","utils"],"dependencies":{"async":"^0.9.0","is-directory":"^0.2.2"},"_id":"filter-files@0.2.0","_shasum":"1b4ea0a8db0fd72cf59f5b2d295d8849e2a57353","_from":".","_npmVersion":"1.4.9","_npmUser":{"name":"jonschlinkert","email":"github@sellside.com"},"maintainers":[{"name":"jonschlinkert","email":"github@sellside.com"}],"dist":{"shasum":"1b4ea0a8db0fd72cf59f5b2d295d8849e2a57353","tarball":"https://registry.npmjs.org/filter-files/-/filter-files-0.2.0.tgz","integrity":"sha512-d1IgnBSvkqTKMtk2/FKPS5gydk/EtYwZRFSfkraaIyE1rBiIj4115fmq5lNct2w/0687qJF5s5BJPFnAxpGG1A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBydaTKJepaXx4ZhsMh0UUrv8ZHHiW/FaPpBV9Nl6rMPAiAe5NTPER/6gRFN4Rxw01z+VjK/J/Uphy+MbyS/bxWcNw=="}]}},"0.2.1":{"name":"filter-files","description":"Recursively read directories and return a list of files, filtered to have only the files for which the (optional) filter function returns `true`. Sync and async.","version":"0.2.1","homepage":"https://github.com/jonschlinkert/filter-files","author":{"name":"Jon Schlinkert","url":"https://github.com/jonschlinkert"},"repository":{"type":"git","url":"git://github.com/jonschlinkert/filter-files.git"},"bugs":{"url":"https://github.com/jonschlinkert/filter-files/issues"},"licenses":[{"type":"MIT","url":"https://github.com/jonschlinkert/filter-files/blob/master/LICENSE-MIT"}],"main":"index.js","engines":{"node":">=0.10.0"},"scripts":{"test":"mocha -R spec"},"devDependencies":{"benchmarked":"^0.1.3","chalk":"^0.5.1","glob":"^4.0.6","mocha":"*","should":"^4.1.0","verb":"^0.2.6"},"keywords":["dir","directories","ext","extension","file","file-path","file-system","filepath","files","filter","fs","javascript","js","path","util","utils"],"dependencies":{"async":"^0.9.0","is-directory":"^0.2.2"},"_id":"filter-files@0.2.1","_shasum":"d6dfbc97bf2470ba2aca4fffc3efc4dd2876a57e","_from":".","_npmVersion":"1.4.9","_npmUser":{"name":"jonschlinkert","email":"github@sellside.com"},"maintainers":[{"name":"jonschlinkert","email":"github@sellside.com"}],"dist":{"shasum":"d6dfbc97bf2470ba2aca4fffc3efc4dd2876a57e","tarball":"https://registry.npmjs.org/filter-files/-/filter-files-0.2.1.tgz","integrity":"sha512-yV8pF3ZJva5uFglde6p0160Vja4Qghherdv/LQ586/fJAfHR0sHqaAvH4EXpnISnQp60RU0YnqEqWN2iFYNyGA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDb3sOV42sGNKQSQ7HCTmLfEFGurIKFNDp3g4IPQPPRNwIhAI/Pjl6Nl54Mizqtg94YflZSwnIOYkZ+ZWpT58MIpooD"}]}},"0.2.2":{"name":"filter-files","description":"Recursively read directories and return a list of files, filtered to have only the files for which the (optional) filter function returns `true`. Sync and async.","version":"0.2.2","homepage":"https://github.com/jonschlinkert/filter-files","author":{"name":"Jon Schlinkert","url":"https://github.com/jonschlinkert"},"repository":{"type":"git","url":"git://github.com/jonschlinkert/filter-files.git"},"bugs":{"url":"https://github.com/jonschlinkert/filter-files/issues"},"licenses":[{"type":"MIT","url":"https://github.com/jonschlinkert/filter-files/blob/master/LICENSE-MIT"}],"main":"index.js","engines":{"node":">=0.10.0"},"scripts":{"test":"mocha -R spec"},"devDependencies":{"benchmarked":"^0.1.3","chalk":"^0.5.1","glob":"^4.0.6","mocha":"*","should":"^4.1.0","verb":"^0.2.6"},"keywords":["dir","directories","ext","extension","file","file-path","file-system","filepath","files","filter","fs","javascript","js","path","util","utils"],"dependencies":{"async":"^0.9.0","is-directory":"^0.2.2"},"_id":"filter-files@0.2.2","_shasum":"25d5f1121021c6084c441b8d6a52d4b32e187251","_from":".","_npmVersion":"1.4.9","_npmUser":{"name":"jonschlinkert","email":"github@sellside.com"},"maintainers":[{"name":"jonschlinkert","email":"github@sellside.com"}],"dist":{"shasum":"25d5f1121021c6084c441b8d6a52d4b32e187251","tarball":"https://registry.npmjs.org/filter-files/-/filter-files-0.2.2.tgz","integrity":"sha512-DxcxGo7IPghKmMcR4Gs132THYyA+kkD7ZYLlhhTjPdH8ep+feuNKb4sJUG8N5EtNfuZawOesVXKrVcqaSe/rNw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCID2Yfb1HiQh/4Jd8nvHLeuuBwtOBTYOXRXlS5PPDCsnuAiBpC3N+hksBWDJf845bnp7AnvvqxIE8p8MLYktI94H/KQ=="}]}},"0.2.3":{"name":"filter-files","description":"Recursively read directories and return a list of files, filtered to have only the files for which the (optional) filter function returns `true`. Sync and async.","version":"0.2.3","homepage":"https://github.com/jonschlinkert/filter-files","author":{"name":"Jon Schlinkert","url":"https://github.com/jonschlinkert"},"repository":{"type":"git","url":"git://github.com/jonschlinkert/filter-files.git"},"bugs":{"url":"https://github.com/jonschlinkert/filter-files/issues"},"licenses":[{"type":"MIT","url":"https://github.com/jonschlinkert/filter-files/blob/master/LICENSE-MIT"}],"main":"index.js","engines":{"node":">=0.10.0"},"scripts":{"test":"mocha -R spec"},"devDependencies":{"benchmarked":"^0.1.3","chalk":"^0.5.1","glob":"^4.0.6","mocha":"*","should":"^4.1.0","verb":"^0.2.6"},"keywords":["dir","directories","ext","extension","file","file-path","file-system","filepath","files","filter","fs","javascript","js","path","util","utils"],"dependencies":{"async":"^0.9.0","is-directory":"^0.2.2"},"_id":"filter-files@0.2.3","_shasum":"82690a883057cc301cb9a837f116763a1157dcd0","_from":".","_npmVersion":"1.4.9","_npmUser":{"name":"jonschlinkert","email":"github@sellside.com"},"maintainers":[{"name":"jonschlinkert","email":"github@sellside.com"}],"dist":{"shasum":"82690a883057cc301cb9a837f116763a1157dcd0","tarball":"https://registry.npmjs.org/filter-files/-/filter-files-0.2.3.tgz","integrity":"sha512-zg0z9d4Yy8/7Vj3GbXfjytGf0JByeFw0R+2UDwD0JDJikksSItcRoG8mFAD158RTyEa2GVic+9Valqa/e91x2w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCuU9Ci/9hGG/VO+Hwf0E2we9Cr1zXdIXeuAANU3ruoPgIgNroHd9uuFSozetRHeVaG5xAn+WB+xkKKTRl7CX7rcD8="}]}},"0.2.4":{"name":"filter-files","description":"Recursively read directories and return a list of files, filtered to have only the files for which the (optional) filter function returns `true`. Sync and async.","version":"0.2.4","homepage":"https://github.com/jonschlinkert/filter-files","author":{"name":"Jon Schlinkert","url":"https://github.com/jonschlinkert"},"repository":{"type":"git","url":"git://github.com/jonschlinkert/filter-files.git"},"bugs":{"url":"https://github.com/jonschlinkert/filter-files/issues"},"licenses":[{"type":"MIT","url":"https://github.com/jonschlinkert/filter-files/blob/master/LICENSE-MIT"}],"main":"index.js","engines":{"node":">=0.10.0"},"scripts":{"test":"mocha -R spec"},"devDependencies":{"benchmarked":"^0.1.3","chalk":"^0.5.1","glob":"^4.0.6","mocha":"*","should":"^4.1.0","verb":"^0.2.6"},"keywords":["dir","directories","ext","extension","file","file-path","file-system","filepath","files","filter","fs","javascript","js","path","util","utils"],"dependencies":{"async":"^0.9.0","is-directory":"^0.2.2"},"_id":"filter-files@0.2.4","_shasum":"be13b73e81bf353c3005e2fa78fb9850eeb084f2","_from":".","_npmVersion":"1.4.9","_npmUser":{"name":"jonschlinkert","email":"github@sellside.com"},"maintainers":[{"name":"jonschlinkert","email":"github@sellside.com"}],"dist":{"shasum":"be13b73e81bf353c3005e2fa78fb9850eeb084f2","tarball":"https://registry.npmjs.org/filter-files/-/filter-files-0.2.4.tgz","integrity":"sha512-NziSMx95tC4+zdVmB4IhomaHMuQxPI9yKp49+VzpjzbX3Vp03z72uAb7mYpX7ItZ98I6WPqkXOUHqmKicFlPeQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCvbMWex5WEFFBMg1D/BCrP5pWDqyrY7LQRJaxD3nbq9gIgfHuNIc2nXZH6O7t+4ojFPRubP9ten7RbaLCdgorr5Lc="}]}},"0.2.5":{"name":"filter-files","description":"Recursively read directories and return a list of files, filtered to have only the files for which the (optional) filter function returns `true`. Sync and async.","version":"0.2.5","homepage":"https://github.com/jonschlinkert/filter-files","author":{"name":"Jon Schlinkert","url":"https://github.com/jonschlinkert"},"repository":{"type":"git","url":"git://github.com/jonschlinkert/filter-files.git"},"bugs":{"url":"https://github.com/jonschlinkert/filter-files/issues"},"licenses":[{"type":"MIT","url":"https://github.com/jonschlinkert/filter-files/blob/master/LICENSE-MIT"}],"main":"index.js","engines":{"node":">=0.10.0"},"scripts":{"test":"mocha -R spec"},"dependencies":{"async":"^0.9.0","is-directory":"^0.2.2"},"devDependencies":{"benchmarked":"^0.1.3","chalk":"^0.5.1","glob":"^4.0.6","mocha":"*","should":"^4.1.0"},"keywords":["dir","directories","ext","extension","file","file-path","file-system","filepath","files","filter","fs","javascript","js","path","util","utils"],"_id":"filter-files@0.2.5","_shasum":"db507e3ba86adad86f8cd2cb27c3c998380996d5","_from":".","_npmVersion":"1.4.9","_npmUser":{"name":"jonschlinkert","email":"github@sellside.com"},"maintainers":[{"name":"jonschlinkert","email":"github@sellside.com"}],"dist":{"shasum":"db507e3ba86adad86f8cd2cb27c3c998380996d5","tarball":"https://registry.npmjs.org/filter-files/-/filter-files-0.2.5.tgz","integrity":"sha512-8/h4xAYgmN7RTpEfKHuKWT2ZKCqzZSoyrASYjcU5FLBVLRpHnECBhhD/P0LAcMs+J5wayK7uE4a401HRYNlh4g==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCDjKuQ76Xc76jjWrFOS55r6AkvNLjXBsCNqnIL9cHkDwIgWFOmJDrXtrPv7vAMi3FeJwylf+3hxDxPUJY3/QkAQ+U="}]}},"0.3.0":{"name":"filter-files","description":"Recursively read directories and return a list of files, filtered to have only the files for which the (optional) filter function returns `true`. Sync and async.","version":"0.3.0","homepage":"https://github.com/jonschlinkert/filter-files","author":{"name":"Jon Schlinkert","url":"https://github.com/jonschlinkert"},"repository":{"type":"git","url":"git://github.com/jonschlinkert/filter-files.git"},"bugs":{"url":"https://github.com/jonschlinkert/filter-files/issues"},"licenses":[{"type":"MIT","url":"https://github.com/jonschlinkert/filter-files/blob/master/LICENSE-MIT"}],"main":"index.js","engines":{"node":">=0.10.0"},"scripts":{"test":"mocha -R spec"},"dependencies":{"async":"^0.9.0","is-directory":"^0.2.2"},"devDependencies":{"benchmarked":"^0.1.3","chalk":"^0.5.1","glob":"^4.0.6","mocha":"*","should":"^4.1.0"},"keywords":["dir","directories","ext","extension","file","file-path","file-system","filepath","files","filter","fs","javascript","js","path","util","utils"],"_id":"filter-files@0.3.0","_shasum":"4a63cec27bbfcdb4a579cf59be036487a7e5ac79","_from":".","_npmVersion":"1.4.9","_npmUser":{"name":"jonschlinkert","email":"github@sellside.com"},"maintainers":[{"name":"jonschlinkert","email":"github@sellside.com"}],"dist":{"shasum":"4a63cec27bbfcdb4a579cf59be036487a7e5ac79","tarball":"https://registry.npmjs.org/filter-files/-/filter-files-0.3.0.tgz","integrity":"sha512-rhm0B8sBO2Tfb1Sg5gFFvY8cyGl89Tvv21U2nHyyIIeYld1+S8dzJO6QRQW/pNIXriFHOR9+wDVe4udpqa96Ew==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC6LZrjRQ/3FiJMRa2sSMMACTBtVT5y51IPmhV8nm9MvwIhAJG6zKoWr+2XPFcYSvSGsjGf/tlifSKzlreO4D3rfE/o"}]}},"0.3.1":{"name":"filter-files","description":"Recursively read directories and return a list of files, filtered to have only the files for which the (optional) filter function returns `true`. Sync and async.","version":"0.3.1","homepage":"https://github.com/jonschlinkert/filter-files","author":{"name":"Jon Schlinkert","url":"https://github.com/jonschlinkert"},"repository":{"type":"git","url":"git://github.com/jonschlinkert/filter-files.git"},"bugs":{"url":"https://github.com/jonschlinkert/filter-files/issues"},"licenses":[{"type":"MIT","url":"https://github.com/jonschlinkert/filter-files/blob/master/LICENSE-MIT"}],"main":"index.js","engines":{"node":">=0.10.0"},"scripts":{"test":"mocha -R spec"},"dependencies":{"async":"^0.9.0","is-directory":"^0.2.2"},"devDependencies":{"benchmarked":"^0.1.3","chalk":"^0.5.1","glob":"^4.0.6","mocha":"*","should":"^4.1.0"},"keywords":["dir","directories","ext","extension","file","file-path","file-system","filepath","files","filter","fs","javascript","js","path","util","utils"],"_id":"filter-files@0.3.1","_shasum":"23f58dcdd291a12a20e69200369eefc9b090c040","_from":".","_npmVersion":"1.4.9","_npmUser":{"name":"jonschlinkert","email":"github@sellside.com"},"maintainers":[{"name":"jonschlinkert","email":"github@sellside.com"}],"dist":{"shasum":"23f58dcdd291a12a20e69200369eefc9b090c040","tarball":"https://registry.npmjs.org/filter-files/-/filter-files-0.3.1.tgz","integrity":"sha512-p4Zv9mKp4oYRLT75cOxpv47Cq4bKUirAV0uyF6I+V5WguzTP2VvgYp54yOR8Mgake0tx8hztk7WT+cmr5fgjKw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFuUJKCpvun+5SObgCBV8b2SFp9nOgju/7zjbYfzlW4aAiEAm31ZwSRCLf/rsecgMeam9hl23ch42KJ80/aouA8QneA="}]}},"0.4.0":{"name":"filter-files","description":"Recursively read directories and return a list of files, filtered to have only the files for which the (optional) filter function returns `true`. Sync and async.","version":"0.4.0","homepage":"https://github.com/jonschlinkert/filter-files","author":{"name":"Jon Schlinkert","url":"https://github.com/jonschlinkert"},"repository":{"type":"git","url":"git://github.com/jonschlinkert/filter-files.git"},"bugs":{"url":"https://github.com/jonschlinkert/filter-files/issues"},"licenses":[{"type":"MIT","url":"https://github.com/jonschlinkert/filter-files/blob/master/LICENSE-MIT"}],"main":"index.js","engines":{"node":">=0.10.0"},"scripts":{"test":"mocha -R spec"},"dependencies":{"async":"^0.9.0","is-directory":"^0.2.2"},"devDependencies":{"benchmarked":"^0.1.3","chalk":"^0.5.1","glob":"^4.0.6","mocha":"*","should":"^4.1.0"},"keywords":["dir","directories","ext","extension","file","file-path","file-system","filepath","files","filter","fs","javascript","js","path","util","utils"],"_id":"filter-files@0.4.0","_shasum":"b934b9781a1a2f8daa8211b34bb8909706aeb914","_from":".","_npmVersion":"1.4.9","_npmUser":{"name":"jonschlinkert","email":"github@sellside.com"},"maintainers":[{"name":"jonschlinkert","email":"github@sellside.com"}],"dist":{"shasum":"b934b9781a1a2f8daa8211b34bb8909706aeb914","tarball":"https://registry.npmjs.org/filter-files/-/filter-files-0.4.0.tgz","integrity":"sha512-GdvMk8r98FmuSLErSnWzfRIylY1OWLMxlN6YmG6/JZp3dIBZUzcEGyoiSu+hM+bnwGuUS1msQ7raGB5iWeSP/g==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDAMMM5K2WVZMavnzoF9dd86UocGBELpEzuygTbh1Fu1AIgBghD9u5YmBFr7PGtoNzm6mGJcn1HDIzFfIIH1Ts3cCI="}]}}},"readme":"# filter-files [![NPM version](https://badge.fury.io/js/filter-files.svg)](http://badge.fury.io/js/filter-files)\n\n> Recursively read directories and return a list of files, filtered to have only the files for which the (optional) filter function returns `true`. Sync and async.\n\n## Install\n### Install with [npm](npmjs.org)\n\n```bash\nnpm i filter-files --save\n```\n\n## Run tests\n\n```bash\nnpm test\n```\n\n## Usage\n\n```js\nvar filter = require('filter-files');\n```\n\n### sync\n\n```js\nfilter.sync(dir, [recurse], [filterFn]);\n```\n**Params**\n\n - `dir` **{String}**: the directory to start from. Returns all files, recursively, starting with this path.\n - `filterFn` **{Function}**: optionally pass a filter function to use for filtering files/dirs. This function filters \"on the fly\", so recursion is very fast.\n - `recurse` **{Boolean}**: pass `false` to disable recursion.\n\n**Examples**\n\n```js\nvar files = filter.sync('lib');\nconsole.log(files);\n//=> [ 'lib/async.js', 'lib/filter.js', 'lib/sync.js' ]\n```\n\nPass a filter function:\n\n```js\nfilter.sync('lib', function(fp) {\n  return /a/.test(fp);\n});\n//=> [ 'lib/async.js' ]\n```\n\nOr an array of filter functions:\n\n```js\nfunction include(fp) {\n  return /^\\./.test(fp);\n}\nfunction exclude(fp) {\n  return !/^\\.[jntv]/.test(fp);\n}\n\n// pass `false` to prevent recursion\nfilter('.', [include, exclude], false);\n//=> ['.git', '.gitignore', '.gitattribuets']\n```\n\n### async\n\n```js\nfilter(dir, [recurse], [filterFn], callback));\n```\n**Params**\n\nSame as sync with the addition of `callback`.\n\n**Examples**\n\n```js\nfilter('lib', function(err, files) {\n  console.log(files);\n  //=> [ 'lib/async.js', 'lib/filter.js', 'lib/sync.js' ]\n});\n```\n\nPass a filter function:\n\n```js\nvar fn = function(fp) {\n  return /a/.test(fp);\n};\n\nfilter('lib', fn, function(err, files) {\n  console.log(files);\n  //=> [ 'lib/async.js' ]\n});\n```\n\n### Filtering\n\nFilter functions take four parameters and return `true` or `false`.\n\n**Params**\n\n - `fp` filepath being looped over\n - `dir` current directory\n - `files` accumulated array of files\n - `recurse` whether recurse is `true` or `false`\n\n**Example**\n\nThis function returns a filter function for getting files with the given `extname`:\n\n```js\nvar path = require('path');\nvar isDir = require('is-directory');\n\nfunction ext(extname) {\n  // this is our filter function\n  return function filter(fp, dir, files, recurse) {\n    if (isDir(path.join(dir, fp)) && recurse === true) {\n      return true;\n    }\n    return path.extname(fp) === extname;\n  }\n}\n```\n\nSee [the tests](./test/test.js) for more examples.\n\n\n## Contributing\nPull requests and stars are always welcome. For bugs and feature requests, [please create an issue](https://github.com/jonschlinkert/filter-files/issues).\n\n## Author\n\n**Jon Schlinkert**\n \n+ [github/jonschlinkert](https://github.com/jonschlinkert)\n+ [twitter/jonschlinkert](http://twitter.com/jonschlinkert) \n\n## License\nCopyright (c) 2014 Jon Schlinkert  \nReleased under the MIT license\n\n***\n\n_This file was generated by [verb](https://github.com/assemble/verb) on November 17, 2014._","maintainers":[{"name":"jonschlinkert","email":"github@sellside.com"}],"time":{"modified":"2022-06-18T00:48:41.930Z","created":"2014-10-29T23:36:16.455Z","0.1.0":"2014-10-29T23:36:16.455Z","0.2.0":"2014-10-30T05:28:15.037Z","0.2.1":"2014-10-30T05:41:50.647Z","0.2.2":"2014-10-30T05:44:16.325Z","0.2.3":"2014-10-30T07:47:49.170Z","0.2.4":"2014-10-30T07:53:09.951Z","0.2.5":"2014-11-13T11:56:17.924Z","0.3.0":"2014-11-15T15:18:58.127Z","0.3.1":"2014-11-17T08:58:25.923Z","0.4.0":"2014-11-17T12:29:46.980Z"},"homepage":"https://github.com/jonschlinkert/filter-files","keywords":["dir","directories","ext","extension","file","file-path","file-system","filepath","files","filter","fs","javascript","js","path","util","utils"],"repository":{"type":"git","url":"git://github.com/jonschlinkert/filter-files.git"},"author":{"name":"Jon Schlinkert","url":"https://github.com/jonschlinkert"},"bugs":{"url":"https://github.com/jonschlinkert/filter-files/issues"},"readmeFilename":"README.md","users":{"andrebassi":true,"laomu":true,"lunelson":true}}