You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

25 lines
512 B

'use strict';
const path = require('path');
const pathExists = require('path-exists');
const pLocate = require('p-locate');
module.exports = (iterable, opts) => {
opts = Object.assign({
cwd: process.cwd()
}, opts);
return pLocate(iterable, el => pathExists(path.resolve(opts.cwd, el)), opts);
};
module.exports.sync = (iterable, opts) => {
opts = Object.assign({
cwd: process.cwd()
}, opts);
for (const el of iterable) {
if (pathExists.sync(path.resolve(opts.cwd, el))) {
return el;
}
}
};