moderator-toolbox-nxg-for-reddit / util/persistence/settings
util/persistence/settings¶
Functions¶
getAnonymizedSettings()¶
getAnonymizedSettings(
extraPolicies?):Promise<SettingsObject>
Defined in: extension/data/util/persistence/settings.ts:130
Produces an anonymized copy of the settings object: sensitive entries are dropped and certain others are rewritten into a non-identifying form.
Parameters¶
extraPolicies?¶
Record<string, SharedSettingPolicy> = {}
Additional per-key policies derived from module definitions via
buildPolicyMap() (from framework/module). Merged with the built-in Utils fallback.
Returns¶
Promise<SettingsObject>
getModuleSettingAsync()¶
getModuleSettingAsync<
T>(moduleID,setting,defaultVal?):Promise<T>
Defined in: extension/data/util/persistence/settings.ts:105
Typed wrapper for getSettingAsync that uses module ID constants. This reduces stringly-typed setting lookups and provides better type safety.
Type Parameters¶
T¶
T = unknown
Parameters¶
moduleID¶
string
The module ID constant (use imports from moduleIds.ts)
setting¶
string
Key of the setting.
defaultVal?¶
T
Value returned when the setting is unset.
Returns¶
Promise<T>
getSettingAsync()¶
getSettingAsync(
moduleID,setting,defaultVal?):Promise<any>
Defined in: extension/data/util/persistence/settings.ts:88
Reads a single setting’s value, using a fallback when it has never been set.
Parameters¶
moduleID¶
string
ID of the module the setting belongs to.
setting¶
string
Key of the setting.
defaultVal?¶
unknown = undefined
Value returned when the setting is unset.
Returns¶
Promise<any>
getSettings()¶
getSettings():
Promise<SettingsObject>
Defined in: extension/data/util/persistence/settings.ts:48
Reads the current settings object straight from extension storage.
Returns¶
Promise<SettingsObject>
setSettingAsync()¶
setSettingAsync(
moduleID,setting,value):Promise<void>
Defined in: extension/data/util/persistence/settings.ts:119
Stores a new value for a single setting.
Parameters¶
moduleID¶
string
ID of the module the setting belongs to.
setting¶
string
Key of the setting.
value¶
unknown
New value to store.
Returns¶
Promise<void>
updateSettings()¶
updateSettings(
settings):Promise<void>
Defined in: extension/data/util/persistence/settings.ts:72
Applies a batch of setting changes.
Parameters¶
settings¶
Partial<SettingsObject>
Map of setting keys to new values. Omitted keys keep their
stored values; keys set to undefined are deleted from storage; null is
not a valid setting value and is skipped.
Returns¶
Promise<void>
writeSettings()¶
writeSettings(
newSettings):Promise<void>
Defined in: extension/data/util/persistence/settings.ts:57
Overwrites extension storage with a complete settings object.
Parameters¶
newSettings¶
The full settings object to persist.
Returns¶
Promise<void>
Interfaces¶
SettingsObject¶
Defined in: extension/data/util/persistence/settings.ts:42
A flat key-value store for all Toolbox settings. Keys are namespaced as
Toolbox.{ModuleID}.{settingName}. Values are intentionally any - each
module stores different types (strings, numbers, booleans, arrays, objects)
and there is no central registry of what type each key holds.
Indexable¶
[
key:string]:any