move discord badges before other badges
All checks were successful
Code quality checks / biome (push) Successful in 16s
All checks were successful
Code quality checks / biome (push) Successful in 16s
This commit is contained in:
parent
3b6c68c25d
commit
7d0c65ff8c
1 changed files with 32 additions and 19 deletions
|
@ -295,6 +295,7 @@ if (badgeURL && badgeURL !== "null" && userId) {
|
|||
seperated = false,
|
||||
cache = true,
|
||||
targetId = "badges",
|
||||
serviceOrder = [],
|
||||
} = options;
|
||||
|
||||
const params = new URLSearchParams();
|
||||
|
@ -317,17 +318,12 @@ if (badgeURL && badgeURL !== "null" && userId) {
|
|||
return;
|
||||
}
|
||||
|
||||
const badges = Array.isArray(json.badges)
|
||||
? json.badges
|
||||
: Object.values(json.badges).flat();
|
||||
|
||||
if (badges.length === 0) {
|
||||
target.innerHTML = "";
|
||||
target.classList.add("hidden");
|
||||
return;
|
||||
}
|
||||
|
||||
target.innerHTML = "";
|
||||
const badgesByService = json.badges;
|
||||
const renderedServices = new Set();
|
||||
|
||||
const renderBadges = (badges) => {
|
||||
for (const badge of badges) {
|
||||
const img = document.createElement("img");
|
||||
img.src = badge.badge;
|
||||
|
@ -336,6 +332,22 @@ if (badgeURL && badgeURL !== "null" && userId) {
|
|||
img.className = "badge";
|
||||
target.appendChild(img);
|
||||
}
|
||||
};
|
||||
|
||||
for (const serviceName of serviceOrder) {
|
||||
const badges = badgesByService[serviceName];
|
||||
if (Array.isArray(badges) && badges.length) {
|
||||
renderBadges(badges);
|
||||
renderedServices.add(serviceName);
|
||||
}
|
||||
}
|
||||
|
||||
for (const [serviceName, badges] of Object.entries(badgesByService)) {
|
||||
if (renderedServices.has(serviceName)) continue;
|
||||
if (Array.isArray(badges) && badges.length) {
|
||||
renderBadges(badges);
|
||||
}
|
||||
}
|
||||
|
||||
target.classList.remove("hidden");
|
||||
} catch (err) {
|
||||
|
@ -347,9 +359,10 @@ if (badgeURL && badgeURL !== "null" && userId) {
|
|||
|
||||
loadBadges(userId, {
|
||||
services: [],
|
||||
seperated: false,
|
||||
seperated: true,
|
||||
cache: true,
|
||||
targetId: "badges",
|
||||
serviceOrder: ["discord", "equicord", "reviewdb", "vencord"],
|
||||
});
|
||||
}
|
||||
|
||||
|
@ -428,6 +441,9 @@ async function updatePresence(data) {
|
|||
updatedStatusIndicator.className = `status-indicator ${status}`;
|
||||
}
|
||||
|
||||
const custom = data.activities?.find((a) => a.type === 4);
|
||||
updateCustomStatus(custom);
|
||||
|
||||
const readmeSection = document.querySelector(".readme");
|
||||
|
||||
if (readmeSection && data.kv?.readme) {
|
||||
|
@ -448,9 +464,6 @@ async function updatePresence(data) {
|
|||
readmeSection.classList.add("hidden");
|
||||
}
|
||||
|
||||
const custom = data.activities?.find((a) => a.type === 4);
|
||||
updateCustomStatus(custom);
|
||||
|
||||
const filtered = data.activities
|
||||
?.filter((a) => a.type !== 4)
|
||||
?.sort((a, b) => {
|
||||
|
|
Loading…
Add table
Reference in a new issue