forked from Ittai/ittai
parent
bc0945fdf0
commit
0171bcb748
@ -0,0 +1,5 @@
|
||||
export function get(key: string, defaultValue: any): any
|
||||
export function getAll(): Object<any>
|
||||
export function set(key: string, value: any): void
|
||||
export function setMultipleSettings(settings: Object<any>): void
|
||||
export function overrideSettings(settings: Object<any>): void
|
@ -0,0 +1,150 @@
|
||||
import { getClientMod } from "../utilities";
|
||||
import { name } from "ittai-manifest";
|
||||
import logger from "ittai/logger";
|
||||
|
||||
// let gmSettings;
|
||||
|
||||
export const get = (key, defaultValue) => {
|
||||
switch (getClientMod()) {
|
||||
case "betterdiscord":
|
||||
return (globalThis.BdApi.loadData(name, "settings") ?? {})[key] ?? defaultValue;
|
||||
break;
|
||||
case "goosemod":
|
||||
// goosemod.modules[name].goosemodHandlers.getSettings = () => [gmSettings]
|
||||
// goosemod.modules[name].goosemodHandlers.loadSettings = ([_settings]) => { gmSettings = _settings }
|
||||
// return gmSettings[key] ?? defaultValue
|
||||
console.error("settings for " + getClientMod() + " is not implemented yet. we (ittai team) are too lazy to implement it")
|
||||
break;
|
||||
case "powercordv2":
|
||||
// return this.settings.get(key, defaultValue);
|
||||
console.error("settings for " + getClientMod() + " is not implemented yet. we (ittai team) are too lazy to implement it")
|
||||
break;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
export const getAll = () => {
|
||||
switch (getClientMod()) {
|
||||
case "betterdiscord":
|
||||
return globalThis.BdApi.loadData(name, "settings") ?? {}
|
||||
break;
|
||||
case "goosemod":
|
||||
// goosemod.modules[name].goosemodHandlers.getSettings = () => [gmSettings]
|
||||
// goosemod.modules[name].goosemodHandlers.loadSettings = ([_settings]) => { gmSettings = _settings }
|
||||
// return gmSettings
|
||||
console.error("settings for " + getClientMod() + " is not implemented yet. we (ittai team) are too lazy to implement it")
|
||||
break;
|
||||
case "powercordv2":
|
||||
// let obj = {};
|
||||
// const keys = this.settings.getKeys();
|
||||
// keys.forEach(k => {
|
||||
// obj[k] = this.settings.get(k);
|
||||
// });
|
||||
// return obj;
|
||||
console.error("settings for " + getClientMod() + " is not implemented yet. we (ittai team) are too lazy to implement it")
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
export const set = (key, value) => {
|
||||
switch(getClientMod()) {
|
||||
case "betterdiscord":
|
||||
let setting = get(name) ?? {}
|
||||
setting?.[key] = value
|
||||
globalThis.BdApi.saveData(
|
||||
name,
|
||||
"settings",
|
||||
setting
|
||||
);
|
||||
break;
|
||||
case "goosemod":
|
||||
// goosemod.modules[name].goosemodHandlers.getSettings = () => [gmSettings]
|
||||
// goosemod.modules[name].goosemodHandlers.loadSettings = ([_settings]) => { gmSettings = _settings }
|
||||
// gmSettings[key] = value;
|
||||
console.error("settings for " + getClientMod() + " is not implemented yet. we (ittai team) are too lazy to implement it")
|
||||
break;
|
||||
case "powercordv2":
|
||||
// this.settings.set(key, value);
|
||||
console.error("settings for " + getClientMod() + " is not implemented yet. we (ittai team) are too lazy to implement it")
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
export const setMultipleSettings = (settings) => {
|
||||
if (typeof settings !== "object") return;
|
||||
switch (getClientMod()) {
|
||||
case "betterdiscord":
|
||||
globalThis.BdApi.saveData(
|
||||
name,
|
||||
"settings",
|
||||
Object.assign(globalThis.BdApi.loadData(name, "settings") ?? {}, settings)
|
||||
);
|
||||
break;
|
||||
case "goosemod":
|
||||
// goosemod.modules[name].goosemodHandlers.getSettings = () => [gmSettings]
|
||||
// goosemod.modules[name].goosemodHandlers.loadSettings = ([_settings]) => { gmSettings = _settings }
|
||||
// gmSettings = Object.assign(gmSettings ?? {}, settings)
|
||||
// Object.assign(this.__ittaiGMSettings, settings);
|
||||
console.error("settings for " + getClientMod() + " is not implemented yet. we (ittai team) are too lazy to implement it")
|
||||
break;
|
||||
case "powercordv2":
|
||||
// Object.keys(settings).forEach(k => this.settings.set(k, settings[k]));
|
||||
console.error("settings for " + getClientMod() + " is not implemented yet. we (ittai team) are too lazy to implement it")
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
export const overrideSettings = (settings) => {
|
||||
if (typeof settings !== "object") return;
|
||||
switch (getClientMod()) {
|
||||
case "betterdiscord":
|
||||
globalThis.BdApi.saveData(
|
||||
name,
|
||||
"settings",
|
||||
settings
|
||||
);
|
||||
break;
|
||||
case "goosemod":
|
||||
// goosemod.modules[name].goosemodHandlers.getSettings = () => [gmSettings]
|
||||
// goosemod.modules[name].goosemodHandlers.loadSettings = ([_settings]) => { gmSettings = _settings }
|
||||
// gmSettings = _settings
|
||||
|
||||
console.error("settings for " + getClientMod() + " is not implemented yet. we (ittai team) are too lazy to implement it")
|
||||
break;
|
||||
case "powercordv2":
|
||||
console.error("settings for " + getClientMod() + " is not implemented yet. we (ittai team) are too lazy to implement it")
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
export default {
|
||||
get,
|
||||
getAll,
|
||||
set,
|
||||
setMultipleSettings,
|
||||
overrideSettings
|
||||
}
|
||||
|
||||
// export default class SettingsAPI {
|
||||
// constructor(pluginInstance: Plugin) {
|
||||
// this.__pluginInstance = pluginInstance;
|
||||
// }
|
||||
|
||||
// private __pluginInstance: Plugin
|
||||
|
||||
// get (key: string, defaultValue: any) : any {
|
||||
// return this.__pluginInstance.__ittaiInternalPlugin.__ittaiInternals.getSetting(key, defaultValue); // Yes this is excessive. Too bad.
|
||||
// }
|
||||
|
||||
// getAll () : Object {
|
||||
// return this.__pluginInstance.__ittaiInternalPlugin.__ittaiInternals.getAllSettings();
|
||||
// }
|
||||
|
||||
// set (key: string, value: any) : void {
|
||||
// return this.__pluginInstance.__ittaiInternalPlugin.__ittaiInternals.setSetting(key, value);
|
||||
// }
|
||||
|
||||
// setAll (settings: Object) : void {
|
||||
// return this.__pluginInstance.__ittaiInternalPlugin.__ittaiInternals.setSettings(settings);
|
||||
// }
|
||||
// }
|
@ -1,25 +0,0 @@
|
||||
import { Plugin } from "../entities";
|
||||
|
||||
export default class SettingsAPI {
|
||||
constructor(pluginInstance: Plugin) {
|
||||
this.__pluginInstance = pluginInstance;
|
||||
}
|
||||
|
||||
private __pluginInstance: Plugin
|
||||
|
||||
get (key: string, defaultValue: any) : any {
|
||||
return this.__pluginInstance.__ittaiInternalPlugin.__ittaiInternals.getSetting(key, defaultValue); // Yes this is excessive. Too bad.
|
||||
}
|
||||
|
||||
getAll () : Object {
|
||||
return this.__pluginInstance.__ittaiInternalPlugin.__ittaiInternals.getAllSettings();
|
||||
}
|
||||
|
||||
set (key: string, value: any) : void {
|
||||
return this.__pluginInstance.__ittaiInternalPlugin.__ittaiInternals.setSetting(key, value);
|
||||
}
|
||||
|
||||
setAll (settings: Object) : void {
|
||||
return this.__pluginInstance.__ittaiInternalPlugin.__ittaiInternals.setSettings(settings);
|
||||
}
|
||||
}
|
Loading…
Reference in new issue