Skip to content

Commit 170c32a

Browse files
committed
JS: Move getFileFromFolderImport
1 parent d8f6976 commit 170c32a

1 file changed

Lines changed: 11 additions & 11 deletions

File tree

javascript/ql/lib/semmle/javascript/internal/paths/PathExprResolver.qll

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,17 @@ private import semmle.javascript.internal.paths.PackageJsonEx
44
private import semmle.javascript.internal.paths.JSPaths
55

66
final private class FinalPathExpr = PathExpr;
7+
File getFileFromFolderImport(Folder folder) {
8+
result = folder.getJavaScriptFileOrTypings("index")
9+
or
10+
// Note that unlike "exports" paths, "main" and "module" also take effect when the package
11+
// is imported via a relative path, e.g. `require("..")` targeting a folder with a package.json file.
12+
exists(PackageJsonEx pkg |
13+
pkg.getFolder() = folder and
14+
result = pkg.getMainFileOrBestGuess()
15+
)
16+
}
17+
718

819
private class RelevantPathExpr extends FinalPathExpr {
920
pragma[nomagic]
@@ -164,17 +175,6 @@ private Container resolvePathExpr1(RelevantPathExpr expr) {
164175
)
165176
}
166177

167-
File getFileFromFolderImport(Folder folder) {
168-
result = folder.getJavaScriptFileOrTypings("index")
169-
or
170-
// Note that unlike "exports" paths, "main" and "module" also take effect when the package
171-
// is imported via a relative path, e.g. `require("..")` targeting a folder with a package.json file.
172-
exists(PackageJsonEx pkg |
173-
pkg.getFolder() = folder and
174-
result = pkg.getMainFileOrBestGuess()
175-
)
176-
}
177-
178178
File resolvePathExpr(PathExpr expr) {
179179
result = resolvePathExpr1(expr)
180180
or

0 commit comments

Comments
 (0)