UNPKG

768 BJavaScriptView Raw
1var resolve = require('resolve');
2
3function resolveRequest(req) {
4 // The `resolve` package is prebuilt through ncc, which prevents
5 // PnP from being able to inject itself into it. To circumvent
6 // this, we simply use PnP directly when available.
7 // @ts-ignore
8 if (process.versions.pnp) {
9 const { resolveRequest } = require(`pnpapi`)
10 return resolveRequest(req, process.cwd() +"/")
11 } else {
12
13 var opts = {
14 basedir: process.cwd(),
15 paths: [process.cwd()]
16 };
17 return resolve.sync(req, opts)
18 }
19}
20
21module.exports = function (main) {
22 try {
23 return resolveRequest(main + '.ts');
24 } catch (e) {
25 try {
26 return resolveRequest(main + '/index.ts');
27 } catch (e) {
28 return resolveRequest(main);
29 }
30 }
31};