Skip to content

Commit a710574

Browse files
committed
wip
1 parent 104783b commit a710574

File tree

5 files changed

+12
-826
lines changed

5 files changed

+12
-826
lines changed

packages/cli/src/helper/cleanup.ts

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import {
44
cleanupJavascriptInvalidImports,
55
cleanupUnusedJavascriptImports,
66
} from "./languages/javascript/cleanup";
7-
import { extractJavascriptFileImports } from "./languages/javascript/imports";
7+
import { getJavascriptImports } from "./languages/javascript/imports";
88

99
import { resolveFilePath } from "./file";
1010
import { Group } from "./types";
@@ -127,15 +127,15 @@ export function cleanupUnusedFiles(
127127
parser.setLanguage(language);
128128

129129
if (["javascript", "typescript"].includes(language.name)) {
130-
let dependencies = extractJavascriptFileImports(
130+
let dependencies = getJavascriptImports(
131131
parser,
132-
file.sourceCode,
132+
parser.parse(file.sourceCode).rootNode,
133133
);
134134
// Only keep files dependencies
135-
dependencies = dependencies.filter((dep) => dep.startsWith("."));
135+
dependencies = dependencies.filter((dep) => dep.source.startsWith("."));
136136

137137
dependencies.forEach((dep) => {
138-
const resolvedPath = resolveFilePath(dep, file.path);
138+
const resolvedPath = resolveFilePath(dep.source, file.path);
139139
if (resolvedPath) {
140140
filesToKeep.add(resolvedPath);
141141
}

packages/cli/src/helper/dependencyTree.ts

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
import fs from "fs";
22
import Parser from "tree-sitter";
3-
import { extractJavascriptFileImports } from "./languages/javascript/imports";
43

54
import { resolveFilePath } from "./file";
65
import { DependencyTree, Group } from "./types";
76
import { Endpoint } from "./types";
87
import { getParserLanguageFromFile } from "./treeSitter";
98
import { parseNanoApiAnnotation } from "./annotations";
109
import { getAnnotationNodes } from "./languages/javascript/annotations";
10+
import { getJavascriptImports } from "./languages/javascript/imports";
1111

1212
export function getDependencyTree(filePath: string): DependencyTree {
1313
const sourceCode = fs.readFileSync(filePath, "utf8");
@@ -24,10 +24,14 @@ export function getDependencyTree(filePath: string): DependencyTree {
2424
parser.setLanguage(language);
2525

2626
if (["javascript", "typescript"].includes(language.name)) {
27-
const imports = extractJavascriptFileImports(parser, sourceCode);
27+
let imports = getJavascriptImports(
28+
parser,
29+
parser.parse(sourceCode).rootNode,
30+
);
31+
imports = imports.filter((importPath) => importPath.source.startsWith("."));
2832

2933
imports.forEach((importPath) => {
30-
const resolvedPath = resolveFilePath(importPath, filePath);
34+
const resolvedPath = resolveFilePath(importPath.source, filePath);
3135
if (resolvedPath && fs.existsSync(resolvedPath)) {
3236
dependencyTree.children.push(getDependencyTree(resolvedPath));
3337
}

0 commit comments

Comments
 (0)