'use strict';
Object.defineProperty(exports, '__esModule', {
value: true
});
// istanbul ignore next
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
var _path = require('path');
var _path2 = _interopRequireDefault(_path);
var _glob = require('glob');
var _glob2 = _interopRequireDefault(_glob);
exports['default'] = findup;
// Before, "findup-sync" package was used,
// but it does not provide filter callback
function findup(patterns, options, fn) {
/* jshint -W083 */
var lastpath;
var file;
options = Object.create(options);
options.maxDepth = 1;
options.cwd = _path2['default'].resolve(options.cwd);
do {
file = patterns.filter(function (pattern) {
var configPath = _glob2['default'].sync(pattern, options)[0];
if (configPath) {
return fn(_path2['default'].join(options.cwd, configPath));
}
})[0];
Eif (file) {
return _path2['default'].join(options.cwd, file);
}
lastpath = options.cwd;
options.cwd = _path2['default'].resolve(options.cwd, '..');
} while (options.cwd !== lastpath);
}
module.exports = exports['default'];
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3RyYXZpcy9idWlsZC9jb21taXRpemVuL2N6LWNsaS9zcmMvY29uZmlnTG9hZGVyL2ZpbmR1cC5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7b0JBQWlCLE1BQU07Ozs7b0JBQ04sTUFBTTs7OztxQkFFUixNQUFNOzs7O0FBSXJCLFNBQVMsTUFBTSxDQUFDLFFBQVEsRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFOzs7QUFHbkMsUUFBSSxRQUFRLENBQUM7QUFDYixRQUFJLElBQUksQ0FBQzs7QUFFVCxXQUFPLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztBQUNqQyxXQUFPLENBQUMsUUFBUSxHQUFHLENBQUMsQ0FBQztBQUNyQixXQUFPLENBQUMsR0FBRyxHQUFHLGtCQUFLLE9BQU8sQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7O0FBRXhDLE9BQUc7QUFDQyxZQUFJLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQyxVQUFTLE9BQU8sRUFBRTtBQUNyQyxnQkFBSSxVQUFVLEdBQUcsa0JBQUssSUFBSSxDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQzs7QUFFaEQsZ0JBQUksVUFBVSxFQUFFO0FBQ1osdUJBQU8sRUFBRSxDQUFDLGtCQUFLLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLFVBQVUsQ0FBQyxDQUFDLENBQUM7YUFDakQ7U0FDSixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7O0FBRU4sWUFBSSxJQUFJLEVBQUU7QUFDTixtQkFBTyxrQkFBSyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FBQztTQUN2Qzs7QUFFRCxnQkFBUSxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUM7QUFDdkIsZUFBTyxDQUFDLEdBQUcsR0FBRyxrQkFBSyxPQUFPLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FBQztLQUNqRCxRQUFRLE9BQU8sQ0FBQyxHQUFHLEtBQUssUUFBUSxFQUFFO0NBQ3RDIiwiZmlsZSI6Ii9ob21lL3RyYXZpcy9idWlsZC9jb21taXRpemVuL2N6LWNsaS9zcmMvY29uZmlnTG9hZGVyL2ZpbmR1cC5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBwYXRoIGZyb20gJ3BhdGgnO1xuaW1wb3J0IGdsb2IgZnJvbSAnZ2xvYic7XG5cbmV4cG9ydCBkZWZhdWx0IGZpbmR1cDtcblxuLy8gQmVmb3JlLCBcImZpbmR1cC1zeW5jXCIgcGFja2FnZSB3YXMgdXNlZCxcbi8vIGJ1dCBpdCBkb2VzIG5vdCBwcm92aWRlIGZpbHRlciBjYWxsYmFja1xuZnVuY3Rpb24gZmluZHVwKHBhdHRlcm5zLCBvcHRpb25zLCBmbikge1xuICAgIC8qIGpzaGludCAtVzA4MyAqL1xuXG4gICAgdmFyIGxhc3RwYXRoO1xuICAgIHZhciBmaWxlO1xuXG4gICAgb3B0aW9ucyA9IE9iamVjdC5jcmVhdGUob3B0aW9ucyk7XG4gICAgb3B0aW9ucy5tYXhEZXB0aCA9IDE7XG4gICAgb3B0aW9ucy5jd2QgPSBwYXRoLnJlc29sdmUob3B0aW9ucy5jd2QpO1xuXG4gICAgZG8ge1xuICAgICAgICBmaWxlID0gcGF0dGVybnMuZmlsdGVyKGZ1bmN0aW9uKHBhdHRlcm4pIHtcbiAgICAgICAgICAgIHZhciBjb25maWdQYXRoID0gZ2xvYi5zeW5jKHBhdHRlcm4sIG9wdGlvbnMpWzBdO1xuXG4gICAgICAgICAgICBpZiAoY29uZmlnUGF0aCkge1xuICAgICAgICAgICAgICAgIHJldHVybiBmbihwYXRoLmpvaW4ob3B0aW9ucy5jd2QsIGNvbmZpZ1BhdGgpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSlbMF07XG5cbiAgICAgICAgaWYgKGZpbGUpIHtcbiAgICAgICAgICAgIHJldHVybiBwYXRoLmpvaW4ob3B0aW9ucy5jd2QsIGZpbGUpO1xuICAgICAgICB9XG5cbiAgICAgICAgbGFzdHBhdGggPSBvcHRpb25zLmN3ZDtcbiAgICAgICAgb3B0aW9ucy5jd2QgPSBwYXRoLnJlc29sdmUob3B0aW9ucy5jd2QsICcuLicpO1xuICAgIH0gd2hpbGUgKG9wdGlvbnMuY3dkICE9PSBsYXN0cGF0aCk7XG59Il19 |