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.

123456789101112131415161718192021222324
  1. 'use strict';
  2. const path = require('path');
  3. const pathExists = require('path-exists');
  4. const pLocate = require('p-locate');
  5. module.exports = (iterable, options) => {
  6. options = Object.assign({
  7. cwd: process.cwd()
  8. }, options);
  9. return pLocate(iterable, el => pathExists(path.resolve(options.cwd, el)), options);
  10. };
  11. module.exports.sync = (iterable, options) => {
  12. options = Object.assign({
  13. cwd: process.cwd()
  14. }, options);
  15. for (const el of iterable) {
  16. if (pathExists.sync(path.resolve(options.cwd, el))) {
  17. return el;
  18. }
  19. }
  20. };