summaryrefslogtreecommitdiff
path: root/src/client/theme-store.ts
diff options
context:
space:
mode:
Diffstat (limited to 'src/client/theme-store.ts')
-rw-r--r--src/client/theme-store.ts34
1 files changed, 0 insertions, 34 deletions
diff --git a/src/client/theme-store.ts b/src/client/theme-store.ts
deleted file mode 100644
index f291069692..0000000000
--- a/src/client/theme-store.ts
+++ /dev/null
@@ -1,34 +0,0 @@
-import { api } from '@client/os';
-import { $i } from '@client/account';
-import { Theme } from './scripts/theme';
-
-const lsCacheKey = $i ? `themes:${$i.id}` : '';
-
-export function getThemes(): Theme[] {
- return JSON.parse(localStorage.getItem(lsCacheKey) || '[]');
-}
-
-export async function fetchThemes(): Promise<void> {
- if ($i == null) return;
-
- try {
- const themes = await api('i/registry/get', { scope: ['client'], key: 'themes' });
- localStorage.setItem(lsCacheKey, JSON.stringify(themes));
- } catch (e) {
- if (e.code === 'NO_SUCH_KEY') return;
- throw e;
- }
-}
-
-export async function addTheme(theme: Theme): Promise<void> {
- await fetchThemes();
- const themes = getThemes().concat(theme);
- await api('i/registry/set', { scope: ['client'], key: 'themes', value: themes });
- localStorage.setItem(lsCacheKey, JSON.stringify(themes));
-}
-
-export async function removeTheme(theme: Theme): Promise<void> {
- const themes = getThemes().filter(t => t.id != theme.id);
- await api('i/registry/set', { scope: ['client'], key: 'themes', value: themes });
- localStorage.setItem(lsCacheKey, JSON.stringify(themes));
-}