clear
This commit is contained in:
67
node_modules/findup-sync/README.md
generated
vendored
Normal file
67
node_modules/findup-sync/README.md
generated
vendored
Normal file
@@ -0,0 +1,67 @@
|
||||
# findup-sync [](https://travis-ci.org/js-cli/node-findup-sync) [](http://badge.fury.io/js/findup-sync)
|
||||
|
||||
> Find the first file matching a given pattern in the current directory or the nearest ancestor directory.
|
||||
|
||||
Matching is done with [micromatch][], please report any matching related issues on that repository.
|
||||
|
||||
## Install with [npm](npmjs.org)
|
||||
|
||||
```bash
|
||||
npm i findup-sync --save
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
```js
|
||||
var findup = require('findup-sync');
|
||||
findup(patternOrPatterns [, micromatchOptions]);
|
||||
|
||||
// Start looking in the CWD.
|
||||
var filepath1 = findup('{a,b}*.txt');
|
||||
|
||||
// Start looking somewhere else, and ignore case (probably a good idea).
|
||||
var filepath2 = findup('{a,b}*.txt', {cwd: '/some/path', nocase: true});
|
||||
```
|
||||
|
||||
* `patterns` **{String|Array}**: Glob pattern(s) or file path(s) to match against.
|
||||
* `options` **{Object}**: Options to pass to [micromatch]. Note that if you want to start in a different directory than the current working directory, specify a `cwd` property here.
|
||||
* `returns` **{String}**: Returns the first matching file.
|
||||
|
||||
## Running tests
|
||||
|
||||
Install dev dependencies:
|
||||
|
||||
```bash
|
||||
npm i -d && npm test
|
||||
```
|
||||
|
||||
## Contributing
|
||||
|
||||
In lieu of a formal styleguide, take care to maintain the existing coding style. Add unit tests for any new or changed functionality. Lint and test your code using [Grunt](http://gruntjs.com/)
|
||||
|
||||
For bugs and feature requests, [please create an issue](https://github.com/cowboy/node-findup-sync/issues).
|
||||
|
||||
## Release History
|
||||
|
||||
2015-01-30 - v0.4.0 - Refactored, not also uses [micromatch][] instead of minimatch.
|
||||
2015-09-14 - v0.3.0 - updated glob to ~5.0.
|
||||
2014-12-17 - v0.2.1 - Updated to glob 4.3.
|
||||
2014-12-16 - v0.2.0 - Removed lodash, updated to glob 4.x.
|
||||
2014-03-14 - v0.1.3 - Updated dependencies.
|
||||
2013-03-08 - v0.1.2 - Updated dependencies. Fixed a Node 0.9.x bug. Updated unit tests to work cross-platform.
|
||||
2012-11-15 - v0.1.1 - Now works without an options object.
|
||||
2012-11-01 - v0.1.0 - Initial release.
|
||||
|
||||
## Authors
|
||||
|
||||
**"Cowboy" Ben Alman**
|
||||
|
||||
+ [github/cowboy](https://github.com/cowboy)
|
||||
+ [twitter/cowboy](http://twitter.com/cowboy)
|
||||
|
||||
## License
|
||||
|
||||
Copyright (c) 2012-2016 "Cowboy" Ben Alman
|
||||
Released under the MIT license
|
||||
|
||||
[micromatch]: http://github.com/jonschlinkert/micromatch
|
||||
85
node_modules/findup-sync/index.js
generated
vendored
Normal file
85
node_modules/findup-sync/index.js
generated
vendored
Normal file
@@ -0,0 +1,85 @@
|
||||
'use strict';
|
||||
|
||||
/**
|
||||
* Module dependencies
|
||||
*/
|
||||
|
||||
var fs = require('fs');
|
||||
var path = require('path');
|
||||
var isGlob = require('is-glob');
|
||||
var resolveDir = require('resolve-dir');
|
||||
var detect = require('detect-file');
|
||||
var mm = require('micromatch');
|
||||
|
||||
/**
|
||||
* @param {String|Array} `pattern` Glob pattern or file path(s) to match against.
|
||||
* @param {Object} `options` Options to pass to [micromatch]. Note that if you want to start in a different directory than the current working directory, specify the `options.cwd` property here.
|
||||
* @return {String} Returns the first matching file.
|
||||
* @api public
|
||||
*/
|
||||
|
||||
module.exports = function(patterns, options) {
|
||||
options = options || {};
|
||||
var cwd = path.resolve(resolveDir(options.cwd || ''));
|
||||
|
||||
if (typeof patterns === 'string') {
|
||||
return lookup(cwd, [patterns], options);
|
||||
}
|
||||
|
||||
if (!Array.isArray(patterns)) {
|
||||
throw new TypeError('findup-sync expects a string or array as the first argument.');
|
||||
}
|
||||
|
||||
return lookup(cwd, patterns, options);
|
||||
};
|
||||
|
||||
function lookup(cwd, patterns, options) {
|
||||
var len = patterns.length;
|
||||
var idx = -1;
|
||||
var res;
|
||||
|
||||
while (++idx < len) {
|
||||
if (isGlob(patterns[idx])) {
|
||||
res = matchFile(cwd, patterns[idx], options);
|
||||
} else {
|
||||
res = findFile(cwd, patterns[idx], options);
|
||||
}
|
||||
if (res) {
|
||||
return res;
|
||||
}
|
||||
}
|
||||
|
||||
var dir = path.dirname(cwd);
|
||||
if (dir === cwd) {
|
||||
return null;
|
||||
}
|
||||
return lookup(dir, patterns, options);
|
||||
}
|
||||
|
||||
function matchFile(cwd, pattern, opts) {
|
||||
var isMatch = mm.matcher(pattern, opts);
|
||||
var files = tryReaddirSync(cwd);
|
||||
var len = files.length;
|
||||
var idx = -1;
|
||||
|
||||
while (++idx < len) {
|
||||
var name = files[idx];
|
||||
var fp = path.join(cwd, name);
|
||||
if (isMatch(name) || isMatch(fp)) {
|
||||
return fp;
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
function findFile(cwd, filename, options) {
|
||||
var fp = cwd ? path.resolve(cwd, filename) : filename;
|
||||
return detect(fp, options);
|
||||
}
|
||||
|
||||
function tryReaddirSync(fp) {
|
||||
try {
|
||||
return fs.readdirSync(fp);
|
||||
} catch(err) {}
|
||||
return [];
|
||||
}
|
||||
128
node_modules/findup-sync/package.json
generated
vendored
Normal file
128
node_modules/findup-sync/package.json
generated
vendored
Normal file
@@ -0,0 +1,128 @@
|
||||
{
|
||||
"_args": [
|
||||
[
|
||||
{
|
||||
"raw": "findup-sync@^0.4.2",
|
||||
"scope": null,
|
||||
"escapedName": "findup-sync",
|
||||
"name": "findup-sync",
|
||||
"rawSpec": "^0.4.2",
|
||||
"spec": ">=0.4.2 <0.5.0",
|
||||
"type": "range"
|
||||
},
|
||||
"D:\\web\\layui\\res\\layui\\node_modules\\liftoff"
|
||||
]
|
||||
],
|
||||
"_from": "findup-sync@>=0.4.2 <0.5.0",
|
||||
"_id": "findup-sync@0.4.3",
|
||||
"_inCache": true,
|
||||
"_location": "/findup-sync",
|
||||
"_nodeVersion": "0.10.41",
|
||||
"_npmOperationalInternal": {
|
||||
"host": "packages-16-east.internal.npmjs.com",
|
||||
"tmp": "tmp/findup-sync-0.4.3.tgz_1476308790543_0.40729925991036"
|
||||
},
|
||||
"_npmUser": {
|
||||
"name": "phated",
|
||||
"email": "blaine.bublitz@gmail.com"
|
||||
},
|
||||
"_npmVersion": "2.15.2",
|
||||
"_phantomChildren": {},
|
||||
"_requested": {
|
||||
"raw": "findup-sync@^0.4.2",
|
||||
"scope": null,
|
||||
"escapedName": "findup-sync",
|
||||
"name": "findup-sync",
|
||||
"rawSpec": "^0.4.2",
|
||||
"spec": ">=0.4.2 <0.5.0",
|
||||
"type": "range"
|
||||
},
|
||||
"_requiredBy": [
|
||||
"/liftoff"
|
||||
],
|
||||
"_resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-0.4.3.tgz",
|
||||
"_shasum": "40043929e7bc60adf0b7f4827c4c6e75a0deca12",
|
||||
"_shrinkwrap": null,
|
||||
"_spec": "findup-sync@^0.4.2",
|
||||
"_where": "D:\\web\\layui\\res\\layui\\node_modules\\liftoff",
|
||||
"author": {
|
||||
"name": "\"Cowboy\" Ben Alman",
|
||||
"url": "http://benalman.com"
|
||||
},
|
||||
"bugs": {
|
||||
"url": "https://github.com/cowboy/node-findup-sync/issues"
|
||||
},
|
||||
"dependencies": {
|
||||
"detect-file": "^0.1.0",
|
||||
"is-glob": "^2.0.1",
|
||||
"micromatch": "^2.3.7",
|
||||
"resolve-dir": "^0.1.0"
|
||||
},
|
||||
"description": "Find the first file matching a given pattern in the current directory or the nearest ancestor directory.",
|
||||
"devDependencies": {
|
||||
"fs-exists-sync": "^0.1.0",
|
||||
"grunt": "^1.0.1",
|
||||
"grunt-contrib-jshint": "^0.12.0",
|
||||
"is-absolute": "^0.2.3",
|
||||
"minimist": "^1.2.0",
|
||||
"mocha": "^2.4.5",
|
||||
"normalize-path": "^2.0.1",
|
||||
"os-homedir": "^1.0.1",
|
||||
"resolve": "^1.1.7"
|
||||
},
|
||||
"directories": {},
|
||||
"dist": {
|
||||
"shasum": "40043929e7bc60adf0b7f4827c4c6e75a0deca12",
|
||||
"tarball": "https://registry.npmjs.org/findup-sync/-/findup-sync-0.4.3.tgz"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 0.8.0"
|
||||
},
|
||||
"files": [
|
||||
"index.js"
|
||||
],
|
||||
"gitHead": "701fd1044e1e26936aa066a35281ffdfb0b37d43",
|
||||
"homepage": "https://github.com/cowboy/node-findup-sync",
|
||||
"keywords": [
|
||||
"file",
|
||||
"find",
|
||||
"find-up",
|
||||
"findup",
|
||||
"glob",
|
||||
"match",
|
||||
"pattern",
|
||||
"resolve",
|
||||
"search"
|
||||
],
|
||||
"license": "MIT",
|
||||
"main": "index.js",
|
||||
"maintainers": [
|
||||
{
|
||||
"name": "cowboy",
|
||||
"email": "cowboy@rj3.net"
|
||||
},
|
||||
{
|
||||
"name": "jonschlinkert",
|
||||
"email": "github@sellside.com"
|
||||
},
|
||||
{
|
||||
"name": "phated",
|
||||
"email": "blaine.bublitz@gmail.com"
|
||||
},
|
||||
{
|
||||
"name": "tkellen",
|
||||
"email": "tyler@sleekcode.net"
|
||||
}
|
||||
],
|
||||
"name": "findup-sync",
|
||||
"optionalDependencies": {},
|
||||
"readme": "ERROR: No README data found!",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "git+https://github.com/cowboy/node-findup-sync.git"
|
||||
},
|
||||
"scripts": {
|
||||
"test": "grunt && mocha"
|
||||
},
|
||||
"version": "0.4.3"
|
||||
}
|
||||
Reference in New Issue
Block a user