.gitignore added
[dotfiles/.git] / .config / coc / extensions / node_modules / coc-prettier / node_modules / require-relative / index.js
1 /*
2 relative require
3 */'use strict';
4
5 var path = require('path');
6 var Module = require('module');
7
8 var modules = {};
9
10 var getModule = function(dir) {
11   var rootPath = dir ? path.resolve(dir) : process.cwd();
12   var rootName = path.join(rootPath, '@root');
13   var root = modules[rootName];
14   if (!root) {
15     root = new Module(rootName);
16     root.filename = rootName;
17     root.paths = Module._nodeModulePaths(rootPath);
18     modules[rootName] = root;
19   }
20   return root;
21 };
22
23 var requireRelative = function(requested, relativeTo) {
24   var root = getModule(relativeTo);
25   return root.require(requested);
26 };
27
28 requireRelative.resolve = function(requested, relativeTo) {
29   var root = getModule(relativeTo);
30   return Module._resolveFilename(requested, root);
31 };
32
33 module.exports = requireRelative;