'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; | |
} | |
} | |
}; |