Removed release and commit count its useless.
Some checks failed
Docker Deploy / build-and-push (push) Has been cancelled
Some checks failed
Docker Deploy / build-and-push (push) Has been cancelled
This commit is contained in:
@@ -1,7 +1,5 @@
|
||||
export interface GiteaRepoInfo {
|
||||
commits: number;
|
||||
releases: number;
|
||||
language: string;
|
||||
languages: string[];
|
||||
updatedAt: string;
|
||||
size: number;
|
||||
defaultBranch: string;
|
||||
@@ -51,44 +49,29 @@ export async function fetchGiteaRepoInfo(
|
||||
|
||||
const data = await response.json();
|
||||
|
||||
let commitsCount = 0;
|
||||
let languages: string[] = [];
|
||||
try {
|
||||
const commitsUrl = `${config.domain}/api/v1/repos/${config.owner}/${config.repo}/commits?limit=1&stat=false`;
|
||||
const commitsResponse = await fetch(commitsUrl, {
|
||||
const languagesUrl = `${config.domain}/api/v1/repos/${config.owner}/${config.repo}/languages`;
|
||||
const languagesResponse = await fetch(languagesUrl, {
|
||||
headers: {
|
||||
Accept: "application/json",
|
||||
},
|
||||
signal: AbortSignal.timeout(5000),
|
||||
});
|
||||
if (commitsResponse.ok) {
|
||||
const totalCount = commitsResponse.headers.get("X-Total-Count");
|
||||
commitsCount = totalCount ? parseInt(totalCount, 10) : 0;
|
||||
}
|
||||
} catch (error) {
|
||||
// Ignore
|
||||
}
|
||||
|
||||
let releasesCount = 0;
|
||||
try {
|
||||
const releasesUrl = `${config.domain}/api/v1/repos/${config.owner}/${config.repo}/releases`;
|
||||
const releasesResponse = await fetch(releasesUrl, {
|
||||
headers: {
|
||||
Accept: "application/json",
|
||||
},
|
||||
signal: AbortSignal.timeout(5000),
|
||||
});
|
||||
if (releasesResponse.ok) {
|
||||
const releases = await releasesResponse.json();
|
||||
releasesCount = Array.isArray(releases) ? releases.length : 0;
|
||||
if (languagesResponse.ok) {
|
||||
const languagesData = await languagesResponse.json();
|
||||
// Gitea returns an object like { "TypeScript": 12345, "JavaScript": 6789 }
|
||||
// Sort by usage (bytes) and extract language names
|
||||
languages = Object.keys(languagesData).sort(
|
||||
(a, b) => languagesData[b] - languagesData[a],
|
||||
);
|
||||
}
|
||||
} catch (error) {
|
||||
// Ignore
|
||||
}
|
||||
|
||||
return {
|
||||
commits: commitsCount,
|
||||
releases: releasesCount,
|
||||
language: data.language || "Unknown",
|
||||
languages: languages.length > 0 ? languages : [],
|
||||
updatedAt: data.updated_at || data.pushed_at || "",
|
||||
size: data.size || 0,
|
||||
defaultBranch: data.default_branch || "main",
|
||||
|
||||
Reference in New Issue
Block a user