index.js 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. "use strict";
  2. Object.defineProperty(exports, "__esModule", {
  3. value: true
  4. });
  5. exports.default = _default;
  6. var _module = require("module");
  7. const path = require("path");
  8. function _default(moduleName, dirname, absoluteRuntime) {
  9. if (absoluteRuntime === false) return moduleName;
  10. return resolveAbsoluteRuntime(moduleName, path.resolve(dirname, absoluteRuntime === true ? "." : absoluteRuntime));
  11. }
  12. function resolveAbsoluteRuntime(moduleName, dirname) {
  13. try {
  14. return path.dirname((((v, w) => (v = v.split("."), w = w.split("."), +v[0] > +w[0] || v[0] == w[0] && +v[1] >= +w[1]))(process.versions.node, "8.9") ? require.resolve : (r, {
  15. paths: [b]
  16. }, M = require("module")) => {
  17. let f = M._findPath(r, M._nodeModulePaths(b).concat(b));
  18. if (f) return f;
  19. f = new Error(`Cannot resolve module '${r}'`);
  20. f.code = "MODULE_NOT_FOUND";
  21. throw f;
  22. })(`${moduleName}/package.json`, {
  23. paths: [dirname]
  24. })).replace(/\\/g, "/");
  25. } catch (err) {
  26. if (err.code !== "MODULE_NOT_FOUND") throw err;
  27. throw Object.assign(new Error(`Failed to resolve "${moduleName}" relative to "${dirname}"`), {
  28. code: "BABEL_RUNTIME_NOT_FOUND",
  29. runtime: moduleName,
  30. dirname
  31. });
  32. }
  33. }