Add launch history tracking

This commit is contained in:
Lncvrt committed 2026-07-28 11:37:41 -07:00
1 parent 0d69848a1d
commit 0f8e9dcbdf
2 files changed
+17 -1

No files matched your search

+16 -1
View File
@@ -100,6 +100,9 @@ export default function RootLayout ({
const [modsList, setModsList] = useState< const [modsList, setModsList] = useState<
Record<string, Record<string, number>> Record<string, Record<string, number>>
>({}) >({})
const [launchesList, setLaunchesList] = useState<
Record<string, Record<string, number>>
>({})
const [accountSession, setAccountSession] = useState<string | null>(null) const [accountSession, setAccountSession] = useState<string | null>(null)
const [accountId, setAccountId] = useState<string | null>(null) const [accountId, setAccountId] = useState<string | null>(null)
@@ -458,6 +461,13 @@ export default function RootLayout ({
useWine: !!(platform() == 'linux' && versionInfo.wine && linuxUseWine), useWine: !!(platform() == 'linux' && versionInfo.wine && linuxUseWine),
wineCommand: linuxWineCommand wineCommand: linuxWineCommand
}) })
await versions?.set('launches', {
...launchesList,
[versionInfo.game]: {
...launchesList[versionInfo.game],
[versionInfo.id]: Date.now()
}
})
} }
useEffect(() => { useEffect(() => {
@@ -632,7 +642,8 @@ export default function RootLayout ({
defaults: { defaults: {
version: client, version: client,
list: {}, list: {},
mods: {} mods: {},
launches: {}
} }
}) })
const accountLocal = await load('account.json', { const accountLocal = await load('account.json', {
@@ -830,6 +841,9 @@ export default function RootLayout ({
watchVersions<Record<string, Record<string, number>>>('mods', v => watchVersions<Record<string, Record<string, number>>>('mods', v =>
setModsList(v ?? {}) setModsList(v ?? {})
) )
watchVersions<Record<string, Record<string, number>>>('launches', v =>
setLaunchesList(v ?? {})
)
watchAccount<string | null>('session', v => setAccountSession(v ?? null)) watchAccount<string | null>('session', v => setAccountSession(v ?? null))
watchAccount<string | null>('id', v => setAccountId(v ?? null)) watchAccount<string | null>('id', v => setAccountId(v ?? null))
@@ -887,6 +901,7 @@ export default function RootLayout ({
developerMode, developerMode,
versionsList, versionsList,
modsList, modsList,
launchesList,
accountSession, accountSession,
accountId, accountId,
accountName, accountName,
+1
View File
@@ -62,6 +62,7 @@ type GlobalCtxType = {
developerMode: boolean developerMode: boolean
versionsList: Record<string, number> versionsList: Record<string, number>
modsList: Record<string, Record<string, number>> modsList: Record<string, Record<string, number>>
launchesList: Record<string, Record<string, number>>
accountSession: string | null accountSession: string | null
accountId: string | null accountId: string | null
accountName: string | null accountName: string | null