feat: use v1 version manifest for Quilt (#6650)

* wip: app-side logic

* lints

* fmt

* fmt

* Split Daedalus changes out of frontend branch

* Remove Daedalus changes from frontend branch
This commit is contained in:
aecsocket
2026-07-10 11:17:41 +00:00
committed by GitHub
parent 323d088ebd
commit 57a977f7f3
10 changed files with 129 additions and 46 deletions
@@ -24,7 +24,8 @@ export type Gamemode = 'survival' | 'creative' | 'hardcore'
export type Difficulty = 'peaceful' | 'easy' | 'normal' | 'hard'
export type LoaderVersionType = 'stable' | 'latest' | 'other'
export type GeneratorSettingsMode = 'default' | 'flat' | 'custom'
export type LoaderManifestResolver = (loader: string) => Promise<LauncherMeta.Manifest.v0.Manifest>
export type LoaderManifest = LauncherMeta.Manifest.v0.Manifest
export type LoaderManifestResolver = (loader: string) => Promise<LoaderManifest>
export interface LoaderVersionEntry {
id: string
stable: boolean
@@ -160,7 +161,7 @@ export interface CreationFlowContextValue {
hideLoaderChips: ComputedRef<boolean>
hideLoaderVersion: ComputedRef<boolean>
showSnapshots: Ref<boolean>
loaderVersionsCache: Ref<Record<string, { id: string; loaders: LoaderVersionEntry[] }[]>>
loaderVersionsCache: Ref<Record<string, LoaderManifest>>
paperSupportedVersions: Ref<Set<string> | null>
purpurSupportedVersions: Ref<Set<string> | null>
@@ -295,9 +296,7 @@ export function createCreationFlowContext(
const loaderVersionType = ref<LoaderVersionType>('stable')
const selectedLoaderVersion = ref<string | null>(null)
const showSnapshots = ref(false)
const loaderVersionsCache = ref<Record<string, { id: string; loaders: LoaderVersionEntry[] }[]>>(
{},
)
const loaderVersionsCache = ref<Record<string, LoaderManifest>>({})
const paperSupportedVersions = ref<Set<string> | null>(null)
const purpurSupportedVersions = ref<Set<string> | null>(null)
@@ -364,11 +363,11 @@ export function createCreationFlowContext(
(await client.launchermeta.manifest_v0.getManifest(apiLoader)),
staleTime: Infinity,
})
loaderVersionsCache.value[apiLoader] = data.gameVersions
loaderVersionsCache.value[apiLoader] = data
debug('fetchLoaderManifest: loaded', apiLoader, 'gameVersions:', data.gameVersions.length)
} catch (error) {
debug('fetchLoaderManifest: failed', apiLoader, error)
loaderVersionsCache.value[apiLoader] = []
loaderVersionsCache.value[apiLoader] = { gameVersions: [] }
}
}