Skip to content

Commit e661e75

Browse files
committed
Revert "search parsekey"
This reverts commit 1ebdbf7.
1 parent 1ebdbf7 commit e661e75

1 file changed

Lines changed: 15 additions & 37 deletions

File tree

packages/app/server/api/repo/search.get.ts

Lines changed: 15 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -28,55 +28,33 @@ export default defineEventHandler(async (event) => {
2828
let keepGoing = true;
2929

3030
while (uniqueNodes.length < maxNodes && keepGoing && !signal.aborted) {
31-
const prefix = `${usePackagesBucket.base}:`;
3231
const listResult = await r2Binding.list({
33-
prefix,
32+
prefix: usePackagesBucket.base,
3433
limit: 1000,
3534
cursor,
3635
});
3736
const { objects, truncated } = listResult;
3837
cursor = truncated ? listResult.cursor : undefined;
3938

40-
const repoMap = new Map<string, { org: string; repo: string }>();
41-
42-
for (const obj of objects) {
43-
const parts = obj.key.split(":");
44-
// bucket:package:org:repo:sha:packageName
45-
if (parts.length >= 4) {
46-
const org = parts[2];
47-
const repo = parts[3];
48-
49-
if (org.includes("/") || repo.includes("/")) {
50-
continue;
51-
}
52-
53-
const key = `${org}/${repo}`;
54-
if (!repoMap.has(key)) {
55-
repoMap.set(key, { org, repo });
56-
}
57-
}
58-
}
59-
60-
const filteredRepos = Array.from(repoMap.values()).filter(
61-
({ org, repo }) => {
62-
const orgRepo = `${org}/${repo}`.toLowerCase();
63-
return (
64-
org.toLowerCase().includes(searchText) ||
65-
repo.toLowerCase().includes(searchText) ||
66-
orgRepo.includes(searchText)
67-
);
68-
},
69-
);
39+
const parsedObjects = objects.map((obj) => parseKey(obj.key));
40+
const filtered = parsedObjects.filter((obj) => {
41+
const orgRepo = `${obj.org}/${obj.repo}`.toLowerCase();
42+
return (
43+
obj.org.toLowerCase().includes(searchText) ||
44+
obj.repo.toLowerCase().includes(searchText) ||
45+
orgRepo.includes(searchText)
46+
);
47+
});
7048

71-
for (const { org, repo } of filteredRepos) {
72-
const key = `${org}/${repo}`;
49+
for (const obj of filtered) {
50+
const key = `${obj.org}/${obj.repo}`;
7351
if (!seen.has(key)) {
7452
seen.add(key);
7553
uniqueNodes.push({
76-
name: repo,
54+
name: obj.repo,
7755
owner: {
78-
login: org,
79-
avatarUrl: `https://github.com/${org}.png`,
56+
login: obj.org,
57+
avatarUrl: `https://github.com/${obj.org}.png`,
8058
},
8159
});
8260
if (uniqueNodes.length >= maxNodes) break;

0 commit comments

Comments
 (0)