e6d9e4069e2ecbebc7f17780c83f99fddde5ec22a2896c0970671a2b00ee31ecdc967612cb651a90de7b45c6fbee09fd5ab8629ad29c9fc04472794927e8c7 915 B

123456789101112131415161718192021222324252627282930
  1. import { dirname } from 'path';
  2. export const findMade = async (opts, parent, path) => {
  3. // we never want the 'made' return value to be a root directory
  4. if (path === parent) {
  5. return;
  6. }
  7. return opts.statAsync(parent).then(st => (st.isDirectory() ? path : undefined), // will fail later
  8. // will fail later
  9. er => {
  10. const fer = er;
  11. return fer && fer.code === 'ENOENT'
  12. ? findMade(opts, dirname(parent), parent)
  13. : undefined;
  14. });
  15. };
  16. export const findMadeSync = (opts, parent, path) => {
  17. if (path === parent) {
  18. return undefined;
  19. }
  20. try {
  21. return opts.statSync(parent).isDirectory() ? path : undefined;
  22. }
  23. catch (er) {
  24. const fer = er;
  25. return fer && fer.code === 'ENOENT'
  26. ? findMadeSync(opts, dirname(parent), parent)
  27. : undefined;
  28. }
  29. };
  30. //# sourceMappingURL=find-made.js.map