| 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)
- }
|