From 2133823bd369efa145474f6e558a82a960d48d52 Mon Sep 17 00:00:00 2001 From: Vendicated Date: Fri, 11 Nov 2022 16:43:40 +0100 Subject: more plugin fixes --- src/plugins/apiMessageAccessories.ts | 6 +++--- src/plugins/pronoundb/index.ts | 3 ++- src/utils/types.ts | 3 +++ src/webpack/patchWebpack.ts | 2 +- 4 files changed, 9 insertions(+), 5 deletions(-) (limited to 'src') diff --git a/src/plugins/apiMessageAccessories.ts b/src/plugins/apiMessageAccessories.ts index 5f6c693..ee3ee90 100644 --- a/src/plugins/apiMessageAccessories.ts +++ b/src/plugins/apiMessageAccessories.ts @@ -27,9 +27,9 @@ export default definePlugin({ { find: "_messageAttachmentToEmbedMedia", replacement: { - match: /\(\)\.container,children:[[^\]]*]\)},(.+?)\)};return/, - replace: (_, accessories) => - `().container)},Vencord.Api.MessageAccessories._modifyAccessories([${accessories}],this.props))};return`, + match: /(\(\)\.container\)?,children:)(\[[^\]]+\])(}\)\};return)/, + replace: (_, pre, accessories, post) => + `${pre}Vencord.Api.MessageAccessories._modifyAccessories(${accessories},this.props)${post}`, }, }, ], diff --git a/src/plugins/pronoundb/index.ts b/src/plugins/pronoundb/index.ts index 121e0d6..499a73a 100644 --- a/src/plugins/pronoundb/index.ts +++ b/src/plugins/pronoundb/index.ts @@ -46,11 +46,12 @@ export default definePlugin({ { find: "currentPronouns:", all: true, + noWarn: true, replacement: { match: /\(0,.{1,3}\.jsxs?\)\((.{1,10}),(\{[^[}]*currentPronouns:[^}]*(\w)\.pronouns[^}]*\})\)/, replace: (original, PronounComponent, pronounProps, fullProps) => { // UserSettings - if (fullProps.includes("onPronounsChange")) return original; + if (pronounProps.includes("onPronounsChange")) return original; return `Vencord.Plugins.plugins.PronounDB.PronounsProfileWrapper(${PronounComponent}, ${pronounProps}, ${fullProps})`; } diff --git a/src/utils/types.ts b/src/utils/types.ts index 689baa7..dd0a9c5 100644 --- a/src/utils/types.ts +++ b/src/utils/types.ts @@ -34,7 +34,10 @@ export interface Patch { plugin: string; find: string; replacement: PatchReplacement | PatchReplacement[]; + /** Whether this patch should apply to multiple modules */ all?: boolean; + /** Do not warn if this patch did no changes */ + noWarn?: boolean; predicate?(): boolean; } diff --git a/src/webpack/patchWebpack.ts b/src/webpack/patchWebpack.ts index f14ab0b..40a16a6 100644 --- a/src/webpack/patchWebpack.ts +++ b/src/webpack/patchWebpack.ts @@ -141,7 +141,7 @@ function patchPush() { try { const newCode = code.replace(replacement.match, replacement.replace); - if (newCode === code) { + if (newCode === code && !replacement.noWarn) { logger.warn(`Patch by ${patch.plugin} had no effect (Module id is ${id}): ${replacement.match}`); if (IS_DEV) { logger.debug("Function Source:\n", code); -- cgit