123456789101112131415161718192021222324252627282930 |
- 'use strict';
- exports.__esModule = true;
- const Module = require('module');
- const path = require('path');
- // borrowed from babel-eslint
- function createModule(filename) {
- const mod = new Module(filename);
- mod.filename = filename;
- mod.paths = Module._nodeModulePaths(path.dirname(filename));
- return mod;
- }
- exports.default = function moduleRequire(p) {
- try {
- // attempt to get espree relative to eslint
- const eslintPath = require.resolve('eslint');
- const eslintModule = createModule(eslintPath);
- return require(Module._resolveFilename(p, eslintModule));
- } catch (err) { /* ignore */ }
- try {
- // try relative to entry point
- return require.main.require(p);
- } catch (err) { /* ignore */ }
- // finally, try from here
- return require(p);
- };
|