wip: app-side logic

This commit is contained in:
aecsocket
2026-07-07 18:52:02 +01:00
parent 3ed75a146a
commit 450eb67f6a
10 changed files with 131 additions and 46 deletions
@@ -3,16 +3,25 @@ export namespace LauncherMeta {
export namespace v0 {
export type LoaderVersion = {
id: string
url: string
stable: boolean
}
export type GameVersionEntry = {
id: string
stable: boolean
versionGroup?: string
loaders: LoaderVersion[]
}
export type VersionGroup = {
id: string
loaders: LoaderVersion[]
}
export type Manifest = {
gameVersions: GameVersionEntry[]
versionGroups?: VersionGroup[]
}
}
}
@@ -20,10 +20,13 @@ export class LauncherMetaManifestV0Module extends AbstractModule {
*
* @param loader - Loader platform (fabric, forge, quilt, neo)
*/
public async getManifest(loader: string): Promise<LauncherMeta.Manifest.v0.Manifest> {
public async getManifest(
loader: string,
formatVersion = 0,
): Promise<LauncherMeta.Manifest.v0.Manifest> {
return this.client.request<LauncherMeta.Manifest.v0.Manifest>('/manifest.json', {
api: LAUNCHER_META_BASE_URL,
version: `${loader}/v0`,
version: `${loader}/v${formatVersion}`,
method: 'GET',
skipAuth: true,
headers: { 'Content-Type': '' },