use Vencord's addPatch instead of manually adding patches

This commit is contained in:
Vendicated 2025-02-07 23:13:20 +01:00
parent 3b76c30db2
commit 68930a1f50
No known key found for this signature in database
GPG key ID: D66986BAF75ECF18
2 changed files with 7 additions and 11 deletions

2
src/globals.d.ts vendored
View file

@ -7,7 +7,7 @@
declare global {
export var VesktopNative: typeof import("preload/VesktopNative").VesktopNative;
export var Vesktop: typeof import("renderer/index");
export var VCDP: any;
export var VesktopPatchGlobals: any;
export var IS_DEV: boolean;
}

View file

@ -6,7 +6,7 @@
import { Patch } from "@vencord/types/utils/types";
window.VCDP = {};
window.VesktopPatchGlobals = {};
interface PatchData {
patches: Omit<Patch, "plugin">[];
@ -16,15 +16,11 @@ interface PatchData {
export function addPatch<P extends PatchData>(p: P) {
const { patches, ...globals } = p;
for (const patch of patches as Patch[]) {
if (!Array.isArray(patch.replacement)) patch.replacement = [patch.replacement];
for (const r of patch.replacement) {
if (typeof r.replace === "string") r.replace = r.replace.replaceAll("$self", "VCDP");
}
patch.plugin = "Vesktop";
Vencord.Plugins.patches.push(patch);
for (const patch of patches) {
// @ts-expect-error outdated types don't have addPatch yet
// TODO: Update types
Vencord.Plugins.addPatch(patch, "Vesktop", "VesktopPatchGlobals");
}
Object.assign(VCDP, globals);
Object.assign(VesktopPatchGlobals, globals);
}