From 8d9e9c49fa7de094f6d63b35e178796ff5f03558 Mon Sep 17 00:00:00 2001 From: Elvyra <88881326+EepyElvyra@users.noreply.github.com> Date: Mon, 13 Jan 2025 05:43:31 +0100 Subject: [PATCH] dispatch onchange when checkbox is clicked --- src/plugins/_api/settingArrays.tsx | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/src/plugins/_api/settingArrays.tsx b/src/plugins/_api/settingArrays.tsx index 956385afa..28a884f90 100644 --- a/src/plugins/_api/settingArrays.tsx +++ b/src/plugins/_api/settingArrays.tsx @@ -41,12 +41,14 @@ function renderRegisteredPlugins(name: string, value: any) { ...prevState, [key]: !prevState[key] })); - // @ts-ignore settings must be defined otherwise we wouldn't be here - const s = Vencord.Plugins.plugins[plugin].settings.store[setting]; - // @ts-ignore - Vencord.Plugins.plugins[plugin].settings.store[setting] = s.includes(value.id) - ? s.filter(id => id !== value.id) - : [...s, value.id]; + + // settings must be defined otherwise the checkbox wouldn't exist in the first place + const s = Vencord.Plugins.plugins[plugin].settings!; + s.store[setting] = s.store[setting].includes(value.id) + ? s.store[setting].filter((id: string) => id !== value.id) + : [...s.store[setting], value.id]; + + s.def[setting].onChange?.(s.store[setting]); }; return Object.keys(plugins).map(plugin => (