mirror of
https://gitee.com/butubb8/blowfish.git
synced 2025-12-05 14:17:50 +08:00
37 lines
1.4 KiB
JavaScript
37 lines
1.4 KiB
JavaScript
function fetchRepo() {
|
|
const scriptElement = document.currentScript;
|
|
const repoURL =
|
|
scriptElement && scriptElement.getAttribute("data-repo-url")
|
|
? scriptElement.getAttribute("data-repo-url")
|
|
: (console.error("data-repo-url is null"), null);
|
|
const repoId =
|
|
scriptElement && scriptElement.getAttribute("data-repo-id")
|
|
? scriptElement.getAttribute("data-repo-id")
|
|
: (console.error("data-repo-id is null"), null);
|
|
const requestObjects = repoId.startsWith("github")
|
|
? ["full_name", "description", "stargazers_count", "forks"]
|
|
: repoId.startsWith("gitlab")
|
|
? ["name_with_namespace", "description", "star_count", "forks_count"]
|
|
: ["full_name", "description", "stars_count", "forks_count"];
|
|
fetch(repoURL, {
|
|
headers: new Headers({
|
|
"User-agent": "Mozilla/4.0 Custom User Agent",
|
|
}),
|
|
})
|
|
.then((response) => response.json())
|
|
.then((data) => {
|
|
requestObjects.forEach((requestObject) => {
|
|
let element = document.getElementById(`${repoId}-${requestObject}`);
|
|
if (requestObject === "stargazers_count" && repoId.startsWith("github")) {
|
|
element = document.getElementById(`${repoId}-stargazers`);
|
|
}
|
|
element
|
|
? (element.innerHTML = data[requestObject])
|
|
: (console.error(`Element '${repoId}-${requestObject}' not found`), null);
|
|
});
|
|
})
|
|
.catch((error) => console.error(error));
|
|
}
|
|
|
|
fetchRepo();
|