diff options
| author | Fuwn <[email protected]> | 2023-12-09 21:47:45 -0800 |
|---|---|---|
| committer | Fuwn <[email protected]> | 2023-12-09 21:47:45 -0800 |
| commit | 24707d853dd4aa390c34484873d842c52a96b6e8 (patch) | |
| tree | 5a3c1733279e81bcabb67624607bf5fed611a89f | |
| parent | feat(settings): add new keys to settings (diff) | |
| download | due.moe-24707d853dd4aa390c34484873d842c52a96b6e8.tar.xz due.moe-24707d853dd4aa390c34484873d842c52a96b6e8.zip | |
feat(settings): remove unused defaults
| -rw-r--r-- | src/stores/settings.ts | 25 |
1 files changed, 7 insertions, 18 deletions
diff --git a/src/stores/settings.ts b/src/stores/settings.ts index 4a94bc4f..351ff21c 100644 --- a/src/stores/settings.ts +++ b/src/stores/settings.ts @@ -79,24 +79,15 @@ const createStore = () => { get: () => { const keys = Object.keys(defaultSettings); const settingsKeys = Object.keys(state); + const updatedSettings = { ...state }; - if (keys.length !== settingsKeys.length) { - const updatedSettings = { ...state }; + for (const key of keys) + if (!settingsKeys.includes(key)) + updatedSettings[key] = defaultSettings[key as keyof Settings]; - for (const key of keys) { - if (!settingsKeys.includes(key)) { - updatedSettings[key] = defaultSettings[key as keyof Settings]; - } - } + if (browser) localStorage.setItem('settings', JSON.stringify(updatedSettings)); - if (browser) { - localStorage.setItem('settings', JSON.stringify(updatedSettings)); - } - - return updatedSettings; - } - - return state; + return updatedSettings; }, setKey: (key: keyof Settings, value: unknown) => update((settings) => ({ ...settings, [key]: value })) @@ -106,9 +97,7 @@ const createStore = () => { const settings = createStore(); settings.subscribe((value) => { - if (browser) { - localStorage.setItem('settings', JSON.stringify(value)); - } + if (browser) localStorage.setItem('settings', JSON.stringify(value)); }); export default settings; |