From 2584ce03c5852907d26ddfba516c845d8bdbc07b Mon Sep 17 00:00:00 2001 From: Oj Date: Wed, 7 Apr 2021 16:34:14 +0100 Subject: [PATCH] [PCCompat] Add more funcs to SimpleStore, use wrapper for Plugin.settings --- moduleWrappers/powercord/entities.js | 26 +++++++++++++++++++++++++- 1 file changed, 25 insertions(+), 1 deletion(-) diff --git a/moduleWrappers/powercord/entities.js b/moduleWrappers/powercord/entities.js index 4948a1c..f1d70fa 100644 --- a/moduleWrappers/powercord/entities.js +++ b/moduleWrappers/powercord/entities.js @@ -101,8 +101,22 @@ class SimpleStore { } updateSetting = (key, value) => { + if (value === undefined) { + return this.toggleSetting(key); + } + this.store[key] = value; } + + toggleSetting = (key) => { + this.store[key] = !this.store[key]; + } + + deleteSetting = (key) => { + delete this.store[key]; + } + + getKeys = () => Object.keys(this.store) } export class Plugin { @@ -128,7 +142,17 @@ export class Plugin { } get settings() { - return settingStores[this.entityID]; + const store = settingStores[this.entityID]; + + return { // Basic wrapper with renamed functions + get: store.getSetting, + set: store.setSetting, + delete: store.deleteSetting, + + getKeys: store.getKeys, + + connectStore: () => {} // Unneeded util func, but here incase it is attempted to be called + }; } get goosemodHandlers() {