feat: paper channel badges (#5850)

This commit is contained in:
Calum H.
2026-04-18 19:13:08 +01:00
committed by GitHub
parent ab623dc325
commit 3e32901737
18 changed files with 357 additions and 63 deletions

View File

@@ -1,11 +1,9 @@
import { $fetch } from 'ofetch'
import { AbstractModule } from '../../core/abstract-module'
import type { Purpur } from './types'
export type { Purpur } from './types'
const BASE_URL = 'https://api.purpurmc.org/v2'
const PURPUR_BASE_URL = 'https://api.purpurmc.org'
export class PurpurVersionsV2Module extends AbstractModule {
public getModuleID(): string {
@@ -16,7 +14,12 @@ export class PurpurVersionsV2Module extends AbstractModule {
* Get the Purpur project info including all supported Minecraft versions.
*/
public async getProject(): Promise<Purpur.Versions.v2.Project> {
return $fetch<Purpur.Versions.v2.Project>(`${BASE_URL}/purpur`)
return this.client.request<Purpur.Versions.v2.Project>('/purpur', {
api: PURPUR_BASE_URL,
version: 'v2',
method: 'GET',
skipAuth: true,
})
}
/**
@@ -25,6 +28,11 @@ export class PurpurVersionsV2Module extends AbstractModule {
* @param mcVersion - Minecraft version (e.g. "1.21.4")
*/
public async getBuilds(mcVersion: string): Promise<Purpur.Versions.v2.VersionBuilds> {
return $fetch<Purpur.Versions.v2.VersionBuilds>(`${BASE_URL}/purpur/${mcVersion}`)
return this.client.request<Purpur.Versions.v2.VersionBuilds>(`/purpur/${mcVersion}`, {
api: PURPUR_BASE_URL,
version: 'v2',
method: 'GET',
skipAuth: true,
})
}
}