From 412e2a5246226a3f2b330d62eb9a04fec7ae7cdb Mon Sep 17 00:00:00 2001 From: 1024x2 <2pow11@gmail.com> Date: Wed, 24 Apr 2024 23:30:05 +0100 Subject: [PATCH 1/8] Remove donator badges It makes a request to an API hosted by the Vencord developer, without any option to turn it off. This raises privacy concerns. It's easiest to just get rid of the feature entirely. --- src/api/Badges.ts | 3 +- src/plugins/_api/badges/index.tsx | 95 ------------------------------- 2 files changed, 1 insertion(+), 97 deletions(-) diff --git a/src/api/Badges.ts b/src/api/Badges.ts index 7a041f1..fefbd43 100644 --- a/src/api/Badges.ts +++ b/src/api/Badges.ts @@ -90,8 +90,7 @@ export function _getBadges(args: BadgeUserArgs) { : badges.push(...b); } } - const donorBadges = (Plugins.BadgeAPI as unknown as typeof import("../plugins/_api/badges").default).getDonorBadges(args.userId); - if (donorBadges) badges.unshift(...donorBadges); + void Plugins.BadgeAPI; // If I don't reference this everything breaks??? return badges; } diff --git a/src/plugins/_api/badges/index.tsx b/src/plugins/_api/badges/index.tsx index c44d98b..28a7edb 100644 --- a/src/plugins/_api/badges/index.tsx +++ b/src/plugins/_api/badges/index.tsx @@ -41,19 +41,6 @@ const ContributorBadge: ProfileBadge = { onClick: (_, { userId }) => openContributorModal(UserStore.getUser(userId)) }; -let DonorBadges = {} as Record>>; - -async function loadBadges(noCache = false) { - DonorBadges = {}; - - const init = {} as RequestInit; - if (noCache) - init.cache = "no-cache"; - - DonorBadges = await fetch("https://badges.vencord.dev/badges.json", init) - .then(r => r.json()); -} - export default definePlugin({ name: "BadgeAPI", description: "API to add badges to users.", @@ -89,20 +76,8 @@ export default definePlugin({ } ], - toolboxActions: { - async "Refetch Badges"() { - await loadBadges(true); - Toasts.show({ - id: Toasts.genId(), - message: "Successfully refetched badges!", - type: Toasts.Type.SUCCESS - }); - } - }, - async start() { Vencord.Api.Badges.addBadge(ContributorBadge); - await loadBadges(); }, getBadges(props: { userId: string; user?: User; guildId: string; }) { @@ -122,74 +97,4 @@ export default definePlugin({ const Component = badge.component!; return ; }, { noop: true }), - - - getDonorBadges(userId: string) { - return DonorBadges[userId]?.map(badge => ({ - image: badge.badge, - description: badge.tooltip, - position: BadgePosition.START, - props: { - style: { - borderRadius: "50%", - transform: "scale(0.9)" // The image is a bit too big compared to default badges - } - }, - onClick() { - const modalKey = openModal(props => ( - { - closeModal(modalKey); - VencordNative.native.openExternal("https://github.com/sponsors/Vendicated"); - }}> - - - - - - Vencord Donor - - - - - - - - -
- - This Badge is a special perk for Vencord Donors - - - Please consider supporting the development of Vencord by becoming a donor. It would mean a lot!! - -
-
- - - - - -
-
- )); - }, - })); - } }); -- 2.46.1