feat: more login progress

This commit is contained in:
TrèsAbhi committed 2024-10-09 21:04:49 -05:00
1 parent 1e64cb9e7d
commit 513105a624
18 files changed
+290 -295

No files matched your search

+16 -4
View File
@@ -1,14 +1,26 @@
import { merge } from 'lodash-es';
import { create } from 'zustand';
import { persist, subscribeWithSelector } from 'zustand/middleware';
import { createContextualStore } from '../../core/zustand/createContextualStore';
interface AppStore {
developerMode: boolean;
policiesAgreementIndex: number;
logins: {
wargaming?: { token: string; id: number; expires: number };
patreon?: { token: string; refreshToken: string; expires: number };
};
}
export const App = createContextualStore(() =>
create<AppStore>()(() => ({
developerMode: false,
policiesAgreementIndex: 0,
})),
create<AppStore>()(
persist(
subscribeWithSelector<AppStore>(() => ({
developerMode: false,
policiesAgreementIndex: -1,
logins: {},
})),
{ name: 'app', merge: (a, b) => merge(b, a) },
),
),
);
@@ -1,15 +0,0 @@
import { persistentMap } from '@nanostores/persistent';
type PatreonLogin =
| {
token: undefined;
}
| {
token: string;
refreshToken: string;
expires: string;
};
export const $patreonLogin = persistentMap<PatreonLogin>('patreon:', {
token: undefined,
});
@@ -1,15 +0,0 @@
import { persistentMap } from '@nanostores/persistent';
type WargamingLogin =
| {
token: undefined;
}
| {
token: string;
id: string;
expires: string;
};
export const $wargamingLogin = persistentMap<WargamingLogin>('wargaming:', {
token: undefined,
});